文檔地址:http://doc.ewomail.com/docs/ewomail/jianjie
一:簡介
EwoMail開源郵件服務器軟件
EwoMail是基於Linux的開源郵件服務器軟件,集成了眾多優秀穩定的組件,是一個快速部署、簡單高效、多語言、安全穩定的郵件解決方案,幫助你提升運維效率,降低 IT 成本,兼容主流的郵件客戶端,同時支持電腦和手機郵件客戶端。
集成組件
Postfix:郵件服務器
Dovecot:IMAP/POP3/郵件存儲
Amavisd:反垃圾和反病毒
Fail2ban:監控策略
LNAMP:apache,nginx,mysql5.5,php5.4
EwoMail-Admin:WEB郵箱管理后台
Rainloop:webmail
快速部署
只需要執行一行簡單的安裝代碼,只需幾分鍾即可為您部署一台功能完善的郵件服務器,物理服務器或雲服務器都可安裝。
安全穩定
集成知名的開源反垃圾和防病毒組件,為你的郵件保駕護航,服務器定時更新病毒庫,無需管理。
支持基於TLS/SSL(POP3/IMAP/SMTP)郵件傳輸加密,支持服務器與郵件賬號的密碼破解防御。
數據安全,可以根據需求在你的服務器定時備份數據(包括郵件數據)。
無限制
一些大的郵件廠商通常都會有郵件賬號、容量、發件數量的限制,EwoMail並沒有任何限制,容量根據你的服務器硬盤大小來決定。
低配置高效率
無需單獨購買物理服務器,一台低配的雲服務器即可支撐100-500人的郵件賬號通信。
基於PHP開發的郵箱管理后台
基於PHP開發的webmail
二:安裝
安裝環境
安裝前請檢查端口,點擊查看(無法連接服務器)
centos6/7系統,服務器需要干凈環境,要求全新干凈系統,不能安裝在已有的apache,mysql的環境中。
最低配置要求
CPU:1核
內存:1G
硬盤:40G
由於新版本的殺毒軟件占用的內存比較多,512M到2GB內存請參考降低內存占用
EwoMail安裝后會把數據存放在 /ewomail 目錄
建議你提前創建 /ewomail 目錄,並且將硬盤容量掛載或分配到/ewomail
為了你的資料隱私安全,請從該文檔提供的下載渠道安裝使用
關閉selinux
vi /etc/sysconfig/selinux SELINUX=enforcing 改為 SELINUX=disabled
檢查swap
如果沒啟動swap,這會導致EwoMail的防病毒組件不能啟動,所以在安裝前先檢查swap是否已經啟動,如已啟動可跳過該步驟。
查看swap free -m
如果swap位置都顯示是0,那么系統還沒創建swap
創建swap分區(內存超過2G,可不配置)
創建1G的swap,可以根據你的服務器配置來調整大小
dd if=/dev/zero of=/mnt/swap bs=1M count=1024
設置交換分區文件
mkswap /mnt/swap
啟動swap
swapon /mnt/swap
設置開機時自啟用 swap 分區
需要修改文件 /etc/fstab 中的 swap 行,添加 /mnt/swap swap swap defaults 0 0
郵箱域名
EwoMail本身是可以配置多個域名來收發郵件的,但在安裝前需要一個郵箱的主域名。
本次教程例子使用的主域名是ewomail.cn
設置主機名(可不配置主機名)
EwoMail在安裝后會默認使用域名前綴mail的主機名,例如mail.ewomail.cn
將系統主機名改成mail.ewomail.cn
查看當前主機名
hostname -f
centos6 配置
修改主機名,修改文件 /etc/sysconfig/network
修改文件 /etc/hosts , 添加 mail.ewomail.cn
輸入命令:
hostname mail.ewomail.cn
centos7 配置
輸入命令:
hostnamectl set-hostname mail.ewomail.cn
修改文件 /etc/hosts , 添加 mail.ewomail.cn
安裝 (centos7)建議使用 git方式安裝
國內網絡
gitee 項目地址 https://gitee.com/laowu5/EwoMail
yum -y install git cd /root git clone https://gitee.com/laowu5/EwoMail.git cd /root/EwoMail/install #需要輸入一個郵箱域名,不需要前綴,列如下面的ewomail.cn sh ./start.sh ewomail.cn
國外網絡
github 項目地址 https://github.com/gyxuehu/EwoMail
yum -y install git cd /root git clone https://github.com/gyxuehu/EwoMail.git cd /root/EwoMail/install #需要輸入一個郵箱域名,不需要前綴,列如下面的ewomail.cn sh ./start.sh ewomail.cn
在線安裝
安裝前請服務器必須已鏈接網絡,安裝時間將會根據你的系統配置和網絡環境大概會在10分鍾內安裝完成。(需要root權限)
打開:http://www.ewomail.com/list-11.html 輸入你的域名獲取安裝代碼
執行安裝命令后全程會自動安裝(需要root權限)
wget -c http://download.ewomail.com/ewomail-1.0.sh && sh ewomail-1.0.sh ewomail.com
安裝過程中可能會顯示 shutting down postfix : FAILED,如果它的下面再出現一條 starting postfix : OK ,那就是正常的。
安裝成功后將會輸出”Complete installation”。
查看安裝的域名和數據庫密碼
cat /ewomail/config.ini
遇到的報錯
出現 installation failed,dovecot is installed 的報錯,請卸載當前默認的dovecot再重新執行命令安裝
部分centos版本可能會在安裝時不兼容的情況,會出現 ewomail-lamp install failed 在 sh ./start.sh xxx.com 安裝域名后面加-f 完整語句 sh ./start.sh xxx.com -f
注意:使用該命令安裝,必須要求你的系統是全新干凈的系統,而且系統沒有安裝apache,mysql,nginx 這些組件,否則千萬別執行該命令安裝。
下載過慢
當clamav下載過慢的時候,可以用按鍵 ctrl+c 跳過下載,等安裝完成后然后關閉殺毒軟件。
關閉殺毒軟件請查看 降低內存占用
安裝后的常規配置
將你安裝的域名,例如安裝的域名時 xxx.com,就將這行加在服務器的hosts文件里 /etc/hosts
127.0.0.1 mail.xxx.com smtp.xxx.com imap.xxx.com
配置SSL和webmail端口,請點擊常規配置
訪問地址(將IP更換成你服務器IP即可)
郵箱管理后台:http://IP:8010 (默認賬號admin,密碼ewomail123)
web郵件系統:http://IP:8000
項目地址1:https://github.com/gyxuehu/EwoMail
項目地址2:https://gitee.com/laowu5/EwoMail
授權協議
http://www.ewomail.com/license.html
三:常規配置
EwoMail安裝后還需進一步完善資料,只需幾分鍾即可。
修改密碼
郵箱管理后台的默認密碼是ewomail123,建議修改一個復雜的密碼。
登陸:http://IP:8010 , 點擊”個人資料”進行修改。
修改資料
修改后台標題,備案資料,語言種類等等。。
以下針對1.06版本
webmail修改端口
nginx 配置文件 /ewomail/nginx/conf/vhost/rainloop.conf
SSL證書
操作的時候請備份要替換的配置文件
webmail的https
復制/ewomail/nginx/conf/vhost/rainloop.conf.ssl 替換rainloop.conf
1、系統自帶了本地SSL證書,imap,smtp,nginx都會使用它,你可以默認也使用,安裝的時候根據你的域名生成。
2、使用互聯網經過認證的證書,將你申請生成的nginx證書替換以下2個文件
公匙 /etc/ssl/certs/dovecot.pem
私匙 /etc/ssl/private/dovecot.pem
如果你使用默認本地證書,就不用進行替換,復制文件替換后就可以了。
最后執行命令重啟
service nginx restart
systemctl restart postfix dovecot
mysql優化配置
1.06版本默認mysql是針對1G內存以下進行優化的,如果你服務器內存大於1G,請以下操作
將 /ewomail/mysql/etc/my-huge.cnf 替換 /ewomail/mysql/etc/my.cnf
重啟mysql
service mysqld restart
四:域不允許
當顯示域不允許的時候,請檢查域名解析是否已做好,如果只在本地搭建測試,請參考內部通信的文章操作。
如果這2個步驟還不行,請參考自定義訪問路徑文章,填上你具體的訪問地址。
五:使用過程遇到問題
開源版在安裝過程或使用過程中遇到問題,可以將問題發送到我們的郵箱。
請仔細的描述問題,最好把截圖一並發送過來。
咨詢時間:工作日,10:00-12:00,15:00-17:00
咨詢郵箱:solve@ewomail.cn
(注:如果你將EwoMail開源版用於,群發郵件,批量發送郵件,我們將不會回復你的。)
六:開放端口
安裝成功后,系統會開放以下的端口
默認開放的端口
端口都是TCP類型
8000,8010,8020,25,143,993,995,587,110,465
如果是使用的是雲服務器,可能需要在控制面板的防火牆開放以上端口
必須打開的端口8000,8010,25,143
七:郵箱管理后台
EwoMail-Admin郵箱管理后台
EwoMail-Admin是一個郵箱管理后台,用PHP語言開發,開源免費,支持多語言切換,自主原生開發,沒有采用第三方框架,簡單高效、易二次開發。
安裝后默認地址:IP:8010
將IP改成你服務器的IP,例如:127.0.0.1:8010
二次開發
需要搭配EwoMail郵件服務器軟件使用。
支持Linux/Window環境下開發。
環境要求:PHP5.4+,MYSQL5.5+
開發文檔:http://doc.ewomail.com/ewomail-admin
七-1:登錄界面
在瀏覽器輸入你的郵箱管理后台地址,例如:IP:8010
默認賬號:admin
密碼:ewomail123
首次登陸后請盡快改密碼。
七-2:郵箱域名管理
系統安裝后會自動把郵箱主域名添加,手動在后台添加的域名基本是副域名。
添加域名后需要設置副域名的DNS才能正常收發郵件。
七-3:郵箱用戶管理
郵箱用戶管理
添加郵箱
七-4:郵箱系統設置
系統安裝后會自動添加配置信息,在更改主域名后才需要更改郵箱配置信息,一般情況下不建議修改。
imap和smtp是客戶端的配置信息。
七-5:管理員
管理員列表
系統安裝后默認添加一個admin賬號,並且有所有權限,不能刪除。
添加管理員
管理員類型:普通管理員可以根據角色來分配每個欄目的操作權限,超級管理員會擁有所有欄目的操作權限。
七-6:權限管理
角色管理(管理組)
添加角色
填寫一個角色名稱,勾選對應欄目的權限,保存后就可以在管理員頁面設置每個管理員的權限了。
七-8:系統設置
系統設置
設置郵箱管理后台的標題或語言。
八:域名解析
EwoMail郵件服務器安裝完成后需要設置域名解析才能正常發送/接收郵件。
按照文檔的說明來域名解析即可。
域名DNS解析
主域名解析
文檔使用的域名只是例子,只用於參考,實際過程中請使用你的域名。
查看主域名
打開ewomail-admin郵箱管理后台查看主域名,http://IP:8010
設置域名DNS
這里使用萬網DNS為參考
將mail.ewomail.cn 改成你的域名
紅色部分請改為你的服務器IP
副域名解析
文檔使用的域名只是例子,只用於參考,實際過程中請使用你的域名。
設置域名DNS
萬網DNS
請參考以上的圖:
只需要簡單的添加2條DNS記錄即可。
spf記錄:v=spf1 include:ewomail.cn -all
mx記錄:mail.ewomail.cn
請將域名替換成你的主域名。
如需要添加副域名的DKIM,可參考這里DKIM設置
DKIM設置
DKIM是電子郵件驗證標准,域名密鑰識別郵件標准,主要是用來防止被判定為垃圾郵件。
每個域名都需要添加一個dkim的key,EwoMail默認安裝后已自動添加主域名dkim,只需要設置好dkim的dns即可。
獲取dkim key
登錄安裝EwoMail的服務器,執行查看代碼
centos6
[root@mail ~]# amavisd showkeys
centos7
[root@mail ~]# amavisd -c /etc/amavisd/amavisd.conf showkeys
若安裝成功會輸出以下信息:
復制輸出的信息,打開http://www.ewomail.com/list-20.html 整理dkim信息
整理完成后會在“整理顯示區域”顯示解析記錄,接下來設置域名解析即可完成。
設置域名解析
等待10分鍾后測試是否設置正確。
測試命令:
centos6
[root@mail ~]# amavisd testkeys
centos7
[root@mail ~]# amavisd -c /etc/amavisd/amavisd.conf testkeys
顯示pass則正確。
添加新的域名dkim
EwoMail默認安裝后已自動添加主域名dkim,如無需要多個域名,可忽略該步驟。
如果使用子域名作為郵箱域名,例如(test.ewomail.com)
那dkim.domainkey應該是這樣的dkim.domainkey.test
修改/etc/amavisd/amavisd.conf
找到dkim_key開頭,復制添加一行,參考圖上。
重啟amavisd
[root@mail ~]# service amavisd restart
對應該域名設置dkim的域名解析即可。
九:WebMail
WebMail
rainloop開源免費郵件系統
EwoMail的郵件系統是集成了rainloop開源webmail,它是基於PHP語言開發,簡單易用,支持電腦和手機端。
安裝后默認地址:IP:8000
將IP改成你服務器的IP,例如:127.0.0.1:8000
演示圖
郵箱登錄
使用瀏覽器打開http://IP:8000
只支持ewomail郵箱系統的郵箱賬號登陸
郵件操作
常用功能
發送郵件
郵箱設置
一般設置:設置當前郵箱的基本信息
聯系人:開關自動添加到地址簿
賬號:添加多個郵箱賬號和管理
安全:設置獲取郵件的刷新時間
密碼:修改當前郵箱賬號密碼
文件夾:郵箱文件夾管理
主題:選擇web郵箱系統的界面風格
控制面板
登陸控制面板
使用ewomail-admin的賬號和密碼登陸
修改常規信息
包含默認語言,附件上傳限制等等
修改網站標題
其他選項建議不做修改
手機版
使用手機瀏覽器打開http://IP:8000
登陸界面
郵件列表
發送郵件
十:客戶端配置
foxmail
以下的域名僅供參考,請更換成你的域名
iphone
1
IOS版本12+ 的請點擊 > 設置 > 密碼與賬號
2
3
4
5
發件服務器鏈接失敗
發送郵件失敗可參考該圖設置
十一:無法連接服務器
無法連接服務器
1、安裝過程檢查是否有報錯
2、檢查運營商是否開放25端口出站方向
- 25端口是郵局通信的固定端口,不能更換成其他端口,465端口只用登錄(465端口不是用於發送郵件,只用於登錄,將郵件數據加密傳送到本地服務器,最后本地服務器將會鏈接對方郵局的25端口,進行郵件發送,基本所有的郵局,都只用於25端口來接收郵件)
- 如果你的25端口出站方向被屏蔽了,那么你就不能發送郵件到外面的郵局。
- 但你可以使用465端口登錄第三方服務器的郵局
首先在服務器執行以下命令測試你的端口是否正常,注意(是在你搭建郵局的服務器執行)
以下命令不需修改,復制執行即可
yum install telnet -y telnet smtp.qq.com 25
出現220字樣才是正常的。
25端口正常的情況下,如果不能鏈接服務器,請檢查域名DNS解析,或做內部通信。
十二:內部通信
內部通信
在外網端口不確定是否開放的情況下,可以用來測試EwoMail的郵件通信是否正常。
也可以建立你的內部郵件系統。
1、參考教程完成安裝EwoMail
2、設置hosts,添加紅色框文字,將ewomail.org換成你安裝的域名
將你安裝的域名,例如安裝的域名時 xxx.com,就將這行加在服務器的hosts文件里 /etc/hosts
127.0.0.1 mail.xxx.com smtp.xxx.com imap.xxx.com
3、打開管理后台添加2個賬號
4、登錄web郵件系統
5、將test@ewomail.org發一封郵件給test1@ewomail.org,登錄2個賬號檢查是否收發正常
十三:降低內存占用
降低內存占用
降低內存占用
安裝完成EwoMail后,可關閉郵件殺毒軟件可以降低內存占用,對於運行內存2G以下的服務器可關閉殺毒來降低內存占用,關閉后能大大的降低內存的占用,不影響防垃圾郵件檢測。
#查看內存占比命令 free -m
centos7
命令執行
#安裝vim yum install vim -y #修改文件(修改前請備份文件) vim /etc/amavisd/amavisd.conf 輸入 :set number 回車顯示行號 輸入 i 回車可以編輯修改 找到大概在383行左右,將圖片以下的4行前面加上#符號
修改前
修改后
在文件尾部加上該行參數@bypass_virus_checks_maps = (1);
最后按下esc鍵,輸入:wq保存
修改文件(參考上面的例子操作命令修改) vim /usr/lib/systemd/system/amavisd.service 在 Wants=clamd@amavisd.service 前面加上#符號 保存文件
修改后
輸入以下命令即可完成殺毒軟件的關閉
systemctl daemon-reload systemctl stop clamd@amavisd systemctl disable clamd@amavisd systemctl restart amavisd
十四:自定義訪問路徑
自定義訪問路徑
如果在apache修改了后台管理或webmail的訪問路徑,需要修改PHP配置文件才能正常使用webmail。
打開 /ewomail/www/ewomail-admin/core/config.php
修改url和webmail_url的2個值即可。
例如已在apache修改了訪問路徑。
后台管理修改成admin.test.com
webmail修改成mail.test.com
修改后:
‘url’=>’http://admin.test.com',
‘webmail_url’=>’http://mail.test.com',
如果是IP:
‘url’=>’http://127.0.0.1:8010',
‘webmail_url’=>’’http://127.0.0.1:8000',
服務器如果多個IP,請把公網IP寫上即可。
十五:忘記密碼
忘記密碼
管理員默認賬號:admin
默認密碼:ewomail123
忘記管理員
如果忘記管理員密碼,需要進入數據庫修改。
查看數據庫密碼
進入服務器執行命令:cat /ewomail/config.ini
上圖紅圈的是root賬號密碼
打開http://IP:8020 (ewomail默認安裝了phpmyadmin,為了安全,可以關閉或更換端口)
打開ewomail數據庫,找到i_admin表,將password改為3bb3733de472b226208307ec1e689347
這樣就可以把密碼改回ewomail123,重新使用默認賬號和密碼登錄即可。
十六:數據備份與還原
數據備份與還原
EwoMail 主要目錄在/ewomail,相關的數據與文件都存放在該目錄。
數據備份
備份ewomail數據庫,相關數據庫備份操作可百度mysql數據庫操作
備份目錄/ewomail/mail
數據還原
無論你在原有EwoMail或新安裝的EwoMail,都可以還原。
將備份的數據庫覆蓋mysql的ewomail數據庫
將備份的目錄/ewomail/mail,覆蓋回去。
執行下面的命令
chown -R vmail:vmail /ewomail/mail systemctl restart dovecot
十七:其他
關閉selinux
EwoMail在安裝前會默認臨時關閉SELINUX,安裝后請手動永久關閉SELINUX,否則在重啟服務器后會遇到一些不正常的因素。
關閉selinux
vi /etc/sysconfig/selinux SELINUX=enforcing 改為 SELINUX=disabled
apache/nginx
1.05版本開始
nginx
默認綁定80端口,需手動啟動。
可以利用nginx配置php-fpm或apache,php-fpm默認端口9000,需手動啟動。
配置目錄:/ewomail/nginx
啟動命令:
service nginx start
php-fpm啟動命令:
service php-fpm start
apache
取消apache的80端口,管理郵箱后台與webmail保留原來的端口。
配置目錄:/ewomail/apache
啟動命令:
service httpd start
十八:重裝與卸載
重裝與卸載
1、重裝需要重新安裝系統,然后按照教程來安裝。
2、卸載,因為依賴的組件比較多,所以卸載后再安裝會有相關沖突,所以不能再次重裝。
服務器執行
service httpd stop
service mysqld stop
rm -rf /ewomail
十九:重啟命令
重啟命令
centos7
service php-fpm restart
service nginx restart
service mysqld restart
systemctl restart postfix dovecot amavisd
centos6
service php-fpm restart
service nginx restart
service mysqld restart
service dovecot restart
service postfix restart
service amavisd restart
也可以直接重啟服務器,重啟后會直接啟動所有的組件,如果是網頁打不開,就重啟下nginx就可以了
二十:exe附件收發
exe附件收發
系統默認會禁止exe后綴文件附件的收發,如果你需要開通這個權限,請操作以下步驟
修改/etc/amavisd/amavisd.conf
將圖上的紅色圈,每行的前面加上 #
最后執行 systemctl restart amavisd