Arch Linux instalējiet lietojumprogrammu RainLoop Webmail (tīmekļa e-pasta klients), izmantojot Nginx un Apache


Rainloop ir bezmaksas PHP rakstīta atvērtā koda tīmekļa lietojumprogramma, kas nodrošina ātru, modernu tīmekļa saskarni, lai piekļūtu jūsu e-pastiem visos lielākajos domēna pasta pakalpojumu sniedzējos, piemēram, Yahoo, Gmail, Outlook un daudzos citos, kā arī jūsu vietējos pasta serveros, kā arī darbojas kā MUA (Mail User Agent), piekļūstot domēna pasta serveriem, izmantojot IMAP un SMTP protokolus.

Apskatiet autora demonstrācijas lapas iestatīšanu vietnē http://demo.rainloop.net/.

Kad esat savos serveros izvietojis Rainloop, atliek vien piekļūt savam Rainloop domēnam, izmantojot tīmekļa pārlūku, un nodrošināt akreditācijas datus savam iespējotajam domēna pasta serverim.

Šī apmācība aptver Rainloop tīmekļa pasta instalēšanas procesu vietnē Arch Linux gan no Apache , gan Nginx konfigurācijas failiem, izmantojot virtuālo vietējo domēnu, kas konfigurēts, izmantojot vietējo resursdatoru failu, bez DNS servera.

Ja jums ir vajadzīgas arī atsauksmes par Rainloop instalēšanu Debian un Red Hat sistēmās, apmeklējiet iepriekšējo RainLoop Webmail rakstu vietnē.

  1. Instalējiet RainLoop Webmail Debian un Red Hat balstītās sistēmās

  1. Arch Linux instalējiet LEMP (Nginx, PHP, MySQL ar MariaDB dzinēju un PhpMyAdmin)
  2. Izveidojiet virtuālos uzņēmējus Nginx tīmekļa serverī

  1. Arch Arch instalējiet LAMP (Linux, Apache, MySQL/MariaDB un PHP/PhpMyAdmin)

1. darbība: izveidojiet virtuālos resursdatorus Nginx vai Apache

1. Pieņemot, ka esat konfigurējis savus serverus ( Nginx vai Apache ), kā aprakstīts augšējo prezentāciju saitēs, vispirms jums ir jāizveido elementārs DNS ieraksts lokālajā resursdatoru failā, kas norāda uz Arch Linux sistēmas IP.

Linux sistēmā rediģējiet failu /etc/hosts un pēc localhost ieraksta iekļaujiet savu Rainloop virtuālo domēnu.

127.0.0.1	localhost.localdomain  localhost     rainloop.lan
192.168.1.33	rainloop.lan

Windows sistēmā rediģējiet C:\Windows\System32\drivers tc\hosts un apakšā pievienojiet šādu rindu.

192.168.1.33       rainloop.lan

2. Kad esat pārbaudījis vietējo domēnu, izmantojot komandu ping , izveidojiet nepieciešamās Virtual Hosts un SSL konfigurācijas Apache vai Nginx .

Vietnē /etc/nginx/sites-available/ izveidojiet failu ar nosaukumu rainloop.lan ar šādu konfigurāciju.

$ sudo nano /etc/nginx/sites-available/rainloop.conf

Pievienojiet šādu faila saturu.

server {
    listen 80;
    server_name rainloop.lan;

    rewrite        ^ https://$server_name$request_uri? permanent;
    access_log /var/log/nginx/rainloop.lan.access.log;
    error_log /var/log/nginx/rainloop.lan.error.log;
    root /srv/www/rainloop/;

    # serve static files
    location ~ ^/(images|javascript|js|css|flash|media|static)/  {
     root    /srv/www/rainloop/;
     expires 30d;
    }

    location / {
        index index.html index.htm index.php;
                autoindex on;
                autoindex_exact_size off;
                autoindex_localtime on;
 }

 location ^~ /data {
  deny all;
}

    location ~ \.php$ {
        #fastcgi_pass 127.0.0.1:9000; (depending on your php-fpm socket configuration)
        fastcgi_pass unix:/run/php-fpm/php-fpm.sock;
        fastcgi_index index.php;
        include fastcgi.conf;
    }
 }

Pēc tam izveidojiet SSL līdzvērtīgu faila saturu.

$ sudo nano /etc/nginx/sites-available/rainloop-ssl.conf

Pievienojiet šādu faila saturu.

