Колисниченко Д.Н. - Linux-сервер своими руками (1077324), страница 21
Текст из файла (страница 21)
Обычно используется на серверах-f3.2. Изменение пароляЧтобы изменить свой пароль воспользуйтесь командой passwd. Ее нужноввести без параметров. При этом команда запросит новый пароль. Если выне root, система не разрешит вам ввести пароль, являющимся словом, иликороткий пароль. В другом случае вы можете ввести все, что угодно — даже123 тоже будет допустимо — система не сможет вам помешать.
Обычно, еслипользователь изменяет свой пароль, система проверяет пароль на возможность подбора, и не является ли этот пароль словом из системного словаря.Также проверяется длина пароля. Минимальная допустимая длина пароля шесть символов, в некоторых дистрибутивах — восемь.Чтобы изменить пароль какого-нибудь пользователя, вы должны (зарегистрировавшись как root) в качестве параметра команды passwd указать имяэтого пользователя.3.3. Идентификаторы пользователя и группыСистема Linux чем-то похожа на монархическое государство: в немсуществует один суперпользователь — root, которому все подчиняется, иопределенное число обыкновенных пользователей. Это значит, что если выпопробуете удалить один из жизненно важных файлов Linux под учетнойзаписью пользователя, то система не позволит вам этого сделать.
Подучетной записью root вы имеете право делать все, что вам заблагорассудится.Поэтому в целях безопасности, даже если вы используете систему в гордомодиночестве, рекомендуется создавать в системе хотя бы одного пользователя, под которым вы будете работать. Если вы работаете с системой направах пользователя, а вам вдруг потребовались права суперпользователя, то81Учетные записи пользователейв этой ситуации вы можете воспользоваться командой su, которая в большинстве случаях вам поможет.
Эта команда разрешит вам использоватьпривилегии суперпользователя без завершения текущего сеанса работы.Для создания учетной записи используется команда adduser <имя_полъзователяХ Естественно, добавлять новых пользователей может только root.После создания новой учетной записи не забудьте изменить пароль пользователя командой passwd < имя_пользователя>.При добавлении новых пользователей используются параметры по умолчанию. Естественно, они вас не будут устраивать (например, только потому,что для каждого нового пользователя создается новая группа с именемпользователя).
Изменить эти параметры можно с помощью опций программы passwd. Более подробно об этих опциях вы можете прочитать в справочной системе (man passwd). Для автоматизации процесса создания учетныхзаписей я предлагаю использовать небольшой сценарий, который вы найдете в конце этой главы.Примечание.Обычно пользователи объединяются в группы для решения какой-нибудь задачи, например, для работы над одним проектом или же вы просто хотите создать различныегруппы пользователей для разных отделов предприятия, чтобы потом определеннымобразом установить права доступа к какому-нибудь объекту. Если каждый пользовательбудет находиться в своей группе, то такое управление доступом будет невозможным.В общем случае система хранит следующую информацию о пользователе:Имя пользователя (username) -- регистрационное имя пользователя, то естьлогин.
Желательно, хотя и не обязательно, создавать пароли, каким-тообразом ассоциирующиеся с определенными пользователями (с их реальными именами). Это упрощает работу администратора, позволяя ему быстро попаролю распознавать пользователя.Идентификатор пользователя (User ID) — индивидуальный числовой идентификатор пользователя (UID). Система обычно работает с UID, а не с именамипользователей. Идентификатор задается из диапазона 0...65534 и долженбыть уникальным. Число 0 соответствует пользователю root.
Желательноидентификаторы назначать не произвольным образом, а системно. Например, выделить определенный интервал (1000...1100) под одну группу пользователей, а еще один (2000...2100) — под другую группу. В каждом диапазоненазначать идентификаторы последовательно. Это опять же упростит администрирование и позволит, бегло взглянув на список процессов, сразу-жеопределить кто чем занимается.Идентификатор группы (Group ID) — числовой идентификатор первичной группы пользователя (GID).
Помимо первичной группы пользователь можетвходить или не входить в состав разных групп, но в первичную группу(native group) он входит всегда. В различных дистрибутивах это выглядит поразному. Идентификатор группы 0 соответствует группе root.Пароль (password) — пароль.Реальное имя пользователя (full name) — обычно представляет собой реальное(фактическое) имя пользователя, например, Ivan Ivanov. Может содержать и82Учетные записи пользователейдругие данные: номер телефона и т.п. Эти сведения используются в информационных целях.Домашний каталог пользователя (home dir) — в качестве домашнего каталога обычноиспользуется каталог /Ьоте/<имя_пользователя> (например, /home/den).
Без особых причин не рекомендуется изменять такую организацию домашних каталогов.Оболочка пользователя (login shell,) — командный интерпретатор пользователя,который используется им по умолчанию. Программа-оболочка (командныйинтерпретатор) запускается при входе пользователя в систему. Примерыкомандных интерпретаторов: ash, bash, csh, fcsh, ksh.Вся эта информация хранится в файле / e t c / p a s s w d в следующем виде:username:password:UID:GID:full_name:home_dir:login_shellПример фрагмента файла /etc/passwd:root:x:0:0:root:/root:/bin/bashbin:x:1:1:bin:/bin:/sbin/nologindaemon:x:2:2:daemon:/sbin:/sbin/nologinden:x:500:500:den:/home/den:/bin/bashevg:x:501:501::/home/evg:/bin/bashНа практике обычно используются теневые пароли, и вместо пароля вфайле /etc/passwd стоит *, а сам пароль хранится в файле /etc/shadow,естественно в зашифрованном виде.
Применение теневых паролей оправдывает себя с точки зрения безопасности. Обычно к файлу /etc/passwdразрешен доступ в режиме «только чтение» всем пользователям. К файлу/etc/shadow обычный пользователь не имеет даже такого доступа.В качестве основного алгоритма шифрования используется MD5. Этоталгоритм является самым надежным. Раньше использовались алгоритмыDES и 3DES, но здесь я не буду подробно останавливаться ни на одном изних. При установке системы обычно спрашивается, хотите ли вы использовать теневые пароли (Shadow Passwords) и MD5.
Я очень рекомендую вамиспользовать обе эти возможности.Домашние каталоги пользователей обычно располагаются в каталоге/home основной файловой системы, но вы можете назначить и любой каталогв качестве домашнего. Суперпользователь использует домашний каталог/root.
Для перехода в домашний каталог используется команда cd ~.Примечание.В Linux текущий каталог обозначается точкой, родительский каталог — двумя точками,а домашний каталог пользователя — символом ~ (тильда).3.4. Создание группыКаждый пользователь принадлежит к одной или более группам. Группыиспользуются для того, чтобы пользователи, принадлежащие одной группе,могли работать с общими файлами.
Например, в группу user входят пользователи ivanov и petrov, а пользователь sidorov входит в группу sgroup. Пользователь ivanov создает файл report и разрешает всем членам группы users83Учетные записи пользователейработать с этим файлом. При попытке обратиться к файлу report пользователь sidorov получит сообщение Permission denied.Как правило, все члены группы имеют доступ к домашним каталогамдруг друга. По умолчанию разрешается только чтение для членов группы.Более подробно о правах доступа к файлам мы поговорим в гл.
4. Информация о группах пользователей хранится в файле /etc/group. Формат этогофайла следующий:имя_группы:пароль:GID:члены_группыПароль используется крайне редко. Пример файла /etc/group представлен в листинге 3.1.Листинг 3.1. Пример файла /etc/grouproot:*:0:local:*:100:den,operator,ivanguest:*:200:dialup:*:250:victor,evgВ этом примере группа root зарезервирована для пользователя root.Группа с идентификатором 100 используется для локальных пользователей.В ее состав входят пользователи den, operator, ivan. Группа quest предназначена для гостевого входа и пользователя guest.
В состав группы dialup входятпользователи victor и evg.Существует несколько групп, определяемых самой системой, вроде bin,mail и sys. Пользователи не могут принадлежать к какой-либо из этих групп.Эти группы используются для системных файлов. Добавить группу вы можете с помощью команд groupadd. Я, как правило, просто добавляю запись вфайл /etc/group, а если мне нужно удалить группу, то удаляю соответствующую строку.3.5.
Удаление и модификация учетных записейДля удаления пользователя можно воспользоваться командой userdel.Удалять учетные записи умеет и linuxconf. При удалении пользователя программа linuxconf спросит у вас, что делать с домашним каталогом удаляемогопользователя: удалить, архивировать или оставить без изменения.
Что делатьс ним — это уже вам решать.Модифицирование учетной записи реализуется программой usermod. Здесьхочу дать один совет: для модифицирования (да и создания) учетных записейгораздо удобнее пользоваться программой linuxconf. Например, для созданияучетной записи, введите команду linuxconf (или userconf — для Linux Mandrake).Затем запустите конфигуратор учетных записей, нажав на кнопку «UserAccounts» (если вы запустили userconf, этого делать не нужно). В окне UserAccount Configurator перейдите на вкладку Normal (см.
рис. 3.1) и нажмите накнопку «User Accounts» (см. рис. 3.2), а затем на кнопку «Add».84Учетные записи пользователейTOs package allows you to adu'deietei:: Mormal:IYou can edit, add; й аайГизегз'SpedenftpgamesgopherhtdigIpDenisFTP UseigamesgopherIp5011412131014denftpusersgopherhtdigIpРис. 3.2. Учетные записиРис. 3.1. User Account ConfiguratorРис. 3.3. Добавление учетной записиi must specif at leas! the tOBin name :and the full name1":; .^.Sirisi^KfcP^|Ba--.eirifoj DlLOSFiilt namegro-1•Com1Use85Учетные записи пользователей3.6.
КвотированиеКвотирование — мощный механизм ограничения дискового пространства, используемый еще в ранних версиях UNIX. Данный материал настолько объемный, что ему можно было бы смело посвятить целую главу. Надеюсь, читатель мне простит, если я немного отклонюсь «от основного курса».Вспоминается народная мудрость: все новое — это хорошо забытое старое.Квоты поддерживались самыми ранними версиями UNIX, тогда как в составОС семейства Windows компания Microsoft включила их только в Windows2000, естественно, гордо заявив об этом.Команда quota (см. дальше) позволяет просмотреть ограничения дискового пространства для данного пользователя.
Ограничения, как правило,устанавливаются системным администратором. При этом существуют дватипа ограничений — ограничение на количество файлов (inodes) и ограничение на использование дискового пространства (blocks). Если установленыоба ограничения, то они будут использоваться одновременно.Ограничения на inodes и на blocks могут быть установлены как дляпользователя, так и для группы. Если вы входите в группу, которая превысила наложенное на нее ограничение, то вы не сможете использовать дисковое пространство, даже если вы не превысили квоту как пользователь.Для каждого ограничения характерны четыре числа:1. Ограничение, которое используется в данный момент.2.
«Мягкое» ограничение (softlimit).3. «Жесткое» ограничение (hardlimit).4. Время, по истечении которого «мягкое» ограничение будет интерпретироваться как «жесткое».«Мягкое» ограничение определяет число блоков, которые пользовательвсе еще может превысить, «жесткое» ограничение превысить невозможно.При попытке сделать это, пользователь получит сообщение об ошибке. Приистечении определенного времени (обычно 7 дней) «мягкое» ограничениепереходит в «жесткое». За это время пользователь должен удалить ненужныеему файлы. Размер блока в Linux обычно составляет 1024 байт.Для поддержки ограничений, прежде всего, нужно настроить ядро.