- TOP - TALK - PROF - LINK -
[ Linuxに戻る ] [ 雑学に戻る ]

<<更新日:2012/03/07>>

denyhostsインストール


前の管理の中で、sshアクセス時、rootログインを仕掛けてきたら一発退場と言う話書きましたよね。
タイトルにある通りhosts.denyではなく、denyhostsで処理しています。

簡単に言えば、条件にあったら、hosts.denyに記載してアクセス拒否をすると言う物です。

一度停止しても数時間後に復旧させるとか、回数制限を多くしたり少なくしたり。
環境によって、様々な設定が可能です。

さて、さっそくインストールです。

VPSでもそうですが、デフォルトインストールだと、pythonが入っていないかもしれません。

その場合、以下のコマンドでpythonのインストールを実施します。
yum -y install python*

今回入れたpythonは2.4が入ってきますので、python2.4版をダウンロードしてきます。
最新版はpython2.6なので、気をつけて下さい。

ダウンロードした物をインストール。
今回はrpmで入れています。
rpm -ivh DenyHosts-2.6-python2.4.noarch.rpm

インストールが官僚すると、コンフィグなんかを適切な所に配置します。
cp /usr/share/denyhosts/denyhosts.cfg-dist /etc/denyhosts.cfg
cp /usr/share/denyhosts/daemon-control-dist /usr/share/denyhosts/daemon-control


vi /etc/denyhosts.cfg

拒否対象:全て
BLOCK_SERVICE = ALL

通知先メールアドレス:
ADMIN_EMAIL = yuasahir@spznet.jp

拒否解除時間:無制限
PURGE_DENY =

拒否解除回数:無指定=無制限・・・解除しないので意味は無い
#PURGE_THRESHOLD = 0

登録されていないユーザでのログイン失敗時の回数
DENY_THRESHOLD_INVALID = 5

登録ユーザでのログイン失敗時の回数
DENY_THRESHOLD_VALID = 10

rootユーザでのログイン失敗時の回数
DENY_THRESHOLD_ROOT = 1

同時アクセス数(制限ユーザのみ)
#DENY_THRESHOLD_RESTRICTED = 1

送信元アドレス
SMTP_FROM = DenyHosts <[メールアドレス]>


以上がdenyhosts.cfg
自分のサーバをどうするかは、それぞれだと思いますが、登録ユーザでのログイン失敗時なんかは、鍵管理とかでないと、発生しうるので、解除しないのが良いかは微妙です。

私は失敗して自分のIPが拒否された事があります(−−;

その時はdenyhostsのデータとhosts.denyを修正して解除しましたが・・・

そこらへんは気が向いたら書きます。

自動起動設定
# cd /etc/init.d/ # ln -s /usr/share/denyhosts/daemon-control denyhosts
# chkconfig denyhosts on

これで自動起動完了です。