centos6搭建郵件伺服器
① 自己搭建郵件伺服器有哪些軟硬體需求
其實建個郵件系統沒那麼復雜,只要你有域名、ip(動態IP通過花生殼來綁定)和伺服器就行。
1. 貴司現在用ADSL,考慮到經濟的問題,可以拉多一條電信ADSL4M用於郵箱服務,通過花生殼綁定,限制用戶所發大附件,這樣可以最大程度利用寬頻。花生殼是肯定沒固定IP穩定的了,一年可能有那麼幾次掉線,如果你對郵件實時性要求不是非常高,完全可以滿足你要求。
2. 南北互通和國外郵件的問題,一般如果有實力的郵件系統廠商會提供海外中繼伺服器功能,只要檢測到你那些發送失敗的郵件,會自動通過廠家的中繼服務走。當然,這個成本高,所以也不是每個廠家都有實力做的。通過海外中繼,可以作為你郵件發送失敗多一層保障,解決這些問題。
3. 垃圾郵件多,也是需要看郵件系統能提供一個怎樣的反垃圾機制,這是非常重要的,單靠你自己收集垃圾郵件特徵,黑名單或者灰名單,你是搞不掂的,要知道中國是垃圾郵件大國呀。一般來講,有實力的廠商都會自己維護一個反垃圾規則庫,用於和客戶的垃圾規則庫進行同步實時更新,這個也是高成本,很多免費或者小產品,是沒有反垃圾規則庫的。
4. 最後最重要的還是做測試,其他神馬都是浮雲,針對你關心的重點功能做測試,畢竟一分錢一分貨,便宜的一大把,但可能你用不到多久,就被大量的發送失敗郵件、垃圾郵件逼迫著換產品了,你可以用用turbomail ,25用戶免費的,安裝起來也挺簡單,先測試測試。
1. 用以下命令查看系統是否安裝了sendmail:
[root@mail /root]# rpm –qa |grep sendmail
sendmail-8.11.0-8
2. 卸載sendmail:
[root@mail /root]# rpm -e sendmail –nodeps
3. 用以下命令殺死運行中的sendmail進程:
[root@mail /root]# killall sendmail
如果系統提示:
sendmail: no process killed
則說明當前系統中沒有sendmail進程。
4. 安裝postfix:
[root@mail /root]# rpm -ivh postfix-20010228release-2.i386.rpm
若已經安裝,則此步可以省略。(註:安裝時最好用rpm包,會自動創建postfix用戶和postfix組)
5. 安裝imap
rpm –ivh /mnt/cdrom/RedHat/RPMS/ imap-4.7c2-12.rpm
imap使pop3有效,即打開110埠。(註:安裝時最好用rpm包)
若已經安裝,則此步可以省略。
6. 檢查系統中是否安裝了cyrus-sasl
執行以下命令查看系統中是否安裝了cyrus-sasl:
rpm –qa |grep cyurs
如果您看到以下提示,則說明已經安裝了cyrus-sasl
[root@test bye2000]# rpm -qa |grep sasl
cyrus-sasl-devel-1.5.24-17
cyrus-sasl-1.5.24-17
否則,請用rpm –ivh 命令先安裝所需sasl-cyrus包。
7.修改postfix用戶
同時應該讓該用戶不能登錄到系統,也即不為該用戶指定可執行的登錄外殼程序和可用
的用戶宿主目錄。
編輯/etc/passwd文件中的相關條目如下所示:
postfix:x:89:89::/no/where:/no/shell [編輯後,只修改藍色部分就可以了]
即:修改用戶的Home directory和Shell 參照 /etc/passwd文件
8.編輯postfix的主要配置文件/etc/postfix/main.cf,根據需求只需修改以下幾個參數:
1)mydomain
指明你的域名,在這里我們指定:
mydomain = xx.com
2)myorigin
myorigin參數指明發件人所在的域名。如果你的用戶的郵件地址為[email protected],則該參數指定@後面的域名。在這里我們指定:
myorigin = $mydomain
3)inet_interfaces
inet_interfaces = all 監聽所有埠
4)mydestination
mydestination參數指定postfix接收郵件時收件人的域名,換句話說,也就是你的postfix
系統要接收什麼樣的郵件。通常與myorigin一樣:
mydestination = $mydomain
5)mynetworks_style
設置網路類型,我們指定:
mynetworks_style = subnet
6)ynetworks
定義可以使用的此smtp伺服器發信的客戶ip地址,因為公司的ip范圍已知,所以我們
指定:
mynetworks = 192.168.1.0/24
註:此項可根據情況而定,主要是指定ip范圍,假如公司的ip劃分是按照網段來的,例如:10.10.1.0~10.10.1.9,10.10.3.0~10.10.3.9等等更細。根據需要,該項可以不設置。
7)SMTP的配置
為了告訴postfix採用sasl來進行SMTP的用戶認證,我們必須在/etc/postfix/main.cf文件的最後添加以下幾行:
smtpd_sasl_auth_enable = yes
smtpd_recipient_restrictions = permit_sasl_authenticated
permit_auth_destination reject
broken_sasl_auth_clients = yes
smtpd_sasl_security_options = noanonymous
說明如下:
smtpd_sasl_auth_enable:告訴SMTP客戶,該SMTP伺服器需要進行用戶認證。
smtpd_recipient_restrictions = permit_sasl_authenticated
permit_auth_destination reject
僅僅中繼通過SMTP認證的客戶端郵件,以及接收本postfix為最後一站的郵件。
broken_sasl_auth_clients = yes
有一些Microsoft 的SMTP客戶端,比如Outlook Express 4.X採用的是非標準的SMTP認證協議,將該選項設置為yes可以解決這類不兼容問題。
smtpd_sasl_security_options = noanonymous
控制本地SMTP認證所採用的機制,這里是允許任何非匿名認證方法。
9.配置SASL
進入/usr/lib/sasl/目錄,用touch新建這樣一個文件:
[root@test sasl]# touch smtpd.conf
在該文件中加入以下內容:
[root@test sasl]# more smtpd.conf
pwcheck_method:pam
也就是指定通過PAM來進行用戶認證。
10.配置PAM
進入/etc/pam.d/目錄,用touch新建這樣一個文件:
[root@test pam.d]# touch smtp
在該文件中加入如下內容:
[root@test pam.d]# more smtp
#%PAM-1.0
auth required /lib/security/pam_stack.so service=system-auth
account required /lib/security/pam_stack.so service=system-auth
也即和/etc/pam.d/pop文件的內容是一致的。
11.修改/etc/shadow文件許可權
因為PAM最終要去讀取/etc/shadow文件的內容來進行用戶認證,但是/etc/shadow文件
許可權是設置為只有root用戶可以讀寫,而我們的postfix是運行在postfix用戶許可權之下,所以我們要合理的設置/etc/shadow文件許可權,以便讓pam可以讀取其內容。
執行以下命令,讓root組也可以讀取shadow:
[root@test /etc]# chmod 640 /etc/shadow
然後再將postfix用戶加入root組,採用以下命令:
[root@test /etc]# usermod -G root postfix
12.編輯postfix的主要配置文件/etc/postfix/master.cf
# ==========================================================================
# service type private unpriv chroot wakeup maxproc command + args
# (yes) (yes) (yes) (never) (100)
# ==========================================================================
smtp inet n - n - - smtpd
這里開始
#smtps inet n - n - - smtpd
# -o smtpd_tls_wrappermode=yes -o smtpd_sasl_auth_enable=yes
#submission inet n - n - - smtpd
# -o smtpd_enforce_tls=yes -o smtpd_sasl_auth_enable=yes
這里結束
#628 inet n - n - - qmqpd
把我標的注釋部分去掉即可。
13.配置pop3
RedHat7.0已經使用xinetd代替了以前的inetd,為了使pop3服務啟動,我們編輯
/etc/xinetd.d/ipop3文件,將其中的disable = yes改為disable = no 以便啟動pop3
服務。
為了使改動生效,執行以下命令:
/etc/rc.d/init.d/xinetd reload
14.啟動postfix
執行以下命令啟動postfix:
/etc/rc.d/init.d/postfix start
這樣,一個支持SMTP認證的postfix郵件伺服器就配好了。
③ Centos搭建mqtt
本文使用emqx搭建mqtt: 官方地址傳送門
1.查看openssl版本
一般情況,centos7版本為1.0.2,mqtt的框架emqx必須大於1.0.2,所以如果低於該版本請升級: centos升級openssl教程傳送門
2.安裝
3.查看防火牆
如果當前伺服器打開了防火牆,需要將防火牆相應埠進行配置。
4.進入etc/emqx目錄
5.修改配置文件emqx.conf
修改配置文件內容。
6.打開配置網頁
登錄網頁端後台: http://xx.xx.xx.xx:18083/
7.配置網頁打開插件emqx_auth_mnesia
網頁端->插件->emqx_auth_mnesia->啟動
8.配置mqtt用戶名和密碼
修改文件內容:
9.配置acl主題許可權
修改文件內容:
10.重新載入acl配置文件
11.重新啟動emqx
④ linux mail伺服器怎麼用
一、概述:
在配置郵件伺服器之前,先解釋幾個概念。
通常使用Email都很容易,但是Internet的郵件系統是通過幾個復雜的部分連接而成的,對於最終用戶而言,我們熟悉的Outlook,Foxmail等都是用來收信和發信的,稱之為MUA:Mail User Agent,郵件用戶代理。
MUA並非直接將郵件發送至收件人手中,而是通過MTA:Mail Transfer Agent,郵件傳輸代理代為傳遞,Sendmail和Postfix就是扮演MTA的角色。
一封郵件從MUA發出後,可能通過一個或多個MTA傳遞,最終到達MDA:Mail Delivery Agent,郵件投遞代理,郵件到達MDA後,就存放在某個文件或特殊的資料庫里,我們將這個長期保存郵件的地方稱之為郵箱。
一旦郵件到達郵箱,就原地不動了,等用戶再通過MUA將其取走,就是用Outlook,Foxmail等軟體收信的過程。
所以一封郵件的流程是:
發件人:MUA --發送--> MTA -> 若干個MTA... -> MTA -> MDA <--收取-- MUA:收件人
MUA到MTA,以及MTA到MTA之間使用的協議就是SMTP協議,而收郵件時,MUA到MDA之間使用的協議最常用的是POP3或IMAP。
需要注意的是,專業郵件服務商都有大量的機器來為用戶服務,所以通常MTA和MDA並不是同一台伺服器,因此,在Outlook等軟體里,我們需要分別填寫SMTP發送伺服器的地址和POP3接收伺服器的地址。
Linux系統下郵件伺服器的搭建(Postfix+Dovecot)
對於網站來說,發送各種例如注冊通知的郵件是很基本的一個需求,之前我一直用的是騰訊的企業郵箱,感覺挺方便的,直接可以綁定QQ郵箱接收郵件,網站配置一下SMTP也就可以發出郵件。
但是在前幾天由於有重要信息需要立即通知用戶,所以選擇了群發郵件的方式。在當我以為一切都是辣么完美的時候,陸續有用戶過來問我什麼情況,我都會跟他們說請查收郵件,但是有好幾個人說並沒有任何
郵件,於是我試著再發一次,結果返回了錯誤提示。在網上找了下原因,後來看到這個:各大免費郵箱郵件群發賬戶SMTP伺服器配置及SMTP發送量限制情況,才知道是因為發信數量限制了。
所以只好另尋出路了,然後我在知乎上面找到了很多個提供郵件發送的服務商,大概有這些:SendGrid、MailChimp、Amazon SES、SendCloud、Mailgun等等,在看了不少人的建議之後,我選擇了Mailgun。
Mailgun注冊和配置都挺簡單,很快我就成功的發出了第一封郵件,懷著這封欣喜,我又發送了幾封郵件,可是悲劇發生在第三封郵件,Mailgun後台有詳細的發送記錄,這個非常不錯,在後台我看到我的郵件被拒收了,原因大概是該伺服器IP的發信頻率超過騰訊郵箱限制。所以這里就涉及到IP的問題,目前第三方的郵件發送服務普遍都是共享IP(後面還試過SendCloud、),而共享IP並不能確定是否已經達到接收方的數量限制,一旦達到了就無法再發送。這就是說還需要使用獨立IP才能保證郵件有較高的到達率,接著就看了各家的獨立IP價格,一般都是二十幾甚至四十幾美刀一個月,這對於我們這種小站長郵件需求不高的來說確實有點貴,買台VPS都不用這個價吧。
經過上面這些折騰,也算明白了如果要想順暢的發出郵件的話,除了花錢,就只有自己搭建一個郵件伺服器了。
好了,下面開始進入正題,教你搭建一個簡單的郵件伺服器。
用於搭建的伺服器信息
阿里雲 Centos 6.5 32位
Postfix-2.8.12.tar.gz Postfix MTA(郵件傳輸代理)
Dovecot-2.1.8.tar.gz IMAP 和 POP3 郵件伺服器
Postfixadmin-2.3.5.tar.gz 採用php編寫的開源WEB郵箱及域名賬號管理工具
Roundcubemail-0.8.1.tar.gz 採用php編寫的開源IMAP郵件WEB客戶端
安裝過程
1.安裝Postfix
yum -y install postfix
安裝完成還需要替換系統自帶的sendmail:
rpm -e sendmail
或者
yum remove sendmail
修改MTA(默認郵件傳輸代理)
alternatives --config mta
然後直接回車即可。
檢查一下是不是已經設置成功了。
alternatives --display mta
第一行可以看到mta的狀態。 例如:mat - status is manual.
2.安裝Dovecot
yum -y install dovecot
3.配置Postfix
編輯/etc/postfix/main.cf,可以下載下來修改,也可以使用vi進行編輯:
vi /etc/postfix/main.cf
修改如下:
# 75行: 取消注釋,設置hostname
myhostname = mail.lomu.me
# 83行: 取消注釋,設置域名
mydomain = lomu.me
# 99行: 取消注釋
myorigin = $mydomain
# 116行: 修改
inet_interfaces = all
# 119行: 推薦ipv4,如果支持ipv6,則可以為all
inet_protocols = ipv4
# 164行: 添加
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
# 264行: 取消注釋,指定內網和本地的IP地址范圍
mynetworks = 127.0.0.0/8, 10.0.0.0/24
# 419行: 取消注釋,郵件保存目錄
home_mailbox = Maildir/
# 571行: 添加
smtpd_banner = $myhostname ESMTP
# 添加到最後
# 規定郵件最大尺寸為10M
message_size_limit = 10485760
# 規定收件箱最大容量為1G
mailbox_size_limit = 1073741824
# SMTP認證
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
smtpd_sasl_local_domain = $myhostname
smtpd_recipient_restrictions = permit_mynetworks,permit_auth_destination,permit_sasl_authenticated,reject
修改好了之後使用/etc/rc.d/init.d/postfix start開啟postfix,使用chkconfig postfix on將postfix開機啟動。
4.配置Dovecot
修改如下:
[root@mail ~]# vi /etc/dovecot/dovecot.conf
# 26行: 如果不使用IPv6,請修改為*
listen = *
[root@mail ~]# vi /etc/dovecot/conf.d/10-auth.conf
# 9行: 取消注釋並修改
disable_plaintext_auth = no
# 97行: 添加
auth_mechanisms = plain login
[root@mail ~]# vi /etc/dovecot/conf.d/10-mail.conf
# 30行: 取消注釋並添加
mail_location = maildir:~/Maildir
[root@mail ~]# vi /etc/dovecot/conf.d/10-master.conf
# 88-90行: 取消注釋並添加
# Postfix smtp驗證
unix_listener /var/spool/postfix/private/auth {
mode = 0666
user = postfix
group = postfix
}
[root@mail ~]# /etc/rc.d/init.d/dovecot start
Starting Dovecot Imap: [ OK ]
[root@mail ~]# chkconfig dovecot on
到這里,我們的郵件伺服器就已經搭建成功了。
5.域名解析
最後別忘了還需要進行域名解析工作。
添加一個子域名mail,A記錄解析到伺服器IP。
再添加一個MX記錄,主機記錄為空,記錄值為上面解析的二級域名mail.lomu.me,優先順序10。
注意:解析生效可能需要一段時間。
6.防火牆設置
/sbin/iptables -A INPUT -p tcp --dport 25 -j ACCEPT
/sbin/iptables -A INPUT -p tcp --dport 110 -j ACCEPT
/sbin/iptables -A INPUT -p tcp --dport 143 -j ACCEPT
突破封鎖25口的轉發
/sbin/iptables -t nat -A PREROUTING -p tcp -m tcp --dport 10025 -j REDIRECT --to-ports 25
7.郵箱使用
一切都弄好以後,就可以使用Foxmail等第三方軟體來收發郵件了。在這里需要說一下,系統用戶就是郵件的用戶,例如root,就是一個郵箱用戶,郵箱是[email protected],密碼就是root的密碼,所以需要創建用戶,只要使用useradd創建用戶,再使用passwd設置密碼。
好了,假如我們創建一個admin的用戶:
# 創建用戶
useradd admin
#設置密碼,會要求輸入兩次密碼
passwd admin
接下來登錄Foxmail,如圖:
點擊創建,進入:
這里需要注意,郵件賬號是admin,並不是郵箱,另外我們沒有配置SSL,所以也不要勾選。 接下來點擊創建,如果一切正常的話,你已經成功了。
⑤ centos搭建郵件伺服器
centos郵件伺服器搭建_高可靠,彈性擴展的計算資源服務,按需選擇不同規格的CPU,內存,操作系統,硬碟和網路來創建您的雲主機,助您快速靈活地構建企業應用.
廣東盈世計算機科技有限公司(品牌:Coremail )教你如何搭建centos搭建郵件伺服器?
Coremail是國內領先的電子郵件產品與解決方案提供商,產品涵蓋郵件系統、企業郵箱、郵件歸檔系統、郵件投遞系統、郵件安全網關、海外安全中繼等。經過23年的深入研發和完善,系統技術成熟,性能穩定高效,能充分發揮郵件伺服器性能,是眾多知名企業及政府高校搭建郵件伺服器系統及企業郵箱的首選方案。
具體可以查看網站鏈接了解詳情:http://www.coremail.cn
⑥ centos搭建ftp服務
一:安裝FTP
輸入vsftpd -v判斷是否安裝成功
啟動/停止/重啟FTP
二:添加ftp用戶
1:創建ftp用戶並設置密碼
2:配置該用戶僅能通過 FTP 訪問
三:FTP配置
1:FTP的配置文件在/etc/vsftpd/vsftpd.conf,找到以下配置並修改或添加
2:配置可以登錄ftp用戶
在/etc/vsftpd/user_list文件中添加可以登錄ftp的用戶:
3:配置ftp用戶登錄後訪問的目錄
在/etc/vsftpd目錄下新建一個userconfig目錄,在userconfig目錄下配置用戶的登錄目錄,例:注意:文件名就是你想要配置的用戶名稱
在vsftpd文件中添加
配置完成後重啟FTP更新配置
四:創建測試目錄及文件
創建目錄
設置訪問許可權:
創建一個測試文件,並在裡面寫上this is test!!!
五:防火牆配置
禁用防火牆或者開啟21埠和30000埠
(1):開啟21埠
530問題
1.cat /etc/passwd,查看你登陸的賬戶主目錄和登陸shell對應的是什麼,我的是/sbin/nologin
用戶名:口令:用戶標識號:組標識號:注釋性描述:主目錄:登錄Shell
2.查看cat /etc/shells是否有你用戶的主目錄和登陸shell,沒有進行添加,保存,退出。
通過其他伺服器鏈接ftp
先安裝ftp指令 yum install ftp
連接 ftp 192.168.6.36