Понимание файла /etc/passwd

Linux хранить зашифрованные пароли пользователей,также как и другую информацию связанную с безопасностью, например сроки действия аккаунтов или паролей, в файле /etc/shadow.

задачи администрирования ASTRA LINUX SE.

В общем случае процесс администрирования ОС на базе проекта Debian GNU/Linux (в том числе ASTRA LINUX SE) включает решение следующих основных задач:

  1. администрирование учётных записей пользователей и групп с целью организации многопользовательской работы ASTRA LINUX SE и реализации управления доступом процессов (субъект-сессий, функционирующих от имени учётных записей пользователей) к файлам, каталогам и другим объектам доступа ASTRA LINUX SE (сущностям);
  2. администрирование процессов с целью оптимизации распределения между ними ресурсов компьютера;
  3. администрирования запоминающих и периферийных устройств с целью контроля имеющихся в составе компьютера устройств и управления динамически подключаемыми устройствами.
  4. В случае включения компьютера с ASTRA LINUX SE в сетевую среду и его функционирования в составе домена сетевой инфраструктуры Astra Linux Directory (ALD) перечень задач дополняется задачами администрирования сети и доменной инфраструктуры. Эти задачи будут подробно рассмотрены в следующих лекциях.

Описание файла/etc/group

Он хранит информацию о группах или определяет группы пользователей, т.е. определяет группы, к которым принадлежат пользователи. В каждой строке по одной записи, и каждая строка имеет следующий формат (все поля разделены двоеточием (:)

: Пример записи в файле/etc/group

Где,

  1. group_name : это имя группы. Если вы запустите команду ls -l, вы увидите это имя, напечатанное в поле группы.
  2. Пароль : Обычно пароль не используется, поэтому он пустой/пустой. Он может хранить зашифрованный пароль. Это полезно для реализации привилегированных групп.
  3. Group ID (GID) : каждому пользователю должен быть присвоен идентификатор группы. Этот номер можно увидеть в вашем файле/etc/passwd.
  4. Список групп : это список имен пользователей, которые являются членами группы. Имена пользователей должны быть разделены запятыми.

Управление учётными записями

Как уже ранее отмечалось, для управления пользователями в Linux-системах существуют наборы специализированных утилит для добавления, редактирования и удаления учётных записей (пользователей) — useradd, usermod и userdel. Они выполняют предписанный порядок действий для достижения конечной цели — например, в случае с добавлением нового пользователя, команда useradd производит, соответственно, весь вышеописанный «комплекс мероприятий». Каждую из этих утилит можно гибко настроить с помощью конфигурационных файлов, чем, кстати, очень активно пользуются разработчики дистрибутивов Linux. Ведь в разных Linux-системах работа этих утилит незначительно, но отличается, хотя утилиты, по сути, идентичные. Ниже приводится таблица, показывающая команды и файлы конфигурации для управления пользователями для некоторых систем на примере утилиты useradd:

Система Команды Файлы конфигурации Комментарий
Ubuntu useradd /etc/
adduser /etc/default/useradd Perl-версия
/etc/
SUSE useradd /etc/
/etc/default/useradd
/etc/default/passwd
/usr/sbin/ Локальные настройки
/usr/sbin/ Локальные настройки
/usr/sbin/ Локальные настройки
/usr/sbin/ Локальные настройки
Red Hat useradd /etc/
/etc/default/useradd
Solaris useradd /etc/default/{login,passwd)
/etc/security/

Как просмотреть файл в Linux с прокруткой

Бывает, что текстовый файл большой, поэтому его содержимое не помещается в один экран. Использовать в таком случае cat неудобно, зато есть less. Синтаксис у неё такой же:

less <путь_к_файлу/имя_файла>

Команда less обеспечит постраничный просмотр, что очень удобно. При этом: 1) less позволяет просматривать текст по определённому числу строк, для чего достаточно указать — (тире или минус) и количество строк:

less -5

Как просмотреть файл в Linux с прокруткой

2) можно начать просмотр с конкретной строки в файле, указав + (плюс) и номер строки, с которой хотим начать чтение:

less +5

Открыв текст, мы можем управлять его просмотром:

Базовые концепции

Как уже говорилось, действия, выполняемые awk, заключаются в фигурные скобки, а вся команда — в одинарные кавычки: awk ‘condition { action }‘. В нашем примере условий нет, но если мы захотим, например, выбрать только установленные пакеты, относящиеся к vim, (да, есть grep, но ведь это пример, кроме того, зачем использовать две утилиты, если можно использовать одну), мы могли мы набрать:

$ dpkg -l | awk ‘ /’vim’/ {print $2} ‘

