Fig.01: All commands in action

Команда удаления пароля пользователя Linux

Допустим я новый пользователь Linux. Я хочу отключить пароль для учетной записи. Как удалить пароль пользователя в операционной системе Linux с помощью параметра командной строки? Какая команда удаления пароля пользователя Linux.

Все пароли пользователей хранятся в файле /etc/shadow в соленом формате. Быстрый способ удалить/удалить пароль пользователя — передать параметр —delete команде passwd. Сначала войдите в систему как пользователь root, используя команду sudo/su, и введите следующие команды.

nixCraft: конфиденциальность прежде всего, поддержка Reader

  • nixCraft — это операция одного человека. Я создаю весь контент сам, без помощи искусственного интеллекта или машинного обучения. Я поддерживаю точность и актуальность контента.
  • Ваша конфиденциальность — мой главный приоритет. Я не отслеживаю вас, не показываю вам рекламу и не рассылаю спам по электронной почте. Просто чистый контент в истинном духе Linux и FLOSS.
  • Быстрый и чистый просмотр. nixCraft спроектирован так, чтобы быть быстрым и простым в использовании. Вам не придется иметь дело со всплывающими окнами, рекламой, баннерами cookie и другими отвлекающими факторами.

 

Получение информации о пароле учетной записи пользователя Linux

Используйте команду chage для отображения информации об устаревании учетной записи, такой как срок действия пароля, дата неактивности и другая информация. Синтаксис:

sudo chage -l <USER_NAME_HERE>
sudo chage -l sweta

Выходы:

Last password change					: Oct 13, 2023
Password expires					: Jan 11, 2024
Password inactive					: Jan 25, 2024
Account expires						: Oct 27, 2023
Minimum number of days between password change		: 0
Maximum number of days between password change		: 90
Number of days of warning before password expires	: 7

Кроме того, вы можете просмотреть текущую оболочку пользователя и пароль следующим образом:

grep ^{USER_NAME} /etc/passwd
grep ^{USER_NAME} /etc/shadow

Например:

grep ^sweta /etc/passwd
grep ^sweta /etc/shadow

Команда для удаления пароля пользователя в Linux

ПРЕДУПРЕЖДЕНИЕ! Только пользователи root могут удалять пароли для любого пользователя. Не удаляйте пароль для учетной записи пользователя root, так как при этом учетная запись root станет беспарольной. Это отличная идея немедленно заблокировать учетную запись после удаления пароля. NixCraft или автор не несут ответственности за какие-либо проблемы безопасности.

Введите следующую команду, чтобы удалить пароль пользователя:

passwd --delete username

ИЛИ

passwd -d username

Вот как использовать sudo:

sudo passwd -d sweta
Removing password for user sweta.
passwd: Success

Защита учетной записи без пароля

Приведенные выше команды удаляют пароль пользователя и делают его пустым. Это быстрый способ отключить пароль для учетной записи. Это сделает указанную учетную запись беспарольной. Пользователь не сможет войти на компьютер с Linux. Также рекомендуется установить для пользовательской оболочки значение nologin, чтобы избежать проблем, связанных с безопасностью. Сначала найдите путь к оболочке nologin, используя «тип» или «команду» следующим образом:

type nologin
command -v nologin

Выходы:

/usr/sbin/nologin

Какова цель оболочки /usr/sbin/nologin в файле /etc/passwd?

Оболочка nologin отображает сообщение о том, что учетная запись недоступна, и завершает работу с ненулевым значением. Он предназначен для замены отключенных учетных записей. Вы можете проверить это следующим образом:

 

Чтобы отобразить статус завершения последней выполненной команды, попробуйте «echo» или «printf»:

echo "$?"
Outputs:

Теперь установите этот путь к оболочке следующим образом, используя команду usermod:

usermod -s /usr/sbin/nologin username

Например, чтобы удалить пароль пользователя sweta, введите:

passwd -d sweta
usermod -s /usr/sbin/nologin sweta

Удаление доступа по ssh для учетной записи пользователя Linux

Хотя пароль удален и для оболочки установлено значение /usr/sbin/nologin, пользователи Linux по-прежнему могут войти в систему, используя ключи публикации ssh. Для доступа по ssh требуется нечто большее, чем просто удаление паролей и блокировка учетных записей. Лучше всего было бы остановить все процессы, принадлежащие пользователю. Вот как остановить все процессы, принадлежащие этому пользователю:

sudo killall -STOP -u <USER_NAME_HERE>
sudo killall -STOP -u sweta

Наконец, заблокируйте пользователя и истечет срок действия пароля для дополнительной безопасности. Например:

sudo usermod -L -e 1 <USER_NAME_HERE>
sudo usermod -L -e 1 sweta

Дополнительную информацию см. в руководстве «Как удалить ключи SSH и запретить доступ» и в блоге «Поучительная история о блокировке учетных записей пользователей Linux и FreeBSD».

Проверка

Используйте следующую команду chage/grep (не стесняйтесь заменять имя пользователя sweta фактическим именем пользователя):

chage -l sweta

 

Обратите внимание, что срок действия учетной записи истек, а дата установлена ​​на «02 января 1970 г.»:

Last password change					: Oct 13, 2023
Password expires					: Jan 11, 2024
Password inactive					: Jan 25, 2024
Account expires						: Jan 02, 1970
Minimum number of days between password change		: 0
Maximum number of days between password change		: 90
Number of days of warning before password expires	: 7

Введите следующую команду и убедитесь, что для оболочки установлено значение /usr/sbin/nologin:

grep ^sweta /etc/passwd

Выходы (ищите /usr/sbin/nologin как оболочку):

sweta:x:1001:1002::/home/sweta:/usr/sbin/nologin

Также попробуйте:

grep ^sweta /etc/shadow

Если поле пароля, начинающееся с восклицательного знака (!), означает, что пароль для учетной записи пользователя заблокирован и он не может войти в систему:

Fig.01: All commands in action

Рис.01: Все команды в действии

Подведение итогов

Со временем команды для отключения паролей учетных записей пользователей стали более сложными, а поверхность атаки систем Linux также увеличилась. Правильная процедура выглядит следующим образом:

  1. Остановите все процессы Linux, принадлежащие пользователю:

killall -STOP -u <USER_NAME>

2. Удалите пароль пользователя:

passwd -d <USER_NAME>

3. Блокировка учетной записи пользователя:

usermod -L -e 1 <USER_NAME>

 

4. Вежливо откажите во входе в учетную запись пользователя:

usermod -s /usr/sbin/nologin <USER_NAME>

Как отменить процедуру?

Сначала установите оболочку входа пользователя в /bin/bash:

usermod -s /bin/bash <USER_NAME>

Разблокируйте учетную запись пользователя:

passwd -u <USER_NAME>

Установите новый пароль для учетной записи пользователя:

passwd <USER_NAME>

Если система Linux не была перезагружена и все процессы не были завершены, разблокируйте и возобновите все процессы Linux, принадлежащие пользователю:

killall -CONT -u <USER_NAME>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Click to rate this post!
[Total: 0 Average: 0]

Leave a reply:

Your email address will not be published.