#介紹python
DenyHosts是Python語言寫的一個程序,它會分析sshd的日誌文件(/var/log/secure),當發現重 復的攻擊時就會記錄IP到/etc/hosts.deny文件,從而達到自動屏IP的功能。git
#更新系統github
apt-get update apt-get upgrade
#安裝必要軟件ssh
// 配置啓動項工具,通常已經安裝 sudo apt-get install sysv-rc-conf // git sudo apt-get install git // denyhosts裏依賴ipaddr包,先裝好避免後面出錯 sudo apt-get install python-ipaddr // 下載denyhosts git clone https://github.com/denyhosts/denyhosts.git
#安裝denyhosts並配置開機啓動工具
// 克隆好進入目錄(/home/wayne/denyhosts/) cd denyhosts // 真正安裝,1秒裝完 sudo python setup.py install // 將配置文件複製到/etc sudo cp denyhosts.conf /etc // 啓動腳本,複製一份,並對新的daemon-control進行簡單配置 cp daemon-control-dist daemon-control // 先查看一下主程序放在哪裏,我這邊看到的是/usr/local/bin/denyhosts.py whereis denyhosts.py // 配置啓動腳本,將DENYHOSTS_BIN配置爲上面看到的路徑,即/usr/local/bin/denyhosts.py // 並看一下DENYHOSTS_CFG是否是指向/etc/denyhosts.conf vi daemon-control // 將啓動腳本連接到系統啓動目錄 cd /etc/init.d/ sudo ln -s /home/wayne/denyhosts/daemon-control denyhosts // 配置啓動項,找到denyhosts,並按空格選擇 sudo sysv-rc-conf
#啓動日誌
// 以上都完成後,重啓機器能夠使其開機啓動 sudo shutdown -r now // 單次不想重啓的話,能夠手動啓動 sudo /etc/init.d/denyhosts start sudo service denyhosts start // 手動關閉 sudo /etc/init.d/denyhosts stop sudo service denyhosts stop
#配置code
denyhosts全部的配置在/etc/denyhosts.conf。通常使用預設的配置就能很好發揮做用,不用瞎折騰。ip
DENY_THRESHOLD_INVALID = 1 #容許無效用戶登陸失敗的次數 DENY_THRESHOLD_VALID = 10 #容許普通用戶登陸失敗的次數 DENY_THRESHOLD_ROOT = 5 #容許root登陸失敗的次數
#檢查get
denyhosts運行一段時間後,會將惡意ip收集到/etc/hosts.deny裏it
vi /etc/hosts.deny