Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Основы администрирования и системного программирования в операционной системе Linux. В 2 частях. Ч.2. Учебное пособие.pdf
X
- •ВВЕДЕНИЕ
- •1. АДМИНИСТРИРОВАНИЕ СЕРВИСА LDAP
- •1.1. ПРОТОКОЛ LDAP
- •1.2. БАЗОВАЯ НАСТРОЙКА 389 DIRECTORY SERVER
- •1.3. РЕАЛИЗАЦИЯ РЕШЕНИЯ НА ОСНОВЕ FREEIPA
- •2. АДМИНИСТРИРОВАНИЕ СЕТЕВЫХ СЕРВИСОВСОВ МЕСТНОГО ИСПОЛЬЗОВАНИЯ ДАННЫХ
- •2.1. СЕТЕВАЯ ФАЙЛОВАЯ СИСТЕМА NFS
- •2.2. ФАЙЛОВАЯ СИСТЕМА SMB
- •2.3. РАЗВЁРТЫВАНИЕ И КОНФИГУРИРОВАНИЕ СЕТИ
- •3. АДМИНИСТРИРОВАНИЕ СЕРВИСА OPENVPN
- •3.1. ТЕХНОЛОГИЯ OPENVPN
- •3.2. ПРИНЦИП РАБОТЫ OPENVPN
- •3.3. РАЗВЁРТЫВАНИЕ И КОНФИГУРИРОВАНИЕ СЕТИ
- •4. АДМИНИСТРИРОВАНИЕ СИСТЕМЫ ИНСПЕКЦИИ ТРАФИКА DNS
- •4.1. ТИПОВЫЕ ОПЕРАЦИИ DNS
- •4.2. СПОСОБЫШИФРОВАНИЯ DNS-ТРАФИКА
- •4.3. ОТКРЫТЫЕ DNS-СЕРВЕРЫ
- •4.4. НАСТРОЙКА ZEEK
- •4.5. НАСТРОЙКА СТЕКА ELK
- •ЗАКЛЮЧЕНИЕ
- •СПИСОК ЛИТЕРАТУРЫ

3.1.2.3. Алгоритм Диффи-Хелмана
Алгоритм
Диффи-Хелмана (Diffie-Hellman) необходим для реализации
одноименного протокола, позволяющего использовать небезопасный канал для
получения общего секретного ключа. Этот ключ будет в дальнейшем использоваться для защищённого обмена данными с помощью алгоритмов симметричного шифрования.
В применении к OpenVPN алгоритм Диффи-Хелмана нужен для обеспечения защиты трафика от расшифровки, если ключи были похищены. Здесь
имеется в виду тот трафик, который был записан и сохранен ещё до похищения
ключей.
3.1.2.4. Клиент и сервер OpenVPN
В сети OpenVPN-клиент необходимо установить на все узлы, которым
необходим защищённый канал передачи данных с сервером OpenVPN. При необходимости в OpenVPN возможна защищённая передача данных между клиентами OpenVPN, а не только между клиентами и сервером OpenVPN.
В свою очередь, сервер OpenVPN создаёт туннель внутри незащищённой
сети, например, Интернета. Этот туннель обеспечивает безопасный зашифрованный трафик между узлами-участниками обмена данными в сети OpenVPN.
3.2. ПРИНЦИП РАБОТЫ OPENVPN
Сервер доступа по умолчанию работает в режиме маршрутизации уровня 3, где он по большей части функционирует как маршрутизатор. Вы подключаетесь к нему с помощью нашего клиентского программного обеспечения
OpenVPN, и трафик, предназначенный для определённых IP-адресов, может
маршрутизироваться через туннель VPN. Например, разрешить 192.168.70.0/24,
но оставить все остальные подсети и IP-адреса на стороне клиента. Или вы можете перенаправить весь интернет-трафик от VPN-клиента через VPN-туннель и
через VPN-сервер. Дело в том, что вы контролируете, какой трафик проходит
через VPN-туннель, а какой нет.
Сервер доступа также может работать в режиме моста второго уровня,
где он по большей части работает как сетевой коммутатор или концентратор.
При подключении к нему с помощью нашего клиентского программного обес-
41

печения OpenVPN, и ваш клиентский компьютер подключается к сети, в которой находится сервер доступа. Он соединяет вас напрямую, так сказать. Тогда у
вас практически нет контроля над тем, какой трафик проходит через VPNтуннель. Имеется возможность включить или отключить отправку трафика, направленного в Интернет, от VPN-клиента через VPN-туннель, но это всё, что у
вас есть над трафиком, который здесь проходит. Это также означает, что широковещательный трафик сможет беспрепятственно проходить через ссылку. Для
некоторого более старого устаревшего программного обеспечения это может
быть необходимо, но это также довольно уродливо в том смысле, что если у
вас, например, подключено 100 клиентов VPN, и один клиент VPN отправляет
1 мегабайт широковещательного трафика через туннель VPN, который затем
ретранслируется сервером доступа другим 99 клиентам VPN. Это сразу много
данных. По этим причинам настоятельно рекомендуется придерживаться режима уровня 3 по умолчанию.
3.3. РАЗВЁРТЫВАНИЕ И КОНФИГУРИРОВАНИЕ СЕТИ
3.3.1. СОЗДАНИЕ ТОПОЛОГИИ
Для имитации физической сети использована виртуальная машина. Топология сети была реализована на основе виртуальной машины Eve-NG. Получившаяся топология представлена на рис. 3.1 и полностью отражает все аспекты требуемой сети. Все дальнейшие манипуляции будут проводиться над устройствами сети, реализованной в виртуальной машине
.
42
Рис. 3.1. Реализация топологии в виртуальной машине Eve-NG

