結局、denyhostsでブルートフォースアタック対策

現在、いくつかのサーバを設定中なのだが、サーバ稼働した途端にブルートフォースアタックの餌食になっているという由々しき事態。

そこで、sshguardのインストールを試みたのだが、どうもiptablesにDROPとして追加されても結局はアタックを「拒否しない」様子。
結局、denyhostsをインストールしました。
今回はインストール手順を記載します。OSはCentOS5.xxでお考え下さい。

1.RPMを探してきてインストール
探す方法はいろいろありますが、結局はRPMSearchで探しました。

wget ftp://ftp.pbone.net/mirror/centos.karan.org/el5/extras/testing/x86_64/RPMS/denyhosts-2.6-7.el5.kb.noarch.rpm
rpm -Uvh ftp://ftp.pbone.net/mirror/centos.karan.org/el5/extras/testing/x86_64/RPMS/denyhosts-2.6-7.el5.kb.noarch.rpm

2.syslog-ngの設定を変更する。
syslog-ngに対して、日付でディレクトリを作成するような設定にしている場合、”/etc/syslog-ng/syslog-ng.conf”の設定を一部追加します。
下記2行目は、facility(authpriv)辺りを書き出す処理に対して、今回のログファイル設定を加える、という形になります。

destination d_denyhosts { file("/var/log/secure"); };
log { source(s_sys); filter(f_auth); destination(d_auth); destination(d_denyhosts); };

2.denyhosts.confファイルを編集
設定ファイルである”/etc/denyhosts.conf”ファイルを編集します。

# アクセス拒否を続ける時間 (12時間に設定)
PURGE_DENY = 12h
# ログイン失敗に対するしきい値(存在しないユーザでログインを試みる)
DENY_THRESHOLD_INVALID = 3
# ログイン失敗に対するしきい値(存在するユーザでログインを試みる)
DENY_THRESHOLD_VALID = 5

# イベント発生時のメール送信先
ADMIN_EMAIL = xxxx@xxxx.com
# メール送信元
SMTP_FROM = DenyHosts <xxxx @xxxx.com>

3.設定ファイルの編集が終わったら、保存して起動してみます。

/etc/init.d/denyhosts start

起動後は必ず起動しているかどうかを確認します。

かなり頻繁にアタックを受けている場合は起動するとすぐに”/etc/hosts.deny”に書き込みがあるはずです。
それも確認しておいて下さい。

Leave a comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

Webサイトのこと、WordPressのこと、何でもお問い合わせ下さい