自己用樹莓派搭建了個小server,用了很長時間了,最近檢視log發現有很多ssh登陸失敗,瞬間心就碎了,一直沒關心小派的安全問題,怪我咯!
馬上行動,首先研究下log:/var/log/auth.log記錄了ssh登陸等許可權安全資訊,如何知道自己被攻擊了呢?
# grep sshd.\*failed /var/log/auth.log | lessnov 16 11:26:44 raspberrypi2 sshd[4876]: failed password for root from 61.160.222.53 port 1323 ssh2
...nov 17 01:14:49 raspberrypi2 sshd[8791]: failed password for root from 222.186.15.160 port 2670 ssh2
...nov 16 14:31:23 raspberrypi2 sshd[9343]: failed password for invalid user admin from 61.160.222.53 port 1782 ssh2
...
這裡顯示的是嘗試通過ssh登陸失敗的記錄,描述裡有ip和埠描述。一般如果遇到暴力破解的話,會嘗試用root,admin等常用使用者名稱,而且會出現很多失敗記錄。
另外一種失敗記錄一般是埠掃瞄。如下:
# grep sshd.*did /var/log/auth.log | lessnov 15 12:09:49 raspberrypi2 sshd[14252]: did not receive identification string from 198.20.69.98
nov 16 12:28:37 raspberrypi2 sshd[6351]: did not receive identification string from 61.160.222.53
統計了下,最近乙個月有兩萬多條,我錯了,小派:(
如何防止這類閒的蛋疼的人呢?一般來說:
配置sshd_config,禁用root登陸
使用非常規ssh服務埠
使用非常規登陸名
盡量使用key登陸
以上四條條我都注意了,但防止不了暴力破解,接下來只能通過一些工具實現了。
googling,發現兩個工具denyhosts和fail2ban,兩個工具的作用是監視log,發現異常,遮蔽ip(iptables),也可同時執行發郵件等操作,都是python寫的。denyhosts是針對ssh服務的,fail2ban可以適用多種服務如http,ftp等,我選了fail2ban雖然我只用到ssh。
安裝很簡單:
# sudo apt-get install fail2ban
修改配置(可以不修改,預設是啟動ssh保護的):
# ls /etc/fail2ban/action.d/ fail2ban.conf filter.d/ jail.conf jail.local# jail.local是jail.conf的override配置檔案
# vim /etc/fail2ban/jail.local
[ssh]
enabled = true
# 設定了非標準埠,需要修改為對應埠
port = ssh
filter = sshd
action = wechat[name=ssh]
logpath = /var/log/auth.log
bantime = 1200
maxretry = 3
[via] [via] [via]
樹莓派保衛戰 防止SSH暴力破解
自己用樹莓派搭建了個小server,用了很長時間了,最近檢視log發現有很多ssh登陸失敗,瞬間心就碎了,一直沒關心小派的安全問題,怪我咯!馬上行動,首先研究下log var log auth.log記錄了ssh登陸等許可權安全資訊,如何知道自己被攻擊了呢?grep sshd.failed var ...
防止SSH暴力破解
我的伺服器每天都會有無數的ssh失敗嘗試記錄,有些無聊的人一直不停的掃瞄,這些人真夠無聊的,沒事吃飽了撐著,老找些軟體在那裡窮舉掃瞄,所以大家第一要記的設定乙個好的夠複雜的密碼。怎麼樣防,如果要一條一條將這些ip阻止顯然治標不治本,還好有denyhosts軟體來代替我們手搞定他。denyhosts是...
denyhost防止SSH暴力破解
參考 denyhost 官網 以下是安裝記錄 以centos 6.5,denyhosts 2.6 為例 預設是安裝到 usr share denyhosts目錄的。2.配置 cd usr share denyhosts cp denyhosts.cfg dist denyhosts.cfg vi d...