Linux 上DenyHosts阻止SSH暴力攻擊

如今的互聯網很是不安全,不少人沒事就拿一些掃描機掃描ssh端口,而後試圖鏈接ssh端口進行暴力破解(窮舉掃描),因此建議vps主機的空間,儘可能設置複雜的ssh登陸密碼,雖然在前段時間曾經介紹過Linux VPS禁止某個IP訪問使用hosts.deny禁止某些IP訪問,可是功能方面欠缺,如:不能自動屏蔽,那麼有什麼更好的辦法嗎,就可使用denyhosts這款軟件了,它會分析/var/log/secure(redhat,Fedora Core)等日誌文件,當發現同一IP在進行屢次SSH密碼嘗試時就會記錄IP到/etc/hosts.deny文件,從而達到自動屏蔽該IP的目的。 python

DenyHosts官方網站爲:http://denyhosts.sourceforge.net/ centos

一、下載DenyHosts 並解壓 安全

wget http://soft.vpser.net/security/denyhosts/DenyHosts-2.6.tar.gz
tar zxvf DenyHosts-2.6.tar.gz
cd DenyHosts-2.6 ssh

二、安裝、配置和啓動 網站

python setup.py install 操作系統

默認是安裝到/usr/share/denyhosts/目錄的,進入相應的目錄修改配置文件 .net

cd /usr/share/denyhosts/
cp denyhosts.cfg-dist denyhosts.cfg
cp daemon-control-dist daemon-control 日誌

默認的設置已經能夠適合centos系統環境,大家可使用vi命令查看一下denyhosts.cfg和daemon-control,裏面有詳細的解釋
接着使用下面命令啓動denyhosts程序 vps

chown root daemon-control
chmod 700 daemon-control
./daemon-control start get

若是要使DenyHosts每次重起後自動啓動還需作以下設置:

cd /etc/init.d
ln -s /usr/share/denyhosts/daemon-control denyhosts
chkconfig –add denyhosts
chkconfig –level 2345 denyhosts on

或者執行下面的命令,將會修改/etc/rc.local文件:

echo 「/usr/share/denyhosts/daemon-control start」 >> /etc/rc.local

DenyHosts配置文件denyhosts.cfg說明:

SECURE_LOG = /var/log/secure

#sshd日誌文件,它是根據這個文件來判斷的,不一樣的操做系統,文件名稍有不一樣。

HOSTS_DENY = /etc/hosts.deny

#控制用戶登錄的文件

PURGE_DENY = 5m

#過多久後清除已經禁止的

BLOCK_SERVICE  = sshd

#禁止的服務名

DENY_THRESHOLD_INVALID = 1

#容許無效用戶失敗的次數

DENY_THRESHOLD_VALID = 10

#容許普通用戶登錄失敗的次數

DENY_THRESHOLD_ROOT = 5

#容許root登錄失敗的次數

HOSTNAME_LOOKUP=NO

#是否作域名反解

DAEMON_LOG = /var/log/denyhosts

更多的說明請查看自帶的README文本文件,好了之後維護VPS就會省一些心了,可是各位VPSer們注意了安全都是相對的哦,沒有絕對安全,請按期或不按期的檢查你的VPS主機,並且要定時備份你的數據哦。

相關文章
相關標籤/搜索