Самый простой способ отключения пользовательского аккаунта - редактирование файла /etc/shadow, который отвечает за хранение зашифрованных паролей пользователей, перечисленных в файле /etc/passwd. Вот типичная запись пользовательского пароля в /etc/shadow:
tester:$6$KYriHdKR$Yku3LWgJmomsynpcle9BCA:15711:0:99999:7:::
Для отключения аккаунта достаточно просто добавить * или ! перед зашифрованным паролем:
tester:!$6$KYriHdKR$Yku3LWgJmomsynpcle9BCA:15711:0:99999:7:::
То же самое можно сделать с помощью команды:
# usermod -L tester
Любой метод авторизации, использующий для аутентификации пользователя файл /etc/shadow, больше не будет работать, так как расшифровать пароль будет невозможно:
$ su tester
Password:
su: Authentication failure
Другой, и более безопасный способ отключения пользовательского аккаунта - заменить существующую программную оболочку пользователя на псевдооболочку, такую как /usr/sbin/nologin, которая при попытке авторизации выдает вежливое сообщение:
This account is currently not available.
Для этого модифицируйте файл /etc/password, изменив запись пользователя:
tester:x:1001:1001:Tester,User,,:/home/tester:/bin/bash
на
tester:x:1001:1001:Tester,User,,:/home/tester:/usr/sbin/nologin
После этого пользователь не сможет авторизоваться даже с правильным паролем:
$ su tester
Password:
This account is currently not available.
Для активации пользовательского аккаунта просто удалите ! из файла /etc/shadow, или воспользуйтесь командой:
# usermod -U tester