複製鏈接
請複製以下鏈接發送給好友

DenyHosts

鎖定
DenyHosts是Python語言寫的一個程序,它會分析sshd的日誌文件(/var/log/secure),當發現重 復的攻擊時就會記錄IP到/etc/hosts.deny文件,從而達到自動屏IP的功能。
中文名
DenyHosts
定    義
Python語言寫的一個程序
應    用
試圖猜測SSH登錄口令
安裝和配置
官網下載最新版目前是2.6
類    型
計算機科學術語

DenyHosts應用

當你的linux服務器暴露在互聯網之中,該服務器將會遭到互聯網上的掃描軟件進行掃描,並試圖猜測SSH登錄口令。
你會發現,每天會有多條SSH登錄失敗紀錄。那些掃描工具將對你的服務器構成威脅,你必須設置複雜登錄口令,並將嘗試多次登錄失敗的IP給阻止掉,讓其在一段時間內不能訪問該服務器。
DenyHosts可以阻止試圖猜測SSH登錄口令,它會分析/var/log/secure等日誌文件,當發現同一IP在進行多次SSH密碼嘗試時就會記錄IP到/etc/hosts.deny文件,從而達到自動屏蔽該IP的目的。

DenyHosts安裝方法

# tar -zxvf DenyHosts-2.6.tar.gz //解壓
# cd DenyHosts-2.6 //切換到目錄
# python setup..py install //進行安裝 注意,由於百科不能通過,所以應該是一個.,去掉中間一個點

DenyHosts參數配置

# cd /usr/share/denyhosts/ #DenyHosts默認安裝目錄
# cp denyhosts.cfg-dist denyhosts.cfg
# vi denyhosts.cfg #DenyHosts配置文件
SECURE_LOG = /var/log/secure #ssh日誌文件
# format is: i[dhwmy]
# Where i is an integer (eg. 7)
# m = minutes
# h = hours
# d = days
# w = weeks
# y = years
#
# never purge:
PURGE_DENY = 50m #過多久後清除已阻止IP
HOSTS_DENY = /etc/hosts.deny #將阻止IP寫入到hosts.deny
BLOCK_SERVICE = sshd #阻止服務名
DENY_THRESHOLD_INVALID = 1 #允許無效用户登錄失敗的次數
DENY_THRESHOLD_VALID = 10 #允許普通用户登錄失敗的次數
DENY_THRESHOLD_ROOT = 5 #允許root登錄失敗的次數
WORK_DIR = /usr/local/share/denyhosts/data #將deny的host或ip紀錄到Work_dir中
DENY_THRESHOLD_RESTRICTED = 1 #設定 deny host 寫入到該資料夾
LOCK_FILE = /var/lock/subsys/denyhosts #將DenyHOts啓動的pid紀錄到LOCK_FILE中,已確保服務正確啓動,防止同時啓動多個服務。
HOSTNAME_LOOKUP=NO #是否做域名反解
ADMIN_EMAIL = #設置管理員郵件地址
DAEMON_LOG = /var/log/denyhosts #自己的日誌文件
DAEMON_PURGE = 10m #該項與PURGE_DENY 設置成一樣,也是清除hosts.deniedssh 用户的時間。
DenyHosts啓動文件配置
# cp daemon-control-dist daemon-control
# chown root daemon-control
# chmod 700 daemon-control
# ./daemon-control start #啓動DenyHosts
#ln -s /usr/share/denyhosts/daemon-control /etc/init.d #對daemon-control進行軟連接,方便管理
安裝到這一步就完成了。
#/etc/init.d/daemon-control start #啓動denyhosts
#chkconfig daemon-control on #將denghosts設成開機啓動
加入到自動重啓
# vi /etc/rc.local
加入下面這條命令
/usr/share/denyhosts/daemon-control start
查看攻擊ip 記錄
# vi /etc/hosts.deny