server {
    listen 443 ssl;
    server_name rainloop.lan;

       ssl_certificate     /etc/nginx/ssl/rainloop.lan.crt;
       ssl_certificate_key  /etc/nginx/ssl/rainloop.lan.key;
       ssl_session_cache    shared:SSL:1m;
       ssl_session_timeout  5m;
       ssl_ciphers  HIGH:!aNULL:!MD5;
       ssl_prefer_server_ciphers  on;

    access_log /var/log/nginx/rainloop.lan.access.log;
    error_log /var/log/nginx/rainloop.lan.error.log;

   root /srv/www/rainloop/;

    # serve static files
    location ~ ^/(images|javascript|js|css|flash|media|static)/  {
      root    /srv/www/rainloop/;
      expires 30d;
    }

location ^~ /data {
  deny all;
}

    location / {
        index index.html index.htm index.php;
                autoindex on;
                autoindex_exact_size off;
                autoindex_localtime on;
 }

    location ~ \.php$ {
        #fastcgi_pass 127.0.0.1:9000; (depending on your php-fpm socket configuration)
        fastcgi_pass unix:/run/php-fpm/php-fpm.sock;
        fastcgi_index index.php;
        include fastcgi.conf;
    }
 }

Nākamajā solī ģenerējiet sertifikāta failu un atslēgas SSL virtuālajam resursdatoram un pievienojiet savu virtuālā domēna nosaukumu ( rainloop.lan ) sertifikātā Parastais nosaukums .

$ sudo nginx_gen_ssl.sh

Pēc sertifikāta un SSL atslēgu ģenerēšanas izveidojiet Rainloop saknes tīmekļa servera faila ceļu (vietu, kur atrodas Rainloop PHP faili), pēc tam iespējojiet Virtual Hosts un restartējiet Nginx dēmonu, lai lietotu konfigurācijas.

$ sudo mkdir -p /srv/www/rainloop
$ sudo n2ensite rainloop
$ sudo n2ensite rainloop-ssl
$ sudo systemctl restart nginx

Vietnē /etc/httpd/conf/sites-available/ izveidojiet jaunu failu ar nosaukumu rainloop.conf ar šādu saturu.

$ sudo nano /etc/httpd/conf/sites-available/rainloop.conf

Pievienojiet šādu faila saturu.

