Идентификация и аутентификация - efanov/mephi GitHub Wiki
Понятие идентификации и аутентификации
- Идентификация, аутентификация и авторизация пользователя.
Authentication - "you are who you say you are"
Аuthorization - "you are permitted to do what you are trying to do"
- Руководящий документ. Защита от несанкционированного доступа к информации. Термины и определения
Идентификация Identification - Присвоение субъектам и объектам доступа идентификатора и (или) сравнение предъявляемого идентификатора с перечнем присвоенных идентификаторов
Аутентификация Authentication - Проверка принадлежности субъекту доступа предъявленного им идентификатора; подтверждение подлинности
Пароль Password - Идентификатор субъекта доступа, который является его (субъекта) секретом
Управление пользователями
Пользователи
- Понятие бюджета пользователя.
- Основные характеристики бюджета пользователя: входное имя, пароль, UID, GID, домашний каталог, командная оболочка.
- Формат файла /etc/passwd (7 полей):
имя:пароль:uid:gid:GECOS:домашний_каталог:оболочка
.
while IFS=: read login pas uid gid name e
do
printf "%-12s %s\n" "$login" "$name"
done < /etc/passwd
- Вход пользователя в систему.
- Создание, модификация, удаление бюджета пользователя.
# useradd user10
# ll /home/
...
drwx------. 3 user10 user10 4096 окт 7 22:48 user10
...
# userdel user10
# ll /home/
drwx------. 3 1010 1010 4096 окт 7 22:48 user10
...
# useradd user11
# ll /home/
...
drwx------. 3 user11 user11 4096 окт 7 22:48 user10
drwx------. 3 user11 user11 4096 окт 7 22:49 user11
...
# userdel user11
# ll /home/
...
drwx------. 3 1010 1010 4096 окт 7 22:48 user10
drwx------. 3 1010 1010 4096 окт 7 22:49 user11
...
# find /home/ -nouser -o -nogroup 2>/dev/null
/home/user10
/home/user11
# find /home/ -nouser -delete 2>/dev/null
Группы пользователей
- Группы пользователей. Первичная группа, концепция PUG.
- Формат файла /etc/group (4 поля):
имя:пароль:gid:список,имён,пользователей
. - Создание, модификация, удаление группы пользователей.
Пароль пользователя
- Управление паролем пользователя. Изменение пароля (
passwd
). Ограничения на пароль по времени. Формат файла /etc/shadow (9 полей):имя:пароль:последняя_смена:min:max:warn:inactive:expire:резерв
.
Делегирование прав
- Выполнение команд от имени другого пользователя.
- Идентификаторы процессов: реальные (
uid
,gid
) и эффективные (euid
,egid
).
/etc/sudoers
## Syntax:
##
## user MACHINE=COMMANDS
##
## The COMMANDS section may have other options added to it.
##
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
## Allows people in group wheel to run all commands
%wheel ALL=(ALL) ALL
## Same thing without a password
# %wheel ALL=(ALL) NOPASSWD: ALL
Подгружаемые аутентификационные модули
- Подгружаемые аутентификационные модули (Pluggable Authentication Modules, PAM). Стек модулей. Понятие сервиса. Сервис с именем other.
- Формат файла
/etc/pam.conf
:имя_сервиса управляющая_группа управляющий_флаг имя_модуля аргументы_модуля
. Файлы в каталоге/etc/pam.d/
. - Управляющие группы: account, auth, password, session.
- Управляющие флаги: requisite, required, sufficient, optional, include, substack.
Команды и файлы
- Команды получения информации о пользователе:
id
,groups
. - Команды добавления, модификации и удаления бюджета пользователя:
useradd
,usermod
,userdel
,passwd
,chage
,chfn
,chsh
. - Команды добавления, модификации и удаления группы пользователя:
groupadd
,groupmod
,groupdel
,groupmems
,gpasswd
. - Команды изменения идентификаторов пользователя:
login
,su
,sudo
,visudo
,newgrp
,sg
. - Команды проверки и преобразования файлов паролей:
pwck
,grpck
,pwconv
,pwunconv
,grpconv
,grpunconv
. - Файлы и каталоги:
/etc/passwd
,/etc/shadow
,/etc/group
,/etc/gshadow
,/etc/shells
,/etc/login.defs
,/etc/default/useradd
,/etc/skel/
,/etc/sudoers
,/etc/pam.conf
,/etc/pam.d/
.