sshd へのブルートフォース攻撃 DoS攻撃 SMTP

port22 sshd
port25 SMTP
インターネットに接続していると、普通に、ブルートフォース攻撃DoS攻撃に晒される。

それを防止するソフトで、UNIX BSD系は、NetBSD blacklistd、FreeBSDは、11.0-RELEASEから、マージされた。

それぐらい攻撃が多くて、OSの標準対応になった訳だ。5分で2500回近く攻撃される場合もある。

blacklistd(8)の設定方法

blacklistd(8)はデフォルトの設定だと/var/db/blacklistd.dbに接続エントリ情報を保持していますので,再起動してもこのデータは保持されたままです。-fだと、ブロックをクリアー、-rだと、再度ルールを適用です。

/etc/rc.confに追加する設定

# sshd
sshd_enable="YES"
sshd_flags="-o UseBlacklist=yes"

# blacklistd
blacklistd_enable="YES"
blacklistd_flags="-r"

# firewall
firewall_enable="YES"
firewall_type="OPEN"


次に、ipfwが使われるように、ファイルを作成します。
touch /etc/ipfw-blacklist.rc

これで、再起動すると、sshd(8)がblacklistd(8)を利用可能な状態で起動してきます。
ps auxww | grep sshd

ipfw(8) OPENで設定されているデフォルトのフィルタリングルール
ipfw list

00100 allow ip from any to any via lo0
00200 deny ip from any to 127.0.0.0/8
00300 deny ip from 127.0.0.0/8 to any
00400 deny ip from any to ::1
00500 deny ip from ::1 to any
00600 allow ipv6-icmp from :: to ff02::/16
00700 allow ipv6-icmp from fe80::/10 to fe80::/10
00800 allow ipv6-icmp from fe80::/10 to ff02::/16
00900 allow ipv6-icmp from any to any icmp6types 1
01000 allow ipv6-icmp from any to any icmp6types 2,135,136
65000 allow ip from any to any
65535 deny ip from any to any

blacklistd(8)の動作も確認
ps auxww | grep blacklistd

blacklistd(8)の設定ファイルである/etc/blacklistd.conf
の設定は、3回失敗すると、24時間ブロックと書かれています。

ブロックされると
ipfw list

02022 deny tcp from table(port22) to any 22
02025 deny tcp from table(port25) to any 25
という具合で、追加されます。

で、ブロックルールが追加されたのを確認するのは

 blacklistctl dump -a
blacklistctl dump -ra
blacklistctl(8)コマンドは-raを指定するとルールが適用される残り時間を表示させることもできます。

OSが標準で搭載してきている機能でも、適切に設定する事が重要。FreeBSD以外のWindowsでも、同様。
ほとんどの人は、デフォルトの設定のまんま使っている。せっかくの機能が使われておらず
それが、セキュリティの脆弱性になっているのを何度も見てきたが、道具も正しい使い方をして欲しい。

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください