Войтов Η. М. Администрирование ос red Hat Enterprise Linux Учебный курс І р п souline a c a d e m y a L l I a n c e м о с к в а, 2011




страница13/13
Дата19.11.2016
Размер5.62 Mb.
Просмотров323
Скачиваний0
1   ...   5   6   7   8   9   10   11   12   13
/v ar/lo g/m e ssage s должны быть выведены сообщения о загрузке файлов прямой
Упражнение 2.3. Настройка динамического обновления записей D N S
III»··
Задания
Описания действий
и обратной зон в память zone 0.
16 172
.in-addr.arpa/IN/ internal: loaded serial 42
main named[11388]: zone linux.lab/IN/internal:
loaded serial 42 named[11388]: running
2. Выполнить проверку обнволения зон D N S на вирутальной машине srv.
linux.lab.
1
Выполнить проверку обновления зон, используя утилиты nsupdate и dig:
# nsupdate
> update add client.linux.lab 300 A 172.16.0.50
>

> quit
[root@main named]#
dig 0172.16.0.2 client
linux.
lab A
; <<>> DiG 9.3.4-PI <<>> @172.16.0.2 client.linux.
lab A
; (1 server found)
;; global options: printcmd
;; Got answer:
;; - » H E A D E R « - opcode: QUERY,
status: NOERROR,
id:
;; ANSWER SECTION:
client.linux.lab.
300
IN
A
172.16.0.50
3.
Настроить на виртуальной машине
srv.linux.lab сервис
DHCP.
1
. Выполнить вход в сисиему на виртуальной машине
srv.iinux.iab под пользователем root и установить пакет dhcp.
2. Создать конфигурационный файл /etc/dhcpd/
dhcpd.conf, используя его образец в каталоге /usr/
share/doc/dhcp-/dhcpd. conf. sample.
Итоговый вид файла dhcpd.conf должен иметь следующий вид interim;
ddns-updates on;
allow client-updates;
include
"/etc/named/rndc.key";
zone linux.lab.
{
primary 127.0.0.1; key "rndckey";
}
subnet 172.16.0.0 netmask 255.255.255.0
{
option routers
172.16.0.2; option subnet-mask
255.255.255.0; option domain-name-servers
172.16.0.2; option domain-name
"linux.lab.
"; ddns-domainname
"linux.lab.
"; ddns-rev-domainname
"in-addr.arpa.
"; option broadcast-address
172.16.0.255; range
172.16.0.10 172.16.0.100;

168
■■■ΙΙΙΙΙ
Практические работы
Задания
Описания действий
default-lease-time
86400; max-lease-time
172 80 0; host ns
{
next-server srv.linux.lab; hardware Ethernet
00
:
0C
:
2 9
:
8E
:
69
:
6A; fixed-address 172.16.0.2;
}
}
zone linux.lab.
{
primary 172.16.0.2;
}
zone 0.16.172.in-addr.arpa.
{
primary 172.16.0.2;
}
3.
Указать в файле /etc/sysconfig/dhcpd в переменной D H C P D A R G S параметры используемого конфигурационного файла и сетевого интерфейса. Сетевой интерфейс должен находиться в локальной подсети
172.16.0.0/24,
4. Запустить демон dhcpd и добавить его в автоза­
пуск на 3 и 5 уровнях выполнения, используя команды
service и chkconfig. В случае корректного запуска демона dhcpd, в файле /va r/lo g/m e ssa ge s должно присутствовать сообщение о приеме пакетов DHCP на указанном сетеовм интерфейсе 17 18:41:49 main dhcpd: Listening on LPF/ethO/
00:0c:29:8e:69:6a/172.16.0/24 4. Настроить клиента
DHCP на виртуальной машине client.linux.lab и проверить динамическое обновление соответствующих D N S записей. Выполнить вход в сисиему под пользователем root на виртуальной машине client.linux.lab.
2.
Настроить сетевой интерфейс на получение динамического ІР-адреса, используя файл /etc/sysco n fig/
network-scripts/ifcfg-eth. Параметр соот­
ветствует номеру интерфейса:
DEVICE=ethl
0NB00T=yes
BOOTPROTO=dhcp
3.
Настроить клиента DHCP, используя за образец конфигурационный файл /usr/share/doc/dhclient-
cnfl>/dhclient.conf. Итоговый конфигурационный файл /etc/dhclient.conf должен иметь следующий вид host-name "<локальное_имя_хоста>"
;
request subnet-mask, broadcast-address
,
routers, domain-name, domain-name-servers
,
host­
name;
require subnet-mask, domain-name-servers;
Упражнение 2.4. Организация веб-доступа к документации ОС Linux
III····
Задания
Описания действий
timeout 60;
retry 60; reboot 10;
select-timeout 5;
initial-interval 2;
script "Здесь в директиве send host-nam e необходимо указать локальное имя хоста (без доменной части, которое будет посылать D H C P -клиент D H C P -серверу.
В данном случаев качестве имени хоста используется имя clientN.
4. Получить ІР-адрес от D H C P -сервера:
# dhclient — г ethl
# dhclient ethl
# service network restart
5. Проверить, что на D N S сервере создались А и PTR записи для данного клиента DHCP, используя команду
dig.
6. Убедиться, используя журнальный файл /var/log/
m e ssa g e s на виртуальной машине srv.linux.lab, в том, что обновление D N S записей действительно произошло. В случае удачного обновления в данном файле должны присутствовать следующие строки Added new forward map from client.linux.lab.
to
172.16.0.100
named[6146]: client 172 .16.0.2#32771:
view internal: updating zone '0.16.172.in-addr.arpa/IN':
deleting rrset at '100.0.16.172.in-addr.arpa' PTR named[6146]: client 172 .16.0.2#32771:
view internal: updating zone '0.16.172.in-addr.arpa/IN':
adding an RR at '100 .
0.16.172.in-addr.arpa' PTR
named[6146]: zone 0.16.172.in-addr.arpa/IN/internal:
sending notifies (serial 70)
dhcpd: added reverse map from 100.0.16.172.in-addr.
arpa. to client.linux.lab.
dhcpd: DHCPREQUEST for 172.16.0.100 (172.16.0.2) from с :33 (rle5) via ethO
dhcpd: DHCPACK on 172.16.0.100 to 00:0c:29:07:fc:33
(rhel5) via ethO
Упражнение 2.4. Организация
централизованного веб-доступа к
документации ОС Linux.
Сценарий: Вы администрируете локальную сеть, в которой имеется большое количество серверов с ОС Linux. Время от времени вам приходится пользоваться

