Linux DenyHosts阻止SSH暴力攻擊

2021-09-20 06:20:40 字數 2490 閱讀 3138

現在的網際網路非常不安全,很多人沒事就拿一些掃瞄機掃瞄ssh埠,然後試圖連線ssh埠進行暴力破解(窮舉掃瞄),所以建議vps主機的空間,盡量設定複雜的ssh登入密碼,雖然在前段時間曾經介紹過linux 禁止某個ip訪問使用hosts.deny禁止某些ip訪問,但是功能方面欠缺,如:不能自動遮蔽,那麼有什麼更好的辦法嗎,就可以使用denyhosts這款軟體了,它會分析/var/log/secure(redhat,fedora core)等日誌檔案,當發現同一ip在進行多次ssh密碼嘗試時就會記錄ip到/etc/hosts.deny檔案,從而達到自動遮蔽該ip的目的。

lnmp一件安裝包中自帶該軟體可以一鍵安裝,命令:wget && tar zxf lnmp1.5.tar.gz && cd lnmp1.5/tools/ && ./denyhosts.sh回車確認即可開始安裝配置,不需要下面的步驟進行安裝配置。(該tools目錄下也有denyhosts相似的工具fail2ban的一鍵安裝工具 ./fail2ban.sh 安裝即可)

# wget

# tar zxvf denyhosts-2.6.tar.gz

# cd denyhosts-2.6

2、安裝、配置和啟動

安裝前建議執行:echo "" > /var/log/secure && service rsyslog restart 清空以前的日誌並重啟一下rsyslog

# python setup.py install

因為denyhosts是基於python的,所以要已安裝python,大部分linux發行版一般都有。預設是安裝到/usr/share/denyhosts/目錄的,進入相應的目錄修改配置檔案

# cd /usr/share/denyhosts/

# cp denyhosts.cfg-dist denyhosts.cfg

# cp daemon-control-dist daemon-control

預設的設定已經可以適合centos系統環境,你們可以使用vi命令檢視一下denyhosts.cfg和daemon-control,裡面有詳細的解釋

接著使用下面命令啟動denyhosts程式

# chown root daemon-control

# chmod 700 daemon-control

# ./daemon-control start

如果要使denyhosts每次重起後自動啟動還需做如下設定:

# ln -sf /usr/share/denyhosts/daemon-control /etc/init.d/denyhosts

# chkconfig --add denyhosts

# chkconfig --level 2345 denyhosts on

或者執行下面的命令加入開機啟動,將會修改/etc/rc.local檔案:

# echo "/usr/share/denyhosts/daemon-control start" >> /etc/rc.local

denyhosts配置檔案/usr/share/denyhosts/denyhosts.cfg說明:

secure_log = /var/log/secure

#sshd日誌檔案,它是根據這個檔案來判斷的,不同的作業系統,檔名稍有不同。

hosts_deny = /etc/hosts.deny

#控制使用者登陸的檔案

purge_deny = 5m

daemon_purge = 5m

#過多久後清除已經禁止的ip,如5m(5分鐘)、5h(5小時)、5d(5天)、5w(5周)、1y(一年)

block_service  = sshd

#禁止的服務名,可以只限制不允許訪問ssh服務,也可以選擇all

deny_threshold_invalid = 5

#允許無效使用者失敗的次數

deny_threshold_valid = 10

#允許普通使用者登陸失敗的次數

deny_threshold_root = 5

#允許root登陸失敗的次數

hostname_lookup=no

#是否做網域名稱反解

daemon_log = /var/log/denyhosts

為防止自己的ip被遮蔽,可以:echo "你的ip" >>  /usr/share/denyhosts/allowed-hosts 將你的ip加入白名單,再重啟denyhosts:/etc/init.d/denyhosts ,如果已經被封,需要先按下面的命令刪除被封ip後再加白名單。

如有ip被誤封,可以執行下面的命令解封:wget  && bash denyhosts_removeip.sh 要解封的ip

更多的說明請檢視自帶的readme文字檔案,好了以後維護vps就會省一些心了,但是各位vpser們注意了安全都是相對的哦,沒有絕對安全,將密碼設定的更strong,並請定期或不定期的檢查你的vps主機,而且要定時備份你的資料哦。

與denyhosts類似的軟體還有fail2ban功能上更多,還可以對ftp進行保護,自己可以搜尋看一下。

熱阻的理解

今天早上在看開關電源的設計資料,其中提到開關管的引數選型時有說到熱阻的概念。對於這個概念,一直都感覺沒有徹底理解這個引數,模糊中記得熱阻就像電阻一樣,電阻式阻礙電子流動的量綱,而熱阻就是阻礙熱量流動的量綱。也不知道這樣的理解對不對,因此網上再檢索些資料,以便加深理解。基本概念 ta temperat...

什麼是熱阻

熱阻指的是當有熱量在物體上傳輸時,在物體兩端溫度差與熱源的功率之間的比值。單位為開爾 文每瓦特 k w 或攝氏度每瓦特 w 當熱量流過兩個相接觸的固體的交介面時,介面本身對 熱流呈現出明顯的熱阻,稱為接觸熱阻。計算公式 上式中,t1為物體一端的溫度 t2為物體另一端的溫度以及p為發熱源的功率。兩個名...

HttpClient的execute的阻塞問題

這個問題的原因我不大清楚,有興趣的同學可以自己去翻些資料。下面是我的解決方案 將需要執行execute的方法用乙個執行緒封裝起來,另外執行並且讓主線程處於等待態 具體的等待時間自己決定 主線程awake後判斷執行execute的方法的執行緒是否是alive,如果仍然是alive態我們就認為它卡住了然...