“pam_tally2″モジュールを使うとパスワード認証を失敗時に、ある一定時間アカウントをロックアウトする事が出来ます。
以下、下記資料を参考に設定しました。
NSA(National Security Agency)の『Guide to the Secure Configuration of Red Hat Enterprise Linux 5』
1)設定方法
“/etc/pam.d/system-auth”に下記2箇所の設定を行います。
①”auth”部の先頭に下記設定を追加
auth required pam_tally2.so deny=5 onerr=fail unlock_time=900
※オプションの説明
・onerr=[fail|succeed]
何か予期せぬことが起きた場合にPAM_SUCCESS(onerr=succeedの場合)または、該当するPAMエラーコードを返す。
・unlock_time=n
アクセスに失敗した場合、n秒後にロック解除される。
・deny=n
アクセス試行回数がn回を超えたらアクセスを拒否する。
②”account”部の先頭に下記設定を追加
account required pam_tally2.so
2)ロックアウトされたアカウントを手動で解除するには?
下記コマンドでロックアウトされたユーザーアカウントを手動で解除出来ます。
# /sbin/pam_tally2 –user ユーザー名 –reset
3)設定確認
上記1)の設定後動作確認しました。
①suコマンドでパスワードを5回間違えた場合の例
$ su - testuser Account locked due to 5 failed logins Password: su: incorrect password
②手動でロックアウトを解除
# /sbin/pam_tally2 --user testuser --reset Login Failures Latest failure From testuser 5 01/20/14 11:18:59 pts/2
4)注意点
この設定によってパスワード推測攻撃に対するリスクを軽減できますが、逆にDOS(denial-of-service)攻撃によってシステムが使用できなくなるリスクは増大するので注意します。 関連記事の目次
-
OpenSSH
- レンタルサーバー(VPS)にSSHでログイン
- VPS(レンタル)サーバー上のssh初期設定確認
- SSH接続の仕組み
- OpenSSHの設定ファイル
- OpenSSHの設定をよりセキュアに
- CentOS Stream9のSSH設定(OpenSSH)
- WinSCPを使ってファイル転送
ネットワーク、ポート番号
rpmパッケージ、サービス
パーミッション
ログイン、認証、パスワード、アカウント制御
auditdでシステム監査
ツール
トラブルシューティング
-
ネットワーク、ポート番号
- iptablesを使ってCentOSのファイアウォール設定
- CentOS6のTCPラッパーの概要と設定方法
- nmapでオープンしているポート番号とバージョンを確認
- yumコマンドで最新のパッケージにアップデート
- 更新可能なRPMパッケージのリストをメールで送信する
- CentOSで不要なサービスは起動しないようにする
- RPMパッケージのインテグリティチェック
- cronで使用するファイルのパーミッション設定
- CentOSのumaskの設定
- ユーザーホームディレクトリ内の権限設定をセキュアにする
- CentOSのパスワードファイルのパーミッション設定
- findコマンドでファイル書込権限をいっせいにチェック
- findコマンドでセットユーザ(グループ)IDが不要にセットされていないかチェック
- findコマンドで所有者、グループが存在しないファイルを抽出
- ログイン時などに表示されるシステムバナーを変更するには?
- CentOSのユーザーアカウントのパスワードポリシーを設定
- pam_cracklibモジュールでパスワードポリシーを設定
- pam_unix.soモジュールを使って過去のパスワード再使用を制限する
- システムコンソールでのrootログインを制限する方法
- suコマンドによるrootへのスイッチを制限する
- root権限でのコマンド実行、sudoだと監査ログが取得できる
- デーモン用アカウントなどに対しシェルを使用を無効にする
- パスワード認証を失敗時にアカウントをロックアウトする設定
- rootアカウントのPATH環境変数のセキュリティについて
- NTPのセキュリティを考慮した設定
- セキュリティを考慮してX Windowsを設定または削除する方法
- ファイルの改ざん対策用にTripwireを導入
- CentOSにホスト型侵入検知ソフトAIDE(Advanced Intrusion Detection Environment)を導入
- アイドルのシェルを自動で強制終了させるには?
- CentOSでコアダンプを無効にする方法
- Linuxのbash脆弱性CVE-2014-6271、Shellshockを修整
- CentOSでバッファーオーバーフロー脆弱性に対する防御機能が有効になっているか確認する
yum、rpmパッケージ、サービス
パーミッション
ログイン、認証、パスワード、アカウント制御
ツール
トラブルシューティング