170
■■■■Illi
Практические работы руководствами (HowTo) по ОС Linux, доступными на внешнем веб-ресурсе Linux
D ocum entation Project. В целях сокращания времени на поиск необходимой информации вы решили организовать внутри локальной сети ресурс, который будет предоставлять веб-доступ к руководствам ОС Linux, включая man страницы основных команд. В целях снижения нагрузки на данный ресурс и повышения времени отклика вы решили установить дополнительно реверсный прокси сервер, который будет кешировать большинство повторяющихся веб-запросов к файлам документации. Для реализации поставленной цели вам понадобится настроить веб-сервер Apache и прокси сервер Squid.
Результатом выполнения данной работы будет являться веб-ресурс, содержащий руководства ОС Linux. Доступ к данному ресурсу должен осуществляться через веб-браузер. В качестве ресурса с документацией используется виртуальная машина srv.linux.lab. Проверка результата выполнения работы будет выполняться с клиента, которым является виртуальная машина client.linux.lab, а также непосредственно с виртуальной машины srv.linux.lab.
Задания
Описания действий
1
Установить и настроить на виртуальной машине
srv.linux.lab веб-сер- вер Apache и настроить доступ к документации ОС Linux, включая man страницы. Выполнить вход в сисиему на виртуальной машине
srv.linux.lab под пользователем root и установить пакет httpd.
2. Отредактировать конфигурационный файл httpd.
conf следующим образом:
• Указать ІР-адрес, на котором сервер будет прине- мать веб-запросы:
Listen Создать именованный виртуальный хост, на который будут непосредственно обращаться клиенты 127.0.0.1:80
0 .
0 .1: 80>
ServerAdmin root@localhost
DocumentRoot "/var/www/html/"
ServerName srv.linux.lab
ServerAlias docs.linux.lab
Alias /linux-docs /opt/docs
ErrorLog logs/linux-docs-error log
CustomLog logs/linux-docs-access log common

Options +Indexes
AllowOverride None
Order allow,deny
Allow from all


3. Разместить каталоги с документацией и тап -страницами в каталоге файловой системы /opt/docs. Для этого необходимо скопировать по FTP архивные файлы Linux-html-HOWTOs.tar.bz и man-html-*.tar.bz2
Упражнение 2.4. Организация веб-доступа к документации ОС Linux
IIIIIII
Задания
Описания действий
с машины преподавателя и распаковать их в каталог
/opt/docs.
4. Выполнить проверку конфигурационного файла httpd.conf, используя команду httpd. В случае отсутствия ошибок, на терминал будет выведена конигура- ция виртуального хоста и фраза Syntax ОК.
5. Запустить демон httpd и добавить его в автозапуск на 3 и 5 уровнях выполнения, используя команды
service и chkconfig.
6. Проверить возможность веб-доступа к содержимому каталога /opt/docs, зайдя по ссылке
http://127.0.0.1/linux-docs на виртуальной машине
srv.linux.lab. Проверку выполнять при помощи консольного веб-обозревателя lynx.
7. В случае невозможности получить доступ к ресурсу
http://127.0.0.1 /linux-docs, проверить журнальные файлы linux-docs-error_log и linux-docs-error log, находящиеся в каталоге /var/log/httpd и устранить ошибки самостоятельно Установить и настроить на виртуальной машине srv.linux.lab прокси сервер Squid и настроить его на кеширование входящих запросов. Выполнить вход в сисиему на виртуальной машине
srv.linux.lab под пользователем root и установить пакет squid.
2. Отредактировать конфигурационный файл squid,
conf следующим образом:
• Указать ІР-адрес, на котором сервер будет прине- мать входящие веб-запросы:
http port
<ІР-адрес>:80
vhost
Здесь в качестве параметра <1Р-адрес> необходи­
мо указать публичный ІР-адрес виртуальной машины
srvN.linux.lab (Интерфейс host-only) и порт прокси- сервера.
• Разрешить доступ для всех адресов из списка all и закомментировать все остальные правила доступа
http_access:
http access allow Указать целевой веб-сервер, на который следует посылать веб-запросы при первом обращении peer 127.0.0.1 parent 80 0 originserver Установить значение директивы visible_hostname:
visible hostname Данная директива будет уникально идентифицировать данный прокси сервер. Выполнить проверку конфигурационного файла
squid.conf, используя команду squid. В случае

172
■■■■Illi
Практические работы
Задания
Описания действий
отсутствия ошибок в файле squid.conf вывод данной команды должен быть пустым. Запустить демон squid и добавить его в автозапуск на 3 и 5 уровнях выполнения, используя команды
service и chkconfig.
3. Проверить механизм кеширвоания запросов.
1. На виртуальной машине srv.linux.lab выполнить проверку кеширования запросов, используя команду
squidclient. Вместо параметра <1Р-адрес> необходи­
мо указать публичный ІР-адрес виртуальной машины
srv.linux.lab (Интерфейс host-only):
• Запустить команду squidclient и проанализивроать заголовки X-Cache(
) и X-Cache-Lookup(
).
• Повторно запустить команду squidclient и проана­
лизивроать заголовки X-Cache(
) и X -C ach e-
Lookup(
).
2. На виртуальной машине client.linux.lab, исполь­
зуя веб-браузер Mozilla Firefox, убедиться, что ресурс
http://srv.iinux.lab/iinux-docs доступен и содержит руководства (HOWTO) ОС Linux, а также страницы руководства man.
Упражнение 2.5. Настройка аутентификации
S S H по публичному ключу
Сценарий: Вы администрируете локальную сеть, в которой имеется большое количество серверов с ОС Linux. Администрирование данных серверов осуществляется с использованием защищенного интерпретатора команд SSH. Каждый раз при подключении к серверу вам необходимо вручную вводить учетные данные пользователя и аутентифицироваться в системе. Вы не хотите держать в голове все те учетные данные, которые необходимы для подключения к серверами поэтому решили автоматизировать процесс аутентификации SSH путем натсройки аутентификации с использованием открытых ключей. В данной работе вам необходимо настроить и протестирвоать механизм аутентификации SSH с использованием открытых ключей. Тестирование выполняется между клиентом, в качестве которого выступает виртуальная машина client .linux. lab и сервером, в качестве которого выступает виртуальная машина serverN.linux.lab.
Упражнение 2.5. Настройка аутентификации SS H по публичному ключу
ΙΙΙΙΙΙΙ
Задания
Описания действий
1. Настроить клиента ssh на виртуальной машине
client.linux.lab.
1. Выполнить вход в сисиему на виртуальной машине
client.linux.lab под пользователем root.
2. Сгенерировать открытый ключ (id_rsa.pub), ис­
пользуя команду ssh-keygen и настроить соответствующие права на каталоги его содержимое, а именно:
• Удалить права на запись в каталоге
/ для группы и всех остальных пользователей на каталог
• Установить полные права на катлог
/.ssh
только для его владельца.
• Удалить все права для группы и всех остальных пользователей со всех файлов, находящихся в каталоге
/.ssh.
3. Скопировать открытый ключ (id_rsa.pub) на виртуальную машину srv.linux.lab, используя команду
scp, и добавить его содержимое в файл
/.ssh /

