Kā instalēt Roundcube Webmail vietnē CentOS/RHEL 8/7


Roundcube ir bezmaksas un atvērta pirmkoda, pilnībā aprīkota tīmeklī balstīta daudzvalodu IMAP tīmekļa pasta programmatūra ar lietojumprogrammai līdzīgu lietotāja saskarni, kas ir pilnībā funkcionāla un pielāgojama un izmanto jaunākos tīmekļa standartus. Tas ir veidots, izmantojot PHP, un piedāvā pilnu funkcionalitāti, kuru jūs varat sagaidīt no moderna e-pasta klienta.

  • Tā ir daudzvaloda, atbalsta vairāk nekā 70 valodas.
  • Atbalsta veidu, kādā atrodat veidu, kā atrast.
  • Atbalsta vairākas sūtītāja identitātes.
  • Piedāvā izsmalcinātu privātuma aizsardzību.
  • Ir pilna servisa adrešu grāmata ar grupām un LDAP savienotājiem.
  • Piedāvā bagātināta teksta/HTML ziņojumu sastādīšanu.
  • Atbalsta ziņojumu un kontaktu meklēšanu.
  • Atbalsta Int. domēna vārdi (IDNA).
  • Atbalsta mapju manipulācijas, koplietotās mapes un ACL.
  • Paplašināms, izmantojot spraudņa API.
  • Nodrošina pareizrakstības pārbaudes funkcionalitāti.
  • nodrošina importēšanas/eksportēšanas funkcijas.
  • Ir spraudņa API elastīgiem paplašinājumiem un vēl daudz vairāk.

  1. RHEL 7 serveris ar minimālu instalēšanu.
  2. Apache vai Nginx tīmekļa serveris
  3. PHP un MySQL/MariaDB datu bāze
  4. SMTP un IMAP serveris ar IMAP4 rev1 atbalstu

Šajā rakstā mēs pieņemam, ka jums jau darbojas Postfix e-pasta serveris ar virtuālajiem lietotājiem, pretējā gadījumā izpildiet mūsu ceļvežu iestatīšanu:

  1. Postfix pasta servera un Dovecot iestatīšana ar MariaDB - 1. daļa
  2. Konfigurējiet virtuālā domēna Postfix un Dovecot lietotājus - 2. daļa
  3. Instalējiet un integrējiet ClamAV un SpamAssassin Postfix pasta serverī - 3. daļa

Šī raksta vajadzībām es instalēšu Roundcube Webmail Linode CentOS VPS ar Nginx tīmekļa serveri, statisko IP adresi 192.168.0.100 un resursdatora nosaukumu mail.linux-console.net.

1. darbība: instalējiet Nginx, PHP-FPM un MariaDB CentOS 8/7

1. Vispirms sāciet iespējot EPEL un REMI krātuves un savā CentOS sistēmā instalējiet Nginx, PHP, PHP-FPM un MariaDB serveri.

# yum install epel-release
# yum install http://rpms.remirepo.net/enterprise/remi-release-8.rpm    [CentOS/RHEL 8]
# yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm    [CentOS/RHEL 7]
# yum install yum-utils 
# yum-config-manager --enable remi-php72
# yum install nginx php php-fpm php-mcrypt php-cli php-gd php-curl php-xml php-mysql php-mbstring php-pspell php-imagick mariadb-server   

2. Kad esat veiksmīgi instalējis visas paketes, palaidiet Nginx tīmekļa serveri, ļaujiet tam automātiski startēt sāknēšanas laikā un pārbaudiet, vai tas darbojas un darbojas.

# systemctl start nginx 
# systemctl enable nginx
# systemctl status nginx

3. Pēc tam, ja ir iespējota sistēmas ugunsmūris, ārējiem pieprasījumiem jāatver 80. ports.

# firewall-cmd --permanent --add-port=80/tcp
# firewall-cmd --reload 

4. Tālāk jums jākonfigurē PHP-FPM, lai tas darbotos pareizi. Atveriet failu /etc/php.ini, izmantojot komandrindas testa redaktoru.

# vim /etc/php.ini

Meklējiet direktīvu ; cgi.fix_pathinfo = 1 , noņemiet komentāru un iestatiet tās vērtību 0.

cgi.fix_pathinfo=0

Atceļiet arī direktīvu ; date.timezone un iestatiet tās vērtību laika joslai.

