Если вы предпочитаете средства командной строки, или у вас не установлена система X Window, этот раздел расскажет, как управлять пользователями и группами в командной строке.
33.5.1. Добавление пользователя
Чтобы добавить в систему пользователя:
Выполните команду useradd, чтобы создать заблокированную учётную запись пользователя:
useradd <username>
Разблокируйте эту учётную запись, выполнив команду passwd, чтобы назначить пароль и задать политику устаревания пароля:
passwd <username>
Параметры командной строки для утилиты useradd описаны в таблице 33-1.
Параметр | Описание |
---|---|
-c comment | Комментарий пользователя |
-d home-dir | Домашний каталог, который следует использовать вместо стандартного /home/username/ |
-e date | Дата, когда учётная запись должна быть отключена, в формате ГГГГ-ММ-ДД |
-f days | Число дней после истечения срока действия пароля до отключения учётной записи. (Если указано число 0, учётная запись отключается сразу, как только истекает срок действия пароля. (Если указано число -1, учётная запись не отключается после истечения срока действия пароля. |
-g group-name | Имя или номер группы, которая должна стать основной группой пользователя (здесь должна указываться уже существующая группа.) |
-G group-list | Список разделённых запятыми имён или номеров дополнительных групп (помимо основной), членом которых является пользователь. (Здесь должны указываться существующие группы.) |
-m | Создаёт домашний каталог, если он не существует |
-M | Не создаёт домашний каталог |
-n | Не создаёт личную группу для пользователя |
-r | Создаёт системную учётную запись с кодом, меньшим 500, и без домашнего каталога |
-p password | Пароль, зашифрованный с помощью crypt |
-s | Оболочка входа в систему, по умолчанию /bin/bash |
-u uid | Код пользователя (UID), это должно быть уникальное число больше 499 |
Таблица 33-1. Параметры командной строки useradd
33.5.2. Добавление группы
Чтобы добавить группу, воспользуйтесь командой groupadd:
groupadd <group-name>
Параметры командной строки для утилиты groupadd описаны в таблице 33-2.
Параметр | Описание |
---|---|
-g gid | Код группы (GID), это должно быть уникальное число больше 499 |
-r | Создаёт системную группу с кодом меньше 500 |
-f | Прерывает работу программы, если группа уже существует (При этом группа не изменяется). Если указаны параметры -g и -f, но группа уже существует, параметр -g игнорируется |
Таблица 33-2. Параметры командной строки groupadd
33.5.3. Срок действия пароля
В целях безопасности рекомендуется требовать, чтобы пользователи периодически меняли свои пароли. Это можно сделать при добавлении или редактировании пользователя на вкладке Сведения о пароле (Password Info) программы Менеджер пользователей (User Manager).
Чтобы настроить устаревание пароля пользователя в приглашении оболочки, воспользуйтесь командой chage, передав ей параметр из таблицы 33-3 и имя пользователя.
Важно | |
---|---|
Чтобы можно было использовать команду chage, необходимо включить скрытые пароли. |
Параметр | Описание |
---|---|
-m days | Определяет минимальный срок (в днях), по истечении которого пользователь должен менять пароль. Если это значение равно 0, срок действия пароля не будет истекать. |
-M days | Определяет максимальный срок (в днях), в течение которого будет действовать пароль. Если количество дней, заданное этим параметром, и количество дней, заданное параметром -d, в сумме определяют день в прошлом, пользователь должен сменить пароль, чтобы использовать эту учётную запись. |
-d days | Определяет дату смены пароля (число дней, прошедших после 1 января 1970 г.). |
-I days | Определяет, через сколько дней после истечения срока действия пароля учётная запись будет заблокирована. Если значение равно 0, учётная запись не будет блокироваться. |
-E date | Определяет дату блокирования учётной записи, в формате ГГГГ-ММ-ДД. Вместо такого формата даты можно также указать число дней, прошедших после 1 января 1970 г. |
-W days | Определяет, за сколько дней до истечения срока действия пароля будет предупреждаться пользователь. |
Таблица 33-3. Параметры командной строки chage
Подсказка | |
---|---|
Если команде chage передаётся только имя пользователя (без параметров), она выводит текущие настройки устаревания пароля и позволяет вам изменить их. |
Если системный администратор хочет, чтобы пользователь задал пароль при первом входе в систему, он может назначить пустой или какой-то исходный пароль, который истечёт немедленно, и, таким образом, пользователь должен будет сменить его при первом входе.
Чтобы настроить принудительную смену пароля при первом входе пользователя на консоли, выполните следующие действия. Заметьте, что это не будет работать, если пользователь подключается, используя протокол SSH.
Заблокируйте пароль пользователя — Если пользователь не существует, воспользуйтесь командой useradd для создания учётной записи пользователя, но не назначайте пароль, чтобы она осталась заблокированной.
Если пароль уже назначен, заблокируйте её, выполнив команду:
usermod -L username
Сделайте так, чтобы потребовалась немедленная смена пароля — Введите следующую команду:
chage -d 0 username
Эта команда задаёт в качестве даты последней смены пароля точку отсчёта эпохи (1 января 1970 г.). При этом значении пароль требуется сменить немедленно, вне зависимости от политики устаревания паролей, если она действует.
Разблокируйте учётную запись — Выполнить это действия можно двумя распространёнными способами. Администратор может назначить пустой или какой-то начальный пароль.
Предупреждение Не используйте для назначения пароля команду passwd, так как как она отменит только что настроенное требование смены пароля.
Чтобы назначить начальный пароль, выполните следующие действия:
Запустите интерпретатор командной строки Python с помощью команды python. Он выводит следующие сообщения:
Python 2.2.2 (#1, Dec 10 2002, 09:57:09) [GCC 3.2.1 20021207 (Red Hat Enterprise Linux 4 3.2.1-2)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>>
В приглашении оболочки введите следующее (замените password паролем шифрования, а salt комбинацией ровно 2 больших или маленьких букв, цифр, символов точка (.) или косая черта slash (/), например, ab или 12):
import crypt; print crypt.crypt("password","salt")
На выходе вы полусите зашифрованный пароль, вроде 12CsGd8FRcMSM.
Нажмите
[Ctrl] -[D] , чтобы выйти из интерпретатора Python.Скопируйте и вставьте показанный зашифрованный пароль, без начальных или конечных пробельных символов, в следующую команду:
usermod -p "encrypted-password" username
Вместо назначения начального пароля, с помощью следующей команды можно назначить пустой пароль:
usermod -p "" username
Внимание Хотя назначение пустого пароля удобно и для пользователя, и для администратора, существует небольшая угроза того, что кто-то третий сможет зарегистрироваться первым и получить доступ к системе. Чтобы сократить эту угрозу, администратору рекомендуется убедиться в том, что пользователь готов войти в систему, в момент разблокирования учётной записи.
В любом случае при первом входе пользователю предлагается ввести новый пароль.