Cara memasang Webmail Roundcube di CentOS/RHEL 8/7

Cara memasang Webmail Roundcube di CentOS/RHEL 8/7

Roundcube adalah perisian webmail IMAP yang berasaskan web dan terbuka sepenuhnya, berasaskan web, dengan antara muka pengguna seperti aplikasi yang berfungsi sepenuhnya dan disesuaikan, dan menggunakan piawaian web terkini. Ia dibina menggunakan PHP dan menawarkan fungsi penuh yang boleh anda harapkan dari pelanggan e -mel moden.

Ciri -ciri Roundcube:

  • Ia berbilang bahasa, menyokong lebih daripada 70 bahasa.
  • Menyokong buku alamat find-as-you-jenis.
  • Menyokong identiti pengirim berganda.
  • Menawarkan perlindungan privasi yang canggih.
  • Mempunyai buku alamat lengkap dengan kumpulan dan penyambung LDAP.
  • Menawarkan mesej RichText/HTML.
  • Menyokong mencari mesej dan kenalan.
  • Menyokong int. Nama Domain (IDNA).
  • Menyokong Manipulasi Folder, Folder Dikongsi, dan ACL.
  • Extensible menggunakan API plug-in.
  • Menyediakan fungsi pemeriksaan ejaan.
  • Menyediakan fungsi import/eksport.
  • Mempunyai API plug-in untuk sambungan fleksibel dan banyak lagi.

Keperluan sistem yang disyorkan:

  1. Pelayan CentOS 8/RHEL 8 atau CentOS 7/RHEL 7 dengan pemasangan minimum.
  2. Pelayan web apache atau nginx
  3. Pangkalan Data PHP dan MySQL/MariaDB
  4. Pelayan SMTP dan IMAP dengan sokongan IMAP4 REV1

Untuk skop artikel ini, kami mengandaikan bahawa anda sudah mempunyai pelayan e -mel Postfix yang berjalan dengan pengguna maya, jika tidak, ikuti persediaan panduan kami:

  1. Menyediakan Pelayan Mel Postfix dan Dovecot dengan MariaDB - Bahagian 1
  2. Konfigurasikan Pengguna Domain Maya Postfix dan Dovecot - Bahagian 2
  3. Pasang dan mengintegrasikan Clamav dan Spamassassin ke Pelayan Mel Postfix - Bahagian 3

Persekitaran Ujian:

Untuk tujuan artikel ini, saya akan memasang Roundcube Webmail Pada Linode CentOS VPS dengan pelayan web NGINX, alamat IP statik 192.168.0.100, dan nama tuan rumah mel.Tecmint.com.

Langkah 1: Pasang NGINX, PHP-FPM, dan MariaDB di CentOS 8/7

1. Mula pertama dengan membolehkan Epel dan Remi repositori dan pasang Nginx, Php, PHP-FPM, dan Mariadb pelayan pada anda Centos sistem.

# yum pasang epel-release # yum pasang http: // rpms.remirepo.Bersih/Enterprise/Remi-Release-8.rpm [Centos/RHEL 8] # yum Pasang http: // rpms.remirepo.Bersih/Enterprise/Remi-Release-7.rpm [Centos/RHEL 7] # yum memasang yum-utils # yum-config-manager-enable remi-php72 # yum install nginx php-fpm php-mcrypt php-cli php-gd php-curl php-xml php-mysql php-mstring php- PSPELL PHP-IMAGICK MARIADB-SERVER 

2. Sebaik sahaja anda berjaya memasang semua pakej, mulakan pelayan web nginx, aktifkannya untuk memulakan auto pada waktu boot dan periksa apakah yang akan dan berjalan.

# Systemctl Mula Nginx # Systemctl Dayakan Nginx # Systemctl Status Nginx 

3. Seterusnya, jika anda mempunyai sistem firewall diaktifkan, anda perlu membuka pelabuhan 80 untuk permintaan luaran.

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

4. Seterusnya, anda perlu mengkonfigurasi PHP-FPM untuk berfungsi dengan betul. Buka fail /etc/php.Ini Menggunakan editor ujian baris arahan.

# vim /etc /php.Ini 

Cari arahan ; cgi.fix_pathinfo = 1, uncomment dan menetapkan nilainya 0.

CGI.fix_pathinfo = 0 

Juga, tidak mengisahkan arahan ;Tarikh.Zon masa dan tetapkan nilainya kepada anda Zon masa.

Tarikh.TimeZone = "Afrika/Kampala" 

Sebaik sahaja anda selesai, simpan fail dan keluar.

5. Kemudian mulakan PHP-FPM perkhidmatan, membolehkannya untuk memulakan automatik pada masa boot, dan periksa sama ada ia berjalan dan berjalan, seperti berikut.

# Systemctl Mula PHP-FPM # Systemctl Dayakan PHP-FPM # Systemctl Status PHP-FPM 

Langkah 2: Secure MariaDB Server dan buat Pangkalan Data RoundeCube

6. Sekarang mulakan perkhidmatan MariaDB menggunakan arahan berikut.

# Systemctl Mula MariaDB # Systemctl Dayakan MariaDB # Systemctl Status Mariadb 

7. Pemasangan MariaDB lalai tidak selamat. Anda perlu menjalankan skrip keselamatan yang disertakan dengan pakej binari, untuk mengamankannya. Anda akan diminta untuk menetapkan kata laluan root, keluarkan pengguna tanpa nama, matikan log masuk root dari jauh, dan keluarkan pangkalan data ujian.

# mysql_secure_installation 

8. Sekarang log masuk ke pangkalan data MariaDB, buat pangkalan data untuk Roundecube, dan berikan pengguna kepada kebenaran yang sesuai pada pangkalan data (ingat untuk menetapkan kata laluan yang kuat/selamat dalam persekitaran pengeluaran).

# mysql -u root -p Mariadb [(Tiada)]>> Buat pangkalan data RoundCubeMail /*!40101 set aksara UTF8 Collate UTF8_General_ci */; Mariadb [(Tiada)]>> Buat pengguna 'roundcube'@'localhost' yang dikenal pasti oleh '[dilindungi e -mel]!#webl '; Mariadb [(Tiada)]>> Geran semua keistimewaan di RoundCubeMail.* Ke 'Roundcube'@'localhost'; Mariadb [(Tiada)]>> Keistimewaan siram; Mariadb [(Tiada)]>> keluar 

9. Seterusnya, import susun atur meja bulat ke pangkalan data yang baru dibuat.

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

Langkah 3: Muat turun Pakej Roundcube

10. Dalam langkah ini, muat turun versi stabil terkini (1.4.9 Pada masa penulisan ini) Roundcube dari halaman muat turun atau gunakan pemuat turun baris perintah wget untuk mendapatkannya, ekstrak fail tar, dan muat naik fail ke dalam root dokumen pelayan web anda.

# wget -c https: // github.com/roundcube/roundcubeMail/siaran/muat turun/1.4.9/RoundcubeMail-1.4.9-lengkap.tar.gz # tar xzf roundcubeMail-1.4.9-lengkap.tar.GZ # MV RoundCubeMail-1.4.9/var/www/html/roundcubeMail 

11. Seterusnya, tetapkan keizinan yang sesuai pada fail Webroot Roundcube.

# chown -r nginx: nginx/var/www/html/roundcubeMail 

Langkah 4: Konfigurasikan blok pelayan nginx untuk pemasang web roundcube

12. Sekarang buat blok pelayan nginx untuk roundcube di bawah /etc/nginx/conf.d/ (Anda boleh menamakan fail dengan cara yang anda mahukan tetapi harus mempunyai .Conf sambungan).

# vim/etc/nginx/conf.d/mel.Contoh.com.Conf 

Tambahkan konfigurasi berikut dalam fail.

pelayan mendengar 80; Server_name mel.Contoh.com; root/var/www/html/roundcubeMail; Indeks indeks.Indeks PHP.html; # i# Logging Access_Log/Var/Log/nginx/Mail.Contoh.com_access_log; error_log/var/log/nginx/mel.Contoh.com_error_log; lokasi / try_files $ uri $ uri / / indeks.php?Q = $ uri & $ args;  lokasi ~ ^/(readme.md | install | lesen | changelog | menaik taraf) $ deny all;  lokasi ~ ^/ (config | temp | logs)/ deny all;  lokasi ~ /\. menafikan semua; akses_log off; log_not_found off;  lokasi ~ \.php $ termasuk/etc/nginx/fastcgi_params; #fastcgi_pass 127.0.0.1: 9000; fastcgi_pass unix:/var/run/php-fpm/php-fpm.kaus kaki; indeks fastcgi_index.PHP; fastcgi_param script_filename $ document_root $ fastcgi_script_name;  

Simpan fail dan tutupnya.

13. Seterusnya, buka fail /etc/php-fpm.D/www.Conf untuk membuat beberapa perubahan pada PHP-FPM Arahan Web.

