ユーザー アカウントをロックまたは無効にする方法はいくつかあります。投稿では、最も広く使用されているいくつかの方法について説明しています。
1.パスワードをロック
ユーザー アカウントをロックするには、コマンド usermod -L を使用します または passwd -l .どちらのコマンドも感嘆符 (“!”) を追加します ファイル /etc/passwd の 2 番目のフィールドに .例:
# usermod -L testuser
または
# passwd -l testuser
2.ユーザー アカウントを期限切れにする
コマンド passwd -l および usermod -L ユーザーアカウントの無効化/ロックに関しては非効率的です。これらのコマンドは、SSH 公開鍵 (または、有効になっている可能性のある pam_unix 以外の他の PAM モジュール) による認証を禁止しません。さらに、シェルを /bin/false または /sbin/nologin に変更することは、対話型ログインにのみ影響するため、満足のいくものではありません。ユーザー アカウントを完全に無効にするには、chage -E0 コマンドを使用します。 .例:
# chage -E0 testuser
8th を使用してアカウントを期限切れにする /etc/shadow のフィールド (「chage -E」を使用) は、PAM を使用してユーザーを認証するすべてのアクセス方法をブロックします。
3.シェルの変更
ユーザーのデフォルトのシェルを /sbin/nologin に変更することもできます ユーザーがシステムにログインしようとしたときにログイン シェルが表示されないようにします。
# usermod -s /sbin/nologin [username]
/sbin/nologin へのシェルの変更については、/etc/passwd の 7 番目と最後のフィールドを確認できます。
アカウントがロックされているか無効になっていないか確認してください。
上記の各方法について、以下の方法を使用して、ユーザー アカウントがロック/無効になっているかどうかを確認できます。
<強い>1.ユーザー アカウントがロックされていないか確認してください。
フラグ *LK* を確認してください 以下のコマンド出力は、アカウントがロックされていることを示しています。
# passwd --status root root *LK* 2017-07-19 0 45 7 -1 (Password set, SHA512 crypt.)
<強い>2.アカウントに有効期限があるかどうかを確認してください。
パスワードの有効期限の行を確認してください アカウントの有効期限が切れる アカウントのパスワードの有効期限が切れているかどうかを確認します。
# chage -l root Last password change : Jul 19, 2017 Password expires : Sep 02, 2017 Password inactive : never Account expires : Sep 02, 2017 Minimum number of days between password change : 0 Maximum number of days between password change : 45 Number of days of warning before password expires : 7
<強い>3.非対話型シェルをチェック
ユーザー シェルが /sbin/nologin のような非対話型シェルに変更されているかどうかを確認します .
# grep ^root /etc/passwd root:x:0:0:root:/root:/sbin/nologin