#-----------------------------
# ■ PAM設定
#-----------------------------
#【例】
# |module-type|control |module-path |arguments
# |① auth |② required|③ pam_unix.so|④
#-----------------------------
# ①モジュールタイプ(機能)
# account (アカウント有効期限)
# auth (パスワードの認証)
# password (パスワードの変更)
# session (認証前後に実行させる処理(ログ等))
#-----------------------------
# ②コントロール(成功/失敗した場合の挙動)
# required (完了するまで処理継続)
# requisite (失敗したらすぐに通知)
# sufficient (失敗してても次に進む)
# optional (他のモジュールが無い場合に認証)
# include (別ファイルを読み込む)
#-----------------------------
# ③module-path(モジュール名)
# 「pam_unix.so」等のモジュール名
#-----------------------------
# ④arguments(追加情報)
# モジュールに与える追加情報
# 無効な名前の引数は無視される
#-----------------------------
# PAMモジュールファイル
# /lib64/security/ディレクトリ配下
#-----------------------------
# PAM設定ファイル
# /etc/pam.d/ディレクトリ配下(優先)
# /etc/pam.d/login(ログイン用のPAM設定ファイル)
# /etc/pam.confファイル
#-----------------------------
# PAM設定の詳細情報
# /usr/share/doc/pam-バージョン番号/texts
#=============================
# ログインの試行回数制限
#=============================
#-----------------------------
# 現在のプロファイル
authselect current
#-----------------------------
# プロファイルに追加
authselect enable-feature with-faillock
#-----------------------------
# 現在のプロファイル
authselect current
#-----------------------------
# プロファイルに追加されたことを確認
grep -n faillock /etc/pam.d/system-auth
grep -n faillock /etc/pam.d/password-auth
#-----------------------------
# 設定例(/etc/security/faillock.conf)
vi /etc/security/faillock.conf # 3回失敗するとロック
deny = 3
# インターバル時間60秒
fail_interval = 60
# 10秒後にロックを自動解除
unlock_time = 0
# rootも対象とする
even_deny_root
# rootの自動ロック解除時間
root_unlock_time = 10
#-----------------------------
# 設定後の確認の為、testユーザー作成
useradd test
passwd test
※別のteratermからtestユーザーでログインして
以下のようなユーザー切替をテストしてみる
#-----------------------------
※以下の一般ユーザーで3回連続でパスワード間違える
su - user
⇒ロックされることを確認
#-----------------------------
※以下のroot切替で3回連続でパスワード間違える
su -
⇒ロックが自動解除されることを確認
#-----------------------------
# ログイン失敗回数
faillock --user user
faillock --user root
#-----------------------------
# ロックを手動解除
faillock --user user --reset
faillock --user root --reset
PR