# vim /etc /php-fpm.D/www.Conf 

Tukar pengguna Apache ke nginx dalam pembolehubah berikut.

pengguna = kumpulan nginx = nginx 

Kemudian komen garis Dengar = 127.0.0.1: 9000 dan tetapkan pembolehubah Dengar untuk mendengar pada soket Unix yang ditetapkan dalam fail blok pelayan Nginx:

Dengar =/var/run/php-fpm/php-fpm.kaus kaki 

Juga, tetapkan keizinan untuk soket Unix, uncomment dan tukar baris ke:

Dengarkan.pemilik = nginx dengar.kumpulan = nginx dengar.mod = 0660 
Konfigurasikan PHP-FPM

Sebaik sahaja anda selesai, simpan fail dan tutupnya.

14. Kemudian mulakan semula Nginx dan PHP-FPM perkhidmatan untuk menerapkan perubahan baru -baru ini, seperti berikut.

# Systemctl Mulakan semula Nginx PHP-FPM 

Langkah 5: Akses UI Web Roundcube

15. Sebelum anda memulakan wizard pemasangan, untuk mengelakkan sebarang kesilapan sesi, tetapkan keizinan yang sesuai di direktori /var/lib/php/sesi/. Pemilik kumpulan lalai adalah Apache, Tukar ke nginx seperti yang ditunjukkan.

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

16. Sekarang buka penyemak imbas dan gunakan alamat http: // mel.Contoh.com/pemasang (Gantikan domain dengan nama pelayan yang anda tetapkan semasa membuat blok pelayan nginx untuk RoundCube) untuk mengakses pemasang web. Jika semua versi PHP, sambungan, dan php.Ini/.Htaccess Tetapan betul, anda akan melihat tangkapan skrin berikut, klik Seterusnya untuk pergi ke halaman konfigurasi.

http: // mel.Contoh.com/pemasang atau http: // ip-address/pemasang 
Akses Pemasang Webmail Roundcube

17. Halaman Konfigurasi membolehkan anda menyediakan contoh Roundcube anda. Kami hanya akan menerangkan pilihan penting untuk skop panduan ini.

Di bawah Konfigurasi Umum, Tetapkan a Nama Produk sebagai contoh Contoh.com webmail.

Nama Produk Roundcube

Pergi ke Persediaan pangkalan data, masuk ke Hos pangkalan data, nama, pengguna, dan kata laluan Untuk menyambung ke pelayan MySQL.

Tetapan pangkalan data Roundcube

Kemudian tatal ke bawah ke Imap dan SMTP tetapan dan masukkan alamat IP anda Imap dan SMTP pelayan, jika pelayan yang sama di mana anda menjalankan Roundcube, biarkan ia sebagai "localhost"Dan juga nyatakan parameter lain yang diperlukan.

Anda boleh menentukan tetapan lain mengikut keperluan anda, setelah selesai, klik Buat konfigurasi.

18. Anda kini harus melihat mesej yang mengatakan ”Fail konfigurasi disimpan dengan jayanya ke dalam direktori/var/www/html/roundcubeMail/config pemasangan Roundcube anda." Klik pada Teruskan.

Fail konfigurasi Roundcube dibuat

19. Anda boleh menyemak konfigurasi anda dari Halaman config ujian Seperti yang ditunjukkan dalam tangkapan skrin berikut.

Ujian konfigurasi RoundCube

20. Seterusnya, keluarkan seluruh folder pemasang (yang mengandungi fail yang boleh mendedahkan data konfigurasi sensitif seperti kata laluan pelayan dan kunci penyulitan kepada orang ramai) dari direktori root roundcube (atau pastikan bahawa enable_installer pilihan dalam konfigurasi.INC.php adalah kurang upaya).

# rm -rf/var/www/html/roundcubeMail/pemasang 

21. Akhirnya, gunakan URL http: // mel.Contoh.com Untuk mengakses halaman log masuk Roundcube. Masukkan nama pengguna dan kata laluan anda untuk melihat surat anda.

Log masuk Webmail Roundcube Akses Webmail Roundcube
Ringkasan

Roundcube adalah pelanggan mel berbilang bahasa yang digunakan secara meluas dan lengkap. Dalam artikel ini, kami menunjukkan cara memasang versi stabil terkini Roundcube Webmail di atas Centos/RHEL 8/7 dengan pelayan web nginx. Sekiranya anda mempunyai sebarang pertanyaan, gunakan borang maklum balas di bawah untuk sampai ke kami.