add labs
parent
96f7d7c8fb
commit
d4baba171b
|
@ -3,12 +3,12 @@
|
|||
***
|
||||
|
||||
###### top
|
||||
*лабораторные работы начинаются в 3-й главы*
|
||||
*лабораторные работы начинаются с 3-й главы*
|
||||
|
||||
3. [Управление локальными пользователями и группами.](#chapter3)
|
||||
4. [Управление доступом к файлам.](#chapter4)
|
||||
5. [Настройка SELinux.](#chapter5)
|
||||
6. [](#chapter6)
|
||||
6. [Настройка производительности системы.](#chapter6)
|
||||
7. [](#chapter7)
|
||||
8. [](#chapter8)
|
||||
9. [](#chapter9)
|
||||
|
@ -60,9 +60,25 @@
|
|||
|
||||
1. На server1 запустить браузер и ввести адрес `http://server2/lab.html`. Отобразится сообщение `Forbidden You don't have permission to access this resource.`
|
||||
2. Изучите и определите проблему SELinux, которая не позволяет Apache обслуживать веб-контент.
|
||||
3. Отобразите тип контекста SELinux для новой и старой HTML страницы.
|
||||
Display the SELinux context of the new HTTP document root and the original HTTP document root. Устраните проблему SELinux, из-за которой Apache не может обслуживать веб-контент.
|
||||
4. Убедитесь, что проблема SELinux решена и Apache может обслуживать веб-контент.
|
||||
|
||||
3. Display the SELinux context of the new HTTP document root and the original HTTP document root. Resolve the SELinux issue preventing Apache from serving web content.
|
||||
5. Verify that the SELinux issue has been resolved and Apache is able to serve web content.
|
||||
[вверх](#top)
|
||||
|
||||
***
|
||||
|
||||
###### Chapter6
|
||||
**Настройка производительности системы.**
|
||||
|
||||
1. Измените текущий профиль для server1 на `balanced`.
|
||||
2. Два процесса на сервере сильно загружают процессор. Измените приоритет этих процессов на значение 10.
|
||||
*для запуска тестовых процессов можно использовать такие команды*
|
||||
```bash
|
||||
cat /dev/zero >> /dev/null &
|
||||
cat /dev/zero >> /dev/null &
|
||||
|
||||
```
|
||||
|
||||
# В ДОКУМЕНТЕ С ОТВЕТАМИ НЕОБХОДИМО ПРЕДУСМОТРЕТЬ КОМАНДЫ ПРОВЕРЯЮЩИЕ ПРАВИЛЬНОСТЬ ВЫПОЛНЕНИЯ ЗАДАНИЙ
|
||||
|
||||
|
|
|
@ -2,8 +2,34 @@
|
|||
|
||||
***
|
||||
|
||||
###### top
|
||||
|
||||
**Для выполнения лабораторных работ потребуется настроить 2 виртуальных хоста**
|
||||
***
|
||||
|
||||
[Подготовка виртуальных хостов для выполнения лабораторных работ.](#stand)
|
||||
*лабораторные работы начинаются с 3-й главы*
|
||||
3. [Управление локальными пользователями и группами.](#chapter3)
|
||||
4. [Управление доступом к файлам.](#chapter4)
|
||||
5. [Настройка SELinux.](#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)
|
||||
|
||||
***
|
||||
|
||||
###### stand
|
||||
**Подготовка виртуальных хостов для выполнения лабораторных работ.**
|
||||
|
||||
*Для выполнения лабораторных работ потребуется настроить 2 виртуальных хоста*
|
||||
|
||||
server1 - 192.168.10.10
|
||||
user: student
|
||||
|
@ -17,96 +43,32 @@ root password: redhat
|
|||
|
||||
Дополнительно необходимо:
|
||||
*SERVER1*
|
||||
1. Прописать доменное имя server2
|
||||
```bash
|
||||
[student@server2 ~]$ sudo -i
|
||||
[sudo] пароль для student:
|
||||
[root@server2 ~]# echo '192.168.10.11 server2' >> /etc/hosts
|
||||
```
|
||||
2. Установить httpd
|
||||
```bash
|
||||
[student@server2 ~]$ sudo -i
|
||||
[sudo] пароль для student:
|
||||
[root@server2 ~]# yum install httpd -y
|
||||
[root@server2 ~]# systemctl enable --now httpd
|
||||
Created symlink /etc/systemd/system/multi-user.target.wants/httpd.service → /usr/lib/systemd/system/httpd.service.
|
||||
[root@server2 ~]# echo "This is SERVER2 WEB-SERVER" > /var/www/html/index.html
|
||||
[root@server2 ~]# firewall-cmd --add-service=http
|
||||
success
|
||||
[root@server2 ~]# firewall-cmd --add-service=http --permanent
|
||||
success
|
||||
[root@server2 ~]# mkdir /test
|
||||
[root@server2 ~]# echo "This is the html file for the SELinux final lab on SERVER2." > /test/lab.html
|
||||
[root@server2 ~]# mv /test/lab.html /var/www/html/
|
||||
[root@server2 ~]# ls -lZ /var/www/html/
|
||||
итого 8
|
||||
-rw-r--r--. 1 root root unconfined_u:object_r:httpd_sys_content_t:s0 27 окт 9 16:03 index.html
|
||||
-rw-r--r--. 1 root root unconfined_u:object_r:default_t:s0 60 окт 9 16:07 lab.html
|
||||
[root@server2 ~]# rmdir /test/
|
||||
[root@server2 ~]# curl http://server2/index.html
|
||||
This is SERVER2 WEB-SERVER
|
||||
[root@server2 ~]# curl http://server2/lab.html
|
||||
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
|
||||
<html><head>
|
||||
<title>403 Forbidden</title>
|
||||
</head><body>
|
||||
<h1>Forbidden</h1>
|
||||
<p>You don't have permission to access this resource.</p>
|
||||
</body></html>
|
||||
```
|
||||
|
||||
Перечень необходимых команд root (*стоит это оформить в виде скрипта*)
|
||||
```bash
|
||||
useradd student -G wheel
|
||||
echo student | passwd student --stdin
|
||||
echo '192.168.10.11 server2' >> /etc/hosts
|
||||
yum install httpd -y
|
||||
systemctl enable --now httpd
|
||||
echo "This is SERVER2 WEB-SERVER" > /var/www/html/index.html
|
||||
firewall-cmd --add-service=http
|
||||
firewall-cmd --add-service=http --permanent
|
||||
mkdir /test
|
||||
echo "This is the html file for the SELinux final lab on SERVER2." > /test/lab.html
|
||||
mv /test/lab.html /var/www/html/
|
||||
rmdir /test/
|
||||
|
||||
```
|
||||
|
||||
*SERVER2*
|
||||
1. Прописать доменное имя server1
|
||||
```bash
|
||||
[student@server2 ~]$ sudo -i
|
||||
[sudo] пароль для student:
|
||||
[root@server2 ~]# echo '192.168.10.10 server1' >> /etc/hosts
|
||||
```
|
||||
|
||||
Перечень необходимых команд root (*стоит это оформить в виде скрипта*)
|
||||
```bash
|
||||
useradd student -G wheel
|
||||
echo student | passwd student --stdin
|
||||
echo '192.168.10.10 server1' >> /etc/hosts
|
||||
yum install httpd -y
|
||||
mkdir /webserver
|
||||
sed -i 's/\/var\/www\/html/\/webserver/g' /etc/httpd/conf/httpd.conf
|
||||
systemctl enable --now httpd
|
||||
echo "This is the html file for the SELinux final lab on SERVER2." > /webserver/lab.html
|
||||
firewall-cmd --add-service=http
|
||||
firewall-cmd --add-service=http --permanent
|
||||
|
||||
```
|
||||
|
||||
***
|
||||
|
||||
###### 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
|
||||
**Управление локальными пользователями и группами.**
|
||||
|
||||
|
@ -308,3 +270,82 @@ fi
|
|||
[вверх](#top)
|
||||
|
||||
***
|
||||
|
||||
###### Chapter5
|
||||
**Настройка SELinux.**
|
||||
|
||||
1. На server1 запустите браузер и введите адрес `http://server2/lab.html`. Отобразится сообщение `Forbidden You don't have permission to access this resource.`
|
||||
2. Изучите и определите проблему SELinux, которая не позволяет Apache обслуживать веб-контент.
|
||||
```bash
|
||||
[root@server2 ~]# less /var/log/messages
|
||||
```
|
||||
*поиском найти уведомления SELinux `/sealert`*
|
||||
*скопировать и ввести первое упоминание вида `sealert -l 8dcf4fc2-54e6-448d-91c6-ac047615927f`*
|
||||
*в сообщении будет предложение решение проблемы*
|
||||
```bash
|
||||
[root@server2 ~]# sealert -l 8dcf4fc2-54e6-448d-91c6-ac047615927f
|
||||
SELinux запрещает /usr/sbin/httpd доступ getattr к файл /webserver/lab.html.
|
||||
|
||||
***** Модуль restorecon предлагает (точность 94.8) *************************
|
||||
|
||||
Если вы хотите исправить метку.$TARGETЗнак _PATH по умолчанию должен быть httpd_sys_content_t
|
||||
То вы можете запустить restorecon. Возможно, попытка доступа была остановлена из-за недостаточных разрешений для доступа к родительскому каталогу, и в этом случае попытайтесь соответствующим образом изменить следующую команду.
|
||||
Сделать
|
||||
# /sbin/restorecon -v /webserver/lab.html
|
||||
|
||||
... дальнейший вывод отброшен ...
|
||||
```
|
||||
|
||||
3. Отобразите тип контекста SELinux для стандартной и запрашиваемой директории web сервера.
|
||||
```bash
|
||||
[root@server2 ~]# ls -ldZ /var/www/html/ /webserver/
|
||||
drwxr-xr-x. 2 root root system_u:object_r:httpd_sys_content_t:s0 6 окт 7 16:06 /var/www/html/
|
||||
drwxr-xr-x. 2 root root unconfined_u:object_r:default_t:s0 40 окт 7 16:13 /webserver/
|
||||
```
|
||||
|
||||
4. Устраните проблему SELinux, из-за которой Apache не может обслуживать веб-контент.
|
||||
```bash
|
||||
[root@server2 ~]# semanage fcontext -a -t httpd_sys_content_t '/webserver(/.*)?'
|
||||
[root@server2 ~]# restorecon -vR /webserver
|
||||
```
|
||||
4. Убедитесь, что проблема SELinux решена и Apache может обслуживать веб-контент.
|
||||
```bash
|
||||
[root@server2 ~]# curl http://server2/lab.html
|
||||
This is the html file for the SELinux final lab on SERVER2.
|
||||
```
|
||||
|
||||
[вверх](#top)
|
||||
|
||||
***
|
||||
|
||||
###### Chapter6
|
||||
**Настройка производительности системы.**
|
||||
|
||||
1. Измените текущий профиль для server1 на `balanced`.
|
||||
```bash
|
||||
[root@server1 ~]# tuned-adm profile balanced
|
||||
```
|
||||
2. Два процесса на сервере сильно загружают процессор. Измените приоритет этих процессов на значение 10.
|
||||
*для запуска тестовых процессов можно использовать такие команды*
|
||||
```bash
|
||||
cat /dev/zero >> /dev/null &
|
||||
cat /dev/zero >> /dev/null &
|
||||
|
||||
```
|
||||
*отобразим процессы с сортировкой по загрузке процессора и выведем 2 последних*
|
||||
*убедимся, что это процессы, которые сформированы нами*
|
||||
```bash
|
||||
[root@server1 ~]# ps -aux --sort=pcpu | tail -2
|
||||
root 17216 49.6 0.0 7448 908 pts/2 R 10:21 1:07 cat /dev/zero
|
||||
root 17217 49.6 0.0 7448 940 pts/2 R 10:21 1:07 cat /dev/zero
|
||||
```
|
||||
*для изменения приоритета выполним*
|
||||
```bash
|
||||
[root@server1 ~]# renice -n 10 17216 17217
|
||||
17216 (process ID) old priority 0, new priority 10
|
||||
17217 (process ID) old priority 0, new priority 10
|
||||
```
|
||||
|
||||
[вверх](#top)
|
||||
|
||||
***
|
||||
|
|
Loading…
Reference in New Issue