Ubuntu usermod изменить пароль

Обновлено: 04.07.2024

Я superadmin сервера и хотел бы изменить пароль существующего пользователя. Как я могу это сделать ?

но это не сработало?

usermod -p Флаг ожидает данные на пароль уже в зашифрованном виде.

Используйте openssl passwd для генерации зашифрованных данных или сделайте так:

Причина, по которой это не сработало, заключается в том, что usermod параметр -p предполагает, что пароль уже зашифрован.

Из usermod справочной страницы:

Устанавливать пароль таким способом не рекомендуется.

Вместо этого вы должны использовать passwd <username> . Это должно (как usermod ) быть выполнено от имени пользователя root (если вы не меняете пароль пользователя, вошедшего в систему).

Чтобы сменить пароль для пользователя foo.

Это запросит новый пароль.

Загляните на справочную страницу для passwd получения дополнительной информации о настройке, например, времени истечения.

Вы можете использовать passwd :

Вам не нужно, sudo если вы сами являетесь суперпользователем

@Achu: требуется текущий пароль пользователя. Но он суперпользователь.

Способ присвоения пароля с помощью usermod (что фактически и запрашивал OP) - использовать crypt() хешированный пароль для -p аргумента.

Затем используйте это в usermod -p аргументе командной строки:

Неинтерактивная однострочная команда для изменения пароля пользователя:

usermod -p требует зашифрованный пароль для работы. Обратите внимание, что new-password это будет видно для пользователей, которые могут перечислить процессы.

Здесь следует добавить следующее. Этот метод:

sudo usermod -p perl -e "print crypt("new-password","Q4")" john

означает, что несколько очень похожих паролей будут работать ВСЕ. Например, на сервере Oracle Linux 7.4 и рабочем столе Ubuntu 17.10 рассмотрим:

sudo usermod -p perl -e "print crypt("borkling","Q4")" orabuntu

Теперь, если кто-то делает:

вы обнаружите, что ЛЮБОЙ пароль, начинающийся с "borkling", будет работать, например,

хотя «borkline» не будет работать, потому что, как указывалось ранее, любой пароль, который имеет «borkling» в качестве префикса, также будет работать, когда пароль установлен таким образом.

Способ, которым afaik не имеет этого нежелательного побочного эффекта, является следующим:

В RedHaty Linux: (опустите колесо -G, если вы не хотите предоставлять привилегии sudo)

sudo useradd -m -p $ (openssl passwd -1 $ ) -s / bin / bash -G wheel $

В Debiany Linux (опустите -G sudo, если вы не хотите использовать sudo privs):

Я superadmin сервера и хотел бы изменить пароль существующего пользователя. Как я могу это сделать?

но это не сработало?

usermod -p Флаг ожидает, что данные будут паролем уже в зашифрованном формате.

использование openssl passwd создать зашифрованные данные или сделать это так:

Причина, по которой это не сработало, заключается в том, что usermod Опция -p предполагает, что пароль уже зашифрован.

Устанавливать пароль таким способом не рекомендуется.

Вместо этого вы должны использовать passwd <username> , Это должно (как usermod ) сделать это как root (если вы не меняете пароль пользователя, вошедшего в систему).

Чтобы сменить пароль для пользователя foo.

Это запросит новый пароль.

Взгляните на справочную страницу для passwd для получения дополнительной информации о настройке, например, время истечения.

Вы можете использовать passwd :

Вам не нужно sudo если ты сам суперпользователь

Таким образом, обычный пользователь может изменить свой пароль без привилегий root, если у вас его нет.

Неинтерактивная однострочная команда для изменения пароля пользователя:

usermod -p требует зашифрованный пароль для работы. Пожалуйста, обратите внимание new-password будет виден для пользователей, которые могут перечислить процессы.

Чтобы назначить пароль с помощью usermod (что на самом деле запрашивает OP), используйте crypt() хешированный пароль для -p аргумент.

Тогда используйте это в своем usermod -p аргумент командной строки:

Здесь следует добавить следующее. Этот метод:

sudo usermod -p perl -e "print crypt("new-password","Q4")" Джон

означает, что несколько очень похожих паролей будут работать ВСЕ. Например, на сервере Oracle Linux 7.4 и рабочем столе Ubuntu 17.10 рассмотрим:

sudo usermod -p perl -e "print crypt("borkling","Q4")" orabuntu

Теперь, если кто-то делает:

вы обнаружите, что ЛЮБОЙ пароль, начинающийся с "borkling", будет работать, например,

хотя "borkline" не будет работать, потому что, как указывалось ранее, любой пароль, который имеет "borkling" в качестве префикса, также будет работать, когда пароль установлен таким образом.

Способ, которым afaik не имеет этого нежелательного побочного эффекта, является следующим:

В RedHaty Linux: (опустите колесо -G, если вы не хотите предоставлять привилегии sudo)

sudo useradd -m -p $ (openssl passwd -1 $ ) -s /bin/bash -G wheel $

В Debiany Linux (пропустите -G sudo, если вы не хотите использовать sudo privs):

И вам, вероятно, также потребуется добавить параметр SeatDefaults в ответ, т. е.

И вам также может потребоваться разрешить доступ к локальному серверу с помощью

, чтобы полностью отключить его

Флаг usermod -p ожидает, что данные будут паролем уже в зашифрованном формате.

Используйте openssl passwd для генерации зашифрованных данных или выполните следующие действия:

Причина, по которой это не сработало, заключается в том, что опция -p usermod ожидает, что пароль будет зашифрован уже.

Из справочной страницы usermod:

Чтобы установить пароль таким образом, не рекомендуется.

Вместо этого вы должны использовать passwd <username>.

