初めてのmakeserverTOP > サーバ運用/管理 > Denyhosts

Denyhostsについて

 
DenyHostsとは


これはSSHブルートフォース対策に使います。
辞書攻撃とかで、適当なユーザ名・パスワードを使って、侵入をしようとします。
1分間に10回以上はアタックしてきます。
ログに大量に残りうっとうしいので、「DenyHosts」を使って対応します。
(以下「/var/log/message」でのログ)こんな感じのが大量に出ます。
イヤですねー

vsftpd(pam_unix)[4842]: authentication failure; logname= uid=0 euid=0 tty= ruser= rhost=221.2.229.170
vsftpd(pam_unix)[4842]: check pass; user unknown
vsftpd(pam_unix)[4842]: authentication failure; logname= uid=0 euid=0 tty= ruser= rhost=221.2.229.170
vsftpd(pam_unix)[4842]: check pass; user unknown
vsftpd(pam_unix)[4842]: authentication failure; logname= uid=0 euid=0 tty= ruser= rhost=221.2.229.170
vsftpd(pam_unix)[4842]: check pass; user unknown
vsftpd(pam_unix)[4842]: authentication failure; logname= uid=0 euid=0 tty= ruser= rhost=221.2.229.170
vsftpd(pam_unix)[4842]: check pass; user unknown
vsftpd(pam_unix)[4842]: authentication failure; logname= uid=0 euid=0 tty= ruser= rhost=221.2.229.170
vsftpd(pam_unix)[4842]: check pass; user unknown
vsftpd(pam_unix)[4842]: authentication failure; logname= uid=0 euid=0 tty= ruser= rhost=221.2.229.170
vsftpd(pam_unix)[4842]: check pass; user unknown
vsftpd(pam_unix)[4842]: authentication failure; logname= uid=0 euid=0 tty= ruser= rhost=221.2.229.170
vsftpd(pam_unix)[4842]: check pass; user unknown

 


●インストール

「DenyHosts」は「Python」(プログラム)で作られているので
「Python」関連パッケージがインストールされているか確認します。
「python」「python-devel」があれば動くようです。

# yum list installed | grep python
(「yum」を使ってインストール状況を確認)

# yum -y install python-devel
(「python-devel」が無かったので「yum」を使ってインストール)

# yum -y --enablerepo=rpmforge install denyhosts
(「yum」を使って「denyhosts」をインストール)













 


●設定ファイル「denyhosts.cfg」の編集

# vi /etc/denyhosts/denyhosts.cfg
(「vi」エディタを使って「denyhosts.conf」を編集。)



SECURE_LOG = /var/log/secure
(監視するログファイルの指定(デフォルトのまま))



HOSTS_DENY = /etc/hosts.deny
(拒否アドレスの記述場所(デフォルトのまま))



PURGE_DENY = 1h
(拒否する期間(この場合は1時間。空欄にすると永久拒否))



BLOCK_SERVICE = sshd
(ブロック対象のサービス(デフォルトのまま))



DENY_THRESHOLD_INVALID = 1
(存在しないユーザログインを拒否するまでの回数(この場合は1回で拒否))



DENY_THRESHOLD_VALID = 5
(存在するユーザログインを拒否するまでの回数(この場合は5回で拒否))



DENY_THRESHOLD_ROOT = 1
(「root」ログインを拒否するまでの回数(デフォルトのまま))



















(検知メールの設定をする場合以下のように設定)
ADMIN_EMAIL = root(「root」宛に送信)
SMTP_HOST = localhost(送信ホスト)
SMTP_PORT = 25(送信ポート番号)
SMTP_FROM = DenyHosts (送信元)
SMTP_SUBJECT = DenyHosts Report(件名)
(「#」を削除し設定。たくさん来るようであれば、止めてもいいかも)


編集が終わったら設定を保存して終了します。



(メールはこんな感じで送られてきます。)

 


●DenyHosts対象外リストの編集

ここに以下の様に対象外のアドレスを記述する
   (「localhost」「LAN」内アドレス等)

# vi /etc/hosts.allow



all: 127.0.0.1
all: 192.168.11.
(各環境に合わせて設定してください。)

 


●DenyHostsの起動



# chkconfig denyhosts on
# chkconfig --list denyhosts
# /etc/init.d/denyhosts start



# cat /etc/hosts.deny
(「cat」コマンドで表示してみるとこんな感じで拒否アドレスを追加しています。)



これらのアドレスが気になれば、こちら(APNIC)から調べられます。
「Whois web search」に対象のアドレスを入力し「Go」をクリックしてみてください。
 

サーバ運用/管理記事一覧

NET-SNMP

SNMPとはルータやコンピュータ、端末など、ネットワークに接続された通信機器を監視・制御するためのプロトコル。制御の対象となる機器はMIBと呼ばれる管理情報データベース...

Tripwire

Tripwireとはファイルやディレクトリが追加された場合や、削除された場合などを監視するためのツールで、ファイル改ざん検知として定番なので導入します。&nbs...

Denyhosts

DenyHostsとはこれはSSHブルートフォース対策に使います。辞書攻撃とかで、適当なユーザ名・パスワードを使って、侵入をしようとします。1分間に10回以上は...

Fail2ban

Fail2banとはこれも、「denyhosts」同様にログをチェックして、設定以上に認証に失敗していたら失敗したIPアドレスからの接続を拒否するよくあるブルートフ...

munin

muninとは設定が簡単で、システムを監視していろいろな値を取得してグラフ化してくれるものです。ディスク使用量・MySQL・IOstat・トラフィック・プロセス数・VM...

nagios

Nagios(3系 日本語版)とは指定されたホストやサービスを監視し、障害や復旧時にアラートをメール通知するなどの機能があるオープンソースで作られた総合監視ツール。...

nagios-Plugin

Nagios Pluginとは監視ツール「Nagios」はプラグインを追加することで監視する項目を増やすことができます。デフォルトでの監視項目では少し足りない部分が...

nagios-downtime

Nagios downtimeとはデフォルトで、ダウンタイムという機能があります。これはその時間帯を非監視にすることです。監視はするけど通知はしないというところでし...

nagios cheker

Nagios Chekerとは自宅ではFireFoxをブラウザとして使用しています。nagios関連で面白いものを見つけたので、アップしてみました。FireFoxの...

Snort

Snortとはネットワーク型IDS(Intrusion Detection System)です。ネットワークを流れるパケットをキャプチャーし、不審なパケットを検出する機能が...

Clam Antivirus

Clam AntiVirusとはLINUX用のフリーのアンチウイルスソフト ●Clam AntiVirusインストール# yum -y --e...

amavisd-new

amavisd-new送受信されるメールに対してウィルスチェックをするように設定をする。「postfix」「Clam AntiVirus」が設定済みであることが前提...

awstats

AWStatsとはAWStats (awstats6.95 日本語)アクセス解析・ログ解析「awstats」とは、アクセスを解析して、グラフィカルに表示するツールです。...