1。DenyHosts 可以防ssh被攻擊
2。搭配tcpwrap 將來源ip擋住
3。根據 /var/log/secure裡的資訊來判斷是否要阻擋
安裝很簡單,不外乎就是yum 啦 , configure啦
設定的話,最好先給 /etc/hosts.allow 一個允許的來源
sshd: 10.1.1.xx
啟動的話就是
/etc/init.d/denyhosts start
chkconfig denyhosts on
而設定檔 /etc/denyhosts.conf
# 記錄 ssh 存取的檔案
SECURE_LOG = /var/log/secure
# 將來源ip限制寫入那裡
HOSTS_DENY = /etc/hosts.deny
# 多久要清一次 hosts.deny 的內容
PURGE_DENY = 4w
# 讓 tcpwrap阻擋什麼服務
BLOCK_SERVICE = sshd
# 登入失敗超過幾次就擋 (沒有這個使用者存在)
DENY_THRESHOLD_INVALID = 5
# 登入失敗超過幾次就擋 (有這個使用者存在)
DENY_THRESHOLD_VALID = 10
# denyhosts有給root帳號特別優待,讓你可以獨立選擇幾次失敗就擋
DENY_THRESHOLD_ROOT = 1
# 算是denyhosts的資料庫
WORK_DIR = /var/lib/denyhosts
# denyhosts程序的記錄檔
DAEMON_LOG = /var/log/denyhosts
# email通知相關設定
ADMIN_EMAIL = root
SMTP_HOST = localhost
SMTP_PORT = 25
SMTP_FROM = DenyHosts <nobody@localhost>
SMTP_SUBJECT = DenyHosts Report from $[HOSTNAME]
在 /etc/hosts.deny 看到的結果
# DenyHosts: Wed Apr 13 19:31:20 2011 | sshd: 49.212.19.24
sshd: 49.212.19.24
# DenyHosts: Wed Apr 13 23:02:31 2011 | sshd: 109.169.73.116
sshd: 109.169.73.116
留言