1. Завдання
Інтерент в офісі підключений через роутер, за роутером знаходиться pfsense, за ним знаходиться офісна мережа, в мережі – сервер (web-сервер).
Потрібно організувати доступ віддалених користувачів до ресурсів локальної мережі офісу за допомогою VPN (OpenVPN server на pfSense).
Початкові данні
- IP офісу (зовнішня) - 20.40.50.2- WAN адреса pfSense - 192.168.3.62/24
- LAN офісу - 192.168.100.0/24
- Адреса Web-сервера - 192.168.100.10
- IP користувача (зовнішня) - 45.28.29.24
- Мережа VPN -192.168.11.0/24
- IP користувача (в мережі VPN) - 192.168.11.33
- Ім’я користувача - Taras
2. Налаштовуємо pfSense як стандартний роутер, який роздає інтерент
Початкові дані:
- WAN адреса pfSense - 192.168.3.62
- LAN адреса pfSense - 192.168.100.1
3. OpenVPN сервер створюємо за допомогою майстра.
3.1 Заходимо в меню OpenVPN
3.2 Запускаємо майстер створення VPN сервера
3.4 Створюємо новий сертифікат центру сертифікації (CA)
Descriptive name: serverca
Common name: залишаємо порожнім, буде використовуватись Descriptive name
Country Code: UA
State of Province: Kyiv
City: Kyiv
Organization: m-tech
3.5 Створюємо новий сертифікат для OpenVPN сервера
Descriptive name: openvpnsrv
Інші
поля заповнюємо як в пункті 3.4
3.7 Заповнюємо параметри сервера OpenVPN
Ім’я
екземпляра OpenVPN сервера (для адміністративної довідки)
Description: OpenVPNsrv1
Протокол для підключення OpenVpn.
Protocol: UDP on IPv4 only (залишаємо)
Interface: WAN
Local port: 1194 (можна вибрати довільний, вільний)
Criptographic Settings (весь блок залишаємо за замовченням)
IPv4 Tunnel Network: 192.168.11.0/24
Це
віртуальна мережа, яка використовується для приватного зв’язку між цим сервером
і клієнтськими хостами. Перша мережева адреса буде призначена віртуальному
інтерфейсу сервера. Решта мережевих адрес буде призначено підключеним клієнтам.
IPv4 Local Network: 192.168.100.0/24
Це
мережа, яка буде доступна з віддаленого клієнтського хоста. Зазвичай це адреса
мережі LAN. Якщо у Вас
декілька підмереж, можна додати їх через кому.
Concurrent Connections: 5
Максимальна
кількість одночасних підключень
Inter-Client Communication: Unchecked
Дозволяє
зв’язок між клієнтами. В даному прикладі не використовуємо
Інші
параметри, які не згадані були залишаємо без змін в даному прикладі.
3.8 Налаштування правил файрволу
На
цьому етапі все зроблено для розгортання самого OpenVPN сервера
Але
потрібно виконати наступні настанови, для можливості підключатись до нього:
Конфігурацію завершено.
Додавання користувачів для VPN залежить
від вибраного методу автентифікації. Наприклад, додайте локальних користувачів
із сертифікатами в меню «Система» >
«Диспетчер користувачів». Для віддалених серверів автентифікації додайте
сертифікати безпосередньо в меню «Система»
> «Диспетчер сертифікатів».
Щоб легко експортувати конфігурації клієнта, перейдіть до System > Packages і встановіть пакет OpenVPN Client Export.
Після успішного створення екземпляра OpenVPN сервера, він з’явиться в перелюку серверів.
4. Встановлюємо пакет OpenVPN Client Export.
Заходимо
System – Package Manager- Available Package
Знаходимо
пакет: openvpn-client-export
5. Створення користувача.
Для створення користувача заходимо System/User Manager/ Users. Натискаємо
кнопку Add.
Username: Taras
Password: veresen5 (тут
простий пароль. В житті робите складний)
Certificate: Checked (одразу генеруємо сертифікат користувача)
Descriptive name: taras-sert
Certificate authority: serverca
(підставлено автоматично)
Інші параметри тут не розглядаємо
Після створення,
користувач з’явиться у списку користувачів.
6. Сертифікати
Перевіряємо згенеровані під час створення сервера та користувача сертифікати.System/Certificates/Certificates.
Другий сертифікат у спистку
належить серверу OpenVPN, третій - користувачу.
7. Експорт клієнтів
Оскільки наш сервер дивиться WAN інтерфейсом в мережу а не безпосередньо в Інтернет, нам потрібно в ручну вказати адресу сервера а Інтернеті. Ця адреса буде прописуватись в конфігураційних файлах клієнта.
Host Name Resolution: Other (Вибираємо у спадному меню)
Host Name: 20.40.50.2 (Адреса, що надав провайдер Інтернет)
Якщо все зроблено правильно і на сервері немає інших сертифікатів (у нас чистий сервер) то всі поля можемо залишити за замовченням. Якщо серверних сертифікатів більше, потрібно звернути увагу, який саме сертифікат використовується при експорті. Цей випадок ми тут не розглядаємо. Просто потрібно вибрати правильний сертифікат сервера. Сертифікат користувача прив’язаний до користувача.
Опускаємось донизу, на проти імені користувача знаходяться кнопки експорту клієнта. Вибираємо клієнта і натискаємо відповідну кнопку для завантаження. У нашому випадку це буде клієнт під Windows x64. Скачуємо його на ПК користувача.
8. Налаштування прокидання порта через роутер.
Для
доступу до OpenVPN сервера ззовні
офісу потрібно налаштувати на роутері прокидання порта з Інтернет на адресу OpenVPN сервера. В нашому
випадку порт 1194, протокол UDP.
9. Підключення клієнта до сервера.
Якщо Ви хочете переконатись чи дійсно Ви працюєте з сервером через тунель можете виконати команду tracert на якись сайт (наприклад Google) і на Ваш сервер.
10. Індивідуальні налаштування клієнта.
За
умовою клієнт повинен мати адресу в тунелі 192.168.11.33. Якщо ми перевіримо
статус OpenVPN то побачимо, що йому була автоматично
призначена адреса 192.168.11.2.
Для налаштування IP-адреси клієнта заходимо:
VPN/OpenVPN/Client Speсific Overrides та натискаємо +Add
Налаштування подібні до налаштувань OpenVPN сервера. Нам потрібно внести ту інформацію яка відрізняється від конфігурації сервера за замовченням та вказати ім’я користувача, якому ця конфігурація буде присвоєна.
Для присвоєння нової IP-адреси користувачу, потрібно перепідключитись до сервера.