OpenVPN – це швидка, популярна програма з відкритим вихідним кодом для створення VPN (віртуальної приватної мережі). Вона використовує протоколи передавання даних TCP і UDP, а VPN-тунелі захищені протоколом OpenVPN з автентифікацією SSL/TLS, сертифікатами, обліковими даними і, як варіант, блокуванням MAC-адрес, а також багатофакторною автентифікацією.
OpenVPN можна використовувати на найрізноманітніших пристроях і системах. Як і більшість протоколів VPN, має клієнт-серверну архітектуру. Сервер доступу OpenVPN працює на системі Linux, а клієнти можуть бути встановлені на інших системах Linux, Windows і macOS, а також на мобільних операційних системах, таких як Android, Windows Mobile і iOS.
Сервер доступу OpenVPN приймає вхідні VPN-з’єднання, а клієнти OpenVPN Connect або будь-які клієнти з відкритим вихідним кодом, сумісні з OpenVPN, можуть ініціювати з’єднання з сервером.
У цій статті ви дізнаєтеся, як налаштувати сервер доступу OpenVPN на Ubuntu 22.04/Ubuntu 20.04 і під’єднати VPN-клієнти з інших систем Linux.
Крок 1: Налаштування сервера OpenVPN на Ubuntu
1. Встановлення та налаштування OpenVPN-сервера вручну – завдання не з простих, як показує досвід. З цієї причини ми будемо використовувати скрипт, який дасть вам змогу встановити свій власний безпечний OpenVPN-сервер за лічені секунди.
Перш ніж завантажити і запустити скрипт, зверніть увагу, що скрипт автоматично визначить приватну IP-адресу вашого сервера, але вам потрібно звернути увагу на публічну IP-адресу вашого сервера, особливо якщо він працює за NAT.
Щоб дізнатися публічну IP-адресу вашого сервера, виконайте таку команду wget або dig.
$ wget -qO - icanhazip.com OR $ dig +short myip.opendns.com @resolver1.opendns.com

2. Тепер завантажте скрипт програми інсталяції за допомогою інструменту командного рядка curl, а потім зробіть його виконуваним за допомогою команди chmod наступним чином.
$ curl -O https://raw.githubusercontent.com/angristan/openvpn-install/master/openvpn-install.sh $ chmod +x openvpn-install.sh
3. Потім запустіть виконуваний сценарій програми встановлення, як показано нижче.
$ sudo bash openvpn-install.sh
Під час першого виконання скрипт поставить вам кілька запитань, уважно прочитайте їх і дайте відповіді відповідно до ваших уподобань, щоб налаштувати ваш сервер OpenVPN.

4. Після завершення процесу встановлення VPN у поточному робочому каталозі буде записано файл конфігурації клієнта. Цей файл ви будете використовувати для налаштування клієнта OpenVPN, як описано в наступному розділі.

5. Потім переконайтеся, що служба OpenVPN запущена, перевіривши її стан за допомогою такої команди systemctl.
$ sudo systemctl status openvpn

6. Також підтвердіть, що демон OpenVPN прослуховує порт, який ви вказали сценарію використовувати, використовуючи команду ss, як показано на малюнку.
$ sudo ss -tupln | grep openvpn

7. Якщо ви перевірите свої мережеві інтерфейси, новий інтерфейс був створений для VPN-тунелю, ви можете підтвердити це за допомогою команди IP.
$ ip add

Крок 2: Налаштування клієнтів OpenVPN в Ubuntu
8. Тепер настав час налаштувати ваш клієнт OpenVPN і підключити його до VPN-сервера. Спочатку встановіть пакет OpenVPN на клієнтську машину таким чином.
$ sudo yum install openvpn #RHEL-based Systems $ sudo apt install openvpn #Debian-based Systems $ sudo dnf install openvpn #Fedora Linux
9. На настільній системі також необхідно встановити пакет network-manager-openvpn, щоб виконувати налаштування VPN з графічного інтерфейсу.
$ sudo yum install network-manager-openvpn #RHEL-based Systems $ sudo apt install network-manager-openvpn #Debian-based Systems $ sudo dnf install network-manager-openvpn #Fedora Linux
10. Після встановлення вищевказаних пакетів запустіть службу OpenVPN, поки що увімкніть її автоматичний запуск під час завантаження системи та перевірте її статус, щоб переконатися, що вона працює.
$ sudo systemctl start openvpn $ sudo systemctl enable openvpn $ sudo systemctl status openvpn

