linux下smtp服务器搭建
linux下smtp服務(wù)器搭建
- postfix安裝和配置
- postfix安裝
- 安裝sasldb、saslauthd
- 配置postfix并啟用smtp
- 查看postfix配置文件的所有配置項(xiàng)
- sasldb2建立smtp用戶和密碼
- 測(cè)試postfix配置文件并啟動(dòng)postfix
- 配置DNS服務(wù)器
- 編輯主配置文件
- 修改區(qū)域配置文件
- 編輯區(qū)域數(shù)據(jù)配置文件
- 創(chuàng)建反向區(qū)域數(shù)據(jù)配置文件
- 啟動(dòng)DNS服務(wù)
- 測(cè)試smtp服務(wù)器是否正常使用
- client端配置發(fā)件人
- 配置smtp服務(wù)器和默認(rèn)發(fā)件人
- 配置DNS
- 發(fā)件命令
postfix安裝和配置
參考 https://blog.jjonline.cn/linux/185.html 作者:晶晶
使用postfix搭建smtp服務(wù)器,主要用于測(cè)試防火墻垃圾郵件識(shí)別
postfix安裝
#開(kāi)始yum安裝前 更換yum源 建議aliyun源 參考:https://blog.jjonline.cn/linux/171.html
#備份原先的yum源信息
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
#從阿里云鏡像站下載centos6的repo
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-6.repo
#最后yum重新生成緩存
yum makecache
yum remove sendmail #卸載sendmail
yum remmove postfix #卸載postfix
yum install postfix #重新安裝postfix
#yum安裝會(huì)自動(dòng)建立postfix用戶組和用戶名
yum install crontabs #因?yàn)樾遁dpostfix的時(shí)候系統(tǒng)定時(shí)服務(wù)也被卸載 核心服務(wù) 也同步安裝下
安裝sasldb、saslauthd
yum install cyrus-sasl* #提供smtp的虛擬賬戶和密碼服務(wù)
#sasldb2包含在saslauthd當(dāng)中 就不要再問(wèn)為什么沒(méi)有安裝sasldb2的shell代碼了
#當(dāng)前mta查看
alternatives --display mta
#設(shè)置mta
/usr/sbin/alternatives --set mta /usr/sbin/sendmail.postfix
#再次查看mta
alternatives --display mta
#輸出結(jié)果最后一行會(huì)有類似如下的提示:mta即設(shè)置完畢
#Current `best’ version is /usr/sbin/sendmail.postfix.
postfix開(kāi)機(jī)啟動(dòng)設(shè)置,因?yàn)椴捎胹asldb2提供postfix的smtp賬戶和密碼,無(wú)需saslauthd服務(wù)運(yùn)行,故而saslauthd服務(wù)不用啟動(dòng)—看吧,使用sasldb2還減少資源占用:
chckconfig postfix on
配置postfix并啟用smtp
postfix配置文件在/etc/postfix目錄下,主要修改的配置文件為:/etc/postfix/main.cf
vi /etc/postfix/main.cf
#vi編輯postfix配置文件
#找到如下配置項(xiàng)酌情修改
查看postfix配置文件的所有配置項(xiàng)
postconf #不帶任何命令參數(shù) 即可輸出所有postfix配置項(xiàng)以及默認(rèn)值
sasldb2建立smtp用戶和密碼
某種意義上來(lái)講:smtp的賬戶密碼建立也就是建立郵箱賬戶(類似jjonline@jjonline.cn的郵箱地址)。
#配置postfix啟用sasldb2作為smtp的賬號(hào)秘密效驗(yàn)方式
#編輯通過(guò)sasl啟用smtp賬號(hào)密碼效驗(yàn)的配置
vi /etc/sasl2/smtpd.conf #vi寫入或編輯內(nèi)容如下:
pwcheck_method: auxpropauxprop_plugin: sasldbmech_list: plain login CRAM-MD5 DIGEST-MD5#這里需要注意的是:這個(gè)配置文件的位置是64位機(jī)器上的,32位機(jī)器應(yīng)該在:/usr/lib/sasl2/smtpd.conf
#創(chuàng)建smtp賬號(hào)
saslpasswd2 -c -u postconf -h mydomain test #回車會(huì)要求輸入密碼,連續(xù)兩次
#表示創(chuàng)建test@$mydomain的郵箱賬號(hào)(也是smtp的賬號(hào))和密碼
#本例就是創(chuàng)建test@jjonline.com.cn賬號(hào)和密碼
#此處注意的是smtp登錄用的賬號(hào)并不是單純的用戶名 而是整個(gè)郵箱地址字符串
#假設(shè)此處設(shè)置的smtp賬號(hào)test@jjonline.com.cn密碼為test123 下方測(cè)試時(shí)要用到
#查看sasldb2的用戶和密碼
sasldblistusers2
#此命令進(jìn)用戶查看sasldb的用戶情況
#此命令回車后會(huì)輸出諸如這樣的內(nèi)容:test@jjonline.com.cn: userPassword
#每次添加smtp用戶完畢之后需重啟postfix或reload
測(cè)試postfix配置文件并啟動(dòng)postfix
#測(cè)試postfix配置文件
service postfix check
#沒(méi)有問(wèn)題的話會(huì)返回著色[ok]字樣
#啟動(dòng)postfix
service postfix start
#設(shè)置postfix開(kāi)機(jī)啟動(dòng)
chkconfig postfix on
#更改sasldb2數(shù)據(jù)的權(quán)限,讓postfix可以讀取
chmod 755 /etc/sasldb2
配置DNS服務(wù)器
參考https://blog.51cto.com/12227558/2074095 作者:0行云流水0
#安裝DNS服務(wù)
yum install bind -y
編輯主配置文件
#主要修改
listen-on port 53 { 10.180.X.X; };#修改自己DNS的ip,這里是10.180.X.X的ip,為linux的管理ip
#檢查語(yǔ)法錯(cuò)誤,沒(méi)有提示表示沒(méi)有語(yǔ)法錯(cuò)誤
named-checkconf
修改區(qū)域配置文件
vi /etc/named.rfc1912.zones
#根據(jù)自己實(shí)際拓?fù)渑渲?#xff0c;這里的linux pc為多網(wǎng)卡pc,根據(jù)拓?fù)湫枰虼伺渲玫膇p為其他網(wǎng)卡的ip
#這里的域名為上面smtp服務(wù)器域名
#下面配置請(qǐng)手動(dòng)自己添加
#檢查語(yǔ)法錯(cuò)誤,沒(méi)有提示表示沒(méi)有語(yǔ)法錯(cuò)誤
named-checkconf
編輯區(qū)域數(shù)據(jù)配置文件
cd /var/named
cp -p named.localhost jjonline.com.cn.zone
#創(chuàng)建正向區(qū)域數(shù)據(jù)配置文件(注意,由于我是復(fù)制另一個(gè)樣式文件,復(fù)制文件時(shí)必須加“-P”,表示復(fù)制過(guò)來(lái)的時(shí)候文件權(quán)限保持不變)
#編輯正向區(qū)域數(shù)據(jù)配置文件
vi jjonline.com.cn.zone
#手動(dòng)修改NS MX和IN A三條,注意域名后面有一個(gè)點(diǎn)
創(chuàng)建反向區(qū)域數(shù)據(jù)配置文件
cp -p named.localhost jjonline.com.cn.local
vi jjonline.com.cn.local
#手動(dòng)修改NS MX和PTR三條,注意域名后面有一個(gè)點(diǎn)
#檢查語(yǔ)法錯(cuò)誤,沒(méi)有提示表示沒(méi)有語(yǔ)法錯(cuò)誤
named-checkconf
啟動(dòng)DNS服務(wù)
#啟動(dòng)命令
systemctl start named
#設(shè)置開(kāi)機(jī)啟動(dòng)
systemctl enable named
#設(shè)置服務(wù)器域名
vi /etc/resolv.conf
原本配置域名為114.114.114.114
把新建的DNS服務(wù)器域名添加到第一條,不然解析不了,不影響其他正常上網(wǎng)活動(dòng)
nameserver 10.180.X.X
nameserver 114.114.114.114
#解析域名
nslookup mail.jjonline.com.cn
#能夠正常解析出域名和ip即可
測(cè)試smtp服務(wù)器是否正常使用
telnet mail.jjonline.com.cn 25
#可以通過(guò)查看mail日志確定是否發(fā)送成功
vi /var/log/maillog
client端配置發(fā)件人
client端仍然使用linux pc,也可以使用windows 直接telnet mail.jjonline.com.cn 25注意要配置域名解析
這里client端使用mailx
參考https://blog.csdn.net/liang19890820/article/details/53115334 作者:一去丶二三里
#安裝mailx
yum install -y mailx
配置smtp服務(wù)器和默認(rèn)發(fā)件人
#smtp協(xié)議是郵件發(fā)件協(xié)議,所有發(fā)出去的郵件都會(huì)先經(jīng)過(guò)smtp server,然后再轉(zhuǎn)發(fā)給對(duì)應(yīng)的收件服務(wù)器,再轉(zhuǎn)發(fā)給對(duì)應(yīng)的收件人
vi /etc/mail.rc
#在文件末尾添加以下信息
配置DNS
vi /etc/resolv.conf
在第一條添加
nameserver 10.180.X.X
#ip為之前smtp server搭建的DNS服務(wù)器IP,要確保路由可達(dá),不然很有可能解析不出來(lái)smtp server的域名
發(fā)件命令
#其中 echo 后面的是郵件的正文
echo “郵件正文” | mail -s “郵件主題” 123456@qq.com
#以文件 file.txt 的內(nèi)容為郵件正文發(fā)送
cat file.txt | mail -s “郵件主題” 123456@qq.com
#這里發(fā)送簡(jiǎn)單郵件
echo “this is a test mail,thks” | mail -v -s “test mail” test1@126.com
#在smtp server上通過(guò)查看日志可以看到是否發(fā)送成功
#要想在126等郵箱中收到可以參考https://www.cnblogs.com/ilanni/p/5294611.html
#本次smtp server搭建主要是用于測(cè)試經(jīng)過(guò)防火墻能否識(shí)別垃圾郵件,由于大多商用郵件服務(wù)器比如126等都有反垃圾郵件功能,因此這里不關(guān)注是否收件人是否收到郵件,主要關(guān)注發(fā)件人群發(fā)郵件,經(jīng)過(guò)防火墻被識(shí)別為垃圾郵件,并阻斷發(fā)件人和smtp server之間的連接。
總結(jié)
以上是生活随笔為你收集整理的linux下smtp服务器搭建的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 去除PreferenceScreen过期
- 下一篇: linux 其他常用命令