man usermod
から:
注:アカウントをロックする場合(パスワードによるアクセスだけでなく)、EXPIRE_DATEも1に設定する必要があります。
usermod -L
は実際にはユーザーのパスワードのみをロックするため、ユーザーは他の方法(たとえば、公開キー認証を使用するsshセッション)を使用してログインできます。
ただし、EXPIRE_DATE
を1に設定すると、アカウントは完全に期限切れになり、ユーザーはそれを一切使用できなくなります。これは、1がat1970-01-01 00:00:01
の有効期限に等しいためです。
Sshキーはパスワードを気にしないため、代わりにアカウントを停止する必要があります。
古い知恵は、ユーザーのシェルを/bin/false
に変更しました。ただし、これは実際には機能しません。