OpenVPN
Версія від 14:17, 19 серпня 2022, створена WikiSysop (обговорення | внесок)
Настройка OpenVPN
yum install openvpn cd /etc/openvpn/
очищуєемо або ініціалізуємо каталог з ключами
./easyrsa init-pki
створюємо ca.key та ca.crt
./easyrsa build-ca
Будуємо сертифікат
./easyrsa build-ca ./easyrsa gen-dh
Будуємо ключ для сервера
./easyrsa gen-req <server-name> nopass ./easyrsa sign-req server <server-name>
створюємо ta.key
openvpn --genkey --secret pki/ta.key
Будуємо ключ для клієнтів (на кожного клієнта по одному)
./easyrsa gen-req <client> nopass
Налаштування /etc/openvpn/server.conf
port 1194 proto udp dev tun ca /etc/openvpn/easy-rsa/pki/ca.crt cert /etc/openvpn/easy-rsa/pki/issued/<server-name>.crt key /etc/openvpn/easy-rsa/pki/private/<server-name>.key # This file should be kept secret dh /etc/openvpn/easy-rsa/pki/dh.pem server 172.16.51.0 255.255.255.0 ifconfig-pool-persist ipp.txt ;push "route 192.168.10.0 255.255.255.0" ;push "route 192.168.20.0 255.255.255.0" # щоб не було фрагментації ip пакетів. tun-mtu 1500 fragment 1300 mssfix # але цей режим не сумісний із смартфонами, для смартфонів просто mssfix 1300 keepalive 10 120 comp-lzo ;max-clients 100 ;user nobody ;group nobody persist-key persist-tun status openvpn-status.log ;log openvpn.log ;log-append openvpn.log verb 3
Налаштування клієнта
client dev tun proto udp #proto tcp-client #Change my.publicdomain.com to your public domain or IP address remote 192.168.0.200 1194 resolv-retry infinite nobind persist-key persist-tun ca ca2.crt cert user.crt key user.key ns-cert-type server #DNS Options here, CHANGE THESE !! #push "dhcp-option DNS 123.123.123.123" #push "dhcp-option DNS 123.123.123.124" comp-lzo tun-mtu 1500 mssfix 1450 fragment 1400 verb 3
Заборонити клієнту доступ до сервера
revoke-full <ім'я клієнта> cp keys/crl.pem /etc/openvpn/
якщо треба зв'язати наприклад філіали, то у конфіг серверу треба добавити стрічки
client-config-dir /etc/openvpn/ccd client-to-client #для того щоб клієнти бачили один одного
і у каталозі /etc/openvpn/ccd створити файл з іменем клієнта і контентом
iroute 192.168.121.0 255.255.255.0 # роут в мережу клієнта, тобто мається на увазі мережа клієнта 192.168.121.0/24