5回のログインに失敗した後にユーザーをロックする方法は?

5回のログインに失敗した後にユーザーをロックする方法は?

5回のログインに失敗した後にユーザーをロックする方法は?

これを行う方法を理解するために、いくつかのディストリビューション/バージョンを収集しましたが、テストすることはできません。

RHEL4:追加して:

auth        required      /lib/security/$ISA/pam_tally.so no_magic_root
account     required      /lib/security/$ISA/pam_tally.so deny=5 reset no_magic_root

到着する:

/etc/pam.d/system-auth
/etc/pam.d/login
/etc/pam.d/sshd

RHEL4:???

SLES9:追加して:

auth required pam_tally.so no_magic_root
account required pam_tally.so deny=5 reset no_magic_root

到着する:

/etc/pam.d/login
/etc/pam.d/sshd

SLES11またはSLES10:追加して:

auth required pam_tally.so deny=5 onerr=fail per_user no_lock_time

到着する:

/etc/pam.d/common-auth

そして、以下を追加してください:

account required pam_tally.so

到着する:

/etc/pam.d/common-account

質問:これが5回のログイン試行に失敗した後にユーザーをロックする効率的で良い方法であることを確認できますか?それともどうすればいいですか?

添付:

/sbin/pam_tally --user USERNAME --reset

これを行う前に実行できる便利なタスクはありますか?これでrootユーザーをロックできますか? PAMの編集はサーバー上で自分自身をロックできるため、非常に機密性の高い作業です(たとえば、rootユーザー)。これを行うにはどのようなヒントがありますか?

答え1

Fail2banを見ることをお勧めします。特定の回数の試行失敗後にアカウントをロックし、一定時間後にロックを解除するように設定できます。

http://www.fail2ban.org/wiki/index.php/Downloads

本当に使用したい場合は、pam_tally代わりに使用することをお勧めしますpam_tally2。最新のPAMパッケージと一緒にインストールする必要があります。あなたは一つ作ることができます人 pam_tally2使用方法を確認してください。

始めるのに役立つ例は次のとおりです。始めに以下を追加してください。承認するパムファイル/etc/pam.d/password-auth:

auth        required      pam_tally2.so  file=/var/log/tallylog deny=3 even_deny_root unlock_time=1200

同じファイルで、次をアカウントセクションに追加します。

account     required      pam_tally2.so

上記のパラメータは次のとおりです。

  • file=/var/log/tallylog- デフォルトのログファイルはログイン数を保存するために使用されます。
  • deny=3- 3回試行した後、アクセスが拒否され、ユーザーがロックされます。
  • even_deny_root- ポリシーはrootユーザーにも適用されます。
  • unlock_time=1200- 20分(60秒×20分=1200秒)

ルート変更をロックしたくない場合根でさえ拒否到着魔法の根

ルートアカウントをロックする場合は、これは疑わしいです。ルートアカウントをロックすることはできますが、他のアカウントよりも短い期間に同様の操作を実行できます。

auth        required      pam_tally2.so  file=/var/log/tallylog deny=3 even_deny_root unlock_time=1200 root_unlock_time=60

これにより、ルートアカウントは1分間だけロックされ、他のすべてのアカウントは1200秒間ロックされます。

サンプルログファイルは次のとおりです。

$ ssh me@somemachine
me@somemachine's password:
Permission denied, please try again.
me@somemachine's password:
Permission denied, please try again.
me@somemachine's password:
Account locked due to 4 failed logins
Account locked due to 5 failed logins
Last login: Mon Jun 4 21:21:06 2013 from someothermachine

pam_tally2コマンドを使用して、ロックされたアカウントを照会できます。

$ pam_tally2 --user=me
Login           Failures  Latest    failure     From
me                   5    06/04/13  21:21:06    someothermachine

次のように制限を削除できます。

pam_tally2 --user=me --reset
Login           Failures  Latest    failure     From
me                  5     06/04/13  21:21:06    someothermachine

以下のように、アカウントがpam_tally2に表示されます。

$ pam_tally2 --user=me
Login           Failures   Latest   failure     From
me                 0

引用する

答え2

pam_tally2最初は混乱しましたが、従ってみると理解になりましたman pam_tally2

  EXAMPLES
   Add the following line to /etc/pam.d/login to lock the account after 4 failed logins.
   Root account will be locked as well. The accounts will be automatically unlocked after
   20 minutes. The module does not have to be called in the account phase because the
   login calls pam_setcred(3) correctly.

   auth     required       pam_securetty.so
   auth     required       pam_tally2.so deny=4 even_deny_root unlock_time=1200
   auth     required       pam_env.so
   auth     required       pam_unix.so

上記のフレーズは実際にこの行だけを追加したので少し混乱しますpam_tally2.so

したがって、これを編集して他のすべての行の下に/etc/pam.d/login追加できます。auth

   auth     required       pam_tally2.so deny=4 even_deny_root unlock_time=1200

あるいは、/etc/pam.d/system-authそこに追加することもできます。

サービスを再起動または再ロードする必要はありません。新しいローカルログイン時にすぐに有効になります。

pam_tally2注:他のリモートサービスを申請するには、および/または他のsshdリモートサービスに回線を追加する必要があります。/etc/pam.d/sshd/etc/pam.d/password-auth


正常に動作していることを確認するには、有効なユーザーとしてログインしようとして失敗し、以下を実行します。pam_tally2

たとえば、jacobrunというユーザーの場合:

  $ sudo pam_tally2 -u jacob

以下が出力されます。

  Login           Failures Latest   failure     From
  jacob           1        01/01/01 11:00:00    tty1

ログイン試行が数回失敗した後にアカウントがロックされている場合は、手動でアカウントのロックを解除できます。

  $ sudo pam_tally2 -u jacob --reset

関連情報