<VirtualHost *:80>
                ServerName rainloop.lan
                DocumentRoot "/srv/www/rainloop/"
                ServerAdmin [email 
                ErrorLog "/var/log/httpd/rainloop-error_log"
                TransferLog "/var/log/httpd/rainloop-access_log"

<Directory />
    Options +Indexes +FollowSymLinks +ExecCGI
    AllowOverride All
    Order deny,allow
    Allow from all
Require all granted
</Directory>

</VirtualHost>

Pēc tam izveidojiet Apache SSL līdzvērtīgu faila saturu.

$ sudo nano /etc/httpd/conf/sites-available/rainloop-ssl.conf

Pievienojiet šādu faila saturu.

<VirtualHost *:443>
                ServerName rainloop.lan
                DocumentRoot "/srv/www/rainloop/"
                ServerAdmin [email 
                ErrorLog "/var/log/httpd/rainloop-ssl-error_log"
                TransferLog "/var/log/httpd/rainloop-ssl-access_log"

SSLEngine on
SSLCertificateFile "/etc/httpd/conf/ssl/rainloop.lan.crt"
SSLCertificateKeyFile "/etc/httpd/conf/ssl/rainloop.lan.key"

<FilesMatch "\.(cgi|shtml|phtml|php)$">
    SSLOptions +StdEnvVars
</FilesMatch>

BrowserMatch "MSIE [2-5]" \
         nokeepalive ssl-unclean-shutdown \
         downgrade-1.0 force-response-1.0

CustomLog "/var/log/httpd/ssl_request_log" \
          "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"

<Directory />
    Options +Indexes +FollowSymLinks +ExecCGI
    AllowOverride All
    Order deny,allow
    Allow from all
Require all granted
</Directory>

</VirtualHost>

Nākamais solis ir izveidot SSL sertifikāta failu un atslēgas SSL virtuālajam resursdatoram un pievienot virtuālā domēna nosaukumu ( rainloop.lan ) sertifikātā Parastais nosaukums .

$ sudo apache_gen_ssl

Pēc sertifikāta un SSL atslēgu izveides pievienojiet Rainloop DocumentRoot ceļu, pēc tam iespējojiet Virtual Hosts un restartējiet Apache dēmonu, lai lietotu konfigurācijas.

$ sudo mkdir -p /srv/www/rainloop
$ sudo a2ensite rainloop
$ sudo a2ensite rainloop-ssl
$ sudo systemctl restart httpd

2. darbība: pievienojiet nepieciešamos PHP paplašinājumus

3. Neatkarīgi no tā, vai izmantojat tīmekļa serveri Apache vai Nginx , failā php.ini ir jāiespējo šādi PHP paplašinājumi un jāiekļauj arī jaunais tīmekļa servera DocumentRoot ceļš uz open_basedir direktīvu.

$ sudo nano /etc/php/php.ini

Atrodiet un komentējiet šos PHP paplašinājumus.

extension=iconv.so
extension=imap.so
extension=mcrypt.so
extension=mssql.so
extension=mysqli.so
extension=openssl.so ( enables IMAPS and SMTP SSL protocols on mail servers)
extension=pdo_mysql.so

Arī open_basedir paziņojumam vajadzētu izskatīties šādi.

open_basedir = /srv/http/:/home/:/tmp/:/usr/share/pear/:/usr/share/webapps/:/etc/webapps/:/srv/www/

4. Pēc faila php.ini pārveidošanas restartējiet serveri, nevis pārbaudiet phpinfo failu, lai redzētu, vai ir iespējoti SSL protokoli.

----------On Apache Web Server----------
$ sudo systemctl restart httpd
----------On Nginx Web Server----------
$ sudo systemctl restart nginx
$ sudo systemctl restart php-fpm

3. darbība: lejupielādējiet un instalējiet RainLoop Webmail

5. Tagad ir pienācis laiks lejupielādēt un izvilkt lietojumprogrammu Rainloop no oficiālās vietnes dokumenta saknes direktorijā, bet vispirms instalējiet wget un unzip sistēmas utilītprogrammas.

$ sudo pacman -S unzip wget

6. Lejupielādējiet jaunāko avota paketi Rainloop zip arhīvu, izmantojot komandu wget vai izmantojot pārlūkprogrammu, lai virzītos uz vietni http://rainloop.net/downloads/.

$ wget http://repository.rainloop.net/v1/rainloop-latest.zip

7. Pēc lejupielādes pabeigšanas iegūstiet Rainloop arhīvu virtuālā resursdatora dokumenta saknes ceļā (/srv/www/rainloop/).

$ sudo unzip rainloop-latest.zip -d  /srv/www/rainloop/

8. Pēc tam iestatiet šādas atļaujas lietojumprogrammas noklusējuma ceļā.

$ sudo chmod -R 755 /srv/www/rainloop/
$ sudo chown -R http:http /srv/www/rainloop/

4. darbība: konfigurējiet Rainloop, izmantojot tīmekļa saskarni

9. Lietotni Rainloop var konfigurēt divējādi: izmantojot sistēmas apvalku, izmantojot pārlūku. Ja vēlaties konfigurēt termināļa atvēršanu un rediģēt failu application.ini , kas atrodas /srv/www/rainloop/data/_data_da047852f16d2bc7352b24240a2f1599/_default_/configs/.

10. Lai piekļūtu administratora saskarnei no pārlūkprogrammas, izmantojiet šādu URL adresi https: //rainloop.lan/? Admin un pēc tam norādiet noklusējuma lietojumprogrammas akreditācijas datus.

User= admin
Password= 12345

11. Pēc sākotnējās pieteikšanās jūs tiksiet brīdināts mainīt noklusējuma paroli, tāpēc es iesaku jums to izdarīt.

12. Ja vēlaties iespējot kontaktu pieteikšanos MySQL datu bāzē un izveidot jaunu datu bāzi ar priviliģētu lietotāju, tad laukos Kontakti norādiet datu bāzes akreditācijas datus.

mysql -u root -p
create database if not exists rainloop;
create user [email  identified by “password”;
grant all privileges on rainloop.* to [email ;
flush privileges;
exit;

13. Pēc noklusējuma Rainloop nodrošina Gmail , Yahoo un Outlook domēnu pasta servera konfigurācijas failus, taču, ja vēlaties, varat pievienot citus pasta servera domēnus.

14. Lai pieteiktos savā pasta serverī, norādiet pārlūkprogrammai uz https: //rainloop.lan un norādiet sava domēna servera akreditācijas datus.

Papildu konfigurācijas, lūdzu, apmeklējiet oficiālo Rainloop dokumentācijas lapu vietnē http://rainloop.net/docs/.

Izmantojot Rainloop, jūs varat piekļūt pasta serveriem no jebkuras ierīces, kurai ir pārlūks, ja vien jūsu serverim ir savienojums ar internetu, vienīgais mīnuss, lietojot Rainloop lietojumprogrammu Arch Linux, līdz šim ir nepieciešams poppassd spraudņa pakotnes trūkums lai mainītu e-pasta konta paroli.