前の管理の中で、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
これで自動起動完了です。
|