Эта команда выведет все установленные пакеты, содержащие «vim» в названиях. Одна из причин, по которой рекомендуется использовать awk — он быстр. Если заменить «vim» на «lib», в моей системе получится список из более чем 1300 пакетов. Встречаются ситуации, где данных намного больше, и в этих случаях awk показывает все свои преимущества. В любом случае, давайте рассмотрим примеры, которые помогут понять многие аспекты использования программы. Но перед этим будет полезно узнать, что существует несколько диалектов и реализаций awk. Примеры, приведенные в данной статье, относятся к GNU awk (так к реализации, так и к диалекту). Из-за различий в интерпретации кавычек, мы можем использовать bash, ksh или sh, но не можем использовать (t)csh.

Выполнение действий по расписанию

Другой пример типичной для Linux службы, управляемой конфигурационным файлом, — демон cron, регулярно выполняющий в заданное время заданные действия.

Программисты имели в виду Хроноса, стихийное божество времени у древних греков. Уже сами греки часто называли так «владыку неба» титана Крона (отца богов-кронидов и, среди прочих, Зевса, который впоследствии папу и других титанов заключил в Тартар, и стал владыкой неба сам). У древних римлян и Крон и Хронос почитались под именем Сатурна, божества неумолимого времени.

Время от времени в системе необходимо обновлять разнообразные файлы, например, базы данных антивирусов (вирусов в Linux нет, а антивирусы есть!), базу данных whatis или список всех доступных на чтение файлов системы, locatedb (поискать по этому списку можно командой locate); нужно собирать статистику по работе системы, анализировать цельность системы (этим занимаются службы OSec, TripWire или AIDE) и производить множество других регулярных действий. Всем этим и занимается демон cron.

Конфигурационный файл демона cron называется /etc/crontab.

[[email protected] root]# cat /etc/crontab #minute (0-59), #| hour (0-23), #| | day of the month (1-31), #| | | month of the year (1-12), #| | | | day of the week (0-6 with 0=Sunday). #| | | | | user #| | | | | | commands 01 * * * * root run-parts /etc/ 02 4 * * * root run-parts /etc/ 22 4 * * 0 root run-parts /etc/ 42 4 1 * * root run-parts /etc/Пример 11. Настройка cron

Первые пять полей этого файла определяют время запуска команды: минуту, час, число месяца, месяц и день недели. Символ «*» означает, что соответствующая часть даты не учитывается. Шестое поле — имя пользователя, от лица которого зпускаются команда, указанная в остальных полях строки. Так, в примере команда run-parts /etc/ будет запускаться в 4 часа 22 минуты каждое воскресенье (нулевой день) любого числа любого месяца.

Как видно из примера, обычно /etc/crontab невелик: чаще всего он состоит из почасового, подённого, понедельного и помесячного запуска специального сценария (в примере — run-parts). Этот сценарии реализует упрощённую схему «. d», он попросту запускает отсортированные в лексикографическом порядке сценарии из соответствующего каталога (например, из /etc/):

То есть в таком порядке, в котором они были бы расставлены в словаре. Причём цифры предшествуют алфавитным знакам, а между собой сортируются по возрастанию, от 0 до 9. Отсюда «000anacron» — такое имя обеспечит, чтобы этот сценарий был выполнен самым первым.

[[email protected] root]# ls /etc/ 000anacron logrotate makewhatis osec stmpclean updatedbПример 12. Сценарии, запускаемые ежедневно

Вот что происходит каждый день на машине Мефодия: запуск anacron и «прокручивание» системных журналов (об этом речь пойдёт далее), обновление базы whatis, проверка цельности системы с помощью osec, прореживание старых и неиспользуемых файлов в /tmp (утилита stmpclean) и, наконец, обновление базы locatedb.

Пользователям системы можно разрешить иметь собственные расписания, также обрабатываемые демоном cron. Эти расписания имеют тот же синтаксис, что и crontab, только шестое поле («user») в них отсутствует. Редактировать пользовательские таблицы рекомендуется с помощью команды crontab -e (чтобы не подсунуть демону синтаксически неверный файл). Сами таблицы могут храниться, в зависимости от версии и настроек cron, в /var/spool/cron/crontabs, /var/spool/cron, /var/cron/tabs или ещё где-нибудь.

Служба anacron появилась в Linux-системах в то время, когда их начали активно использовать на пресональных рабочих станциях. Такие станции, в отличие от серверов, не обязаны работать круглосуточно. Скорее всего, на ночь, на праздники и на время отпуска их выключают. Это значит, что все настройки cron надо менять в соответствии с графиком включений/выключений (иначе никогда не выполнится в четыре часа ночи) — или запускать отдельную службу, которая будет выполнять некоторые задачи не по расписанию, а потому что их давно уже пора запустить.

Название этого демона пародирует cron с намёком на анахронизм, то есть несвоевременность выполнения заданий.

Дополнительно anacron рассчитывает запуск задач так, чтобы не перегрузить компьютер работой, если их накопилось слишком много. Конфигурационный файл anacron называется /etc/anacrontab.