authorized_keys.
4. Настроить демон ssh-agent, добавив в файл

/.bash_profile
запуск команды ssh-agent. Данный демон будет использоваться для кеширования запросов секретной фразы (passphrase) для последующих подключений по SSH.
5. Добавить закрытый ключ в кешь демона ssh-agent, используя команду ssh-add:
# ssh-add
/.ssh/id rsa
Enter passphrase for /root/
ssh/id rsa:


2. Настроить на виртуальной машине srv.linux.lab демона sshd на использование аутентификации по открытым ключам. Выполнить вход в сисиему на виртуальной машине
srv.linux.lab под пользователем root.
2. Установить код доступа 600 на файл
/.ssh /

authorized_keys.
3. Отредактировать конфигурационный файл /etc/
ssh/sshd_config следующим образом:
• Активизировать возможность аутентификации по открытым ключам yes
PubkeyAuthentication yes
AuthorizedKeysFile ssh/authorized В качестве параметра <ІР-адрес> необходимо указать локальный ІР-адрес виртуальной машины srv.
linux.lab (Интерфейс host-only).
• Разрешить доступ по S S H для пользователя root:
PermitRootLogin yes
4. Запустить демон ssh d и добавить его в автозапуск на 3 и 5 уровнях выполнения, используя команды
service и chkconfig.

