- Создание, редактирование и удаление пользователей в Linux
- Создание
- Ключи (опции)
- Способы ограничения возможности входа пользователей в Ubuntu
- Вступление
- Как ограничить доступ с помощью /etc/passwd
- Как ограничить вход с помощью /etc/shadow
- Как ограничить вход с помощью /etc/nologin
- Итоги
- Блокировка учетной записи Linux
- Задача: блокировка учетной записи в Linux
- Задача: разблокировка учетной записи Linux
- Как заблокировать и разблокировать пользователя в Linux
- 3 способа блокировки и разблокировки учетных записей пользователей в Linux
- Способ 1: блокировка и разблокировка пользователей с помощью команды passwd
- А как насчет входа через SSH?
- Способ 2: блокировка и разблокировка пользователей с помощью команды usermod
- Способ 3: блокировка и разблокировка пользователей с помощью команды chage
Создание, редактирование и удаление пользователей в Linux
В данной инструкции рассказывается о работе с пользователями Linux через терминал (с применением командной строки).
Создание
* опции не являются обязательными при создании пользователя.
* в данном примере создается учетная запись dmosk.
Для учетной записи стоит сразу создать пароль:
* после ввода, система попросит ввести пароль дважды.
Ключи (опции)
Ключ | Описание и примеры |
---|---|
-b | Задает базовый каталог для домашнего каталога useradd dmosk -b /var/home |
-c | Создает комментарий для описания учетной записи useradd dmosk -c «Пользователя для управления системой» |
-d | Полный путь к домашнему каталогу пользователя useradd dmosk -d /home/newuser |
-D | Позволяет показать или изменить настройки по умолчанию, которые будут применяться при последующем создании пользователей useradd dmosk -Ds /bin/bash |
-e | Дата, после которой учетная запись устареет. useradd dmosk -e 2017-12-31 |
-f | Число дней, после которого учетная запись с устаревшим паролем будет заблокирована useradd dmosk -f 0 |
-g | Задает основную группу useradd dmosk -g altternativegroup |
-G | Задает дополнительные группы useradd dmosk -G wheel |
-k | Путь к источнику скелета (файлы с шаблонами для нового пользователя) useradd dmosk -k /var/skel |
-m | При создании пользователя создать домашний каталог useradd dmosk -m |
-M | Не создавать домашний каталог useradd dmosk -M |
-N | Не создавать основную группу с таким же именем, как у пользователя useradd dmosk -N |
-o | Разрешает создание учетной записи с повторяющимся UID useradd dmosk -u 15 -o |
-p | Задает пароль useradd dmosk -p pass |
-r | Системная учетная запись (без домашнего каталога и с идентификаторами в диапазоне SYS_UID_MIN — SYS_UID_MAX из файла /etc/login.defs) useradd dmosk -r |
-R | Каталог, в который выполняется chroot useradd dmosk -R /var/chroot/home |
-s | Путь до оболочки командной строки useradd dmosk -s /bin/csh |
-u | Задает UID useradd dmosk -u 666 |
-U | Имя группы будет таким же, как у пользователя useradd dmosk -U |
Актуальный список ключей можно получить командой useradd -h.
Источник
Способы ограничения возможности входа пользователей в Ubuntu
Вступление
Основная часть системного администрирования – конфигурирование и управление пользователями и группами. Эта задача включает в себя мониторинг возможностей получения доступа в систему всех ее подразделений.
Данное руководство описывает основные понятия об управлении пользователями и регистрации их авторизации.
Эти понятия изучаются на Ubuntu 12.04 VPS, но данные действия можно выполнить на любом современном дистрибутиве Linux.
Как известно, некоторые из пользователей сервера могут быть связаны с сервисами, а потому они не предназначены для использования в качестве обычных учетных записей.
Данное руководство рассматривает несколько способов ограничения возможности входа в систему таких пользователей.
Как ограничить доступ с помощью /etc/passwd
Один из способов ограничения возможности входа – это задать регистрационной оболочке учетной записи специальное значение.
Примером этому является пользователь «messagebus» в файле «/etc/passwd»:
less /etc/passwd | grep messagebus
messagebus:x:102:104::/var/run/dbus:/bin/false
последнее значение – это оболочка или команда, которая запускается в случае успешного входа. Сейчас это «/bin/false».
Если войти в учетную запись messagebus как root-пользователь, ничего не произойдет, так как переключиться на этого пользователя не получится:
sudo su messagebus
Попробуйте переключиться на пользователя sshd:
sudo su sshd
This account is currently not available.
Это уведомление появилось потому, что оболочка пользователя sshd помещена в «/usr/sbin/nologin».
less /etc/passwd | grep sshd
sshd:x:103:65534::/var/run/sshd:/usr/sbin/nologin
Итак, как же ограничить вход пользователей с помощью этих методов?
Нужно использовать инструмент «usermod», изменяющий легитимное значение оболочки фиктивным:
sudo usermod -s /usr/sbin/nologin username
Как ограничить вход с помощью /etc/shadow
Другой подобный способ ограничения доступа – использование файла «/etc/shadow». Данный файл содержит хешированные пароли каждого пользователя системы.
Чтобы просмотреть хешированные пароли, введите:
sudo less /etc/shadow
root:$6$r79Dod3Y$3hi3QklpGEQMxwQGEss4ueNNPkoUrqUe3SwyAacaxl.Lmgq1r9i4mTblV1z6NfKMNXH1Cpnq.4iKhOiQd7Riy1:15953:0:99999:7.
daemon:*:15455:0:99999:7.
bin:*:15455:0:99999:7.
sys:*:15455:0:99999:7.
sync:*:15455:0:99999:7.
games:*:15455:0:99999:7.
man:*:15455:0:99999:7.
. . .
Второе поле (которое начинается с «$6$r79Dod3Y#3…» в первой строке) содержит хешированное значение пароля.
Как можно видеть, учетные записи системы вместо сложного хешированного значения имеют звездочку (*). Учетным записям со звездочкой во втором поле пароль не был установлен и они не могут пройти регистрацию при помощи пароля.
Значение пароля можно деактивировать (сделав его, по сути равным значению «*»), установив перед хешированным значением восклицательный знак (!).
Два инструмента могут заблокировать указанную учетную запись.
Команда passwd может быть заблокирована с помощью флага «-l» и разблокирована флагом «-u»:
sudo passwd -l username
sudo less /etc/shadow | grep username
username:!$6$vpNJ3oFe$5GSh2aU2BDcpdjvQeNFzh0zTgyRUl26x4dn77mFE/vaoXwd19m7okX44jO8TWaVqNRL8vUVTAcZVmgUT8dR.4.:15953:0:99999:7.
Как видно, хешированный пароль сохранился, но стал недействительным благодаря символу ! перед ним.
Учетная запись может быть разблокирована при помощи:
sudo passwd -u username
Подобные операции можно выполнить при помощи команды «usermod», которая использует флаги «-L» и «-U» для блокировки и разблокировки соответственно.
sudo usermod -L username
sudo usermod -U username
Примечание: данные методы могут заблокировать доступ только учетным записям на основе пароля, пользователи без пароля (к примеру, ssh-ключи) по-прежнему могут войти в систему.Рассмотрите возможность использования других методов блокировки таких учетных записей.
Как ограничить вход с помощью /etc/nologin
В экстренных ситуациях бывает необходимо запретить вход всем аккаунтам, кроме root.
Это может случиться из-за углубленного технического обслуживания, или потому, что одна или несколько учетных записей были взломаны.
В любом случае, это легко сделать, создав файл «/etc/nologin»:
sudo touch /etc/nologin
Это действие блокирует вход любого пользователя, не имеющего привилегий root.
Пустой файл просто сбрасывает пользователей обратно в локальную оболочку без объяснения причин.
Дело в том, что пользователю просто возвращается содержимое файла. Если добавить в файл сообщение, то пользователи получат объяснение ошибки входа:
sudo sh -c ‘echo «Planned maintenance. Log in capabilities will be restored at 1545 UTC» > /etc/nologin’
Попробуйте войти в систему с помощью пароля, тогда будет выведено установленное сообщение:
ssh user@host
user@host’s password:
Planned maintenance. Log in capabilities will be restored at 1545 UTC
Connection closed by host
Root-пользователь по-прежнему может войти в систему. Чтобы отменить ограничения входа, просто удалите файл «/etc/nologin»:
sudo rm /etc/nologin
Итоги
Идентификация пользователей в Linux – достаточно гибкая область управления системой, так как одни и те же задания можно выполнить при помощи различных простых инструментов.
Источник
Блокировка учетной записи Linux
Как заблокировать учетную запись в операционной системе Linux?
Как отключить логин пользователя, не отключая учетную запись на сервере на базе Linux?
Вы можете использовать команду passwd для изменения пароля пользователя или группы учетных записей.
Обычный пользователь может изменить пароль только для своей учетной записи, суперпользователь (root) может изменить пароль для любой учетной записи.
Вы можете использовать команду passwd для блокировки или разблокировки учетной записи в операционной системе Linux.
Задача: блокировка учетной записи в Linux
Синтаксис следующий для блокировки учетной записи.
Это выполняется путем преобразования зашифрованного пароля в недопустимую строку путем префикса зашифрованной строки с помощью параметра -l
(доступен только для пользователя root:)
Параметр -l отключает учетную запись, изменяя пароль на значение, которое не соответствует возможному зашифрованному значению.
В этом примере заблокируйте учетную запись пользователя с именем vivek.
Сначала войдите в систему как пользователь root и введите следующую команду:
Задача: разблокировка учетной записи Linux
Синтаксис следующий: опция -u доступна только для пользователя root:
Опция -u повторно включает учетную запись, изменяя пароль на прежнее значение, т. е. значение перед использованием -l.
Чтобы разблокировать учетную запись пользователя с именем vivek.
Войдите в систему как пользователь root и введите следующую команду:
Источник
Как заблокировать и разблокировать пользователя в Linux
Главное меню » Операционная система Linux » Как заблокировать и разблокировать пользователя в Linux
3 способа блокировки и разблокировки учетных записей пользователей в Linux
Может быть несколько причин, по которым вы хотите отключить пользователя в вашей многопользовательской среде Linux. Возможно, сотрудник покинул организацию и вместо того, чтобы полностью удалить пользователя, заблокирует учетную запись для архивных целей.
В этой статье мы покажем вам три способа блокировки пользователя в командной строке Linux. Мы также расскажем, как разблокировать пользователя.
Способ 1: блокировка и разблокировка пользователей с помощью команды passwd
Команда passwd в Linux работает с паролями учетной записи пользователя. Вы также можете использовать эту команду для блокировки учетной записи пользователя.
Команда в основном работает с файлом /etc/passwd. Вы можете вручную изменить этот файл, но мы не советуем этого делать.
Чтобы заблокировать пользователя с помощью команды passwd, вы можете использовать опцию -l или –lock следующим образом:
Проверьте статус пользователя с помощью команды passwd
Вы можете узнать, заблокирован или разблокирован пользователь, используя опцию -S или –status команды passwd.
passwd -S user_name
Посмотрите на второе поле в выводе. Вот что это значит:
– P или PS: пароль установлен (пользователь разблокирован)
– L или LK: пользователь заблокирован
– N или NP: пароль не требуется пользователю
Вот пример вывода команды passwd:
standard P 10/14/2019 0 99999 7 -1
Чтобы разблокировать пользователя с помощью команды passwd, вы можете использовать опцию -u или –unlock:
В Ubuntu вы увидите такой вывод как для блокировки, так и для разблокировки пользователя:
А как насчет входа через SSH?
Существует серьезная проблема с блокировкой пользователей таким способом. Поскольку он работает только с файлом /etc/passwd, заблокированный пользователь все равно сможет войти через ключи SSH (если установлен вход через ключ SSH). Мы покажем вам, как с этим бороться в следующем разделе.
Способ 2: блокировка и разблокировка пользователей с помощью команды usermod
Вы также можете использовать команду usermod. Команда в основном используется для изменения учетных записей пользователей в Linux. Вы также можете изменить состояние пользователя, заблокировав или разблокировав его с помощью usermod.
Чтобы заблокировать пользователя, вы можете использовать опцию -L следующим образом:
Чтобы разблокировать пользователя, вы можете использовать опцию -U:
Как проверить, заблокирован ли пользователь или нет? Команда usermod также работает с файлом /etc/passwd, поэтому вы можете использовать команду passwd -S user_name для проверки статуса пользователя.
Но usermod также работает с файлом /etc/passwd, так что заблокированный пользователь все еще может войти в систему через ключи SSH, верно? Верно. Но есть способы преодоления этой проблемы.
Например, вы можете изменить оболочку пользователя на nologin, и это не позволит пользователю войти в оболочку.
Другой метод заключается в блокировке пользователя и предоставлении даты истечения в прошлом. Что он делает, так это то, что он отключает учетную запись в прошлую дату, а затем блокирует ее.
Убедитесь, что прошедшая дата находится между 1970-01-02 и текущей датой.
Вы можете отменить это с помощью этой команды:
Существует аналогичный способ блокировки пользователя в Linux с помощью команды chage. Давайте посмотрим на это в следующем разделе.
Способ 3: блокировка и разблокировка пользователей с помощью команды chage
Команда chage используется для изменения информации об истечении срока действия пароля пользователя. Его можно использовать для автоматической блокировки неактивного пользователя после определенного количества дней бездействия.
По сути, то, что вы сделали с помощью команды usermod в предыдущем разделе, может быть достигнуто с помощью команды chage:
По сути, вы установили дату истечения срока действия 1970-01-02. Вы можете увидеть детали, как это:
Вы можете удалить дату истечения срока действия и, таким образом, разблокировать пользователя следующим образом:
Как всегда, есть разные способы выполнить задачу в командной строке Linux. Мы показали здесь три способа блокировки и разблокировки пользователей в Linux. Вы знаете лучший способ или у вас есть рекомендации по блокировке пользователей? Поделитесь в разделе комментариев.
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Источник