CentOSでのハッキングの試みを自動的に拒否しますか?


1

サーバーが攻撃を受けています。私はこの種の試みを記録しています:

Sep 22 06:39:11 s1574**** sshd[16453]: Failed password for invalid user amber from        64.215.17.4 port 35182 ssh2
Sep 22 04:39:11 s1574**** sshd[16454]: Received disconnect from 64.215.17.4: 11: Bye Bye
Sep 22 06:39:11 s1574**** sshd[16457]: Invalid user amber from 64.215.17.4
Sep 22 04:39:11 s1574**** sshd[16458]: input_userauth_request: invalid user amber
Sep 22 06:39:11 s1574**** sshd[16457]: pam_unix(sshd:auth): check pass; user unknown
Sep 22 06:39:11 s1574**** sshd[16457]: pam_unix(sshd:auth): authentication failure;     logname= uid=0 euid=0 tty=ssh ruser= rhost=dns2.rsd.com 
Sep 22 06:39:11 s1574**** sshd[16457]: pam_succeed_if(sshd:auth): error retrieving     information about user amber
Sep 22 06:39:14 s1574**** sshd[16457]: Failed password for invalid user amber from 64.215.17.4 port 35842 ssh2
Sep 22 04:39:14 s1574**** sshd[16458]: Received disconnect from 64.215.17.4: 11: Bye Bye

この種のアクセス試行をブロックするにはどうすればよいですか?

回答:


6
  1. を使用して、1分あたりのログイン試行回数を制限できますiptables。このようなルールは、3回のログイン試行後1分間IPをブロックします(オタクの日記-Netfilterとrecentモジュールを使用したSSHブルートフォース攻撃の緩和から取得)。

    iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m recent --set --name SSH
    iptables -A INPUT -p tcp --dport 22 -m state --state NEW -j SSH_WHITELIST
    iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m recent --update --seconds 60 --hitcount 4 --rttl --name SSH -j ULOG --ulog-prefix SSH_brute_force
    iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m recent --update --seconds 60 --hitcount 4 --rttl --name SSH -j DROP
    
  2. さらに設定可能なsikytionが必要な場合は、fail2banまたはDenyHostsを使用してSSHdログを分析し、疑わしいIPアドレスをブロックできます。


返信をありがとう、iptablesが読めるdenied_hostsファイルを追加して同じことをする方法はありますか?
スペースバイカー

iptablesファイル自体からは何も読み取れません。ファイルを解析し、iptablesルールを追加/削除するスクリプトを作成することができます。ただし、/etc/hosts.denyに直接影響するを使用できsshdます。
オーランド

さらに、hosts.denyに攻撃者のIPを追加するdenyhostsをインストールしました。
spacebiker

1

最良の方法は、不要なポートをすべてiptablesでブロックし、ログインに秘密鍵を使用するようにsshをセットアップすることです。PuttyとMobaXterm(両方とも無料のsshクライアント)が秘密鍵ログインをサポートしていることを知っています。/ etc / ssh / sshd_config内で

PermitRootLogin yes

追加します:

PermitRootLogin without-password

これにより、rootパスワードを知っていても、それでログインすることはできなくなります。

iptablesルールを使用してそれらを調整し、サーバーが行き詰まらないようにすることができます。


1

ソフトウェアDenyhostsをインストールします。このようなハッカーIPがhosts.denyに自動的にリストされます。パッケージはepelリポジトリで利用可能です。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.