Help us understand the problem. What is going on with this article?

ufwで簡単firewall(ブルートフォース対策)

More than 5 years have passed since last update.

某VPSでDebian8を動かしているがiptablesの設定が面倒くさい(勉強不足)ので
Ubuntuに標準で入っているufw(Uncomplicated FireWall)をDebianに入れた。

ちなみに、以前はiptables-persistentを使い普通に記述していた。

以前の設定はこんな感じ

# Allows HTTP and HTTPS connections from anywhere (the normal ports for websites)
-A INPUT -p tcp --dport 80 -j ACCEPT
-A INPUT -p tcp --dport 443 -j ACCEPT

# Allows SSH connections
# The --dport number is the same as in /etc/ssh/sshd_config
-A INPUT -p tcp -m state --state NEW --dport 10022 -j ACCEPT

この程度ならば直接記述した方が早い。
でも、DoS回避のために試行回数制限(hashlimit)を使おうとすると面倒。

# 1分間に3回アクセスor全体で6回アクセスしてきたipアドレスからの接続を60000ms(1m)拒否
$ iptables -A INPUT -p tcp -m state --syn --state NEW --dport 1022 
-m hashlimit --hashlimit-name limit_sshd --hashlimit 3/m --hashlimit-burst 6 
--hashlimit-mode srcip --hashlimit-htable-expire 60000 -j ACCEPT

「この程度理解できなければサーバ管理なんてできない」と思われる方もいますが、できれば面倒は避けたい。



なのでufwを使う。

#30秒間に6回アクセスしてきた IP の接続を一定時間拒否する。
$sudo ufw limit 10022
$sudo ufw status
To                         Action      From
--                         ------      ----
10022                      LIMIT       Anywhere
10022                      LIMIT       Anywhere (v6)

はい、簡単にできました。(IPv6も自動的にやってくれてる。)

これで「IPV6はとりあえず全部拒否しとけ」とかやらずに済みます。



※何か間違いがあったら指摘お願いします。(特にiptablesのルール)






ufw limit の回数制限が"30秒間に6回アクセス"の根拠(一定時間は不明)

[http://manpages.ubuntu.com/manpages/raring/man8/ufw.8.html:title]

ufw will deny connections if an IP address has attempted to initiate 6 or more connections in the last 30seconds.



参考:iptablesの設定例

[http://www.atmarkit.co.jp/ait/articles/1007/14/news102_2.html:title]

[http://qiita.com/homihomu/items/778770a1c1b3b2371fe0:title]

forestsource
twittter:https://twitter.com/forestsource
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした