11 KiB
Лабораторные работы по курсу RH199 (RHCSA)
top
лабораторные работы начинаются в 3-й главы
server1 - 192.168.10.10 user: student password: student root password: redhat
server2 - 192.168.10.11 user: student password: student root password: redhat
Chapter3
Управление локальными пользователями и группами.
- Подключиться по ssh к server1
da2001@Zenmint ~ $ ssh student@server1
- У всех вновь создаваемых пользователей пароль необходимо изменять каждые 30 дней.
[student@server1 ~]$ sudo -i
[sudo] пароль для student:
[root@server1 ~]# vim /etc/login.defs
необходимо изменить строку
PASS_MAX_DAYS 30
- Создать новую группу
consultants
с GID 35000.
[root@server1 ~]# groupadd -g 35000 consultants
- Настроить административные права членов группы
consultants
, чтобы они могли выполнять любые команды от любых пользователей. best practices RedHat не редактировать существующие системные файлы, а создавать свои в соответствующих директориях. Создадим файл vim/etc/sudoers.d/consultants
[root@server1 ~]# vim /etc/sudoers.d/consultants
добавить строку
%consultants ALL=(ALL) ALL
- Создать пользователей
consultant1
,consultant2
, иconsultant3
и задать им в качестве дополнительной группыconsultants
.
[root@server1 ~]# useradd -G consultants consultant1
[root@server1 ~]# useradd -G consultants consultant2
[root@server1 ~]# useradd -G consultants consultant3
- Учётные записи пользователей
consultant1
,consultant2
, иconsultant3
настроить таким образом, чтобы срок их действия истекал через 90 дней с текущей даты. узнать какая дата будет через 90 дней от текущей даты можно с помощью команды
[root@server1 ~]# date -d "+90 days" +%F
ограничить срок действия пароля
[root@server1 ~]# chage -E 2022-01-06 consultant1
[root@server1 ~]# chage -E 2022-01-06 consultant2
[root@server1 ~]# chage -E 2022-01-06 consultant3
- Изменить политику паролей для учетной записи
consultant2
, чтобы нужно было менять пароль каждые 15 дней.
[root@server1 ~]# chage -M 15 consultant2
- Пользователи
consultant1
,consultant2
, иconsultant3
при первом входе в систему должны изменить свои пароли в принудительном порядке.
[root@server1 ~]# chage -d 0 consultant1
[root@server1 ~]# chage -d 0 consultant2
[root@server1 ~]# chage -d 0 consultant3
Проверка
Наличие группы consultants
, правильность её GID и члены группы
[student@server1 ~]$ cat /etc/group | grep consultants
consultants:x:35000:consultant1,consultant2,consultant3
Срок действия паролей, учётной записи и требование изменить пароль при первом входе в систему
[root@server1 ~]# chage -l consultant1
Последний раз пароль был изменён : пароль должен быть изменён
Срок действия пароля истекает : пароль должен быть изменён
Пароль будет деактивирован через : пароль должен быть изменён
Срок действия учётной записи истекает : янв 06, 2022
Минимальное количество дней между сменой пароля : 0
Максимальное количество дней между сменой пароля : 30
Количество дней с предупреждением перед деактивацией пароля : 7
[root@server1 ~]# chage -l consultant2
Последний раз пароль был изменён : пароль должен быть изменён
Срок действия пароля истекает : пароль должен быть изменён
Пароль будет деактивирован через : пароль должен быть изменён
Срок действия учётной записи истекает : янв 06, 2022
Минимальное количество дней между сменой пароля : 0
Максимальное количество дней между сменой пароля : 15
Количество дней с предупреждением перед деактивацией пароля : 7
[root@server1 ~]# chage -l consultant3
Последний раз пароль был изменён : пароль должен быть изменён
Срок действия пароля истекает : пароль должен быть изменён
Пароль будет деактивирован через : пароль должен быть изменён
Срок действия учётной записи истекает : янв 06, 2022
Минимальное количество дней между сменой пароля : 0
Максимальное количество дней между сменой пароля : 30
Количество дней с предупреждением перед деактивацией пароля : 7
Наличие административных прав у членов группы consultants
[root@server1 ~]# cat /etc/sudoers.d/consultants
%consultants ALL=(ALL) ALL
Chapter4
Управление доступом к файлам.
- На server1 создать директорию
/home/techdocs
.
[student@server1 ~]$ sudo -i
[sudo] пароль для student:
[root@server1 ~]# mkdir /home/techdocs
- Создать группу
techdocs
, изменить группу владельца директории/home/techdocs
на группуtechdocs
.
[root@server1 ~]# groupadd techdocs
[root@server1 ~]# chgrp techdocs /home/techdocs/
- Создать пользователей
tech1
,tech2
и добавить их в группуtechdocs
.
[root@server1 ~]# useradd -G techdocs tech1
[root@server1 ~]# useradd -G techdocs tech2
- Убедиться, что пользователи
tech1
,tech2
не могут создавать файлы в папке/home/techdocs
.
[root@server1 ~]# su - tech1
[tech1@server1 ~]$ touch /home/techdocs/testfile
touch: невозможно выполнить touch для '/home/techdocs/testfile': Отказано в доступе
[tech1@server1 ~]$ выход
[root@server1 ~]# su - tech2
[tech2@server1 ~]$ touch /home/techdocs/
touch: установка временных отметок '/home/techdocs/': Отказано в доступе
[tech2@server1 ~]$ выход
- Для директории
/home/techdocs
установить следующие разрешения: setgid (2), чтение/запись/исполнение для владельца и группы (7), для остальных нет никаких прав (0).
[root@server1 ~]# chmod 2770 /home/techdocs/
- Проверить, что разрешения установлены корректно.
[root@server1 ~]# ls -ld /home/techdocs/
drwxrws---. 2 root techdocs 6 окт 9 03:36 /home/techdocs/
- Проверить, что члены группы
techdocs
(tech1
,tech2
) теперь могут создавать и редактировать файлы в директории/home/techdocs
, а другие пользователи не могут.
[root@server1 ~]# su - tech1
[tech1@server1 ~]$ touch /home/techdocs/file1
[tech1@server1 ~]$ выход
[root@server1 ~]# su - tech2
[tech2@server1 ~]$ touch /home/techdocs/file2
[tech2@server1 ~]$ echo "Test" >> /home/techdocs/file1
[tech2@server1 ~]$ cat /home/techdocs/file1
Test
[tech2@server1 ~]$ выход
[root@server1 ~]# su - student
[student@server1 ~]$ touch /home/techdocs/file3
touch: невозможно выполнить touch для '/home/techdocs/file3': Отказано в доступе
[student@server1 ~]$ echo "Student test" >> /home/techdocs/file1
-bash: /home/techdocs/file1: Отказано в доступе
- Изменить глобальный скрипт загрузки. Обычные пользователи должны иметь umask при которой другие пользователи не смогут просматривать и изменять новые файлы и каталоги.
создадим новый файл
/etc/profile.d/local-umask.sh
и скопируем в него блок, который имеет отношение к umask из файла/etc/profile
, значение umask в первом упоминании заменим на 007.
Важно обратить внимание - название файла обязательно должно иметь расширение.sh
, т.к. только такие файлы проверяются.
[root@server1 ~]# vim /etc/profile.d/local-umask.sh
if [ $UID -gt 199 ] && [ "`/usr/bin/id -gn`" = "`/usr/bin/id -un`" ]; then
umask 007
else
umask 022
fi
Проверка
проверим только последний пункт, т.к. все предыдущие проверяются в процессе выполнения
назначим пользователю student
временную маску 007, создадим новый файл и проверим его разрешения.
[student@server1 ~]$ umask 007
[student@server1 ~]$ touch file1
[student@server1 ~]$ ls -l
итого 0
-rw-rw----. 1 student student 0 окт 9 04:00 file1
остальные не имеют никаких разрешений на файл - то что было нужно в задании.