linux系統默認開啟發送郵件功能,但只能linux用戶間發送郵件,不能發送外部郵件。
方法:
1. 查看sendmail進程是否開啟。你在shell輸入 ps -aux | grep 'sendmail'
2. 使用mail命令發送郵件,例如發送給root用戶
mail -s 'send mail' root 按回車鍵
3. 輸入郵件內容
4. 按ctrl+d發送,按ctrl+c退出
5. 切換到root用戶,你就可以看到一封郵件,郵件存放在/var/mail/root文件里
mail命令用法:mail -s '郵件標題' 用戶名
你可以搜索mail命令
是否可以解決您的問題?
② postfix發送郵件收不到郵件
命令行是 mail -s [email protected] 這樣的
看下日子 /var/log/maillog
③ linux下的postfix郵件伺服器怎麼創建賬號
postfix創建郵件賬號命令:
useradd-gmail-s/sbin/nologinuser
配置好郵件伺服器後,重啟dovecot服務。
/etc/init.d/dovecotstart
然後測試,發送接收郵件!
④ 雲上那些事: postfix 使用中繼模式發送郵件
背景:
由於安全因好擾辯素,阿里雲會封掉25port, 這導致我們自建的監控系統無法發送郵件,因為是輕量型應用,申請解封失敗,遂按照推薦的方式採用了465 port 和relay的模式進行告警郵件的發送
組件構成:
一個main,cf
一個master.cf
一個sasl_password 和生成的sasl_password.db
一個generic 和生成的generic.db文件
步驟:
由於我李尺們使用的是ubuntu18.04,所以此處以此為例:
#安裝postfix
apt upgrade
apt install postfix ,選擇 Internet Site ( 如果安裝了sendmail 請將其停止或者卸載)
#添加465埠發信
vim /etc/postfix/master,cf
添加 smtps inet n - - - - smtpd
解除注釋: -o smtpd_tls_wrappermode=yes
!wq 保存退出
vim /etc/services
添加 smtps 465/tcp mail2
smtps 465/udp mail2
#創建相關授權文件及虛擬映射文件
vim /etc/postfix/sasl_passwd
[smtp.163.com]:465 [email protected]:授權碼
!wq 保存退出
postmap /etc/postfix/sasl_passwd 生成sasl_passwd.db 文件
vim /etc/postfix/generic
root@monitor [email protected] (#要和上面文件內的一樣)
!wq 保存退出
postmap /etc/postfix/generic 生成generic.db 文件
#編輯主配置文件
vim /etc/postfix/main.cf
新增如下:
smtp_sasl_auth_enable = yes
#smtp_sasl_type = cyrus
smtp_sasl_security_options=noanonymous
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_tls_security_level = encrypt
smtp_tls_wrappermode = yes
smtp_generic_maps = hash:/etc/postfix/generic
修改如下:
inet_protocols = ipv4
#重啟服務
systemctl restart postfix
測試發送,如有問題請檢查log
主要報錯:
1
status=deferred (delivery temporarily suspended: lost connection with smtp.163.com[220.181.12.12] while receiving the initial server greeting)
要配置relay 模式
2:
status=deferred (SASL authentication failed; cannot authenticate to server smtp.163.com[220.181.12.17]: no mechanism available)
修改/etc/postfix/main.cf
smtp_sasl_security_options=noanonymous
3:
status=bounced (host smtp.163.com[220.181.12.16] said: 553 Mail from must equal authorized user (in reply to MAIL FROM command))
修改 /etc/postfix/generic 把主機名和郵箱名字修復正確。友缺
4
postfix/smtp[3218]: SMTPS wrappermode (TCP port 465) requires setting "smtp_tls_wrappermode = yes", and "smtp_tls_security_level = encrypt" (or stronger)
按照報錯提示在主文件添加相關配置項
參考資料: https://itlaws.cn/post/postfix-use-external-smtp/
⑤ linux下,如何通過postfix使用命令行來發送附件
安裝的postfix使用mail命令現在是無法正常帶附件形式的;
可以使用mutt,但是這個發送的附件在網頁端查看有時候會變成bin文件
建議客戶端查看這樣的測試郵件
yum install mutt
[email protected]"11222"-arsync-3.1.1.tar.gz</root/test.txt
⑥ 如何在Linux下使用mail命令發送郵件到外部
1、首先你得開啟25埠,郵件伺服器可以用sendmail或postfix,因為發件人是Received: from localhost.localdomain有些郵箱可能會拒絕或當作垃圾郵件
2、發送內容
cat a.txt|mail youremail
3、發送附件
yum -y install sharutils
uuencode a.txt a.txt |mail -s 『subject』 youremail