Вы находитесь на странице: 1из 14

Отчет №4

Трушин Никита Михайлович 11-910


Операционные Системы
Задание
1. Создать пользователя (логин придумайте сами) с домашним каталогом в
/tmp/<newbie> (буквально так), основной группой adm и UID 991;

2. Запретить новому пользователю менять свой пароль, не ограничивая в этом других


пользователей;

3. Настроить права на создание новым пользователем файлов и каталогов так, чтобы


члены группы имели права rwx на каталоги, а на файлы имели права rw. У категории
“остальные” никаких прав быть не должно;

4. Настроить отключение новой учётной записи 29.12.2021

5. Настроить разрешения для Вашего основного пользователя на чтение и запись в


домашний каталог нового пользователя с наследованием разрешений для вновь
создаваемых файлов;

6. Настроить вашему пользователю разрешения для беспарольного перезапуска


сервиса системного журналирования rsyslog;

7. Сделать так, чтобы новый пользователь не мог изменить свой файл настроек
.bashrc;

8. Разрешить группе www-programmers править файл /etc/hosts;

9. Разрешить вашему обычному пользователю выполнять любые команды от имени


пользователя www-data без ввода пароля;

10. Добавить новую группу (любую). Добавить себя в эту группу. Найти все файлы в
домашнем каталоге и сменить их группу на новую;

Новый пользователь – пользователь созданный в п1.

Ваш пользователь – созданный при установке системы(в моем случае nick)


Пункт 1.
Создать пользователя (логин придумайте сами) с домашним каталогом в /tmp/<newbie>
(буквально так), основной группой adm и UID 991;

Для начала создадим каталог /tmp/<newbie>. Дабы bash не возмущался, <newbie> берём в
кавычки. Результат выполнения:

Теперь уже создадим пользователя и зададим ему пароль следующими командами:

Итак, первой командой мы создаем пользователя newbie, задаём ему основную группу
adm (ключ -g), задаем домашний каталог, созданный нами на предыдущем шаге (ключ -d),
задаем UID 991 (ключ -u). Вторая команда задает пароль новому пользователю.
Последние две – это проверка, что у нас все правильно создалось.

И ещё поставим оболочку bash, вместо sh, командой chsh -s /bin/bash, предварительно
залогинившись под пользователя newbie.
Пункт 2.
Запретить новому пользователю менять свой пароль, не ограничивая в этом других
пользователей.

Выполним данную задачу следующим образом:

Мы создаем новую группу nopasswd, куда и добавляем пользователя newbie. Затем меняем
у файла /usr/bin/passwd группу на nopasswd. После, с помощью chmod убираем право у
группы выполнять passwd. Затем возвращаем флаг s владельцу файла, дабы остальные
пользователи могли менять пароль без команды sudo.

Проверка:
Пункт 3
Настроить права на создание новым пользователем файлов и каталогов так, чтобы члены
группы имели права rwx на каталоги, а на файлы имели права rw. У категории
“остальные” никаких прав быть не должно.

Зададим маску для прав. Перед тем как создать файл, происходит запрос маски прав,
которая вычитается из исходных прав (файл – 666, каталог - 777). По умолчанию, в Debian
маска равна 022, т.е. без дополнительных ключей у файлов права будут 644 (rw-r--r--), а у
каталогов – 755 (rwxr-xr-x). Команда umask позволяет изменить значение маски

Значение маски теперь равно 007, и теперь по умолчанию будут создаваться файлы с
правами 660 (rw-rw----) и каталоги с правами 770 (rwxrwx---), что и показано на примере
mydir и myfile.
Пункт 4.
Настроить отключение новой учётной записи 29.12.2021.

Ключ -Е устанавливает дату истечения срока записи для newbie.


Пункт 5
Настроить разрешения для Вашего основного пользователя на чтение и запись в
домашний каталог нового пользователя с наследованием разрешений для вновь
создаваемых файлов.

Права на каталог нового пользователя на данный момент 700

Воспользуемся командами setfacl и getfacl, позволяющие более гибко настраивать доступ


к файлам и каталогам.

Сначала посмотрим на файл ACL домашнего каталога нового пользователя с помощью


команды getfacl

Права стоят такие же, как и после просмотра при помощи ls –l.

Теперь настроим ACL при помощи команды setfacl

Я настраиваю ACL для домашнего каталога нового пользователя. Ключ –m говорит, что
надо дополнить файл ACL следующими «строками»:

u:nick:rwx – пользователь nick получает права на чтение запись и исполнение каталога


d:u:nick:rwx – файлы и каталоги, созданные внутри каталога newbie, будут наследовать
права пользователя nick на чтение, запись, выполнение.

d:g:adm:rwx - файлы и каталоги, созданные внутри каталога newbie, будут наследовать


права группы adm на чтение, запись, выполнение. Это сделано для того, чтобы
пользователь newbie тоже мог взаимодействовать с этими файлами.

В конце команды стоит путь к файлу ACL каталога newbie.

Затем снова смотрим ACL, дабы проверить, изменился ли он. Параметр mask – маска
прав, которая накладывается на права. Совпадающие значения применяются.

Снова смотрим командой ls –l на каталог newbie и видим + в конце прав. Это означает, что
ACL применился.

Пробуем создать файл и каталог от имени nick в каталоге newbie.

Создать получилось, взглянув на их права мы замечаем +, что сигнализирует о


применнении к ним ACL. Взглянем и на него.
Как можно заметить, права унаследовались.
Пункт 6
Настроить вашему пользователю разрешения для беспарольного перезапуска сервиса
системного журналирования rsyslog.

Ну, с любого хоста от имени рута без пароля я могу перезапустить сервис rsyslog. Вот что
тут написано.
Пункт 7.
Сделать так, чтобы новый пользователь не мог изменить свой файл настроек .bashrc.

Ставим права 440 на файл .bashrc

Проверка.
Пункт 8.
Разрешить группе www-programmers править файл /etc/hosts.

Создаем группу www-programmers.

Создадим пользователя programmer и зададим ему пароль.

Через visudo прописываем разрешение группе www-programmers на использование


команды от имени рута без пароля sudoedit /etc/hosts. Sudoedit - механизм запуска
текстового редактора для безопасной модификации файлов.
Пункт 9.
Разрешить вашему обычному пользователю выполнять любые команды от имени
пользователя www-data без ввода пароля.

Через visudo прописываем строку, позволяющую нашему пользователю выполнять любые


команды от имени www-data без пароля (NOPASSWD)

Проверка.
Пункт 10.
Добавить новую группу (любую). Добавить себя в эту группу. Найти все файлы в
домашнем каталоге и сменить их группу на новую.

Добавляем группу family, добавляем себя в эту группу.

Перезапускаем машину, проверяем:

Запускаем команду по смене файлов и замене их группы на family

У директории task7 права 300, а у rootdir 070 и принадлежит она пользователю root и
группе root, так что в них попасть мы не можем. А в остальном – вот результат, как можно
заметить, у файлов группа сменилась с nick на family.

Вам также может понравиться