域名邮箱和邮件服务器
郵箱
更多請見個人主頁https://www.bajins.com
目錄
- 郵箱
- flag
- 域名郵箱
- Yandex配置步驟
- 郵件服務器
- 郵件服務器概述
- 設置域名解析
- 卸載`sendmail`
- 安裝`Postfix`和`Dovecot`
- 查看版本
- 修改郵件傳輸代理
- 查看是否修改成功
- 修改`Postfix`配置
- 修改`Dovecot`配置
- 修改防火墻配置
- 配置用戶及權限
- 啟動服務
- 使用`mail`測試發(fā)信
- 使用`telnet`測試收信
flag
- https://github.com/denghongcai/forsaken-mail
- https://github.com/malaohu/forsaken-mail
- https://github.com/flashmob/go-guerrilla
- 測試郵箱
域名郵箱
- 寶塔郵局管理器
- httpsmail
Yandex配置步驟
- https://hky.moe/archives/21
端口
-
SMTP:smtp.yandex.com:465 SSL
-
IMAP:imap.yandex.com:993 SSL
-
POP3:pop.yandex.com:995 SSL
注意:如果是添加第二個域名(一個域名是一個組織),進入賬戶管理頁面,
然后點擊頂部的域名后彈出下拉菜單有一個New organization按鈕來添加新域名,然后按照步驟(跳過1、2)操作即可
-
1、注冊賬戶 https://mail.yandex.com
-
2、添加域名 https://connect.yandex.com/pdd/
-
3、驗證域名所有權
此時已經進入到管理頁面,在左側菜單Domains中點擊域名(此時域名右側是禁止符號)驗證域名所有權,
驗證成功后左側菜單欄會多出幾個菜單(這時域名右側是感嘆號)
- 4、DNS配置SPF Record、MX、二級域名 https://connect.yandex.com/portal/admin/customization/dns
按照上面鏈接中的DNS配置(或者點擊左側菜單欄DNS management)到自己域名所在服務商添加DNS解析,
注意末尾的點不要丟了,等待幾分鐘刷新(域名右側是綠色的勾)
- 5、DNS配置DKIM signature https://connect.yandex.com/portal/admin/customization/mail
點擊上面的連接(就是左側Email菜單)進入界面后點擊DKIM signatures點擊Copy,然后在域名所在服務商添加一條TXT記錄DNS解析,
主機記錄(name)為mail._domainkey,值就是剛剛復制的DKIM signatures
[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-zQHHaE3N-1594388011019)(/images/YandexMailDNS.png)]
- 6、添加郵箱賬戶
點擊 Все сотрудники(就是左側第一個菜單),然后點擊頁面下方有一個帶+的add按鈕,
再點擊Add a person,在彈出的頁面輸入,帶*的為必填,填完后就點擊橙色的add按鈕
- 7、新添加的賬戶需要去登錄并同意一個協(xié)議才能使用
點擊https://mail.yandex.com登錄新賬戶并點擊Complete registration按鈕同意協(xié)議
- 8、pop3/imap無法使用的解決辦法
點擊https://mail.yandex.com/#setup/client
登陸郵箱按照下圖中步驟操作即可,登錄后重新點擊鏈接可省略下圖中的1、2、3步
[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-z935DZxS-1594388011021)(/images/Yandex解決POP3無法收取郵件.png)]
- 9、域名驗證不通過解決辦法
進入https://webmaster.yandex.com/sites點擊沒有通過驗證域名上的X按鈕進行刪除,
然后點擊頁面頂部的+按鈕重新添加域名再驗證。
我的域名驗證不通過發(fā)現(xiàn)是因為:添加不帶www的域名,自動添加了www二級域名
郵件服務器
- https://tourcoder.com/install-postfix-on-centos-7/
郵件服務器概述
- MUA:Mail User Agent,郵件用戶代理
接收郵件所使用的郵件客戶端,使用IMAP或POP3協(xié)議與服務器通信;
如:Outlook、Foxmail、thunderbird、Mac Mail、mutt
- MTA:Mail Transfer Agent,郵件傳輸代理代為傳遞
通過SMTP協(xié)議發(fā)送、轉發(fā)郵件;
如:Sendmail、Postfix
- MDA:Mail Delivery Agent,郵件投遞代理
將MTA接收到的郵件保存到磁盤或指定地方,通常會進行垃圾郵件及病毒掃描;
如:procmail、dropmail
- MRA:Mail Receive Agent,郵件接收代理
負責實現(xiàn)IMAP與POP3協(xié)議,與MUA進行交互;
如:dovecot
- SMTP:Simple Mail Transfer Protocol,傳輸發(fā)送郵件所使用的標準協(xié)議;
- IMAP:Internet Message Access Protocol,接收郵件使用的標準協(xié)議之一;
- POP3:Post Office Protocol 3,接收郵件使用的標準協(xié)議之一。
流程
郵件服務器基本都有MTA,MDA,MRA組成
MUA(發(fā)件人發(fā)送) --> (若干個)MTA --> MDA --> MRA <–- MUA(收件人收取)
協(xié)議:MUA到MTA,以及MTA到MTA之間使用SMTP協(xié)議,而收郵件時,MUA到MDA之間使用POP3或IMAP協(xié)議。
- 一、用戶利用MUA寄信到MTA。配置MUA時要配上SMTP服務器域名,然后發(fā)送郵件。
- 比如使用網(wǎng)易賬戶發(fā)送郵件就要在配置smtp.163.com,這樣郵件就發(fā)送到網(wǎng)易MTA。
- 二、 MTA檢查收件人服務器如果不是自己則傳遞到下一跳MTA,直到傳遞到目的MTA。
- 三、 目的MTA收到郵件后將郵件存儲到MDA中,MDA對郵件進行垃圾過濾,病毒查殺。
- 四、 MRA把郵件從MDA收取到用戶的收件箱中。
- 五、 MUA收取郵件,此時收取郵件只是將MRA中的郵件下載到本地。
設置域名解析
| A | 默認 | 服務器IP地址 | – | 10 分鐘 | |
| MX | @ | 默認 | mail.域名 | 10 | 10 分鐘 |
卸載sendmail
yum remove -y sendmail安裝Postfix和Dovecot
yum install -y postfix dovecot查看版本
rpm -qa | grep "postfix\|dovecot" # 或者 rpm -qa | grep -e postfix -e dovecot # 或者 rpm -qa | grep -E "postfix|dovecot" # 或者 rpm -qa | egrep "postfix|dovecot" # 或者 rpm -qa | awk "/postfix|dovecot/"修改郵件傳輸代理
alternatives --config mta # 或者先查看郵件傳輸代理程序,再設置 /usr/sbin/alternatives --set mta /usr/sbin/sendmail.postfix會提示找到幾個可用程序,輸入自己需要的那個程序的數(shù)字即可
查看是否修改成功
alternatives --display mta第一行顯示mta - status is manual.則表示設置成功
修改Postfix配置
- http://blog.leanote.com/post/colin_xia@yeah.net/postfix-官方文檔筆記
- https://www.cnblogs.com/operationhome/p/9056870.html
在main.cf中配置的值會自動分散到多個指定的配置文件中去
查看配置
# 輸出所有postfix配置項以及默認值 postconf # 不輸出#開頭和空行 grep -v '^#\|^$' /etc/postfix/main.cf編輯配置
vi /etc/postfix/main.cf修改以下內容
# 75行:主機名 myhostname = mail.example.com # 83行:設置本地網(wǎng)絡的郵件域 mydomain = example.com # 99行:要外發(fā)郵件時發(fā)件人的郵件域名,這里取的mydomain變量值 myorigin = $mydomain # 116行:默認是localhost,修改成all,即監(jiān)聽所有網(wǎng)絡接口 inet_interfaces = all # 119行:網(wǎng)絡協(xié)議 ipv6、ipv4或者all inet_protocols = all # 164行:設置可接收郵件的主機名或域名,來自其他主機名或域名的郵件將拒絕接收 mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain # 210行:制定接收郵件的規(guī)則,可以是hash文件,可以直接注釋 local_recipient_maps = # 264行:收發(fā)客戶端的地址 mynetworks = 0.0.0.0/0 # 296行:設置可轉發(fā)來自哪些域名或主機名的郵件 relay_domains = $mydestination # 419行:郵件存儲的位置 home_mailbox = Maildir/ # 572行:指定MUA通過smtp連接postfix時返回的header頭信息,定義歡迎信息 smtpd_banner = $myhostname ESMTP $mail_name在文件結尾加入
# 啟用SMTP認證 smtpd_sasl_type = dovecot # smtpd_sasl_path = /var/spool/postfix/private/auth # 指定postfix使用sasl驗證:就是啟用smtp并要求進行賬號、密碼效驗 smtpd_sasl_auth_enable = yes # 指定SMTP認證的本地域名:可以使用''或注釋掉,默認為空 smtpd_sasl_local_domain = $myhostname # 支持非標準驗證規(guī)定的行為, # 指定postfix兼容MUA使用不規(guī)則的smtp協(xié)議,主要針對老版本的outlook broken_sasl_auth_clients = yes # 當客戶端引發(fā)錯誤時,postfix的初始等待時間 smtpd_error_sleep_time = 0s # 收件人限制條件 smtpd_recipient_restrictions = permit_mynetworks,permit_sasl_authenticated,reject_unauth_destination,reject_unknown_sender_domain # 客戶端限制 smtpd_client_restrictions = permit_sasl_authenticated # 取消smtp的匿名登錄 smtpd_sasl_security_options = noanonymous # proxy_read_maps = $local_recipient_maps $mydestination $virtual_alias_maps $virtual_alias_domains $virtual_mailbox_maps $virtual_mailbox_domains $relay_recipient_maps $relay_domains $canonical_maps $sender_canonical_maps $recipient_canonical_maps $relocated_maps $transport_maps $mynetworks # 指定通過postfix發(fā)送郵件的體積大小,此處表示5M message_size_limit = 5242880smtpd_recipient_restrictions(收件人限制)有以下可用值:
permit_mynetworks允許本地的網(wǎng)絡接收
permit_sasl_authenticated允許通過SASL驗證的用戶(也就是smtp鏈接時通過了賬號、密碼效驗的用戶)的所有用戶
reject_unauth_destination拒絕無法認證的目的地
修改Dovecot配置
vi /etc/dovecot/dovecot.conf auth_mechanisms = plain login base_dir = /var/run/dovecot/ debug_log_path = /var/log/dovecot_debug.log disable_plaintext_auth = no first_valid_uid = 1000 info_log_path = /var/log/dovecot_info.log login_trusted_networks = 0.0.0.0/0 mail_location = mbox:~/mail:INBOX=/var/mail/%u mbox_write_locks = fcntl namespace inbox {inbox = yeslocation = mbox:~/mail:INBOX=/var/mail/%umailbox Drafts {special_use = \Drafts}mailbox Junk {special_use = \Junk}mailbox Sent {special_use = \Sent}mailbox "Sent Messages" {special_use = \Sent}mailbox Trash {special_use = \Trash}prefix = } passdb {args = dovecotdriver = pam } service auth {unix_listener /var/spool/postfix/private/auth {mode = 0666user = postfix}unix_listener auth-userdb {group = noreplymode = 0666user = noreply} } service imap-login {inet_listener imap {port = 143} } service pop3-login {inet_listener pop3 {port = 110} } ssl = no ssl_cert = </etc/pki/dovecot/certs/dovecot.pem ssl_key = </etc/pki/dovecot/private/dovecot.pem userdb {driver = passwd }其實上面的配置文件并非一個,而是修改了/etc/dovecot/conf.d文件夾下的以下幾個文件
10-auth.conf
10-ssl.conf
10-mail.conf
10-master.conf
10-logging.conf
修改完成以后使用doveconf -n > dovecot-new.conf命令生成一個全新的綜合的配置文件。
修改防火墻配置
firewall-cmd --zone=public --permanent --add-service=imap firewall-cmd --zone=public --permanent --add-service=smtp firewall-cmd --zone=public --permanent --add-service=pop3 firewall-cmd --zone=public --add-port=25/tcp --permanent firewall-cmd --zone=public --add-port=25/udp --permanent firewall-cmd --zone=public --add-port=110/tcp --permanent firewall-cmd --zone=public --add-port=110/udp --permanent firewall-cmd --zone=public --add-port=143/tcp --permanent firewall-cmd --zone=public --add-port=143/udp --permanent firewall-cmd --reload配置用戶及權限
# 添加用戶 useradd 用戶名 # 設置密碼 echo "密碼" | passwd --stdin 用戶名 # 授權 sudo chmod 0775 /var/spool/mail/*啟動服務
# 開啟postfix服務 systemctl enable postfix # 設置postfix開機啟動 chkconfig postfix on # 開啟dovecot服務 systemctl enable dovecot # 設置dovecot開機啟動 chkconfig dovecot on # 重啟postfix/dovecot systemctl restart postfix/dovecot # 查看postfix/dovecot狀態(tài) systemctl status postfix/dovecot使用mail測試發(fā)信
未做明確配置時,mail默認將本機作為發(fā)信、收信的服務器,所以此步驟中的測試操作在郵件服務器本機完成。
echo "郵件內容" | mail -s "郵件主題" -r 發(fā)送人郵件地址 接收人郵件地址使用telnet測試收信
yum install -y telnet telnet 域名 25總結
以上是生活随笔為你收集整理的域名邮箱和邮件服务器的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: vijos1655萌萌的糖果博弈
- 下一篇: HTML5期末大作业:我的家乡网站设计—