GNU/Linux >> Linux の 問題 >  >> Cent OS

CentOS / RHEL 7 :N 回の不正なログイン試行後にユーザー アカウントをロックする

多くの場合、安全な環境での要件は、ユーザーが指定された回数間違ったパスワードを入力した後にユーザーをロックダウンすることです。これにより、システムは再び保護されます。投稿では、pam.d ファイルを使用して N 回の不正なログイン試行後にアカウントをロックする方法について説明しています。 . pam_faillock モジュールは、認証試行が複数回失敗した場合のユーザー アカウントの一時的なロックをサポートします。この新しいモジュールは、既存の pam_tally2 モジュールよりも機能を改善します。これは、認証試行がスクリーンセーバーで行われたときに一時的なロックも可能にするためです。

N回の不正ログイン後にユーザーをロック

1. まず、ファイル /etc/pam.d/password-auth のバックアップを取ります および /etc/pam.d/system-auth .次に、赤色で強調表示された行を両方のファイルに追加します。

auth        required      pam_env.so
auth        required      pam_faillock.so preauth silent audit deny=3 unlock_time=600
auth        sufficient    pam_unix.so nullok try_first_pass
auth        [default=die] pam_faillock.so authfail audit deny=3
auth        sufficient     pam_faillock.so authsucc audit deny=3
auth        requisite     pam_succeed_if.so uid >= 500 quiet
auth        required      pam_deny.so

account     required      pam_faillock.so
account     required      pam_unix.so
account     sufficient    pam_localuser.so
account     sufficient    pam_succeed_if.so uid < 500 quiet
account     required      pam_permit.so

password    requisite     pam_cracklib.so try_first_pass retry=3 type=
password    sufficient    pam_unix.so sha512 shadow nullok try_first_pass use_authtok
password    required      pam_deny.so

session     optional      pam_keyinit.so revoke
session     required      pam_limits.so
session     optional      pam_oddjob_mkhomedir.so 
session     [success=1 default=ignore] pam_succeed_if.so service in crond quiet use_uid
session     required      pam_unix.so
The above configuration file would lock out users after 3 unsuccessful login attempts and unlock them after 10 minutes.

ここで、
拒否 - ユーザー アカウントがロックされるまでの値 N (試行回数) を設定できます。
unlock_time - アカウントをロックしたままにする時間です [オプション]
even_deny_root – root ユーザーにも同じルールが適用されるようにします。このポリシーからルート ユーザーを除外するには、[オプション] 行からパラメーターを削除するだけです。

注意 注:ファイル内の行の順序は重要であり、even_deny_root オプションを使用している場合、順序を変更すると、root ユーザーを含むすべてのユーザーがロックされることになります。

2. root ユーザーをロックアウトするには、認証が必要です pam_faillock.so /etc/pam.d/system-auth の両方に行を追加する必要があります および /etc/pam.d/password-auth 次のように:

auth    required    pam_faillock.so preauth silent audit deny=3 even_deny_root unlock_time=1200 root_unlock_time=600

3. 複数回ログインに失敗した後でもユーザーがロックアウトされないようにするには、pam_faillock のすぐ上に次の行を追加します。 /etc/pam.d/system-auth の両方で および /etc/pam.d/password-auth user1、user2 を実際のユーザー名に置き換えます。

auth [success=1 default=ignore] pam_succeed_if.so user in user1:user2:user3

4. sshd サービスを再起動します。

# systemctl restart sshd

ロックされたユーザーのパスワードをリセット

1. 認証失敗記録を表示する場合:

# faillock --user [username]

2. 認証失敗記録のリセット:

# faillock --user [username] --reset


Cent OS
  1. CentOS 7 /RHEL7のシングルユーザーモード

  2. CentOS / RHEL 5 :faillog コマンドを使用して失敗したログイン試行を追跡する方法

  3. CentOS/RHEL 7 で root 以外のユーザーとして rsyslog を実行する方法

  1. パスワードレスログインSSH– CentOS 6 / RHEL 6

  2. CentOS/RHEL 7 で GUI でログインできない

  3. CentOS / RHEL 6 :N 回の不正なログイン試行後にユーザー アカウントをロックする

  1. CentOS 6 / RHEL 6でリモートシェルアクセス(RSH)をセットアップする

  2. SSH ログインがスタックする:「debug1:Expect SSH2_MSG_KEX_DH_GEX_GROUP」 CentOS/RHEL 7

  3. CentOS/RHEL 7 でユーザー アカウントを読み取り専用にする方法