使用Denyhost来阻止恶意连接SSH的IP
生活随笔
收集整理的這篇文章主要介紹了
使用Denyhost来阻止恶意连接SSH的IP
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
DenyHosts是用Python2.3寫的一個程序,它會分析/var/log/secure(redhat,Fedora Core,Centos)等日志文件,當發現同一IP在進行多次SSH密
碼嘗試時就會記錄IP到/etc/hosts.deny文件,從而達到自動屏蔽該IP的目的。
DenyHosts官方網站為:[url]http://denyhosts.sourceforge.net[/url] ? 一:檢查安裝要求 首選檢查Sshd是否支持Tcpwrap,只有支持Tcpwrap才可以安裝Denyhost 50ldd /usr/sbin/sshd |grep wrap 再檢查Python的版本,Python2.3以上版本可以直接安裝 51python –V
???庫文件自動安裝到/usr/lib/python2.3/site-packages/DenyHosts
?? denyhosts.py自動安裝到/usr/bin ? 三:?設置啟動腳本 54cd /usr/share/denyhosts/ 拷貝模板文件 55cp daemon-control-dist daemon-control 設置好啟動腳本的所屬用戶和權限 56chown root daemon-control 57chmod 700 daemon-control 生成Denyhost的主配置文件,(將模板文件中開頭是#的過濾后再導入到Denyhost.cfg) 58grep -v "^#" denyhosts.cfg-dist > denyhosts.cfg 編輯Denyhost.cfg文件 59vi denyhosts.cfg 根據自己需要進行相應的修改
----------------denyhosts.cfg------------------------
SECURE_LOG = /var/log/secure?
#RedHat/Fedora Core分析該日志文件
#其它版本linux根據denyhosts.cfg-dist內提示選擇。
PURGE_DENY = 30m
#過多久后清除
DENY_THRESHOLD_INVALID = 1
#允許無效用戶(/etc/passwd未列出)登錄失敗的次數
DENY_THRESHOLD_VALID = 5
#允許有效(普通)用戶登錄失敗的次數
DENY_THRESHOLD_ROOT = 3
#允許root登錄失敗的次數
HOSTNAME_LOOKUP=NO
#是否做域名反解
----------------denyhosts.cfg------------------------ 將Denyhost啟動腳本添加到自動啟動中 60echo '/usr/share/denyhosts/daemon-control start'>>/etc/rc.d/rc.local 啟動Denyhost的進程 61/usr/share/denyhosts/daemon-control start 可以查看到Denyhost在運行中 62ps -ef |grep deny 在另外一臺機器上使用Ssh進行連接,當在連續幾次輸入錯誤的密碼后,會被自動阻止掉,在一定時內不可以再連接 Ssh連接記錄的日志文件 66tail /var/log/secure –f Denyhost日志文件 67tail /var/log/denyhosts –f Denyhost將惡意連接的IP記錄到Hosts.deny文件中,過一定時間后再從該文件中清除(Denyhost.cfg中設定的時間) 68vi /etc/hosts.deny
本文轉自fine102 51CTO博客,原文鏈接:http://blog.51cto.com/gzmaster/79370,如需轉載請自行聯系原作者
碼嘗試時就會記錄IP到/etc/hosts.deny文件,從而達到自動屏蔽該IP的目的。
DenyHosts官方網站為:[url]http://denyhosts.sourceforge.net[/url] ? 一:檢查安裝要求 首選檢查Sshd是否支持Tcpwrap,只有支持Tcpwrap才可以安裝Denyhost 50ldd /usr/sbin/sshd |grep wrap 再檢查Python的版本,Python2.3以上版本可以直接安裝 51python –V
?
二:安裝Denyhost 先從Sourceforge.net上下載 wget?[url]http://umn.dl.sourceforge.net/sourceforge/denyhosts/DenyHosts-2.6.tar.gz[/url] 進行解壓,再進入到源目錄 49tar -xzvf DenyHosts-2.6.tar.gz 52cd DenyHosts-2.6 執行Python腳本進行安裝, 53python setup.py install ???程序腳本自動安裝到/usr/share/denyhosts???庫文件自動安裝到/usr/lib/python2.3/site-packages/DenyHosts
?? denyhosts.py自動安裝到/usr/bin ? 三:?設置啟動腳本 54cd /usr/share/denyhosts/ 拷貝模板文件 55cp daemon-control-dist daemon-control 設置好啟動腳本的所屬用戶和權限 56chown root daemon-control 57chmod 700 daemon-control 生成Denyhost的主配置文件,(將模板文件中開頭是#的過濾后再導入到Denyhost.cfg) 58grep -v "^#" denyhosts.cfg-dist > denyhosts.cfg 編輯Denyhost.cfg文件 59vi denyhosts.cfg 根據自己需要進行相應的修改
----------------denyhosts.cfg------------------------
SECURE_LOG = /var/log/secure?
#RedHat/Fedora Core分析該日志文件
#其它版本linux根據denyhosts.cfg-dist內提示選擇。
PURGE_DENY = 30m
#過多久后清除
DENY_THRESHOLD_INVALID = 1
#允許無效用戶(/etc/passwd未列出)登錄失敗的次數
DENY_THRESHOLD_VALID = 5
#允許有效(普通)用戶登錄失敗的次數
DENY_THRESHOLD_ROOT = 3
#允許root登錄失敗的次數
HOSTNAME_LOOKUP=NO
#是否做域名反解
----------------denyhosts.cfg------------------------ 將Denyhost啟動腳本添加到自動啟動中 60echo '/usr/share/denyhosts/daemon-control start'>>/etc/rc.d/rc.local 啟動Denyhost的進程 61/usr/share/denyhosts/daemon-control start 可以查看到Denyhost在運行中 62ps -ef |grep deny 在另外一臺機器上使用Ssh進行連接,當在連續幾次輸入錯誤的密碼后,會被自動阻止掉,在一定時內不可以再連接 Ssh連接記錄的日志文件 66tail /var/log/secure –f Denyhost日志文件 67tail /var/log/denyhosts –f Denyhost將惡意連接的IP記錄到Hosts.deny文件中,過一定時間后再從該文件中清除(Denyhost.cfg中設定的時間) 68vi /etc/hosts.deny
本文轉自fine102 51CTO博客,原文鏈接:http://blog.51cto.com/gzmaster/79370,如需轉載請自行聯系原作者
總結
以上是生活随笔為你收集整理的使用Denyhost来阻止恶意连接SSH的IP的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SQL提高及优化
- 下一篇: keepalived 主从配置日志报错: