你所不知道的入侵,你的服務器安全嗎?你的數據庫安全嗎?
講真,也許是我以前一直從事內網應用開發吧,我從來沒有想過在互聯網上,有那么多掃描器。
10月份的時候,受人委托我做了一個簡單的搶單插件,里面有用到squid做ip代理,結果剛上線兩天,就被人掃描出來了,因為瘋狂使用,還把我的微服務給搞掛了。當然不搞掛,我可能一直發現不了。但那次的教訓並沒有讓我長記性。
我的mongodb部署在阿里雲上已經四個多月了,一直開着27017端口的,一來我沒有正式使用,二來我沒有正直的認為我會被人刪除數據。雖然看過mongodb因為沒有設置用戶名和密碼,導致數據庫被人刪庫,並勒索BTC,但總覺得我不招誰,不惹誰,沒人來搞我的。
互聯網的美妙之處就是開放、自由,但是互聯網沒有說讓我們裸奔。12月的一天,辦公應用剛開始准備真正生產起來,第二天就被人告知,昨天登錄的用戶名顯示用戶不存在?
what?這不科學~!
我飛奔向辦公室,直覺告訴我,生產環境出大事了。
打開電腦,用Navicat連接服務器mongo,看到了這個:
還好我的服務只上線了兩天,辦公應用數據使用的是mysql,sea微服務平台才用的是mongo,都是一些用戶、資源、權限、代理等數據。按這個提示,我想都不用想,這些數據我肯定不會去支付0.1BTC了,雖然是用戶數據,但都是小程序與微信綁定的數據,連密碼和手機號碼都沒有了,丟了就丟了,不可惜。
萬幸的是業務數據還在,只不過原先的用戶已經找不到他們提交的數據了,我跟用戶方溝通后,用戶方表示只要業務數據還在,用戶看不看的到無所謂,才松了口氣。
后面花了半天的時間將我本機的數據進行了恢復,並寫了shell腳本做了mongdb的定時備份,這此罷休,懂行的人肯定知道,這樣做肯定是不夠的
我還將阿里雲的端口做了封堵,只允許某個ip遠程訪問我的阿里雲服務器,詳細情況,請看史上最安全的阿里雲配置,讓非法遠程打擾你的人一邊涼快去!