Глава 4 Виртуальные частные сети



В этой главе мы рассмотрим:
- Создание туннеля IPSec VPN
- Конфигурирование сервиса L2TP VPN
- Конфигурирование сервиса OpenVPN
- Конфигурирование сервиса PPTP VPN

Введение
Виртуальные частные сети (VPN - virtual private networking) - ключевой камень современных компьютерных систем. VPN соединения позволяют безопасное соединение удалённых пользователей с сетями и доступ к ресурсам, таким образом, словно они соединяются локально. Как и во всяких крупных делах, существует целый набор сервисов VPN, и pfSense включает четыре наиболее популярных реализации VPN. OpenVPN становится практически стандартом протокола VPN, однако следует учитывать, что вам придётся использовать дополнительное ПО для любого клиента Microsoft (поскольку поддержка OpenVPN не включена в стандартную комплектацию Windows). IPsec является более сложной, однако весьма популярной реализацией VPN. Сервисы PPTP и L2TP зачастую заменяют указанными альтернативами, но они до сих пор повсеместно распространены и в большинстве случаев их поддержка интегрирована в популярные операционные системы.
В этой главе описывается, как настроить любой (или одновременно все) сервисы pfSense реализующие VPN - IPsec, L2TP, OpenVPN и PPTP.

Создание туннеля IPsec VPN
Этот рецепт описывает как конфигурируется pfSense дл установки VPN линка с использованием IPsec туннеля.

Подготовка
IPSec - наиболее часто предпочитаемый метод для соединения типа сеть-сеть (в отличии от соединения клиент-сеть). Типичный сценарий включает создание постоянного безопасного соединения между главным предприятием и его филиалами.

Замечание
Сети соединяемы через VPN должны иметь различные подсети. Для примера, если обе сети используют подсеть 192.168.1.0/24, VPN не будет работать.

Как это сделать...
1. Переходим на страницу VPN | IPsec.
2. Нажимаем кнопку [+] для создания IPsec туннеля.
3. Определяем удалённый шлюз (Remote Gateway).
4. Добавляем описание (Description).

5. Вводим секретный ключ (Pre-Share Key).
6. Сохраняем (Save) изменения.
7. Отмечаем включение IPsec (Enable IPsec).
8. Сохраняем (Save) изменения

9. Применяем (Apply) изменения, если необходимо.
10. Переходим на страницу Firewall | Rules.
11. Выбираем закладку IPsec
12. Нажимаем кнопку [+] для добавления нового правила брандмауэра
13. Устанавливаем назначение (Destination) для LAN подсети
14. Устанавливаем порт назначения (Destination port) в значение any (любой)
15. Добавляем описание (Description), например Allow IPsec traffic to LAN

16. Сохраняем (Save) изменения
17. Применяем (Apply) изменения, если необходимо.

Как это работает...
Когда IPsec туннель установлен, клиенты подключенные к любой сети получат доступ друг к другу, так словно они подключены в разные подсети той же самой физической сети.

Смотрите так же
- Рецепт Конфигурирование сервиса L2TP VPN
- Рецепт Конфигурирование сервиса OpenVPN
- Рецепт Конфигурирование сервиса PPTP VPN

 

Конфигурирование сервиса L2TP VPN
Этот рецепт описывает, как установить сервер L2TP VPN на pfSense.

Подготовка
Важно понимать, что в отличии от прочих реализаций VPN, L2TP не шифрует данные. L2TP - это просто метод инкапсуляции и он должен использоваться только на доверенных сетях, либо в сочетании с IPsec. Основное преймущество использования L2TP состоит в том, что он может использоваться не только для IP сетей.

Замечание:
Сети соединяемые посредством VPN должны использовать разные подсети. Например, если обе сети используют подсеть 192.168.1.0/24, VPN работать не будет.

Как это сделать...
1. Переходим на страницу VPN | L2TP.
2. На закладке Configuration, отмечаем включение L2TP сервера (Enable L2TP Server).
3. Указываем неиспользуемый IP в качестве адреса сервера (Server address).
4. Указываем неиспользуемый стартовый IP для диапазона удалённых адресов (Remote address range). Длинна диапазона будет соответствовать числу пользователей определённых на шаге 6.
5. Указываем маску подсети (Subnet mask).
6. Определяем число пользователей L2TP (Number of L2TP users)

7. Сохраняем (Save) изменения.
8. Переходим на закладку Users.
9. Нажимаем кнопку [+] для создания нового пользователя
10. Указываем имя пользователя (username) и пароль (password)

11. Сохраняем (Save) изменения.

12. Переходим на страницу Firewall | Rules
13. Выбираем закладку L2TP VPN
14. Нажимаем кнопку [+] для создания нового правила брандмауэра
15. Устанавливаем назначение (Destination) для LAN подсети
16. Устанавливаем порт назначения (Destination port range) в значение any 
17. Добавляем описание (Description), например Allow L2TP Clients to LAN
18. Сохраняем (Save) изменения

19. Применяем (Apply) изменения, если необходимо.

Как это работает...
Сервис L2TP позволяет внешним пользователям получать доступ к выбранному нами сетевому интерфейсу. Пользователи подключенные к нашей сети с помощью клиента L2TP VPN получат доступ к сети, как если бы они были подключены к ней физически.

Соединение с клиентов Windows 7
Для создания соединения L2TP VPN с компьютеров Windows 7
1. Откройте Панель управления | Сеть и Интернет | Просмотр задач и статуса сетей (Control Panel | Network and Internet | View network status and tasks) (откройте Network and Sharing Center)
2. Нажмите Установить новое соединение или сеть (Set up a new connection or network)
3. Выберите Соединение с рабочим местом (Connect to a workplace) через модем или VPN
4. Выберите Использовать моё соединение Интернет VPN (Use my Internet connection (VPN)
5. Введите адрес сервера (Server Address) который мы конфигурировали для сетевого соединения. (Если адрес сервера L2TP который вы настроили непосредственно не доступен, вам придётся настроить форвардинг порта NAT для трафика L2TP)
6. Введите имя пользователя (username) и пароль (password)
7. Нажмите Соединить (Connect). Windows автоматически определит, будет ли сервер принимать L2TP или PPTP подключения и настроит клиента соответствующим образом.

 

Смотрите так же...
- Рецепт Создание правил форвардинга порта NAT в главе 3
- Рецепт Создание туннеля IPsec VPN
- Рецепт Конфигурирование сервиса OpenVPN
- Рецепт Конфигурирование сервиса PPTP VPN

Конфигурирование сервиса OpenVPN
Этот рецепт описывает как конфигурировать OpenVPN соединения на pfSense.

Как это сделать...
1. Переходим на страницу VPN | OpenVPN
2. переходим на закладку Wizards
3. Выбираем Local User Access для типа сервера (Type of Server)

4. Нажимаем Next
5. Вводим описательное имя (Descrptive Name) например такое как MyCaCert для нового сертификата CA
6. Вводим US для кода страны (Country Code)
7. Вводим State or Province, например New York
8. Вводим City, например New York
9. Вводим Organization, например Blue Key Consulting
10. Вводим E-mail адрес, например contact@example.com
11. Нажимаем кнопку Add new CA для добавлени нового сертификата

12. Вводим описательное имя (Descriptive name) для нового сертификата сервера (Server certificate), например MyServerCert. Создание сертификата сервера будет выглядеть аналогично созданию сертификата центра сертификации, который мы создавали на предыдущем шаге.
13. Вводим US для кода страны (Country Code)
14. Вводим State or Province, например New York
15. Вводим City, например New York
16. Вводим Organization, например Blue Key Consulting
17. Вводим E-mail адрес, например contact@example.com
18. Нажимаем кнопку Создать новый сертификат (Create new Certificate)

19. Указываем описание (Description), например My OpenVPN Connection

20. Указываем сетевой туннель (Tunnel Network) в CIDR нотации. Это должен быть неиспользуемый диапазон интерфейсов (и конечно не перкрывающий существующей сети LAN), например 192.168.4.0/24.
21. Указываем локальную сеть к которой клиент будет получать доступ (Local Network) в CIDR нотации. Это ваша основная сеть LAN 192.168.1.0/24.

22. Указываем максимальное число одновременных подключений (Concurrent Connections) 


23. Нажимаем кнопку Next.
24. Отмечаем флаг Add a rule to permit traffic from clients on the Internet to the OpenVPN server process (Добавить правило и разрешать трафик от клиентов Интернет для процессов сервера OpenVPN).
25. Отмечаем флаг Add a rule to allow all traffic from connected clients to pass across the VPN tunnel (Добавить правило разрешающее весь трафик от подключенных клиентов через VPN туннель).

26. Нажимаем Next

27. Нажимаем Finish.


Как это работает...
Сервис OpenVPN позволяет внешним пользователям устанавливать безопасное, шифрованное соединение к вашей сети. Пользователи соединяются с сетью используя клиент OpenVPN и аутентификацию, получая доступ аналогично физическому соединению.

Алгоритм шифрования
Выбор правильного алгоритма шифрования для вашего оборудования весьма важен для достижения максимальной производительности. Множество карт расширений VPN, которые можно найти на Netgate systems используют Alix требующий AES-128-CBC. Обратитесь к поставщику вашего оборудования за подробными разъяснениями.

OpenVPN Client Export
Пакет pfSense называемый OpenVPN Client Export Utility значительно упрощает процесс конфигурирования клиента. Для его установки
1. Перейдите на страницу System | Packages.
2. Нажмите закладку Available Packages.
3. Найдите OpenVPN Client Export Utility и нажмите кнопку [+] для начала установки

4. Пакет будет загружен и установлен автоматически.

5. Плагин должен быть установлен в меню VPN | OpenVPN.

Смотрите так же
- Рецепт Создание туннеля IPsec VPN
- Рецепт Конфигурирование сервиса OpenVPN
- Рецепт Конфигурирование сервиса PPTP VPN

Конфигурирование сервиса PPTP VPN
Этот рецепт описывает, как конфигурировать соединения PPTP VPN на pfSense.

Как это сделать...
1. Перейдите на закладку VPN | PPTP | Configuration
2. Отметьте флаг Enable PPTP Server
3. Выберите число пользователей (No. PPTP users)
4. Введите неиспользуемый IP адрес для указания в качестве адреса PPTP сервера (Server address). PPTP сервис будет слушать входящие запросы на этом адресе.
5. Введите начало диапазона адресов удалённых клиентов (Remote address range). Помните, что верный диапазон должен быть больше чем число пользователей определённых в предыдущем пункте.

6. Отметьте флаг Require 128-bit encryption (Требовать 128-и битное шифрование)

7. Сохраните (Save) изменения
8. Перейдите на закладку Users
9. Нажмите кнопку [+] для добавления пользователя
10. Укажите имя пользователя (username) и пароль (password)
11. Сохраните (Save) изменения.

12. Переходим на страницу Firewall | Rules
13. Выбираем закладку PPTP VPN
14. Нажимаем кнопку [+] для создания нового правила брандмауэра
15. Устанавливаем назначение (Destination) для LAN подсети
16. Устанавливаем порт назначения (Destination port range) в значение any 
17. Добавляем описание (Description), например Allow PPTP Clients to LAN
18. Сохраняем (Save) изменения

19. Применяем (Apply) изменения, если необходимо.

Как это работает...
PPTP сервис позволяет внешним клиентам устанавливать безопасное, шифрованное соединение с вашей сетью. Пользователи соединяются с сетью используя PPTP клиент и производят аутентификацию.

Соединение с клиента Windows 7
Для создания соединения PPTP VPN с компьютеров Windows 7
1. Откройте Панель управления | Сеть и Интернет | Просмотр задач и статуса сетей (Control Panel | Network and Internet | View network status and tasks) (откройте Network and Sharing Center)

2. Нажмите Установить новое соединение или сеть (Set up a new connection or network)

3. Выберите Соединение с рабочим местом (Connect to a workplace) через модем или VPN

4. Выберите Использовать моё соединение Интернет VPN (Use my Internet connection (VPN) 

5. Введите публичный IP адрес или имя хоста сети с которой вы соединяетесь

6. Введите имя пользователя (username) и пароль (password)

7. Нажмите Соединить (Connect). Windows автоматически определит, будет ли сервер принимать L2TP или PPTP подключения и настроит клиента соответствующим образом.

Соединение с клиента Ubuntu 10.10
Для создания PPTP VPN соединения с Ubuntu, выполните следующие шаги
1. Откройте System | Preferences | Network Connections.
2. Выберите закладку VPN и нажмите кнопку Add для создания нового VPN соединения.

3. Выберите PPTP и нажмите кнопку Create...

4. Добавьте имя соединения (Connection name).
5. Добавьте шлюз (Gateway), указывающий IP настроенного сервера PPTP. Если IP напрямую не доступен, вам придётся настроить правило форвардинга порта NAT.
6. Добавьте имя пользователя (User name) и пароль (Password) который мы сконфигурировали

7. Нажмите Применить (Apply)
8. Нажмите Закрыть (Close)                                                            

9. Откройте выпадающий список Network connection в панели меню и выберите VPN Connections | Имя соединения. 


Соединение с клиента Apple Mac OS X
Для создания PPTP VPN соединения с Apple Mac OS X, выполните следующие шаги:
1. Откройте System Preferences

2. Нажмите Network

3. Нажмите кнопку [+] для добавления нового сетевого соединения
4. Выберите VPN для Interface
5. Выберите PPTP для VPN Type
6. Создайте имя сервиса (Service Name)

7. Укажите адрес сервера (Server Address), указывающий IP настроенного сервера PPTP. Если IP напрямую не доступен, вам придётся настроить правило форвардинга порта NAT.
8. Введите имя пользователя которое вы конфигурировали в Account Name
9. Нажмите Connect и введите пароль

Смотрите так же
- Рецепт Создание правил форвардинга порта NAT в главе 3
- Рецепт Создание туннеля IPsec VPN
- Рецепт Конфигурирование сервиса OpenVPN
- Рецепт Конфигурирование сервиса PPTP VPN