樹莓派保衛戰 防止SSH暴力破解

2022-04-29 00:42:13 字數 1829 閱讀 3570

自己用樹莓派搭建了個小server,用了很長時間了,最近檢視log發現有很多ssh登陸失敗,瞬間心就碎了,一直沒關心小派的安全問題,怪我咯!

馬上行動,首先研究下log:/var/log/auth.log記錄了ssh登陸等許可權安全資訊,如何知道自己被攻擊了呢?

# grep sshd.\*failed /var/log/auth.log | less

nov 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 | less

nov 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...