A Roundcube Webmail telepítése a CentOS/RHEL 8/7 rendszeren
A Roundcube egy ingyenes és nyílt forráskódú, teljes funkcionalitású webalapú, többnyelvű IMAP webmail szoftver, alkalmazásszerű felhasználói felülettel, amely teljesen működőképes és testreszabható, és a legújabb webes szabványokat használja. PHP-vel készült, és olyan teljes funkcionalitást kínál, amelyet egy modern e-mail klienstől elvárhat.
A Roundcube jellemzői:
- Többnyelvű, több mint 70 nyelvet támogat.
- Támogatja a Find-as-you-címjegyzéket.
- Támogatja a több feladó identitását.
- Kifinomult adatvédelmet kínál.
- Teljes funkcionalitású címjegyzékkel rendelkezik csoportokkal és LDAP-csatlakozókkal.
- Richtext/HTML üzenetírást kínál.
- Támogatja az üzenetek és névjegyek keresését.
- Támogatja az Int. domain nevek (IDNA).
- Támogatja a mappakezelést, a megosztott mappákat és az ACL-t.
- Bővíthető a Plug-in API segítségével.
- Helyesírás-ellenőrző funkciót biztosít.
- Import/Export funkciókat biztosít.
- Beépülő API-val rendelkezik a rugalmas bővítményekhez és még sok máshoz.
Ajánlott rendszerkövetelmények:
- CentOS 8/RHEL 8 vagy CentOS 7/RHEL 7 kiszolgáló minimális telepítéssel.
- Apache vagy Nginx webszerver
- PHP és MySQL/MariaDB adatbázis
- SMTP és IMAP szerver IMAP4 rev1 támogatással
A cikk hatóköre szempontjából feltételezzük, hogy már rendelkezik egy futó Postfix e-mail szerverrel virtuális felhasználókkal, ellenkező esetben kövesse a beállítási útmutatónkat:
- A Postfix levelezőszerver és a Dovecot beállítása a MariaDB-vel – 1. rész
- A Postfix és Dovecot virtuális tartomány felhasználóinak konfigurálása – 2. rész
- Telepítse és integrálja a ClamAV-t és a SpamAssassint a Postfix Mail Serverbe – 3. rész
Tesztkörnyezet:
Ebben a cikkben a Roundcube Webmailt telepítem egy Linode CentOS VPS-re Nginx webszerverrel, statikus IP-címmel 192.168.0.100 és gazdagépnévvel mail.linux-console.net.
1. lépés: Telepítse az Nginxet, a PHP-FPM-et és a MariaDB-t a CentOS 8/7 rendszerben
1. Először is engedélyezze az EPEL és REMI adattárakat, és telepítse az Nginx, PHP , PHP-FPM és MariaDB szerver a CentOS rendszeren.
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. Miután sikeresen telepítette az összes csomagot, indítsa el az Nginx webszervert, engedélyezze az automatikus indítást rendszerindításkor, és ellenőrizze, hogy működik-e.
systemctl start nginx
systemctl enable nginx
systemctl status nginx
3. Ezután, ha engedélyezve van a rendszertűzfal, meg kell nyitnia a 80-as portot külső kérésekhez.
firewall-cmd --permanent --add-port=80/tcp
firewall-cmd --reload
4. Ezután be kell állítania a PHP-FPM funkciót a megfelelő működéshez. Nyissa meg az /etc/php.ini fájlt egy parancssori tesztszerkesztővel.
vim /etc/php.ini
Keresse meg a ;cgi.fix_pathinfo=1
direktívát, törölje a megjegyzéseket, és állítsa az értékét 0-ra.
cgi.fix_pathinfo=0
Ezenkívül törölje a megjegyzéseket a ;date.timezone
direktívából, és állítsa be az értékét az időzónára.
date.timezone = "Africa/Kampala"
Ha végzett, mentse el a fájlt, és lépjen ki.
5. Ezután indítsa el a PHP-FPM szolgáltatást, engedélyezze az automatikus indítást rendszerindításkor, és ellenőrizze, hogy működik-e az alábbiak szerint.
systemctl start php-fpm
systemctl enable php-fpm
systemctl status php-fpm
2. lépés: Biztonságos MariaDB kiszolgáló és Roundecube adatbázis létrehozása
6. Most indítsa el a MariaDB szolgáltatást a következő parancsokkal.
systemctl start mariadb
systemctl enable mariadb
systemctl status mariadb
7. A MariaDB alapértelmezett telepítése nem biztonságos. A bináris csomaghoz tartozó biztonsági szkriptet kell futtatnia annak biztosításához. A rendszer felkéri, hogy állítson be root jelszót, távolítsa el a névtelen felhasználókat, távolítsa el a root bejelentkezést, és távolítsa el a tesztadatbázist.
mysql_secure_installation
8. Most jelentkezzen be a MariaDB adatbázisba, hozzon létre egy adatbázist a Roundecube számára, és adja meg a felhasználónak a megfelelő engedélyeket az adatbázisban (ne felejtsen el beállítani egy erős/biztonságos jelszót gyártási környezet).
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 '=213@!#webL';
MariaDB [(none)]> GRANT ALL PRIVILEGES ON roundcubemail.* TO 'roundcube'@'localhost';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> exit
9. Ezután importálja a Roundcube táblázat elrendezését az újonnan létrehozott adatbázisba.
cd /var/www/html/roundcubemail/
mysql -u root -p roundcubemail < SQL/mysql.initial.sql
3. lépés: Töltse le a Roundcube csomagot
10. Ebben a lépésben töltse le a Roundcube legújabb stabil verzióját (az írás idején 1.4.9) a letöltési oldalról, vagy használja a wget parancssori letöltőt a letöltéshez. szerezze be, csomagolja ki a TAR fájlt, és töltse fel a fájlokat a webszerver dokumentumgyökérébe.
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. Ezután állítsa be a megfelelő engedélyeket a Roundcube webroot fájljaihoz.
chown -R nginx:nginx /var/www/html/roundcubemail
4. lépés: Konfigurálja az Nginx kiszolgálóblokkot a Roundcube Web Installer számára
12. Most hozzon létre egy Nginx szerverblokkot a Roundcube számára az /etc/nginx/conf.d/ alatt (a fájlt tetszés szerint nevezheti el, de rendelkeznie kell egy .conf kiterjesztés).
vim /etc/nginx/conf.d/mail.example.com.conf
Adja hozzá a következő konfigurációt a fájlhoz.
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;
}
}
Mentse el a fájlt és zárja be.
13. Ezután nyissa meg a /etc/php-fpm.d/www.conf fájlt a PHP-FPM web néhány módosításához. irányelv.
vim /etc/php-fpm.d/www.conf
Módosítsa az apache felhasználót nginx-re a következő változókban.
user = nginx
group = nginx
Ezután írja be megjegyzéssel a listen=127.0.0.1:9000 sort, és állítsa be a figyelési változót úgy, hogy az nginx szerver blokkfájljában található Unix socketen figyeljen:
listen = /var/run/php-fpm/php-fpm.sock
Ezenkívül állítsa be a UNIX socket engedélyeit, törölje a megjegyzéseket, és módosítsa a sorokat a következőre:
listen.owner = nginx
listen.group = nginx
listen.mode = 0660
Ha végzett, mentse el a fájlt, és zárja be.
14. Ezután indítsa újra az Nginx és a PHP-FPM szolgáltatásokat a legutóbbi módosítások alkalmazásához, az alábbiak szerint.
systemctl restart nginx php-fpm
5. lépés: Nyissa meg a Roundcube webes felhasználói felületét
15. A telepítővarázsló elindítása előtt a munkamenet-hibák elkerülése érdekében állítsa be a megfelelő engedélyeket a /var/lib/php/session/ könyvtárban. Az alapértelmezett csoporttulajdonos az apache, módosítsa nginx-re az ábrán látható módon.
ls -ld /var/lib/php/session/
chown :nginx /var/lib/php/session/
ls -ld /var/lib/php/session/
16. Most nyisson meg egy böngészőt, és használja a http://mail.example.com/installer
címet (cserélje le a domaint az Nginx szerverblokk létrehozásakor beállított kiszolgálónévvel for Roundcube) a webes telepítő eléréséhez. Ha minden PHP-verzió, bővítmény és php.ini/.htaccess beállítás megfelelő, akkor a következő képernyőképet fogja látni, kattintson a Következő gombra a konfigurációs oldal eléréséhez.
http://mail.example.com/installer
OR
http://IP-address/installer
17. A konfigurációs oldalon beállíthatja a Roundcube példányát. Csak az útmutató hatóköréhez tartozó fontos lehetőségeket ismertetjük.
Az Általános konfiguráció alatt állítson be egy product_name értéket, például Example.com Webmail.
Lépjen az Adatbázis beállítása elemre, adja meg az adatbázis gazdagépét, a nevet, a felhasználót és a jelszót. > a MySQL szerverhez való csatlakozáshoz.
Ezután görgessen le az IMAP és az SMTP beállításokhoz, és írja be az IMAP és SMTP szervere IP-címét, ha ugyanazon a szerveren, amelyen a Roundcube-ot futtatja, hagyja „localhost” néven, és adjon meg más szükséges paramétereket is.
Igényei szerint más beállításokat is megadhat, miután végzett, kattintson a Konfiguráció létrehozása lehetőségre.
18. Ekkor megjelenik egy üzenet: "A konfigurációs fájl sikeresen mentve a Roundcube telepítésének /var/www/html/roundcubemail/config könyvtárába." Kattintson a következőre: Folytatás.
19. A konfigurációt a Teszt konfigurációs oldalon tekintheti meg, ahogy az a következő képernyőképen látható.
20. Ezután távolítsa el a teljes telepítő mappát (amely olyan fájlokat tartalmaz, amelyek érzékeny konfigurációs adatokat, például szerverjelszavakat és titkosítási kulcsokat tesznek közzé) a Roundcube gyökérkönyvtárából (vagy győződjön meg arról, hogy a Az enable_installer opció config.inc.php fájlban le van tiltva).
rm -rf /var/www/html/roundcubemail/installer
21. Végül használja a http://mail.example.com URL-t a Roundcube bejelentkezési oldalának eléréséhez. Írja be felhasználónevét és jelszavát az e-mailek megtekintéséhez.
Összegzés
A Roundcube egy széles körben használt, teljes funkcionalitású webalapú többnyelvű levelezőkliens. Ebben a cikkben bemutattuk, hogyan telepítheti a Roundcube Webmail legújabb stabil verzióját CentOS/RHEL 8/7re az Nginx webszerverrel. Ha kérdése van, használja az alábbi visszajelzési űrlapot, hogy kapcsolatba lépjen velünk.