Linux配置root登陸時傳送郵件到指定郵箱
出於安全考慮,需要監控部分敏感主機的root賬號訪問情況,於是實現root登入時傳送郵件到指定郵箱。
提前明確:
發件箱、發件箱授權碼、發件箱smtp地址、收件箱
第一步 申請郵箱授權碼
選擇騰訊企業郵箱,登入發件箱賬號後,繫結微信,啟用安全登入,選擇“客戶端專用密碼-生成新密碼”,此即授權碼。
參考:https://www.yiyisoft.com/news/402.html
第二步 配置郵件傳送
編輯/etc/mail.rc,增加如下內容
set [email protected] #發件箱
set smtp=smtp.exmail.qq.com #smtp地址,騰訊企業郵就是這個了
set
set smtp-auth-password=vT6K1234543XdsqV ##<--這裡填的是郵箱授權碼
set smtp-auth=login
測試配置效果
echo Hello World | mail -s test [email protected]
收件箱[email protected]即可收到主題test、內容Hello World的郵件。
PS:最好採用同一服務商的郵箱,否則可能出現互相遮蔽的情況,比如騰訊與網易,原因你懂的。
參考:https://blog.csdn.net/ipenx/article/details/78441291
第三步 配置賬號訪問時傳送郵件
如果要監控所有賬號登陸,配置/etc/bashrc;監控指定賬號,在該賬號預設目錄下,編輯.bashrc,我要監控的是root,加入如下內容
echo "ALERT - Root Shell Access (`hostname`) on:" `date` `who` | mail -s "`hostname` Root Access from `who | cut -d'(' -f2 | cut -d')' -f1`" [email protected]
即時生效:source .bashrc
再次使用root登入時,[email protected]
參考:https://www.jb51.net/LINUXjishu/336236.html
報錯:
Jun 11 13:40:56 VM_13_11_centos postfix/postqueue[1558]: warning: inet_protocols: IPv6 support is disabled: Address family not supported by protocol
Jun 11 13:40:56 VM_13_11_centos postfix/postqueue[1558]: warning: inet_protocols: configuring for IPv4 support only
修改/etc/postfix/main.cf如下引數
inet_protocols = all 改為 inet_protocols =ipv4
重啟服務:
service postfix restart
報錯:could not connect: Connection timed out
"/root/dead.letter" 11/305
. . . message not sent.
排查1:smtp伺服器地址dns解析無誤
排查2:smtp伺服器埠25是否可以訪問;
排查結果:25埠不通
PS:smtp埠知識延伸:smtp涉及三個埠:25 587 465;
解決:要麼解決25埠不通的問題,要麼參考如下改用smtps:
檢視/etc/postfix/master.cf
smtp inet n - n - - smtpd
檢視/etc/services裡面smtp相關465埠ok
urd 465/tcp smtps # URL Rendesvous Directory for SSM / SMTP over SSL (TLS)
配置ssl,修改/etc/mail.rc
set smtp=smtps.exmail.qq.com #smtp地址,騰訊企業郵就是這個了,如果不行,就換成set smtp=smtps://smtp.exmail.qq.com:465
set ssl-verify=ignore #ssl認證方式
set nss-config-dir=/root/.certs #證書所在目錄
請求數字證書(這裡用的qq郵箱,所以向qq請求證書)
mkdir -p /root/.certs/
echo -n | openssl s_client -connect smtp.qq.com:465 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > ~/.certs/qq.crt
certutil -A -n "GeoTrust SSL CA" -t "C,," -d ~/.certs -i ~/.certs/qq.crt
certutil -A -n "GeoTrust Global CA" -t "C,," -d ~/.certs -i ~/.certs/qq.crt
certutil -A -n "GeoTrust SSL CA - G3" -t "Pu,Pu,Pu" -d ~/.certs -i ~/.certs/qq.crt
certutil -L -d /root/.certs
如果未請求證書,將報錯:Error in certificate: Peer's certificate issuer is not recognized.
有時郵件可以傳送,但依然報錯:Error in certificate: Peer's certificate issuer is not recognized.,刪除.certs,重新申請證書。
其他問題排查:
1、檢視防火牆是否對相應埠有限制,修改防火牆策略
-A INPUT -p tcp -m multiport --dports 465,25 -j ACCEPT
2、郵箱是否開啟smtp
郵箱開啟smtp
如果遇到,503錯誤,smtp-server: 535 Error
- 1
那代表你的郵箱還沒開啟smpt服務。
例如,QQ郵箱登入後,設定–>帳號–>pop3/smtp,開啟,然後QQ郵箱還會給出授權碼,就是上面配置時候填的smtp-auth-passwd。
相關推薦
Linux配置root登陸時傳送郵件到指定郵箱
出於安全考慮,需要監控部分敏感主機的root賬號訪問情況,於是實現root登入時傳送郵件到指定郵箱。 提前明確: 發件箱、發件箱授權碼、發件箱smtp地址、收件箱 第一步 申請郵箱授權碼 選擇騰訊企業郵箱,登入發件箱賬號後,繫結微信,啟用安全登入,選擇“客戶端專用
Linux配置sendmail實現PHP傳送郵件
1.安裝sendmail yum -y install sendmail 2.安裝mail命令 yum -y install mailx 3.開啟sendmail /etc/rc.d/init.d/sendmail start 4.設定開機啟動 vim /etc/rc.local 最後一行新增上:
Linux系統使用mailx命令傳送郵件
一、環境核實以及準備。 在centos7系統中預設有安裝mailx命令進行系統郵件的傳送。如果沒有相關的命令可以自行通過yum安裝 #yum install mailx -y 使用#ss &nbs
laravel5.5自帶使用者認證重置密碼時傳送郵件失敗的問題
問題 laravel5.5使用開箱即用的使用者認證時,重置密碼需要傳送郵件,結果報錯,錯誤已經修復,而且當時沒有截圖,所以就不展示啦,反正原因就是因為沒有進行郵件相關的配置,laravel預設是使用SMTP進行郵件傳送,而我使用的是163郵箱,所以接下來就是要在我的163郵箱中開啟SMTP伺服器
Linux使用mail功能自動傳送郵件程式以及經常遇到的問題
在實現Linux中mail功能自動傳送郵件時,需要傳送中文內容,以及中文主題的郵件。 整個實現過程中遇到了三大問題,如下: 1、如何傳送html格式的郵件內容? 2、如何傳送中文內容的郵件? 3、如何傳送中文標題的郵件?(在解決這個問題時話費不少時間) 4、傳送的郵件內容以
配置Mail使用SMTP傳送郵件
今天分享在Linux上使用mail命令通過SMTP對外發郵件。 mail、mailx和sendmail 先看一下三者的關係:mail是mailx的別名,最初叫nail(與arch linux目前用的S nail基因相同);mail是Heirloom的一個子專案,sendm
使用cmd檢視電腦連線過的wifi密碼並將密碼傳送至指定郵箱(三) 使用cmd檢視電腦連線過的wifi密碼(二) 使用cmd檢視電腦連線過的wifi密碼(一)
之前,我寫了使用cmd檢視電腦連線過的wifi密碼(二)和使用cmd檢視電腦連線過的wifi密碼(一)但其中的功能不完善,在本次的更新中新增了更多的功能,其實2018/10/24 就更新完成了,一直拖到現在主要是為了驗證程式在不同機子上的執行情況並進行修正。 注意本軟體只用於學習和正當途徑,如果有人
crontab輸出內容傳送到指定郵箱
YourCommand >tmpfile cat tmpfile | mailx -s "Test Mail" [email protected] cat tmpfile >>YourLog 將這三句放到一個腳本里,在crontab執行這個
將從資料庫匯出的資料以excel的附件形勢傳送到指定郵箱
SysRunLog objSysRunLog = SysRunLog.GetInstance(); private Int16 daynum = Convert.ToInt16(ConfigurationSettings.AppSetting
C#中使用MailMessage類傳送郵件(QQ郵箱或者163郵箱)的小細節
一年前,我用程式碼操作QQ郵箱傳送郵件,直接失敗,但是QQ郵箱檢測到了我的這種行為,並且很友好的提示了一下,內容忘記了,意思記得,大概是您的QQ郵箱沒有開啟相關服務,不能進行...操作。 如上圖所示,就是這個沒有被勾選,那麼當時我設定選中後,儲存,就能用這個QQ郵箱進
記錄一次 .Net 框架 Bug 發現和提交過程:SmtpClient一處程式碼編寫錯誤導致非同步傳送郵件時DeliveryFormat配置項無法正確工作
問題已經發到了開發者社群 developercommunity.visualstudio.com/content/pro… 涉及到的Github倉庫: github.com/xiangyuecn/… .Net開發者社群富文字編輯器太難用了,還是簡書的編輯器好用,然後掘金的版面好看,最後還是喜歡cnb
linux下通過配置mailx和第三方郵箱 傳送郵件
使用mailx+postfix 通過伺服器傳送的郵件經常會被歸為垃圾郵件,甚至會被拒收,所以需要利用第三方郵箱賬戶作為發件人來發送郵件。部署系統為Centos7。確認postfix是否執行:systemctl status postfix如果沒有啟動需要先啟
linux 配置郵件傳送功能
1.mutt+msmtp的安裝 預設情況下smokeping傳送郵件使用sendmail,但是sendmail配置起來真心不是一般的麻煩,而且也沒有必要,完全大材小用了,所以我就想用mutt+msmtp的方案來發送告警郵件。 首先安裝mutt和msmtp這兩個
linux配置mailx使用SMTP伺服器傳送郵件
mailx是linux系統上常見的郵件傳送工具,可以通過配置smtp伺服器使用大部分的郵箱傳送郵件。 使用yum源安裝mailx yum install mailx 安裝完成後可以在/etc/目錄下看到mailx的配置檔案mail.rc(nail.
登陸Linux伺服器時觸發郵件提醒
目前,客戶只能在發現數據或者虛擬機器被惡意侵入或者使用者的誤操作導致了資料的丟失之後,採取善後的手段,但是並沒法做到提前的預警。那麼通過 PAM 模組,就可以實現使用者登入及獲取root 許可權時,通過郵件的方式進行通知。以實現預先知道、預先警惕的目標,同時降低受影響的範圍。以下是通過 PAM
Kali—Linux配置jdk時出現的一點問題。
classpath ref 寫代碼 clas gedit 目錄 gtk+ 文件名 開頭 jdk 本來應該是幾天前就配好了的今天打開終端忽然發現一個問題。 : 以及好幾行懸在終端最上方。 找了找,在以下步驟裏面: Kali Linux配置jdk應執
【Linux】使用xshell登陸時密碼框為灰色,無法輸入密碼
inline round spl log 退出 灰色 ref linu .cn 使用xshell登陸時,出現以上情況,那麽這到底值咋回事呢?經過查詢以後發現是服務器端設置問題,解決辦法如下:vi /etc/ssh/sshd_config接著保存退出,然後重啟sshd服務se
在zabbix上添加自定義監控項目、配置告警且發送告警郵件到指定郵箱
Linux學習筆記在zabbix上添加自定義監控項目 配置告警且發送告警郵件到指定郵箱 在zabbix上添加自定義監控項目、配置告警且發送告警郵件到指定郵箱
Linux配置163郵箱發送郵件
Linux利用163郵箱簡單的發送郵件,下面記錄配置步驟,僅僅記錄要點步驟。`` 申請163郵箱,開通客戶端授權碼以後,客戶端可以利用這個授權碼發送郵件。不需要繁瑣的驗證機制。 將配置信息添加到/etc/mail.rc文件末尾。send emailset [email protected]
Linux配置好公鑰後無法登陸
密鑰 sshd_conf key res cto tin normal accept roo 前提:/etc/ssh/sshd_config 配置正確;在遠程服務器上添加了公鑰;遠程服務器ssh端口正確並且是默認的22端口;使用用戶名與密碼登陸正常;問題:無法使用公鑰登陸,