偶然、私は自分のサーバーのsshログ(/var/log/auth.log)を見て、誰かが常にアクセスを取得しようとしていることに気づきました。
Sep 7 13:03:45 virt01 sshd[14674]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=116.31.116.42 user=root
Sep 7 13:03:48 virt01 sshd[14674]: Failed password for root from 116.31.116.42 port 13423 ssh2
Sep 7 13:03:52 virt01 sshd[14674]: message repeated 2 times: [ Failed password for root from 116.31.116.42 port 13423 ssh2]
Sep 7 13:03:52 virt01 sshd[14674]: Received disconnect from 116.31.116.42: 11: [preauth]
これは毎分数回発生し、私が知らないうちに長い間続いています。
質問もしそうなら、私はこれについて心配する必要があります:それについて何をすべきですか?
残念ながら、これはまったく正常なことであり、すべてのSSHサーバーで発生します。インターネットへようこそ。
サーバーを適切に保護する限り(たとえば、サーバーを最新の状態に保ち、キーベースのログインのみを許可し、ルートSSHアクセスを無効にする)、これは問題になりませんが、fail2ban
のようなものでさらに制限できます。 IPのホワイトリスト、ポートの変更など、可能な場合は適切な他のアプローチ。
rootログインを無効にする 。これを/etc/ssh/sshd_config
に追加
PermitRootLogin no
彼らが望むすべてを根で叩きましょう。そうすれば、彼らはそのようなことには決してなりません。
Svenが指摘するようにサーバーを保護することに加えて、行うべき最善のことの1つ(特にsshが必要な場合は、管理者)は、デフォルトの22
からsshdポートを変更するだけです。
それは単純であるだけでなく(特に~/.ssh/config
に新しいポートを配置する場合、毎回入力する必要がないため)、自動スキャンの99%を停止して、それらを表示することさえありませんが、また、0日間のsshの脆弱性が発見され、より多くの時間が与えられたり、キーが漏洩したりした場合でも、多少は役立ちます。
これはかなり正常な動作です。私は毎日それらのいくつかの数千を取得し、それでも大企業が直面しているものと比較して非常に少ないと思います。
しかし、あなたは心配する必要がありますか?
fail2ban
をインストールしましたか?はいの場合は、心配する必要はありません。これらの攻撃は通常、一般的なUNIXユーザー名に対する辞書ベースの攻撃です。たとえば、これらの「ユーザー」がログインしようとすることがよくあります。
私は本当にfail2ban
をインストールすることをお勧めします。これは、IPに基づいてログインしようとするすべてのユーザーをレート制限し、悪意のあるトラフィックのほとんどをフィルターで除外するためです。他の人の言うこととは逆に、私はIPベースのブロックの支持者ではありません。これは、非常に細かい問題に対する非常に大まかな解決策のようです。また、これらの攻撃者は通常複数のIPを制御するため、複数(または複数のIPブロック)をブロックしても、それらすべてをブロックする保証はありません。ただし、Fail2banは、これらのシナリオに対して非常に柔軟です。