Чтобы изменить пароль для пользователя foo.

d5] Это вызовет новый пароль.

Посмотрите man-страницу для passwd для получения дополнительной информации о настройке, например, времени истечения времени.

Таким образом, обычный пользователь может изменить собственный пароль без привилегий root, если у вас его нет.

Способ назначить пароль с помощью usermod (что и требовал OP) - использовать хешированный пароль crypt() для аргумента -p.

Затем используйте это в аргументе командной строки usermod -p:

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

usermod -p требует зашифрованного пароля для работы. Обратите внимание, что new-password будет отображаться для пользователей, которые могут перечислять процессы.

неинтерактивный - это огромное спасибо. – Phineas Dashevsky 10 July 2017 в 17:39

Что-то, что нужно добавить здесь, следующее. Этот метод:

sudo usermod -p perl -e "print crypt("new-password","Q4")" john

означает, что многие очень похожие пароли будут работать ВСЕ. Например, на сервере Oracle Linux 7.4 и рабочем столе Ubuntu 17.10 рассмотрите:

sudo usermod -p perl -e "print crypt("borkling","Q4")" orabuntu

Теперь, если вы это сделаете:

вы обнаружите, что ЛЮБОЙ пароль, начинающийся с «borkling», будет работать, например

, хотя «borkline» не будет работать, потому что как было сказано ранее, любой пароль, который имеет «borkling» в качестве префикса, также будет работать, когда пароль будет установлен таким образом.

. Способ к тому, что afaik не имеет этого нежелательного побочного эффекта, следующий :

On RedHaty Linuxes: (опустите «-G колесо», если вы не хотите, чтобы sudo privs были предоставлены)

sudo useradd -m -p $ (openssl passwd -1 $ ) -s / bin / bash -G wheel $

В Debiany Linuxes (опустите -G sudo, если вы не хотите sudo privs): [!d15 ]

В этой статье рассказывается, как использовать команду usermod для добавления пользователя в группу, изменения оболочки пользователя, имени входа, домашнего каталога и т. Д.

Команда usermod

Синтаксис команды usermod имеет следующий вид:

Только root или пользователи с доступом sudo могут вызывать usermod и изменять учетную запись пользователя. В случае успеха команда не выводит никаких результатов.

Добавить пользователя в группу

Чтобы добавить существующего пользователя во вторичную группу, используйте параметры -a -G после имени группы и имени пользователя:

Если вы хотите добавить пользователя к нескольким группам одновременно, указать группы после того , как -G опция разделяться , (запятыми) без промежуточных пробелов.

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

Всегда используйте параметр -a (добавить) при добавлении пользователя в новую группу. Если вы опустите опцию -a , пользователь будет удален из групп, не перечисленных после опции -G .

Если пользователя или группы не существует, команда предупредит вас.

Изменить основную группу пользователя

Чтобы изменить основную группу пользователя, вызовите команду usermod с параметром -g следующим за именем группы и именем пользователя:

В следующем примере мы меняем основную группу пользователя linuxize на developers :

Каждый пользователь может принадлежать ровно к одной основной группе и нулю или более вторичных групп.

Изменение информации о пользователе

Чтобы изменить информацию GECOS (полное имя пользователя), запустите команду с параметром -c за которым следует новый комментарий и имя пользователя:

Вот пример, показывающий, как добавить дополнительную информацию пользователю linuxize:

Эта информация хранится в /etc/passwd .

Изменение домашнего каталога пользователя

В большинстве систем Linux домашние каталоги пользователей названы по имени пользователя и создаются в каталоге /home .

Если по какой-то причине вы хотите изменить домашний каталог пользователя, вызовите команду usermod с параметром -d usermod абсолютный путь к новому домашнему каталогу и имя пользователя:

По умолчанию команда не перемещает содержимое домашнего каталога пользователя в новый. Чтобы переместить содержимое, используйте параметр -m . Если новый каталог еще не существует, он создается:

Вот пример, показывающий, как изменить домашний каталог пользовательских www-data на /var/www :

Изменение пользовательской оболочки по умолчанию

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

В приведенном ниже примере мы меняем оболочку пользователя на Zsh:

Вы можете узнать, какие оболочки доступны в вашей системе, просмотрев содержимое файла /etc/shells .

Изменение UID пользователя

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

В приведенном ниже примере показано, как изменить номер «UID» на «1050»:

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

Изменение имени пользователя

Хотя не очень часто, иногда вам может потребоваться изменить имя существующего пользователя. Параметр -l используется для изменения имени пользователя:

В приведенном ниже примере мы переименовываем пользователя linuxize в lisa в «1050»:

При изменении имени пользователя вы также можете изменить домашний каталог пользователя, чтобы отразить новое имя пользователя.

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

Срок годности должен быть установлен в формате YYYY-MM-DD .

Например, чтобы отключить пользователя linuxize 21 2022-02-21 , вы должны выполнить следующую команду:

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

Используйте команду chage -l для просмотра даты истечения срока действия пользователя:

Дата истечения срока хранения хранится в /etc/shadow .

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

Параметр -L позволяет заблокировать учетную запись пользователя:

Команды вставят восклицательный знак ( ! ) Перед зашифрованным паролем. Если поле пароля в /etc/shadow содержит восклицательный знак, пользователь не сможет войти в систему, используя аутентификацию по паролю. Другие методы входа в систему, такие как аутентификация на основе ключей или переключение на пользователя , по-прежнему разрешены. Если вы хотите заблокировать учетную запись и отключить все методы входа в систему, вам также необходимо установить дату истечения срока действия равной 1.

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

Чтобы разблокировать пользователя, запустите usermod с параметром -U :

Выводы

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

Читайте также: