Права
-
Права доступа
Модель прав Unix — чтение/запись/исполнение, владелец/группа/другие, спецбиты.
5 минls -lnamei -lchmod -
namei — права на каждом шаге пути
Команда namei разбирает путь по частям и показывает тип, права и владельца каждого каталога до самого файла.
5 минnamei -lnamei -mnamei -o -
sudo — выполнение команд от другого пользователя
Даёт временные права root по sudoers; править файл — только через visudo, иначе ошибка лишит sudo всех.
4 минapt updatesudoeditvisudo -f -
visudo — безопасная правка sudoers
Команда visudo правит /etc/sudoers и файлы /etc/sudoers.d и не даёт сохранить правило с ошибкой в грамматике.
5 минvisudovisudo -fchmod -
PAM: проверка входа, политика паролей и блокировка
Стек модулей в /etc/pam.d: решает, пускать ли пользователя, какой пароль принять и когда заблокировать вход.
13 минgrep -vpam-auth-update --enableecho -
Пользователи и группы
Учётные записи и группы Linux; usermod -G без -a заменяет все дополнительные группы пользователя, а не добавляет одну.
5 минid aliceuseradd -musermod -aG -
useradd — создать пользователя
Команда useradd создаёт учётную запись: домашний каталог, оболочку, группы и UID; пароль задаёт passwd.
5 минuseradd -mpasswd aliceuseradd -r -
passwd — сменить или заблокировать пароль
Команда passwd меняет пароль своей учётной записи, а от root — задаёт, блокирует и показывает пароли других.
5 минpasswdpasswd alicepasswd -S -
usermod — изменить учётную запись и группы
Команда usermod меняет существующую учётную запись: группы, оболочку входа, домашний каталог, имя и блокировку.
5 минusermod -aGusermod -rGusermod -G -
Unix-сокеты — связь процессов через файл
Unix-сокет — файл, через который процессы одной машины обмениваются данными; подключается тот, у кого есть право записи.
7 минls -lstat -css -xl -
chmod / chown — права и владелец файлов
Смена прав (chmod) и владельца/группы (chown) — числовой и символьный синтаксис, umask, chgrp.
6 минchmodchownchown -R -
umask — маска новых файлов и каталогов
umask — маска процесса: какие права снять с нового файла (из 666) и каталога (из 777) при создании.
5 минumaskumask -Stouch -
Особые биты прав: setuid, setgid, sticky
Особые биты прав: setuid и setgid запускают программу с правами владельца, setgid и sticky — для общих каталогов.
6 минls -ldchmodstat -c -
Capabilities: права root по частям
Части прав root: процесс или файл получает только нужную — например, CAP_NET_BIND_SERVICE для порта ниже 1024.
10 минgrepcapshgetpcaps -
SSH-ключи и ssh-agent
Пары ключей для входа без пароля; sshd отвергает ~/.ssh, если писать в него могут группа или остальные.
4 минssh-keygen -tssh-copy-idssh-keygen -l -
Расширенные права ACL
Гибкие права сверх rwx — getfacl/setfacl, права для нескольких пользователей.
3 минgetfacl filesetfacl -msetfacl -d -
Ограничения службы: User=, ProtectSystem, NoNewPrivileges
Ключи юнита, отбирающие у службы лишнее: root, запись в систему, новые привилегии; оценка — systemd-analyze security.
12 минsystemd-analyze securitysystemctl showsystemctl edit -
AppArmor
Мандатный контроль доступа в Ubuntu — профили служб, режимы enforce/complain.
7 минaa-statusjournalctl -kaa-complain -
Дисковые квоты
Лимиты места и числа файлов на пользователя/группу — включение, настройка, отчёты.
3 минsetquota -uedquota -uedquota -t -
chage — сроки действия пароля и учётной записи
Читает и изменяет локальные параметры старения пароля и дату окончания действия учётной записи.
4 минchage -lgetent passwdpasswd -S -
nologin — оболочка, отказывающая во входе
Программа для поля login shell: сообщает об отказе и завершается вместо открытия интерактивной оболочки.
4 минgetent passwdid labsvctype -a