OpenVPN server. Пример настройки.
-
Если еще нету, устанавливаем пакет "OpenVPN Client Export Utility"
-
Экспортируем настройки
Если у клиента уже установлен OpenVPN, можно скачать только конфиг.
Я предпочитаю Inline Configurations: Others
Вся конфигурация VPN клиента и необходимые сертификаты в одном файле.
Для использования этой конфигурации с windows openvpn клиентом его достаточно перенести в папку "C:\Program Files\OpenVPN\config"
Экспортируем - это значит что, мы взяли одну usb флешку, и сохранили на неё конфиг впн одного клиента.
взяли вторую флешку. сохранили на нее конфиг впн другого клиента.
одна флешка - один клиент.
и еще в архиве под паролем
чтобы случайно не потерять в бесконтрольное путешествие весьма и весьма секретную информацию.
-
Не забываем разрешить трфик. Firewall.
1. на wan интерфейсе разрешить входящие соединения к службе OpenVPN server.
2. собственно трафик внутри впн тунеля.
2.1 трафик TCP/UDP - для полезных данных.
2.2 трафик ICMP - для пингов.
-
все выше написанное было проделано "сидя" за компом в головном офисе.
на плане он обозначен как 192.168.10.33.пользуясь случаем заглянем на сервер 192.168.10.2.
-
Настраиваем удаленный доступ на ноутбуке.
на ноутбуке у нас windows xp. sp3 32 bit.
скачиваем соответствующий openvpn
устанавливаем.Теперь мы берем соответствующую usb флешку, подключаем к мобильному клиенту.
достаем из запароленного архива и переносим конфиг клиента, инлайн, (файл с настройками) в
"C:\Program Files\OpenVPN\config"на слайде 203 видно что после установки впн соединения добавилось два маршрута.
на слайде 204 видно что появилась связь с сервером 192.168.10.2
-
Немного о безопасности.
предположим у нас был сотрудник с ноутбуком, в поездке ноутбук украли. Сотрудник ответственно отнесся и не забыл нас известить. У нас конечно всем сертификатам даются разумные имена, по которым мы легко опознаем кому какой выдан. Или ведется тетрадочка-табличка реестр соответствия.
Мы заглянули в такую тетрадочку и видим что утерянный сертификат выпущен нашим СА и называется epic-fail.Мы "идем" в pfsense System: Certificate Manager
Внимание! НЕ УДАЛЯЕМ этот скомпрометированный сертификат. он должен остаться у нас.
Открываем раздел "отзыв плохих сертификатов", System: Certificate Revocation List Manager
Создаем список отзыва. (у каждого корневого СА сертификата свой список отзыва.)
Создаем, открываем. добавляем в него сертификат, и указываем причину отзыва.Далее идем в настройки впн сервера, и проверяем что он, впн сервер. сверяется с этим списком отозванных сертификатов.
при необходимости сохраняем настройко впн сервера и перезапускаем службу
-
Еще о безопасности.
Предположим сотрудник с ноутбуком пошел в отпуск. И нам нужно временно заблокировать доступ.
Можно отозвать сертификат, добавить его в сertificate Revocation List, а потом убрать. но идеологически более правильно временные запреты реализовать всего одной галкой в настройках впн - Client Specific Override.
Block this client connection based on its common name. .
-
Настройка соединения pfsense-pfsense такая же простая как и pfsense-openvpn хотя и несколько отличается от.
Эти действия делаются на pfsense в удаленном офисе.
Мы воспользовались "OpenVPN Client Export Utility" и выгрузили себе Inline Configurations
из него нам нужно извлечь.- открытый ключ СА
- открытый ключ именного сертификата
- закрытый, приватный, ключ именного сертификата.
для этого любым текстовым редактором открываем его на просмотр.
находим текст между тэгами <ca><cert>и <key>Открываем на 192.168.20.1 (pfsense удаленного офиса) Certificate Authority Manager и добавляем новый СА сертификат.
во избежание путаницы, названием задаем такое же как у CA сертификата в головном офисе - "My-root-CA".
метод - импорт. из текстового редактора переносим и вставляем только открытую часть. (между <ca></ca>)Открываем Certificate Manager и импортируем сертификат.
во избежание путаницы, названием задаем такое же как у сертификата в головном офисе - "remote-network".
метод - импорт. из текстового редактора по одной переносим и вставляем, обе части. <cert>и <key>соответственно.
</key></cert></key></cert></ca> -
Настраиваем OpenVPN клиента.
В головном офисе сервер, подключаемся из удаленного в режиме клиента. Его и настраиваем.
прописываем IP и порт сервера.
TLS Authentication копируем с VPN сервера.Выбираем Peer Certificate Authority, Client Certificate,
Выбираем такой же как на сервере Encryption algorithm
Так же как и на сервере ставим галочку Compression.
Остальные настройки по умолчанию, не заполняем.
При установлении соединения клиент получит их с сервера.
-
После нажатия кнопки save параметры применяются и сразу же устанавливается соединение.
OpenVPN клиент получает настройки от сервера. ip адрес тунеля и маршрут в сеть головного офиса.Создаем разрешающее правило firewall
Проверяем что есть связь с сервером в головном офисе. Открываем страничку, пингуем.
-
Повторюсь еще раз.
Для доступа из сети за сервером в сеть за клиентом на сервере в fw на LAN необходимо создать явное разрешающее правило вида :
* LAN net * remote_net * * *
Поставить его самым первым (в зав-ти от условий, конечно). Можно и во Floating rules впихнуть вместо lan.
Это особенность 2.1.х и новее.
-
Повторюсь еще раз.
Для доступа из сети за сервером в сеть за клиентом на сервере в fw
Я же делал скрины с firewall. Маленькие?
-
Скрины правил fw на WAN, OpenVPN присутствуют.
Скрина правил fw на LAN - нет. -
Как правильно настроить firewall и Client чтобы при подключении удалённый рабочий получил доступ к нужному vlan.
-
Как правильно настроить firewall и Client чтобы при подключении удалённый рабочий получил доступ к нужному vlan.
Молча.
Телепаты в отпуске. -
Как правильно настроить firewall и Client чтобы при подключении удалённый рабочий получил доступ к нужному vlan.
Молча.
Телепаты в отпуске.Ок. Мой косяк. Описываю ситуацию.
Настроил сервак и клиента по данной инструкции. Клиент при подключии получает ИП из Tunnelnetwork, там я указал 10.0.0.0/24
В Local ipv4 network указал нужный vlan 192.168.90.0/24, но клиент не может пингануть ни один сервак из vlan90. т.к. это тестовая сеть, то всем всё разрешено -
В Local ipv4 network указал нужный vlan 192.168.90.0/24, но клиент не может пингануть ни один сервак из vlan90. т.к. это тестовая сеть, то всем всё разрешено
1. Поставьте шлюзом на всех машинах во vlan90 адрес pf.
2. Скрин правил fw на OpenVPN
3. route print с клиента при поднятом туннеле. -
В Local ipv4 network указал нужный vlan 192.168.90.0/24, но клиент не может пингануть ни один сервак из vlan90. т.к. это тестовая сеть, то всем всё разрешено
1. Поставьте шлюзом на всех машинах во vlan90 адрес pf.
2. Скрин правил fw на OpenVPN
3. route print с клиента при поднятом туннеле.сделал новый vlan…соединение без проблем пошло.