Рис. 3.2. Настройка IP-адреса на сервере Linux
3.3.2. НАСТРОЙКА СЕРВЕРОВ
Добавим в файл /etc/network/interfaces следующие параметры: IP-адрес
сетевой карты, маску подсети, адрес шлюза, DNS-сервер, адрес широковещательной рассылки. Настройка параметров на серверах представлена на рис. 3.2.
3.3.3. НАСТРОЙКА КЛИЕНТОВ
В качестве клиентов были выбраны ПК с операционной системой Ubuntu
16.04. IP-адрес, который настроен на маршрутизаторе R4, настроен статически.
Настройки клиентов приведены на рис. 3.3.
3.3.4. НАСТРОЙКА МАРШРУТИЗАТОРОВ
Настроим интерфейсы на R1.
Router>en
Router#conf t
Router(config)# interface Ethernet0/1
Router(config-if)# ip address 10.0.0.1 255.255.255.0
Затем посмотрим на результат (рис. 3.4).
43

Рис. 3.3. IP-адресация на клиенте Client
Рис. 3.4. Конфигурация интерфейсов на R1
Настроим NAT:
Router(config)#ip nat inside source list 10 interface Ethernet0/0 overload
Router(config)#ip nat inside source static tcp 10.0.0.6 443 192.168.159.131
443 extendable
Router(config)#access-list 10 permit 10.0.0.0 0.0.0.255
Router(config)# interface Ethernet0/1
Router(config-if)# ip nat inside
Router(config)# interface Ethernet0/0
Router(config-if)# ip nat outside
Настроим интерфейсы на R4.
Router>en
Router#conf t
44
Router(config)# interface Ethernet0/1
Router(config-if)# ip address 20.0.0.3 255.255.255.0

Рис. 3.5. Конфигурация интерфейсов на R4
Рис. 3.6. Установка OpenVPN
Рис. 3.7. Проверка версии OpenVPN
Затем посмотрим на результат (рис. 3.5).
Настроим NAT:
Router(config)# ip nat inside source list 10 interface Ethernet0/0 overload
Router(config)#access-list 10 permit 20.0.0.0 0.0.0.255
Router(config)# interface Ethernet0/1
Router(config-if)# ip nat inside
Router(config)# interface Ethernet0/0
Router(config-if)# ip nat outside
3.3.5. ПОДГОТОВКА СЕРВЕРА OPENVPN
Сначала установим OpenVPN (рис. 3.6).
С помощью команды проверим установленную версию (рис. 3.7):
openvpn –version
45

Рис. 3.8. Созданная директория
Рис. 3.9. Результат редактирования переменных
Создание директории центра сертификации (рис. 3.8).
Настройка переменных центра сертификации (рис. 3.9).
Создание центра сертификации (рис. 3.10).
Создание сертификата, ключа и файлов шифрования для сервера
(рис. 3.11).
Затем посмотрим процесс создания ключей (рис. 3.12).
Создание подписи HMAC:
openvpn --genkey --secret keys/ta.key
Создание сертификата и пары ключей для клиента (рис. 3.13).
46
Рис. 3.10. Результат создания центра сертификации

Рис. 3.11. Результат создания сертификата
Рис. 3.12. Создание ключей протокола Диффи-Хеллмана
47

Рис. 3.13. Создание сертификата и пары ключей для клиента
3.3.6. НАСТРОЙКА СЕРВИСА OPENVPN
Копирование файлов в директорию OpenVPN:
cd ~/openvpn-ca/keys
cp ca.crt ca.key server.crt server.key ta.key dh2048.pem /etc/openvpn
Скопируем и разархивируем файл-пример конфигурации OpenVPN в
конфигурационную директорию для дальнейшей настройки:
gunzip –c/usr/share/doc/openvpn/examples/sample-configfiles/server.conf.gz |
tee /etc/openvpn/server.conf
48

Рис. 3.14. Секция настройки HMAC
Рис. 3.15. Выбор шифра AES-128-CBC
Рис. 3.16. Настройка порта 443
Рис. 3.17. Настройка протокола TCP
Настройка конфигурационного файла сервера OpenVPN.
Настройка использования подписи HMAC на рис. 3.14.
Настройка шифрования (рис. 3.15).
Настройка порта представлена на рис. 3.16.
Настройка протокола представлена на рис. 3.17.
3.3.7. НАСТРОЙКА СЕТЕВОЙ КОНФИГУРАЦИИ СЕРВЕРА И ЗАПУСК СЕРВЕРА
Настройка пересылки пакетов между интерфейсами (рис. 3.18).
Рис. 3.18. Разрешаем перенаправления трафика
49

Рис. 3.19. Сервер активен
Открытие порта – разрешить трафик tcp для порта 443:
ufw allow 443/tcp
ufw allow OpenSSH
Запуск OpenVPN на сервере:
systemctl start openvpn@server
Проверка статуса работы сервера (рис. 3.19).
3.3.8. СОЗДАНИЕ ФАЙЛА КОНФИГУРАЦИИ ДЛЯ КЛИЕНТОВ
Создание конфигурации с помощью следующей команды:
cp/usr/share/doc/openvpn/examples/sample-config-files/client.conf ~/client-
configs/base.conf
Редактирование базовой конфигурации для использования как конфигурации клиента (рис. 3.20).
50
Рис. 3.20. Выбор протокола и порта
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
