如何使用Apache / Nginx在Ubuntu 20.04上安裝RainLoop Webmail

在先前的文章中,我們討論了如何從頭開始在Ubuntu上設置您自己的郵件服務器。 本教程將向您展示如何在具有Apache或Nginx Web服務器的Ubuntu 20.04上安裝RainLoop Webmail。 RainLoop是一個使用PHP編寫的簡單,現代,快速和開放源代碼的基於Web的電子郵件客戶端。

RainLoop網絡郵件功能

  • 現代化的網絡界面,可讓您上傳自定義主題。
  • 快速輕巧
  • 同時支持SMTP和IMAP。
  • 支持多個帳戶,這意味着您可以從一個位置訪問所有電子郵件地址。
  • 支持兩因素認證。
  • 與Facebook,Twitter,Google和Dropbox集成。
  • 直接訪問郵件服務器,無需數據庫。
  • 易於安裝和升級(在管理面板中一鍵式升級)

。 RainLoop有兩個版本:

  • 社區版 根據AGPL v3許可發布
  • 標準版 根據RainLoop軟件許可發布。

在本教程中,我們將使用免費的開源社區版本。

步驟1:安裝Apache,PHP7或Nginx,PHP7

如果使用Apache和PHP7,請使用以下命令在Ubuntu 20.04上安裝它們:

sudo apt update

sudo apt install apache2 php7.4 libapache2-mod-php7.4

如果使用Nginx和PHP7,請使用以下命令安裝它們:

sudo apt update

sudo apt install nginx php7.4 php7.4-fpm

並安裝RainLoop所需的以下PHP擴展。

sudo apt install php7.4-curl php7.4-xml

步驟2:在Ubuntu 20.04上下載並安裝RainLoop Webmail

首先,在當前工作目錄中為Rainloop創建一個目錄。

mkdir rainloop

將CD複製到目錄中,並使用以下命令下載最新的RainLoop社區版本:

cd rainloop

curl -s http://repository.rainloop.net/installer.php | php

完成後,將該目錄移動到 /var/www/

cd ..

sudo mv rainloop /var/www/

現在設置Web服務器用戶(www-data)作為所有者。

sudo chown www-data:www-data /var/www/rainloop/ -R

步驟3:為RainLoop配置虛擬主機

我們可以使用Apache或Nginx Web服務器。

阿帕奇

如果要使用Apache Web服務器,請使用以下命令創建虛擬主機文件:

sudo nano /etc/apache2/sites-available/rainloop.conf

將以下文本放入文件中。 用您的實際信息替換紅色文本。

<VirtualHost *:80>
  ServerName mail.example.com
  DocumentRoot "/var/www/rainloop/"

  ErrorLog "/var/log/apache2/rainloop_error_log"
  TransferLog "/var/log/apache2/rainloop_access_log"

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

  <Directory /var/www/rainloop/data>
     Require all denied
  </Directory>

</VirtualHost>

保存並關閉文件。 然後啟用此虛擬主機。

sudo a2ensite rainloop.conf

並重新加載Apache。

sudo systemctl reload apache2

Nginx的

如果您想使用Nginx Web服務器,請使用以下命令創建虛擬主機文件:

sudo nano /etc/nginx/conf.d/rainloop.conf

將以下文本放入文件中。 用您自己的域名替換mail.example.com。

server {
   listen 80;
   listen [::]:80;
   server_name mail.example.com;

   root /var/www/rainloop;
   index index.php index.html;
	
   access_log /var/log/nginx/rainloop_access.log;
   error_log /var/log/nginx/rainloop_error.log;
   
   location / {
       try_files $uri $uri/ /index.php?$query_string;
   }

   location ~ ^/(.+.php)$ {
        try_files $uri =404;
        fastcgi_pass unix:/run/php/php7.4-fpm.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include /etc/nginx/fastcgi_params;
   }
 
   location ^~ /data {
       deny all;
   }
}

保存並關閉文件。 然後測試Nginx配置。

sudo nginx -t

如果測試成功,請重新加載Nginx配置。

sudo systemctl reload nginx

步驟4:安裝TLS / SSL證書

如果要將HTTPS添加到Webmail,則可以從Let’s Encrypt CA獲得免費的TLS / SSL證書。 首先,讓我們安裝 certbot 客戶。 以下命令將從官方certbot PPA安裝客戶端和apache插件。

sudo apt install software-properties-common

sudo add-apt-repository ppa:certbot/certbot

sudo apt update

sudo apt install certbot

如果使用Apache Web服務器,則還需要安裝Certbot Apache插件。

sudo apt install python3-certbot-apache

然後發出以下命令以獲得免費的TLS / SSL證書。 將紅色文本替換為您的實際電子郵件地址和域名。

sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d mail.example.com

如果使用Nginx Web服務器,則需要安裝Certbot Nginx插件。

sudo apt install python3-certbot-nginx

然後使用Nginx插件通過運行以下命令來獲取並安裝證書。 將紅色文本替換為您的實際電子郵件地址和域名。

sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d mail.example.com

您將看到以下文本,表明您已成功獲得TLS證書。 您的證書和鏈條已保存在 /etc/letsencrypt/live/mail.example.com/ 目錄。

現在,如果您訪問 http://mail.example.com,您將被重定向到 https://mail.example.com

步驟5:配置RainLoop Webmail

通過以下URL登錄到RainLoop管理面板。

mail.example.com/?admin

默認用戶名是 admin 默認密碼是 12345

rainloop Webmail管理員登錄頁面

登錄後,建議更改用戶名和密碼,因為 admin 是一個簡單的目標。 點擊 security 標籤在左窗格中。 首先更新您的密碼,然後重新登錄並更新您的用戶名。

rainloop-webmail-ubuntu-20.04

要通過RainLoop訪問電子郵件,您需要在 Domains 標籤。 默認情況下,添加了4個電子郵件域: gmail.comoutlook.comqq.comyahoo.com

rainloop webmail多個電子郵件域

這些電子郵件域的SMTP服務器設置和IMAP服務器設置由RainLoop配置,但默認情況下僅啟用Gmail。 要啟用其他3個電子郵件域,只需在複選框中打勾即可。

要訪問您自己的電子郵件服務器,請單擊 Add Domain 按鈕,然後輸入您自己的電子郵件服務器的IMAP和SMTP服務器設置。

  • IMAP:服務器 mail.example.com, 港口 143,安全 STARTTLS
  • SMTP:服務器 mail.example.com, 港口 587,安全 STARTTLS。 勾選使用身份驗證。

rainloop imap和smtp設置

如果Rainloop和Postfix / Dovecot在同一服務器上運行,則可以使用以下配置,因此您的服務器不必在DNS中查找域並建立TLS連接。

  • IMAP:服務器 127.0.0.1, 港口 143,安全 沒有
  • SMTP:服務器 127.0.0.1, 港口 25,安全 沒有。 不要在端口25上使用身份驗證。

同一台服務器上的rainloop postfix dovecot

您還需要通過選中右側的複選框或錯誤來啟用自己的電子郵件域 domain is not allowed 登錄您的電子郵件地址時將出現。

完成配置後,在瀏覽器地址欄中輸入RainLoop Webmail域名,不輸入 /?admin 後綴。

mail.example.com

並登錄到您的電子郵件帳戶。

Rainloop Ubuntu

RainLoop網絡郵件

rainloop網絡郵件Ubuntu

如果身份驗證失敗,則可能需要在IMAP服務器設置頁面中啟用短登錄。

您只需要做這些,即可訪問Gmail,Outlook郵件或您自己的電子郵件域中的電子郵件。 如果添加多個電子郵件帳戶,則可以從用戶下拉菜單輕鬆地在它們之間切換。 確實很酷! 您還可以配置其他設置並自定義Webmail界面。

從電子郵件標題中刪除敏感信息

默認情況下,Rainloop將添加一個 X-Mailer 電子郵件標題,指示您正在使用Rainloop Webmail和版本號。 您可以告訴Postfix忽略它,以便收件人看不到它。 運行以下命令以創建頭檢查文件。

sudo nano /etc/postfix/smtp_header_checks

將以下行放入文件中。

/^X-Mailer.*RainLoop/           IGNORE

保存並關閉文件。 然後編輯Postfix主配置文件。

sudo nano /etc/postfix/main.cf

在文件末尾添加以下行。

smtp_header_checks = regexp:/etc/postfix/smtp_header_checks

保存並關閉文件。 然後運行以下命令重建哈希表。

sudo postmap /etc/postfix/smtp_header_checks

重新加載Postfix以使更改生效。

sudo systemctl reload postfix

現在Postfix將不包括 X-Mailer: Rainloop 在電子郵件標題中。

增加附件大小限制

如果使用PHP-FPM運行PHP腳本,則上傳到Rainloop的圖像(如圖像),PDF文件等文件不能大於2MB。 要增加上傳大小限制,請編輯PHP配置文件。

sudo nano /etc/php/7.4/fpm/php.ini

找到以下行(行846)。

upload_max_filesize = 2M

如下更改值。 請注意,此值不應大於Postfix SMTP服務器設置的附件大小限制。

upload_max_filesize = 50M

然後找到以下行(694行)。

post_max_size = 8M

更改PHP將接受的POST數據的最大大小。

post_max_size = 50M

保存並關閉文件。 或者,您可以運行以下兩個命令來更改值,而無需手動打開文件。

sudo sed -i 's/upload_max_filesize = 2M/upload_max_filesize = 50M/g' /etc/php/7.4/fpm/php.ini

sudo sed -i 's/post_max_size = 8M/post_max_size = 50M/g' /etc/php/7.4/fpm/php.ini

然後重新啟動PHP-FPM。

sudo systemctl restart php7.4-fpm

Nginx還設置了上傳文件大小的限制。 Nginx設置的默認最大上傳文件大小限制為1MB。 如果您使用Nginx,請編輯Nginx配置文件。

sudo nano /etc/nginx/conf.d/mail.example.com.conf

在SSL虛擬主機中添加以下行。

client_max_body_size 50M;

保存並關閉文件。 然後重新加載Nginx以使更改生效。

sudo systemctl reload nginx

接下來,登錄到Rainloop管理面板(https://mail.example.com/?admin)並更改附件大小限制。

雨環附件大小限制

保存更改。 您需要從網絡郵件註銷並重新登錄,以使更改生效。

將圖像上傳為自定義主題

用戶可以通過單擊左下角的齒輪圖標並選擇 themes 左側欄上的標籤。 您也可以上傳圖像作為自定義主題。

rainloop自定義主題

我的自定義主題。

rainloop上傳背景圖片

包起來

我希望本教程可以幫助您在Ubuntu 20.04上安裝RainLoop Webmail。 與往常一樣,如果您發現此帖子有用,請訂閱我們的免費新聞簡報,以獲取更多提示和技巧。 保重🙂

Sidebar