@GarethTheRedの答えを使用しています。この問題リモートCentOS 7サーバーにfall2banをインストールします。私はこれまでのすべてのステップを完了できましたがtail -f /var/log/fail2ban.log
、その時点で私は彼が答えで得たものとは異なる結果を得ました。
この段階で得られた結果は以下の通りである。
[[email protected] ~]# tail -f /var/log/fail2ban.log
2014-12-02 16:55:53,548 fail2ban.server.server[6667]: INFO Changed logging target to /var/log/fail2ban.log for Fail2ban v0.9.0
2014-12-02 16:55:53,550 fail2ban.server.database[6667]: INFO Connected to fail2ban persistent database '/var/lib/fail2ban/fail2ban.sqlite3'
2014-12-02 16:55:54,239 fail2ban.server.database[6667]: WARNING New database created. Version '2'
最後の行の後に.を入力しない限り、カーソルのみが表示され、コマンドプロンプトは表示されませんCtrl-C
。
入力するとアクティブsystemctl status fail2ban
と表示されますfail2ban
。システムからログアウトしてから後で再度ログインすると、sshd
最後のログイン以降にログイン試行が何度も失敗したというメッセージが表示されます。したがって、ログが必要ですfail2ban
。しかし、見つけることができないと思います。
fail2ban
私が追跡できるログを生成するように設定する方法を教えてくれる人はいますか?
答え1
fail2ban
以下からインストールしてみてください。エッフェル。 CentOS 7用にパッケージ化されており、リリース時にアップデートを受け取ることができます。別のリポジトリをインストールすると機能rpm
することもありますが(この場合でも機能します)、これは最善のアプローチではありません。
まず、rootとして次のコマンドを実行してEPELリポジトリをインストールします。
yum install epel-release
上記はEPELをインストールし、次へのアクセスを提供する必要があります。多くの新しいパッケージ。これらのパッケージの 1 つがあるfail2ban
ので、次のコマンドを実行してインストールします。
yum install fail2ban
デフォルトでは、刑務所は設定されていないため、デフォルトのsshd
刑務所を設定するには、次の手順を実行します。
ファイルの作成/編集/etc/fail2ban/jail.local
と追加:
[sshd]
enabled = true
スタート:
systemctl start fail2ban
起動時に起動するように設定します。
systemctl enable fail2ban
かつて既知のエラーSELinux は、fail2ban
操作を実行するために必要なログファイルへのアクセスをブロックします。この問題は、最新バージョンのCentOS 7で修正されたようです。次のように変更する必要はありません。
この問題が発生すると、ログに何も表示されず、出力に失敗またはブロックエントリが表示されない症状が表示されますfail2ban-client status sshd
。
SELinux エラーを確認するには、次のログを読んでください。
journalctl -lfu fail2ban
次の投稿に注意してください。
SELinux is preventing /usr/bin/python2.7 from getattr access on the file .
***** Plugin catchall (100. confidence) suggests **************************
If you believe that python2.7 should be allowed getattr access on the file by default.
Then you should report this as a bug.
You can generate a local policy module to allow this access.
Do
allow this access for now by executing:
# grep fail2ban-server /var/log/audit/audit.log | audit2allow -M mypol
# semodule -i mypol.pp
したがって、提案されているとおりに実行し、以下を実行します。
grep fail2ban-server /var/log/audit/audit.log | audit2allow -M mypol
semodule -i mypol.pp
その後、安全のために再起動してくださいfail2ban
。
systemctl restart fail2ban
エラーメッセージがログに表示されなくなるまで、上記のプロセスを繰り返す必要があります。
サーバーがインターネットにある場合は監視してください fail2ban-client status sshd
。すべてのSELinuxの問題を発見すると、すぐに失敗と禁止の数が表示され始めます。
SELinuxポリシーの更新には細心の注意を払う必要があります。パッケージの更新が提供されると、上記selinux-policy
の内容が上書きされる可能性があるため、上記のコマンドを再実行する必要があるかもしれません。この場合、fail2ban
再び動作が中断されるのでわかります!