174
■■■■Illi
Практические работы
Задания
Описания действий
5. Запустить демон ssh d и добавить его в автозапуск на 3 и 5 уровнях выполнения, используя команды
service и chkconfig.
3. Проверить работу ме- занизма аутентификации
S S H с использованием открытых ключей.
1. На виртуальной машине client.linux.lab выполнить тестовое подключение по ssh к виртуальной машине
srv.linux.lab:
# ssh
- V
-о PreferredAuthentications=publickey srv.
linux.lab
debugl:
Next authentication method: publickey debugl:
Offering public key: /root/.ssh/id rsa debugl: Server accepts key: pkalg ssh-rsa blen 277 debugl: Authentication succeeded (В случае удачной аутентификации на терминале в отладочной информации будет присутствовать строка
Authentication succeeded (publickey).
2. На виртуальной машине srv.linux.lab проверить журнальный файл /var/log/secure на наличие записей, сивидетельствующих о подключении клиента с использованием открытого ключа.
Упражнение 2.6. Создание защищенного
почтового сервиса на основе МТА Sendm ail и
Dovecot
Сценарий: В компании, в которой вы явлетесь системным администратором, открылся небольшой дополнительный офис. Пользователи, находящиеся в дополнительном офисе, должны иметь защищенный доступ к своим потчовым ящикам по протоколу IM APS, находящимися в главном офисе. Кроме того, пользователи должны иметь возможность отправлять почтовые сообщения через защищенное
SM TP соединение, поскольку канал, соединяющий главный и дополнительный офис, проходит через сеть Интернет. В данном упражнении вам предстоит реализовать данный почтовый сервис на основе МТА Sendmail и ПО Dovecot, а затем протестировать созданную почтовую конфигурацию.
Упражнение 2.6. Создание защищенного сервиса на основе МТА Sendmail
M ill··
175
За дани я
О писания действий. Настроить МТА
Sendmail на виртуальной машине srv.linux.lab.
1.
Выполнить вход в сисиему на виртуальной машине
srv.linux.lab под пользователем root.
2. Установить пакет sendmail-cf.
3.
Сгенерировать сертификат, который будет использоваться для шифрования SM T P соединения. В процессе генерации сертификата указать отмеченные жирным шрифтом значения:
#
cd /etc/pki/tls/certs
#
make sendmail.pern
Country Name (2 letter code) [GB]:RU
State or Province Name (full name) [Berkshire]:
Moscow
Locality Name (eg, city) [Newbury]
:Moscow
Organization Name (eg, company) [My Company Ltd]:
SOFTLINE
Organizational Unit Name (eg, section) [
]
:IT
Common Name (eg, your name or your server's hostname)[]:
srv.linux.lab
E-mail Address []
:root@linux.lab
4. Настроить конфигурационный файл sendmail.me следующим образом:
• Сохранить исходную конфигурацию данного файла
• Настроить прием входящих SM T P соединений на публичном ІР-адресе:
dnl РТ ('Port=smtp,Addr=127.0.0.1,
Name=MTA')dnl

Запретить подключения пользователей, не использующих SSL:
define ('confAUTH OPTIONS', Ά p')dnl

Определить действующие аутентификационные механизмы DIGEST-MD5 CRAM-MD5 LOGIN
PLAIN')dnl define('confAUTH_MECHANISMS',
'EXTERNAL GSSAPI
DIGEST-MD5 CRAM-MD5 LOGIN Определить сертификат, который будет использоваться для шифрования DIR', '/etc/pki/tls/certs')dnl define('confCACERT PATH', 'CERT DIR')dnl define('confCACERT', 'CERT DIR/sendmail.pem')dnl define('confSERVER CERT', 'CERT DIR/sendmail. pem')dnl define('confSERVER_KEY', 'CERT_DIR/sendmail.
pem')dnl define('confCLIENT_CERT',
'CERT_DIR/sendmail.
pem')dnl define('confCLIENT_KEY', 'CERT_DIR/sendmail.
pem')dnl

176
■■■■Illi
Практические работы
Задания
Описания действий
• Убедиться, что в данном файле присутствует опция
FEATURE(use_cw_file)dnl. Добавить домен linux.lab в файл /etc/m ail/local-host-nam es.
5. Добавить в файл /etc/m ail/access домен linux.lab и разрешить данному домену отправлять почту. Затем сформировать хешированный файл данных access,
db.
6. Созадть двух тестовых пользователей andrew и kirll и задать для них пароль P@sswOrd.
7. Сгенерировать конфигурационный файл sendmail.
cf и перезапустить демон sendmail.
8. Проверить, что MTA Sendmail ожидает защищенных соединений на 25 порте:
#
openssl s_client -starttls smtp -crlf -connect
172.16.0.2:25
CONNECTED(00000003)
220
srvOl.linux.lab ESMTP Sendmail 8.13.8/8.13.8;
Fri, 20 Feb 2009 12:56:34 +В случае удачной настройки MTA Sendmail, будет выдана команда с кодом 220.
9. Запустить демон sendmail и добавить его в автоза­
пуск на 3 и 5 уровнях выполнения, используя команды
service и chkconfig.
2. Настроить на виртуальной машине srv.linux.lab демон dovecot, который будет использоваться для защищенного доступа к почтовым ящикам. Выполнить вход в сисиему на виртуальной машине
srv.linux.lab под пользователем root.
2. Установить пакет dovecot.
3. Запустить демон saslauthd, который будет использоваться в процессе аутентификации, и настроить его автозапуск, используя команды service и chkconfig.
4. Сохранить сертификат, входящий в состав пакета
dovecot:
# find /etc -name dovecot.pem -execdir mv {} dovecot.pem.orig \;
5. Настроить шаблон /etc/pki/dovecot/dovecot-
openssl.cnf, который будет использован для создания нового сертификата req
]
default bits
=
1024 encrypt key
= yes distinguished name
= req dn x509 extensions
= cert type prompt
= no
[ req dn
]
# country (2 letter code)
C=RU
#
State or Province Name (full name)
ST=Moscow
Упражнение 2.6. Создание защищенного сервиса на основе МТА Sendmail
ΙΙΙΙΙ···
177
Задания
Описания действий
#
Locality Name (eg. city)
L=Moscow
#
Organization (eg. company)
0=S0FTLINE
#
Organizational Unit Name (eg. section)
OU=IMAP server
#
Common Name
(*.
example.com is also possible)
CN=srv.linux.lab
#
E-mail contact emailAddress=root01inux.lab
[ cert type
] nsCertType
= Здесь необходимо указать значения, аналогичные пункту 3 первого задания, параметр OU оставить без изменений. Создать сертификат, который будет использоваться для защищенных подключений IMAP:
# /usr/share/doc/dovecot-
1
.
0
.
7
/examples/mkcert.sh
aOOl logout
#
BYE Logging out
7. Отредактировать конфигурационный файл /etc/ dovecot.conf следующим образом:
• Сохранить исходную конфигурацию данного файла.
• Добавить опсиание используемых протоколов и прослушиваемый 1Р-адрес:
protocols
= imaps listen
= Указать параметры используемого сертификата disable
= no ssl cert file
=
/etc/pki/dovecot/certs/dovecot.pem ssl key file
= Указать месторасположение почтовых ящиков пользователей location
= Указать параметры журналирования:
log path
=
/var/log/dovecot.log info log path
=
/var/log/dovecot-inf о
.log
• Добавить исправление известнх ошибок почтовых
Климентов:
imap client workarounds
= outlook-idle
8. Запустить демон dovecot и добавить его в автоза­
пуск на 3 и 5 уровнях выполнения, используя команды service и chkconfig.
9. Убедится, что на указанном адресе демон dovecot ожидает входящих соединений openssl s client -connect 172.16.0.2:993
#
OK Dovecot ready.

178
■■■■Illi
Практические работы
Задания
Описания действий
3. Настроить на виртуальной машине client.linux.
lab почтовый клиент
Mozilla Thunderbird.
1. Выполнить вход в сисиему на виртуальной машине
client.linux.lab под пользователем root.
2. Установить почтовый клиент Mozilla Thunderbird и настроить в нем два профиля IMAP для двух пользователей andrew и kirill. Настройка осуществляется с учетом использования S S L при отправке и получении почты. Отправить несколько писем между данными пользователями и убедиться, что почтовые сообщения доставляются адресатам.
Упражнение 2 .
7.
Организация
ф айлообменного сервиса FTP
Сценарий: Вы занимаетесь виртуальным веб-хостингом. Сервер, на котором находятся ресурсы ваших клиентов, располагается на удаленной площадке. Для обновления веб контента, расположенного на вашем сервере, клиенты подключаются к серверу используя стандартный протокол FTP. Естественно, что при этом все учетные данные и файлы передаются в открытом виде, что крайне небезопасно. Кроме того, у каждого клиента должен быть свой логин и пароль, который предоставляет доступна веб-сервер в соответствующий корневой каталог. Исходя из этого, вы решили организовать защищенную передачу данных FT P между вашим сервером и клиентами, а также настроить несколько виртуальных пользователей, которые будут использоваться вашими клиентами для управления веб-контентом. В данном упражнении вам предстоит реализовать задуманное на основе ПО VS-
FTPD . В качестве FT P сервера будет выступать виртуальная машина srv.linux.lab, а клиентом будет являться виртуальная машина client.linux.lab.
Задания
Описания действий
1. Настроить сервер на виртуальной машине
srv.linux.lab.
1. Выполнить вход в сисиему на виртуальной машине
srv.linux.lab под пользователем root.
2. Установить пакеты vsftpd и compat-db.
3. Сгенерировать сертификат (vsftpd.р е т), который будет использоваться для шифрования FTP соединени. Генерация сертификата выполняется аналогичным образом, как было показано в упражнении 2.6.
4. Настроить модуль аутентификации /etc/pam.
d/vsftpd на использование файла vsftpd_users для проверки учетных данных пользователей:
Упражнение 2.7. Организация файлообменного сервиса FTP
IIIIII··
179
Задания
Описания действий
session optional pam keyinit.so force revoke auth required
/lib/security/pam userdb.so db=/etc/vsftpd/vsftpd users account required
/lib/security/pam userdb.so db=/etc/vsftpd/vsftpd users
5. Создать виртуального пользователя virtualftp, в домашнем каталоге которого (/var/www/html/vir- tual) будут находиться каталоги клиентов. В качестве командного интерпретатора для данного пользователя задать значние /sbin/nologin.
6. Создать текстовый файл (/etc/vsftpd/vsftpd_us- ers.plain), содержащий учетные записи виртуальных пользователей В данном файле создано две учетные записи, логин и пароль каждой записи должен находистя на двух соседних строках. Создать хешированный файл данных, содержащий учетные записи виртуальных пользователей:
#
db42 load -Т -t hash -f /etc/vsftpd/vsftpd users,
plain /etc/vsftpd/vsftpd_users.db
#
chmod 600 /etc/vsftpd/vsftpd users.db /etc/
vsftpd/vsftpd_users.plain
8. Создать необходимые каталоги для клиентов.
Имена данных катлогов должны совпадать с регисрационными именами виртуальных пользователей. Настроить доступна запись данных для виртуальных пользователей, стем, чтобы они могли загружать веб­
контент в свои каталоги:
# chown -R virtualftp
:
virtualftp /var/www/html/
virtual/
#
chmod -R 644 /var/www/html/virtual/
#
find /var/www/html/virtual -type d -exec chmod
755
{} \ ;
10. Настроить конфигурационный файл /etc/vsftpd/ vsftp d.conf следующим образом:
• Разрешить доступ анонимными локальным пользователям enable=YES local enable=YES

180
■■■■Illi
Практические работы
Задания
Описания действий
• Настроить корневой каталог для виртуальных пользователей local user=YES user sub token=$USER
local Настроить права доступа и список доступа для локальных пользователей enable=YES local umask=022 userlist Настроить учетную запись, которая будет использоваться вирутальными пользователями для доступа к своим каталогам enable=YES
guest Настроить права доступа для анонимных и виртуальных пользователей umask=0022 anon upload enable=YES anon mkdir write enable=YES anon other write Настроить системные параметры FTP, а также параметры S S L подключений service name=vsftpd listen=YES
ssl enable=YES
allow anon ssl=YES
force local data ssl=N0
force local logins ssl=N0
ssl_tlsvl=YES
ssl sslv2=N0
ssl sslv3=N0
rsa cert file=/etc/pki/tls/certs/vsftpd.pem
11. Убедитьтся, что демон vsftpd ожидает защищенных соединений на 21 порте.
12. Запустить демон vsftpd и добавить его в автозапуск на 3 и 5 уровнях выполнения, используя команды service и chkconfig.
2. Проверить подключение FTP клиента, загрузку файлов на сервер и шифрацию данных FTP соединения, используя виртуальную машину client.linux.lab.
1. Выполнить вход в сисиему на виртуальной машине
client.linux.lab под пользователем root.
2. Установить пакет wiresahrk-gnome.
3. В графической оболочке G N O M E запустить анализатор пакетов W ireshark (Application -> Inter­
net ->Wireshark Network Analizer) на прослушивание сетевого интерфейса eth1.
4. Настроить клиента Iftp на использование S S L подключений:
Упражнение 2.8. Синхронизации времени
ΙΙΙΙΙ···
181
Задания
Описания действий
set ftp:ssl-force yes set у no set ftp:ssl-protect-data yes
5. Подключиться, используя клиент Iftp к серверу
srv.linux.lab и загрузить произвольный файл на FTP сервер.
6.Проанализировать информацию, используя анализатор пакетов Wireshark, и убедиться, что
FTP соединение шифруется и учетные данные пользователей не передаются в открытом виде.
Упражнение 2.8. Синхронизации времени Сценарий В локальной сети, администратором которой вы являетесь, при- сутсвует система мониторинга системных событий, связанных с производительностью, и событий, связанных с информационной безопасностью. Данная система формирует отчеты на основании собранных статистических данных. На основании этих отчетов вы периодически оцениваете производительность различных сетевых сервисов, компаненты которых физически развернуты на нескольких серверах. Для того чтобы сделать временную оценку загруженности какого-либо сервиса, вам необходимо, чтобы рассогласование времени на серверах, задействованных в данных сервисах, было минимальным. Для этого вы решили организовать локальный сервер времени ΝΤΡ, с которым будут синхронизироваться все остальные сервера вашей локальной сети. В качестве локального Ν Τ Ρ сервера будет выступать виртуальная машина srv.
linux.lab, а сервером, который будет выполнять синхронизацию времени, будет являться виртуальная машина client.linux.lab.
Задания
Описания действий
1. Настроить NTP сервер на виртуальной машине srv.
linux.lab.
1. Выполнить вход в сисиему на виртуальной машине srv.
linux.lab под пользователем root.
2. Установить пакет ntp.
3. Насроить конфигурационный файл /etc/ntp.conf следу­
ющим образом:
• Запретить подключение по протколу NTP для всех явно неуказанных хостов:
restrict default Указать хосты, которым будет разрешено синхронизировать время 172.16.0.0 mask 255.255.255.0 nomodify notrap nopeer restrict 127.0.0.1 restrict -6 ::1

182
■■■■Illi
Практические работы
З ада ни я
О писания действий Определить сервер, с которым будет выполняться синхронизация локального времени 127.127.1.0
fudge
127.127.1.0 stratum Настроить системные параметры демона ntpd:
driftfile /var/lib/ntp/drift logfile
/var/log/ntp.log
4. Запустить демон ntpd и добавить его в автозапуск на
3 и 5 уровнях выполнения, используя команды service и
chkconfig.
5. Проверить синхронизацию времени с локальными часами, используя команду ntpq -р.
2. Настроить клиента NTP на вируталь- ной машине client,
linux.lab и проверить синхронизацию времени. Выполнить вход в сисиему на вирутальной машине
client.linux.lab под пользователем root.
2. Установить пакет ntp.
3. Насроить конфигурационный файл /etc/ntp.conf следу­
ющим образом:
• Указать сервер, с которым будет выполняться синхронизация времени Определить сервер, с которым будет выполняться синхронизация времени в случае недоступности хоста srv.
linux.lab:
server 127.127.1.0
fudge
127.127.1.0 stratum Настроить системные параметры демона ntpd:
driftfile /var/lib/ntp/drift logfile
/var/log/ntp.log
4. Выполнить ручную синхронизацию времени с сервером времени srv.linux.lab, используя утилиту ntpdate с ключами -4 - d и —и.
5. Запустить демон ntpd и добавить его в автозапуск на
3 и 5 уровнях выполнения, используя команды service и
chkconfig.
6. Проверить корректность синхронизации времени с сервером srv.linux.lab, используя команду ntpq:
remote refid st t when poll reach delay offset jitter
*srv.linux.lab LOCAL(0)11 u 26 64 377 0.378 3.978 2.957
LOCAL
(
0
)
.LOCL. 10 1 16 64 377 0.000 0.000 Если синхронизация времени настроена корректно, значение полей delay и offset должын быть больше нуля, а значение поляне должно превышать 100 для локального сервера времени.
Упражнение 3.1. Анализ работы механизма SELinux
ΙΙΙΙΙ···
183
Самостоятельные упражнения и
дополнительные вопросы
1. Настроить динамическое обновление DNS записей с использованием цифровых подписей TSIG. В процессе выполнения данного задания рекомендуется пользоваться справочной документацией, находящейся в файле
/u sr/sh a re/d o c/b in d -< B ep c^ > /a rm /B v 9 A R M .h tm l, просмотреть которую можно при помощи текстового веб-браузера lynx.
2. Настроить МТА Sendmail на запрет отправки почты определенному пользователю, используя тблицу access.db. В процессе выполнения данного задания рекомендуется пользоваться справочной документацией, находящейся в файле /usr/share/sendm ail-cf/R E A D M E .
3. Настроить ограничение на подключение к FT P серверу для произвольно выбранного I P -адреса, используя при этом возможности демона xinetd. В процессе выполнения данного задания рекомендуется пользоваться примерной конфигурацией, находящейся в файле /u sr/sh a re/d o c/v sftp d -
2.0.5/EXAM PLE/IN T E R N E T S IT E .
4. Опишите общую структуру файла формата LDIF. Какие данные можно хранить в каталоге LDAP ив каком виде они должны быть представлены в данном файле. Какие типы виртуальных хостов можно организовать на веб-сервере Apache и чем они отличаются?

184
■■■■Illi
Практические работы
Практическая работа 3.
Организация информационной
безопасности ОС Linux
Цель
Цель работы - получение практических навыков организации информационной безопасности ОС Linux, таких как:
• настройка политики настройка ограничений на доступ к сетевым сервисам при помощи демона
xinetd;
• настройка межсетевого экрана на оснвое iptables.
Упражнение 3
1. Анализ работы механизма
SELinux
Сценарий: В целях обеспечения большей информационной безопасности вы решили орагнизовать на серверах, находящихся в демилитаризованной зоне, механизм SELinux. Вы не знаете, как включение данного механизма отразится на работе критичных сетевых сервисов, таких как веб-сервис и почтовый сервис. В связи с чем, вы решили для начала активировать механизм SELinux в тестовом режиме и проанализировать его работу при помощи утилиты Setroubleshoot
Browser. Анализ работыт мехагнизма SELinux будет выполняться на вирутальнйо машине srv.linux.lab.
Задания
Описания действий
1. Настроить механизм
SELinux на виртуальной машине srv.linux.lab.
1. Установить пакет audit и запустить демон auditd, используя команды chkconfig и service.
2. Проверить текущий режим работ SELinux, используя команду sestatus и активировать режим permissive в конфигуарционном файле /etc/sysconfig/selinux.
3. Выполнить перезагрузку системы. Выполнить повторный вход в сисиему, как пользователь root.
5. Проверить текущий режим работы SELinux, используя команду sestatus.
2. Проанализировать работу механизма S E ­
Linux, используя утилиту
Setroubleshoot Browser.
1. Установить пакет setroubleshoot и policycoreutils-
gui.
Упражнение 3.2. Настройка ограничений на подключение к Telnet
IIIIIII
Задания
Описания действий
2. Запустить утилиту SEIinux troubleshooter Brow s­
er, используя команду s e a le r t-b (в графическом режиме. Вменю программы SEIinux troubleshooter
Browser открыть вкладку Scan Logfile, указать путь к файлу /var/log/audit/audit.log и проанализировать системные сообщения, вязанные с нарушением политики SELinux - Targeted. Необходимо проанализировать следующие параметры событий:
• Категория события (C ategory)____________ ;
• Общая информация о событии (Sum m ary)_______
• Рекомендации по изменению политики доступа (Al­
lowing A c c e s s ) _________________________ .
Упражнение 3.2. Настройка ограничений на
подклю чение к Telnet
Сценарий: Вы хотите организовать в вашей локальной сети сервис Telnet, причем, доступ к данному сервису необходимо предоставить только для определенных хостов. В данном упражнении вам предстоит реализовать задуманное на основе сервисов xinetd и iptables. В качестве сервера Telnet используется виру- тальная машина srv.linux.lab, а в качестве Telnet клиента используется вируталь- ная машина client.linux.lab.
Задания
Описания действий
1. Настроить сервис
Telnet на виртуальной машине srv.linux.lab
и ограничить сетевые подключения для указанных хостов.
1. Выполнить вход в сисиему на виртуальной машине
srv.linux.lab под пользователем root.
2. Установить пакет telnet-server.
3. Насроить конфигурационный файл /etc/xinetd.
d/telnet следующим образом telnet flags socket_type wait user server log_on_failure log_on_success disable only from
= REUSE
= stream
= no
= root
= /usr/sbin/in.telnetd
+= USERID HOST ATTEMPT
+= USERID DURATION TRAFFIC
= no
= <ІР-адрес>

186
■■■ιιιιι
Практические работы
Задания
Описания действий
Здесь в директиве only_from необходимо указать
ІР-адрес хоста, с которого будет разрешен доступ по протоколу Telnet. Вместо параметра <1Р-адрес> необходимо указать ІР-адрес вирутальной машины cli­
ent.linux.lab (Host-only).
4. Указать в файле /etc/xinetd.d/telnet параметры запуска сервера telnet в режиме DEBUG (report) и используемый журнальный файл (/var/log/telned.
log).
5. Вполнить повторное счтитывание конфигурационного файла демона xinetd.
2. Проверить сделанные ограничения, используя клиент Telnet.
1. Подключиться к виртуальной машине srv.linux.lab с виртуальной машины client.linux.lab, используя команду telnet.
2. Подключиться к серверу srv.linux.lab, используя команду telnet с локального ІР-адреса 127.0.0.1 виртуальной машины srv.linux.lab.
3. Проверить записи в журнальном файле /var/log/
telned.log. Сделать соответствующие выводы:
Упражнение 3.3. Организация межсетевого
экрана
Сценарий: Один из ваших серверов, на котором функционируют сервисы
DNS, RSYNC, FT P и SSH, находится в демилитаризованной зоне (D M Z). Вам поставлена задача настроить межсетевой экран между периметром сети DM Z и внутренним периметром ЛВС. Межсетевой экран строится на основе IPTables и должен предоставлять доступ только к указанным сервисам. В качестве межсетевого экрана выступает виртуальная машина srv.linux.lab. В качестве клиента, находящегося во внутреннем периметре ЛВС, выступает виртуальная машина
client .linux .lab.
Упражнение 3.3. Организация межсетевого экрана
ΙΙΙΙΙ···
187
За дани я
О писания действий. Определить открытые сетевые порты на виртуальной машине srv. linux.lab.
1. Выполнить вход в сисиему на виртуальной машине client.linux.lab под пользователем root.
2. Установить пакет nmap.
3. Выполнить сканирование портов виртуальной машины srv.linux.iab и определить открытые порты nmap 172.16.0.5
>
/tmp/open ports.1 4. Проанализировать файл и определить открытые порты. Настроить межсетевой экран на виртуальной машине srv.linux.lab.
1. Выполнить вход в сисиему на виртуальной машине srv.linux.lab под пользователем root.
2. Создать следующие правила Разрешить весь сетевой трафик для локального интерфейса Ιο:
#
iptables -A INPUT
- і lo
-j
ACCEPT
#
iptables -A OUTPUT -o lo
-j Определить политики обработки пакетов по умолчанию iptables --policy INPUT DROP
#
iptables --policy OUTPUT ACCEPT
#
iptables --policy FORWARD Разрешить сетевой трафик для всех исходящих соединений и уже установленных входящих соединений iptables -A OUTPUT -m state --state
NEW,ESTABLISHED,RELATED -j ACCEPT
# iptables -A INPUT -m state --state
ESTABLISHED,RELATED -j Разрешить ICM P протокол (ping, traceroute):
# iptables -A INPUT -i ethO -p icmp --icmp-type destination-unreachable -j ACCEPT
# iptables -A INPUT -i ethO -p icmp --icmp-type time-exceeded -j ACCEPT
# iptables -A INPUT -i ethO -p icmp --icmp-type echo-reply -j ACCEPT
# iptables -A INPUT -i ethO -p icmp --icmp-type echo-request -j Разрешить входящий сетевой трафик для сервисов
DNS, RSYNC, FTP и SSH:

iptables -A INPUT -p tcp -i ethO --dport 53
-j
ACCEPT
• iptables -A INPUT -p tcp -i ethO --dport 873
-j
ACCEPT
• iptables -A INPUT -p tcp -i ethO --dport 21
-j
ACCEPT
• iptables -A INPUT -p tcp -i ethO --dport 22
-j Запретить весь остальной трафик не попадающий под предыдущие правила iptables -A INPUT -j DROP
3. Просмотреть созданную политику, используя команду iptables -L и проверить, что настройки

188
■■■■Illi
Практические работы
Задания
Описания действий
сделаны согласно поставленной задаче. Сохранить текущие настройки межсетевого экрана, используя команду service, и убедиться в сделанных изменениях, просмотрев файл /etc/sysconfig/iptables
5. Выполнить команду очистки всех текущих политик
IPTables, просмотреть текущие настройки и отключить их iptables — policy INPUT ACCEPT
#
iptables -F
# iptables -L
6. Выполнить перзапуск сервиса IPTables и убедиться, что восстановились сохраненные ранее настройки service iptables restart
# iptables -L
3. Повторно определить открытые сетевые порты на виртуальной машине
srv.linux.lab.
1. Выполнить сканирование портов виртуальной машины srv.iinux.iab и определить открытые порты nmap 172.16.0.5 > /tmp/open ports.2 2. Проанализировать файл /tmp/open_ports.2 и сделать соответствующие выводы
Самостоятельные упражнения и
дополнительные вопросы
1. Настройте межсетевой экран IPTables на виртуальной машине srv.linux.lab на журналирование пакетов, принятых по протоколу SSH.
2. Выполните одну из рекомендаций утилиты SElinux troubleshooter B row s­
er и убедитесь, что события данного типа больше не возникают. Опишите общий алгоритм работы механизма SELinux.
4. Какой командой можно просмотреть текущие параметры политики SE-
Linux?
5. Настроить запуск демона dovecot с использованием xinetd и установить ограничение на количество одновременных соединений равное 2.
Упражнение 3.4. Организация контроля целостности файлов Ι Ι Ι Ι · · ·
189
Упражнение 3.4. Организация контроля
целостности файлов
Сценарий: Водном из филиалов вашей организации имеются незащищенные узлы, граничащие с публичной сетью Интернет и выполняющие роль пограничных маршрутизаторов. Вам поставлена задача организовать систему контроля изменений файлов. Данная система позволит администратору информационной безопасности определять попытки проникновения в систему, а также факты подмены критичных конфигурационных файлов.
В качестве основного системного ПО предлагается использовать локальную систему обнаружения вторжений AIDE.
Задания
Описания действий
1. Установить на сервере srv.linux.lab ПО AIDE.
1.
Выполнить вход в сисиему на виртуальной машине
srv.linux.lab под пользователем root.
2. Установить пакеты gcc, ncurses-devel, zlib, bison,
flex, curl.
3.
Скопировать no
FTP с виртуальной машины преподавателя архивы aide-0.14.tar.gz и mhash-
0.9.9.9.tar. bz2.
4.
Распаковать архив m hash-0.9.9.9.tar.bz2 во временый каталоги выполнить сборку библиотек
mhash из исходного кода, используя следующие команды ./configure --prefix=/usr; make; make Распаковать архив aid e-0 .14.tar во временный каталоги выполнить сборку ПО AIDE из исходного кода, используя следующие команды ./configure --prefix=/usr --with-zlib -
# make && make install.
2. Настроить проверку основных конфигурационных файлов средствами AIDE
1. Создать конфигурационный файл aide.conf, скопировав его образец из каталога doc (архив с исходным кодом) в файл /etc/aide.conf.
2.
Отредактировать файл aide.conf следующим образом Удалить все директивы
@ @ и Установить параметры базы данных AIDE:
database=file:/etc/aide.db database out=file:/etc/aide.db Определить правила сбора информации о файлах, добавив вконец файла /etc/aide.conf следующие строки p+u+g
/boot
All

190
■■■■Illi
Практические работы
Задания
Описания действий
3. Выполнить начальную инициализацию базы данных
AIDE:
#
aide -с /etc/aide.conf --init
#
aide -с /etc/aide.conf --update
#
mv /etc/aide.d b .new Сделать соответствующие выводы. Смоделировать подмену нескольких файлов и выполнить проверку зафиксированных изменений. Изменить права на любом файле из каталога /etc
2. Изменить файл /boot/grub/grub.conf, добавив дополнительный параметр загрузки ядра audit.
3. Запустить команду проверки изменений aide -с /etc/aide.conf -Сделать соответствующие выводы:
Упражнение 3.5. Организация VPN тунеля
Сценарий: Вам необходимо предоставить доступ к внутренней сети предприятия для нескольких внешних сотрудников. Для защиты передаваемых данных предлагается организовать и протестировать защищенный туннель поверх публичной сети. Для решения данной задачи вам необходимо развернуть V P N -сервер и протестировать подключение V P N -клиентом. В качестве V P N -сервера выступает вирутальная машина srv.linux.lab, V P N -клиентом является виртуальная машина .lab.

В качестве основного системного ПО предлагается использовать OpenVPN.
Задания
Описания действий
1. Установить на виртуальной машине srv.
linux.lab ПО OpenVPN.
1. Выполнить вход в сисиему на виртуальной машине
srv.linux.lab под пользователем root.
2. Установить пакет openvpn, используя менеджер пакетов yum.
2. Установить на виртуальной машине
client.linux.lab ПО
OpenVPN.
1. Выполнить вход в сисиему на виртуальной машине
client.linux.lab под пользователем root.
2. Установить пакет openvpn, используя менеджер пакетов yum.
Упражнение 3.5. Организация тунеля
M ill··
191
Задания
Описания действий
3. Настроить ПО
OpenVPN на виртуальных машинах srv.linux.lab и
client.linux.lab
1. Создать инфраструктуру PKI, выполнив следующие действия:
• Создать удостоверяющий центр сертификатов ср /usr/share/doc/openvpn/examples/easy-rsa/2 0
/etc/openvpn/easy-rsa/2 0
#
cd /etc/openvpn/easy-rsa/2 Отредактировать файл /etc/openvpn/easy-rsa/2.0/
vars следующим образом KEY SIZE=2048
export KEY_COUNTRY=RU
export KEY PROVINCE=NA
export KEY CITY=Moscow export KEY_ORG="SOFTLINE"
export KEY Выполнить следующие команды.
./vars
#.
/clean-all Создать сертификат для V P N -сервера < F Q DN-m^ VPN-cepBepa>
• Сгенерировать сертификат дял клиента
./build-key-server < F Q DN-m^ УРЫ-клиента>
• Сгененрировать параметры шифрования Diffie-Hell-
man
и создать ключ аутентификации
TLS:
# .
/build-dh
# cd keys/
#
openvpn --genkey --secret Создать катлог для хранения ключей и сертификатов и поместить в него нужные файлы mkdir -m 0700 /etc/openvpn/keys
# ср ca.crt ../../keys
# mv dh20 48.pem ta.key
<Имя
VPN-cepBepa>.crt
<Имя
VPN-cepBepa>.key ../../keys
2. Скопировать в каталог /etc/openvpn/keys на клиенте следующие файлы:
. key
. crt t a key ca crt
3. Создать конфигурационный файл server.conf для
V P N -сервера и поместить его в каталог /etc/openvpn:
## server.conf local
port 1194 proto udp dev tun daemon

192
■■■■Illi
Практические работы
Задания
Описания действий
server 10.0.0.0 255.255.255.0 max-clients 25 са
/etc/openvpn/keys/ca.crt cert /etc/openvpn/keys/VPN-cepBepa>.
crt key /etc/openvpn/keys/VPN-cepBepa>.key dh /etc/openvpn/keys/dhl024.pem tls-auth /etc/openvpn/keys/ta.key 0
cipher BF-CBC
comp-lzo keepalive 10 120
log-append /var/log/openvpn.log status /var/log/openvpn-status.log ifconfig-pool-persist /etc/openvpn/ipp.txt mute 20
verb 4 4. Создать конфигурационный файл client.ovpn для
V P N -клиента и поместить его в каталог /etc/openvpn/
config:
## client.conf client pull dev tun proto udp remote 1194 ca /etc/openvpn/keys/ca.crt cert /etc/openvpn/keys/СИмя VPN-cepBepa>.crt key /etc/openvpn/keys/VPN-cepBepa>.key tls-auth /etc/openvpn/keys/ta.key 1
cipher BF-CBC
comp-lzo verb 4
mute 20
ns-cert-type server
5. Запустить процесс OpenVPN на сервере openvpn /etc/openvpn/server.conf
4. Выполните тестовое подключение V P N - клиентом к V P N -серверу



Поделитесь с Вашими друзьями:

1   ...   5   6   7   8   9   10   11   12   13


База данных защищена авторским правом ©nethash.ru 2017
обратиться к администрации

войти | регистрация
    Главная страница


загрузить материал