歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux管理 >> Linux安全

DenyHosts安裝及配置防止ssh暴力破解

DenyHosts(項目主頁:http://denyhosts.sourceforge.net/)是運行於Linux上的一款預防SSH暴力破解的軟件,可以從http://sourceforge.net/projects/denyhosts/files/進行下載,然後將下載回來的DenyHosts-2.6.tar.gz源碼包上傳到Linux系統中。

下面是安裝過程
****************************************************************
tar zxvf DenyHosts-2.6.tar.gz                                           #解壓源碼包
cd DenyHosts-2.6                                                            #進入安裝解壓目錄
python setup.py install                                                    #安裝DenyHosts
cd /usr/share/denyhosts/                                                #默認安裝路徑
cp denyhosts.cfg-dist denyhosts.cfg                              #denyhosts.cfg為配置文件
cp daemon-control-dist daemon-control                         #daemon-control為啟動程序
chown root daemon-control                                            #添加root權限
chmod 700 daemon-control                                            #修改為可執行文件
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 /usr/share/denyhosts/denyhosts.cfg       #編輯配置文件,另外關於配置文件一些參數,通過grep -v "^#" denyhosts.cfg查看
SECURE_LOG = /var/log/secure                  #ssh 日志文件,redhat系列根據/var/log/secure文件來判斷;Mandrake、FreeBSD根據 /var/log/auth.log來判斷
                                                                  #SUSE則是用/var/log/messages來判斷,這些在配置文件裡面都有很詳細的解釋。
HOSTS_DENY = /etc/hosts.deny                 #控制用戶登陸的文件
PURGE_DENY = 30m                                  #過多久後清除已經禁止的,設置為30分鐘;
# ‘m’ = minutes
# ‘h’ = hours
# ‘d’ = days
# ‘w’ = weeks
# ‘y’ = years
BLOCK_SERVICE = sshd                           #禁止的服務名,當然DenyHost不僅僅用於SSH服務
DENY_THRESHOLD_INVALID = 1             #允許無效用戶失敗的次數
DENY_THRESHOLD_VALID = 3                 #允許普通用戶登陸失敗的次數
DENY_THRESHOLD_ROOT = 3                 #允許root登陸失敗的次數
DAEMON_LOG = /var/log/denyhosts      #DenyHosts日志文件存放的路徑,默認

更改DenyHosts的默認配置之後,重啟DenyHosts服務即可生效:
/etc/init.d/daemon-control restart         #重啟denyhosts

cat /var/log/denyhosts 查看日志 出現遇到的問題:

出現:
starting DenyHosts: /usr/bin/env python /usr/bin/denyhosts.py --daemon --config=/usr/share/denyhosts/denyhosts.cfg
DenyHosts could not obtain lock (pid: )
[Errno 17] File exists: '/var/lock/subsys/denyhosts'
使用:
rm -f /var/lock/subsys/denyhosts
/etc/init.d/daemon-control start
starting DenyHosts: /usr/bin/env python /usr/bin/denyhosts.py –daemon –config=/usr/share/denyhosts/denyhosts.cfg
OK!
啟動完成啦。
你可以使用
/etc/init.d/daemon-control status  查看狀態
DenyHosts is running with pid = 8272 表示服務已經起來了

現在暫時服務器沒有暴力破解的提示了,看看攔截記錄
Copyright © Linux教程網 All Rights Reserved