date.timezone = "Africa/Kampala"

Kad esat pabeidzis, saglabājiet failu un izejiet.

5. Pēc tam palaidiet pakalpojumu PHP-FPM, ļaujiet tam automātiski startēt sāknēšanas laikā un pārbaudiet, vai tas darbojas un darbojas, šādi.

# systemctl start php-fpm 
# systemctl enable php-fpm 
# systemctl status php-fpm 

2. darbība. Nodrošiniet MariaDB serveri un izveidojiet Roundecube datu bāzi

6. Tagad sāciet pakalpojumu MariaDB, izmantojot šādas komandas.

# systemctl start mariadb
# systemctl enable mariadb
# systemctl status mariadb

7. Noklusējuma MariaDB instalācija nav droša. Lai to aizsargātu, palaidiet drošības skriptu, kas nāk ar bināro pakotni. Jums tiks lūgts iestatīt saknes paroli, noņemt anonīmus lietotājus, attāli atspējot root pieteikšanos un noņemt testa datu bāzi.

# mysql_secure_installation

8. Tagad piesakieties MariaDB datu bāzē, izveidojiet Roundecube datu bāzi un piešķiriet lietotājam atbilstošas atļaujas datu bāzē (atcerieties ražošanas vidē iestatīt stingru/drošu paroli).

# mysql -u root -p
MariaDB [(none)]> CREATE DATABASE roundcubemail /*!40101 CHARACTER SET utf8 COLLATE utf8_general_ci */;
MariaDB [(none)]> CREATE USER 'roundcube'@'localhost' IDENTIFIED BY '[email !#webL';
MariaDB [(none)]> GRANT ALL PRIVILEGES ON roundcubemail.* TO 'roundcube'@'localhost';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> exit

9. Pēc tam importējiet Roundcube tabulas izkārtojumu jaunizveidotajā datu bāzē.

# cd /var/www/html/roundcubemail/
# mysql -u root -p roundcubemail < SQL/mysql.initial.sql

3. solis: lejupielādējiet Roundcube paketi

10. Šajā solī lejupielādējiet Roundcube jaunāko stabilo versiju (1.4.9. Rakstīšanas laikā) no komandrindas lejupielādes programmas wget, lai to iegūtu, izvelciet TAR failu un augšupielādējiet failus tīmekļa servera dokumenta saknē .

# wget -c https://github.com/roundcube/roundcubemail/releases/download/1.4.9/roundcubemail-1.4.9-complete.tar.gz
# tar xzf roundcubemail-1.4.9-complete.tar.gz 
# mv roundcubemail-1.4.9 /var/www/html/roundcubemail

11. Pēc tam iestatiet atbilstošās atļaujas Roundcube tīmekļa sakņu failiem.

# chown -R nginx:nginx /var/www/html/roundcubemail

4. darbība: konfigurējiet Nginx servera bloku Roundcube Web Installer

12. Tagad izveidojiet Nginx servera bloku Roundcube sadaļā /etc/nginx/conf.d/ (failu varat nosaukt tā, kā vēlaties, bet tam vajadzētu būt .conf paplašinājumam).

# vim /etc/nginx/conf.d/mail.example.com.conf

Pievienojiet failā šādu konfigurāciju.

server {
        listen 80;
        server_name mail.example.com;

        root /var/www/html/roundcubemail;
        index  index.php index.html;

        #i# Logging
        access_log /var/log/nginx/mail.example.com_access_log;
        error_log   /var/log/nginx/mail.example.com_error_log;

        location / {
                try_files $uri $uri/ /index.php?q=$uri&$args;
        }

        location ~ ^/(README.md|INSTALL|LICENSE|CHANGELOG|UPGRADING)$ {
                deny all;
        }

        location ~ ^/(config|temp|logs)/ {
                deny all;
        }

        location ~ /\. {
                deny all;
                access_log off;
                log_not_found off;
        }

        location ~ \.php$ {
                include /etc/nginx/fastcgi_params;
                #fastcgi_pass 127.0.0.1:9000;
                fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
                fastcgi_index index.php;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        }
}

Saglabājiet failu un aizveriet to.

13. Pēc tam atveriet failu /etc/php-fpm.d/www.conf, lai veiktu dažas izmaiņas PHP-FPM tīmekļa direktīvā.

