Подробни инструкции за инсталиране на OpenVPN на Linux сървър
OpenVPN е мощен и гъвкав инструмент за създаване на сигурни VPN тунели. Тази инструкция ще ви помогне да инсталирате и конфигурирате OpenVPN на сървър с Linux (например Ubuntu, Debian, CentOS).
Актуализиране на системните пакети
Преди да започнете инсталацията, актуализирайте списъците със системни пакети и инсталирайте всички налични актуализации. За Ubuntu/Debian:
за Ububi: apt update
apt upgrade -y
За CentOS
yum update -y
Инсталиране на OpenVPN и Easy-RSA
За да създадете ключове и сертификати, ще ви е необходима помощната програма Easy-RSA. Ще инсталираме OpenVPN заедно с нея.
За Ubuntu/Debian:
за Ububey: apt install openvpn easy-rsa -y
За CentOS:
yum install epel-release -y
yum install openvpn easy-rsa -y
Успешната инсталация ще изглежда така
Настройване на PKI (инфраструктура на публичния ключ)
Създайте директория, в която ще се съхраняват всички необходими файлове за създаване на сертификати:
make-cadir ~/openvpn-ca
cd ~/openvpn-ca
Конфигурация Easy-RSA
Редактирайте файла vars, за да зададете настройките за създаване на сертификати:
nano vars
Променете следните редове с вашите стойности:
set_var EASYRSA_REQ_COUNTRY "въведете ВАШАТА КУЛТУРА"
set_var EASYRSA_REQ_PROVINCE "въведете YOUR_PROVINCE"
set_var EASYRSA_REQ_CITY "въведете YOUR_CITY"
set_var EASYRSA_REQ_ORG "въведете ВАШАТА_ОРГАНИЗАЦИЯ"
set_var EASYRSA_REQ_EMAIL "въведете YOUR_EMAIL"
set_var EASYRSA_REQ_OU "въведете YOUR_ORG_UNIT"
- Пример. променливатаEASYRSA_REQ_ORG се използва в скрипта EasyRSA за задаване на името на организацията при създаване на сертификати. Стойността на тази променлива се посочва в CSR (заявка за подписване на удостоверение) и в удостоверенията, които ще бъдат създадениВ този пример променливата EASYRSA_REQ_ORG е зададена на низ “enter YOUR_ORGANIZATION”. Това означава, че при създаването на сертификат тази стойност ще бъде зададена в полето“Име на организацията”. Обикновено вместо “въведете YOUR_ORGANIZATION” се въвежда името на организацията, за която се създават сертификатите. Например, ако вашата организация се нарича“ExampleCorporation“, ще промените тази стойност на:set_var EASYRSA_REQ_ORG “ExampleCorporatiom “По този начин генерираните удостоверения ще съдържат името на вашата организация в съответното поле.
. set_var EASYRSA_REQ_ORG "enter YOUR_ORGANIZATION "
След това трябва да заредите променените променливи. За да направите това, трябва да въведете една проста команда, състояща се само от две думи:
source vars
Създаване на CA (Certificate Authority)
Следва трудната и важна стъпка! Уверете се, че можете да оставите запис за това във вашия KeePASS или друг надежден мениджър на пароли! В тази стъпка трябва да инициализирате PKI и да създадете коренен сертификат. Това може да се направи по следния начин:
./easyrsa init-pki
./easyrsa build-ca
Ще бъдете помолени да въведете парола за CA. Уверете се, че сте я запазили и запомнили.
Генериране на ключове и сертификати
Сертификат и ключ на сървъра:
./easyrsa gen-req server nopass
Подписване на сертификата на сървъра:
./easyrsa sign-req server server
Генериране на DH параметри:
./easyrsa gen-dh
Генериране на HMAC ключ за TLS удостоверяване:
openvpn --genkey --secret ta.key
Създаване на конфигурационния файл на сървъра
Копирайте примерния конфигурационен файл и го редактирайте:
cp /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz /etc/openvpn/
gunzip /etc/openvpn/server.conf.gz
nano /etc/openvpn/server.conf
Стартиране на услугата OpenVPN
Уверете се, че OpenVPN се стартира при зареждане на компютъра със следната команда:
systemctl enable openvpn@server
Създаване на клиентския файл
Копирайте конфигурационния файл на клиента на вашия сървър:
scp user@your-server_ip:/etc/openvpn/client.ovpn ~/client.ovpn
- Тестовете бяха извършени на IPv4 адрес – 91.229.239.11. По-долу е представен пример за резултата от успешните действия на командата:
Въведете конфигурацията scp user@91.229.239.11:/etc/openvpn/client.ovpn ~/client.ovpn. След това въведете passwd
Редактирайте файла client.ovpn и добавете сертификатите:
# поставете съдържанието на файла ca.crt
# поставете съдържанието на файла client.crt
# поставете съдържанието на файла client.key
Свързване на клиента
Импортирайте файла client.ovpn в OpenVPN клиента на вашето устройство и се свържете със сървъра.