add rh199
parent
8793452154
commit
c9a6ba13ef
|
@ -0,0 +1,58 @@
|
||||||
|
#### Лабораторные работы по курсу RH199 (RHCSA)
|
||||||
|
|
||||||
|
***
|
||||||
|
|
||||||
|
###### top
|
||||||
|
*лабораторные работы начинаются в 3-й главы*
|
||||||
|
|
||||||
|
3. [Управление локальными пользователями и группами.](#chapter3)
|
||||||
|
4. [Управление доступом к файлам.](#chapter4)
|
||||||
|
5. [](#chapter5)
|
||||||
|
6. [](#chapter6)
|
||||||
|
7. [](#chapter7)
|
||||||
|
8. [](#chapter8)
|
||||||
|
9. [](#chapter9)
|
||||||
|
10. [](#chapter10)
|
||||||
|
11. [](#chapter11)
|
||||||
|
12. [](#chapter12)
|
||||||
|
13. [](#chapter13)
|
||||||
|
14. [](#chapter14)
|
||||||
|
15. [](#chapter15)
|
||||||
|
16. [](#chapter16)
|
||||||
|
17. [](#chapter17)
|
||||||
|
|
||||||
|
***
|
||||||
|
|
||||||
|
###### Chapter3
|
||||||
|
**Управление локальными пользователями и группами.**
|
||||||
|
|
||||||
|
1. Подключиться по ssh к server1
|
||||||
|
2. У всех вновь создаваемых пользователей пароль необходимо изменять каждые 30 дней.
|
||||||
|
3. Создать новую группу `consultants` с GID 35000.
|
||||||
|
4. Настроить административные права членов группы `consultants`, чтобы они могли выполнять любые команды от любых пользователей.
|
||||||
|
5. Создать пользователей `consultant1`, `consultant2`, и `consultant3` и задать им в качестве дополнительной группы `consultants`.
|
||||||
|
6. Учётные записи пользователей `consultant1`, `consultant2`, и `consultant3` настроить таким образом, чтобы срок их действия истекал через 90 дней с текущей даты.
|
||||||
|
7. Изменить политику паролей для учетной записи `consultant2`, чтобы нужно было менять пароль каждые 15 дней.
|
||||||
|
8. Пользователи `consultant1`, `consultant2`, и `consultant3` при первом входе в систему должны изменить свои пароли в принудительном порядке.
|
||||||
|
|
||||||
|
[вверх](#top)
|
||||||
|
|
||||||
|
***
|
||||||
|
|
||||||
|
###### Chapter4
|
||||||
|
**Управление доступом к файлам.**
|
||||||
|
|
||||||
|
1. На server1 создать директорию `/home/techdocs`.
|
||||||
|
2. Создать группу `techdocs`, изменить группу владельца директории `/home/techdocs` на группу `techdocs`.
|
||||||
|
3. Создать пользователей `tech1`, `tech2` и добавить их в группу `techdocs`.
|
||||||
|
4. Убедиться, что пользователи `tech1`, `tech2` не могут создавать файлы в папке `/home/techdocs`.
|
||||||
|
5. Для директории `/home/techdocs` установить следующие разрешения: setgid (2), чтение/запись/исполнение для владельца и группы (7), для остальных нет никаких прав (0).
|
||||||
|
6. Проверить, что разрешения установлены корректно.
|
||||||
|
7. Проверить, что члены группы `techdocs` (`tech1`, `tech2`) теперь могут создавать и редактировать файлы в директории `/home/techdocs`.
|
||||||
|
8. Изменить глобальный скрипт загрузки. Обычные пользователи должны иметь umask при которой другие пользователи не смогут просматривать и изменять новые файлы и каталоги.
|
||||||
|
|
||||||
|
# В ДОКУМЕНТЕ С ОТВЕТАМИ НЕОБХОДИМО ПРЕДУСМОТРЕТЬ КОМАНДЫ ПРОВЕРЯЮЩИЕ ПРАВИЛЬНОСТЬ ВЫПОЛНЕНИЯ ЗАДАНИЙ
|
||||||
|
|
||||||
|
[вверх](#top)
|
||||||
|
|
||||||
|
***
|
|
@ -0,0 +1,236 @@
|
||||||
|
#### Лабораторные работы по курсу 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***
|
||||||
|
|
||||||
|
3. [Управление локальными пользователями и группами.](#chapter3)
|
||||||
|
4. [Управление доступом к файлам.](#chapter4)
|
||||||
|
5. [](#chapter5)
|
||||||
|
6. [](#chapter6)
|
||||||
|
7. [](#chapter7)
|
||||||
|
8. [](#chapter8)
|
||||||
|
9. [](#chapter9)
|
||||||
|
10. [](#chapter10)
|
||||||
|
11. [](#chapter11)
|
||||||
|
12. [](#chapter12)
|
||||||
|
13. [](#chapter13)
|
||||||
|
14. [](#chapter14)
|
||||||
|
15. [](#chapter15)
|
||||||
|
16. [](#chapter16)
|
||||||
|
17. [](#chapter17)
|
||||||
|
|
||||||
|
***
|
||||||
|
|
||||||
|
###### Chapter3
|
||||||
|
**Управление локальными пользователями и группами.**
|
||||||
|
|
||||||
|
1. Подключиться по ssh к server1
|
||||||
|
```bash
|
||||||
|
da2001@Zenmint ~ $ ssh student@server1
|
||||||
|
```
|
||||||
|
|
||||||
|
2. У всех вновь создаваемых пользователей пароль необходимо изменять каждые 30 дней.
|
||||||
|
```bash
|
||||||
|
[student@server1 ~]$ sudo -i
|
||||||
|
[sudo] пароль для student:
|
||||||
|
[root@server1 ~]# vim /etc/login.defs
|
||||||
|
```
|
||||||
|
*необходимо изменить строку*
|
||||||
|
```bash
|
||||||
|
PASS_MAX_DAYS 30
|
||||||
|
```
|
||||||
|
|
||||||
|
3. Создать новую группу `consultants` с GID 35000.
|
||||||
|
```bash
|
||||||
|
[root@server1 ~]# groupadd -g 35000 consultants
|
||||||
|
```
|
||||||
|
|
||||||
|
4. Настроить административные права членов группы `consultants`, чтобы они могли выполнять любые команды от любых пользователей.
|
||||||
|
*best practices RedHat не редактировать существующие системные файлы, а создавать свои в соответствующих директориях.
|
||||||
|
Создадим файл vim `/etc/sudoers.d/consultants`*
|
||||||
|
```bash
|
||||||
|
[root@server1 ~]# vim /etc/sudoers.d/consultants
|
||||||
|
```
|
||||||
|
*добавить строку*
|
||||||
|
```bash
|
||||||
|
%consultants ALL=(ALL) ALL
|
||||||
|
```
|
||||||
|
|
||||||
|
5. Создать пользователей `consultant1`, `consultant2`, и `consultant3` и задать им в качестве дополнительной группы `consultants`.
|
||||||
|
```bash
|
||||||
|
[root@server1 ~]# useradd -G consultants consultant1
|
||||||
|
[root@server1 ~]# useradd -G consultants consultant2
|
||||||
|
[root@server1 ~]# useradd -G consultants consultant3
|
||||||
|
```
|
||||||
|
|
||||||
|
6. Учётные записи пользователей `consultant1`, `consultant2`, и `consultant3` настроить таким образом, чтобы срок их действия истекал через 90 дней с текущей даты.
|
||||||
|
*узнать какая дата будет через 90 дней от текущей даты можно с помощью команды*
|
||||||
|
```bash
|
||||||
|
[root@server1 ~]# date -d "+90 days" +%F
|
||||||
|
```
|
||||||
|
*ограничить срок действия пароля*
|
||||||
|
```bash
|
||||||
|
[root@server1 ~]# chage -E 2022-01-06 consultant1
|
||||||
|
[root@server1 ~]# chage -E 2022-01-06 consultant2
|
||||||
|
[root@server1 ~]# chage -E 2022-01-06 consultant3
|
||||||
|
```
|
||||||
|
|
||||||
|
7. Изменить политику паролей для учетной записи `consultant2`, чтобы нужно было менять пароль каждые 15 дней.
|
||||||
|
```bash
|
||||||
|
[root@server1 ~]# chage -M 15 consultant2
|
||||||
|
```
|
||||||
|
|
||||||
|
8. Пользователи `consultant1`, `consultant2`, и `consultant3` при первом входе в систему должны изменить свои пароли в принудительном порядке.
|
||||||
|
```bash
|
||||||
|
[root@server1 ~]# chage -d 0 consultant1
|
||||||
|
[root@server1 ~]# chage -d 0 consultant2
|
||||||
|
[root@server1 ~]# chage -d 0 consultant3
|
||||||
|
```
|
||||||
|
|
||||||
|
**Проверка**
|
||||||
|
Наличие группы `consultants`, правильность её GID и члены группы
|
||||||
|
```bash
|
||||||
|
[student@server1 ~]$ cat /etc/group | grep consultants
|
||||||
|
consultants:x:35000:consultant1,consultant2,consultant3
|
||||||
|
```
|
||||||
|
Срок действия паролей, учётной записи и требование изменить пароль при первом входе в систему
|
||||||
|
```bash
|
||||||
|
[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`
|
||||||
|
```bash
|
||||||
|
[root@server1 ~]# cat /etc/sudoers.d/consultants
|
||||||
|
%consultants ALL=(ALL) ALL
|
||||||
|
```
|
||||||
|
|
||||||
|
[вверх](#top)
|
||||||
|
|
||||||
|
***
|
||||||
|
|
||||||
|
###### Chapter4
|
||||||
|
**Управление доступом к файлам.**
|
||||||
|
|
||||||
|
1. На server1 создать директорию `/home/techdocs`.
|
||||||
|
```bash
|
||||||
|
[student@server1 ~]$ sudo -i
|
||||||
|
[sudo] пароль для student:
|
||||||
|
[root@server1 ~]# mkdir /home/techdocs
|
||||||
|
```
|
||||||
|
|
||||||
|
2. Создать группу `techdocs`, изменить группу владельца директории `/home/techdocs` на группу `techdocs`.
|
||||||
|
```bash
|
||||||
|
[root@server1 ~]# groupadd techdocs
|
||||||
|
[root@server1 ~]# chgrp techdocs /home/techdocs/
|
||||||
|
```
|
||||||
|
|
||||||
|
3. Создать пользователей `tech1`, `tech2` и добавить их в группу `techdocs`.
|
||||||
|
```bash
|
||||||
|
[root@server1 ~]# useradd -G techdocs tech1
|
||||||
|
[root@server1 ~]# useradd -G techdocs tech2
|
||||||
|
```
|
||||||
|
|
||||||
|
4. Убедиться, что пользователи `tech1`, `tech2` не могут создавать файлы в папке `/home/techdocs`.
|
||||||
|
```bash
|
||||||
|
[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 ~]$ выход
|
||||||
|
```
|
||||||
|
|
||||||
|
5. Для директории `/home/techdocs` установить следующие разрешения: setgid (2), чтение/запись/исполнение для владельца и группы (7), для остальных нет никаких прав (0).
|
||||||
|
```bash
|
||||||
|
[root@server1 ~]# chmod 2770 /home/techdocs/
|
||||||
|
```
|
||||||
|
|
||||||
|
6. Проверить, что разрешения установлены корректно.
|
||||||
|
```bash
|
||||||
|
[root@server1 ~]# ls -ld /home/techdocs/
|
||||||
|
drwxrws---. 2 root techdocs 6 окт 9 03:36 /home/techdocs/
|
||||||
|
```
|
||||||
|
|
||||||
|
7. Проверить, что члены группы `techdocs` (`tech1`, `tech2`) теперь могут создавать и редактировать файлы в директории `/home/techdocs`, а другие пользователи не могут.
|
||||||
|
```bash
|
||||||
|
[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: Отказано в доступе
|
||||||
|
```
|
||||||
|
|
||||||
|
8. Изменить глобальный скрипт загрузки. Обычные пользователи должны иметь umask при которой другие пользователи не смогут просматривать и изменять новые файлы и каталоги.
|
||||||
|
*создадим новый файл `/etc/profile.d/local-umask.sh` и скопируем в него блок, который имеет отношение к umask из файла `/etc/profile`, значение umask в первом упоминании заменим на 007.*
|
||||||
|
**Важно обратить внимание - название файла обязательно должно иметь расширение `.sh`, т.к. только такие файлы проверяются.**
|
||||||
|
```bash
|
||||||
|
[root@server1 ~]# vim /etc/profile.d/local-umask.sh
|
||||||
|
```
|
||||||
|
```bash
|
||||||
|
if [ $UID -gt 199 ] && [ "`/usr/bin/id -gn`" = "`/usr/bin/id -un`" ]; then
|
||||||
|
umask 007
|
||||||
|
else
|
||||||
|
umask 022
|
||||||
|
fi
|
||||||
|
```
|
||||||
|
|
||||||
|
**Проверка**
|
||||||
|
*проверим только последний пункт, т.к. все предыдущие проверяются в процессе выполнения*
|
||||||
|
*назначим пользователю `student` временную маску 007, создадим новый файл и проверим его разрешения.*
|
||||||
|
```bash
|
||||||
|
[student@server1 ~]$ umask 007
|
||||||
|
[student@server1 ~]$ touch file1
|
||||||
|
[student@server1 ~]$ ls -l
|
||||||
|
итого 0
|
||||||
|
-rw-rw----. 1 student student 0 окт 9 04:00 file1
|
||||||
|
```
|
||||||
|
*остальные не имеют никаких разрешений на файл - то что было нужно в задании.*
|
||||||
|
|
||||||
|
[вверх](#top)
|
||||||
|
|
||||||
|
***
|
|
@ -0,0 +1 @@
|
||||||
|
Здесь собраны лабораторные работы и варианты их выполнения, аналогичные тем, которые рассматриваются на курсе The RHCSA Rapid Track course (RH199) RHEL 8.
|
Loading…
Reference in New Issue