# vim /etc/php-fpm.d/www.conf

Mainiet lietotāja apache uz nginx šādos mainīgos.

user = nginx
group = nginx

Pēc tam komentējiet rindiņu listen = 127.0.0.1:9000 un iestatiet klausīšanās mainīgo, lai klausītos Unix kontaktligzdā, kas iestatīta nginx servera bloka failā:

listen = /var/run/php-fpm/php-fpm.sock

Iestatiet arī atļaujas UNIX ligzdai, komentēšanai un līniju maiņai:

listen.owner = nginx
listen.group = nginx
listen.mode = 0660

Kad esat pabeidzis, saglabājiet failu un aizveriet to.

14. Pēc tam restartējiet Nginx un PHP-FPM pakalpojumus, lai piemērotu pēdējās izmaiņas šādi.

# systemctl restart nginx php-fpm

5. darbība. Piekļūstiet Roundcube tīmekļa saskarnei

15. Pirms sākat instalēšanas vedni, lai izvairītos no sesijas kļūdām, direktorijā/var/lib/php/session/iestatiet atbilstošās atļaujas. Grupas noklusējuma īpašnieks ir apache, nomainiet to uz nginx, kā parādīts.

# ls -ld /var/lib/php/session/
# chown :nginx /var/lib/php/session/
# ls -ld /var/lib/php/session/

16. Tagad atveriet pārlūku un izmantojiet adresi http://mail.example.com/installer (nomainiet domēnu ar iestatīto servera nosaukumu, izveidojot Nginx servera bloku Roundcube), lai piekļūtu tīmeklim. uzstādītājs. Ja visas PHP versijas, paplašinājumi un php.ini/.htaccess iestatījumi ir pareizi, tiks parādīts šāds ekrānuzņēmums, noklikšķiniet uz Tālāk, lai pārietu uz konfigurācijas lapu.

http://mail.example.com/installer
OR
http://IP-address/installer

Konfigurāciju lapa ļauj iestatīt Roundcube instanci. Mēs tikai izskaidrosim svarīgās iespējas šīs rokasgrāmatas darbības jomā.

Sadaļā Vispārējā konfigurācija iestatiet produkta nosaukumu, piemēram, Piemērs.com Webmail.

Pārejiet uz Datu bāzes iestatīšana, ievadiet datu bāzes resursdatoru, vārdu, lietotāju un paroli, lai izveidotu savienojumu ar MySQL serveri.

Pēc tam ritiniet uz leju līdz IMAP un SMTP iestatījumiem un ievadiet sava IMAP un SMTP servera IP adresi, ja tas ir tas pats serveris, kurā izmantojat Roundcube, atstājiet to kā “localhost” un norādiet arī citus nepieciešamos parametrus.

Jūs varat norādīt citus iestatījumus atbilstoši savām vajadzībām, kad esat pabeidzis, noklikšķiniet uz Izveidot konfigurāciju.

18. Tagad jums vajadzētu redzēt ziņojumu: “Konfigurācijas fails tika veiksmīgi saglabāts jūsu Roundcube instalācijas direktorijā/var/www/html/roundcubemail/config.” Noklikšķiniet uz Turpināt.

19. Konfigurāciju varat pārskatīt lapā Test config, kā parādīts nākamajā ekrānuzņēmumā.

20. Pēc tam no Roundcube saknes direktorija noņemiet visu instalēšanas mapi (kurā ir faili, kas var atklāt sabiedrībai konfidenciālus konfigurācijas datus, piemēram, servera paroles un šifrēšanas atslēgas) (vai pārliecinieties, vai config.inc.php opcija enable_installer ir atspējota. ).

# rm -rf /var/www/html/roundcubemail/installer

21. Visbeidzot, izmantojiet URL http://mail.example.com, lai piekļūtu Roundcube pieteikšanās lapai. Ievadiet savu lietotājvārdu un paroli, lai skatītu savas vēstules.

Roundcube ir plaši izmantots, pilnībā aprīkots tīmeklī izvietots daudzvalodu pasta klients. Šajā rakstā mēs parādījām, kā CentOS/RHEL 8/7 ar Nginx tīmekļa serveri instalēt jaunāko stabilo Roundcube Webmail versiju. Ja jums ir kādi jautājumi, izmantojiet zemāk esošo atsauksmju veidlapu, lai sazinātos ar mums.