11. тепер необхідно імпортувати налаштування клієнта OpenVPN із сервера OpenVPN. Відкрийте вікно терміналу і використовуйте команду SCP для захоплення файлу, як показано на малюнку.
$ cd ~ $ scp [email protected]:/home/tecmint/tecmint.ovpn .

12. відкрийте Системні налаштування, потім перейдіть у розділ Мережі. У розділі VPN натисніть кнопку додати, щоб отримати необхідні опції.

13. У спливаючому вікні виберіть “Імпорт з файлу”, як показано на наступному скріншоті. Потім перейдіть у файловий менеджер і виберіть файл конфігурації клієнта .ovpn, який ви завантажили із сервера.


14. На інших настільних системах Linux натисніть на значок мережі на системній панелі, перейдіть у розділ Мережеві підключення. Потім натисніть кнопку з плюсом, щоб додати нове підключення. Зі списку, що випадає, виберіть “Імпорт збереженої конфігурації VPN…”, як показано на наступному скріншоті.
Створіть підключення та імпортуйте файл.

15. Після імпорту файлу необхідно додати налаштування VPN, як показано на наступному знімку екрана. Потім натисніть кнопку Додати.

16. Налаштування вашого VPN-клієнта повинні бути успішно додані. Ви можете підключитися до сервера OpenVPN, увімкнувши VPN, як показано на наступному знімку екрана.

17. Тепер VPN-з’єднання має бути успішно встановлено, як показано на наступному знімку екрана.

18. Якщо ви перевірите підключення мережевого інтерфейсу за допомогою команди IP add, то тепер має існувати інтерфейс VPN тунелю, як показано на наступному знімку екрана.
$ ip add

Крок 3: Налаштування клієнта OpenVPN у Linux
19. Щоб під’єднати інший сервер Linux як VPN-клієнта, переконайтеся, що ви встановили пакет OpenVPN, запустили та ввімкнули службу OpenVPN, як описано вище.
Потім завантажте файл клієнта .ovpn і скопіюйте його в каталог /etc/openvpn/, як показано на малюнку.
$ scp [email protected]:/home/tecmint/tecmint.ovpn . $ ls $ sudo cp tecmint.ovpn /etc/openvpn/client.conf

20. Далі запустіть службу VPN-клієнта, увімкніть її та перевірте її стан за допомогою таких команд.
$ sudo systemctl start [email protected] $ sudo systemctl enable [email protected] $ sudo systemctl status [email protected]

21. Потім підтвердіть, що інтерфейс VPN-тунелю було створено за допомогою команди IP add, як показано на малюнку.
$ ip add

22. Щоб налаштувати інші клієнти OpenVPN в операційних системах, використовуйте такі клієнти:
- Windows: Офіційний клієнт спільноти OpenVPN для Windows.
- Android: Клієнт OpenVPN для Android.
- iOS: Офіційний клієнт OpenVPN Connect для iOS.
Крок 4: Видалення OpenVPN з Ubuntu
23. Якщо ви хочете додати нового користувача VN, відкликати наявного користувача або видалити сервер OpenVPN з вашої системи, просто запустіть скрипт програми встановлення знову. Потім виберіть зі списку опцій те, що ви хочете зробити, і дотримуйтесь підказок.
$ sudo bash openvpn-install.sh
На цьому ми закінчуємо цей посібник. Для отримання додаткової інформації перейдіть у репозиторій openvpn-install script Github.
ПЕршим? Ни х-я ваши команды не находятся,ung@T420:~$ $ chmod +x openvpn-install.sh
$: command not found