Срочна понадобилось vpn.
Понадобилось делаем!
yum install openvpn
воляется в epel;
Первое че лезем делать, это конфиги смотрим /etc/openvpn а там! ЙУХ.
Шо за гоавно?!
Пилим сами! Короче идем по порядку:
port 1194 local xxx.yyy.xxx.yyy proto tcp dev tun0 server 10.8.0.0 255.255.255.0 ca /etc/openvpn/easy-rsa/keys/ca.crt cert /etc/openvpn/easy-rsa/keys/server.crt key /etc/openvpn/easy-rsa/keys/server.key dh /etc/openvpn/easy-rsa/keys/dh1024.pem tls-auth /etc/openvpn/easy-rsa/keys/tls.key 0 cipher AES-256-CBC user nobody group nobody status openvpn-status.log log-append openvpn.log verb 3 mute 20 max-clients keepalive 10 120 tls-server comp-lzo persist-key persist-tun push "redirect-gateway def1" push "dhcp-option DNS 8.8.8.8"
Копируем ключи:
cp -R /usr/share/openvpn/easy-rsa/2.0 /etc/openvpn/easy-rsa cd /etc/openvpn/easy-rsa cp openssl-1.0.0.cnf openssl.cnf mkdir keys
Теперь нам предстоит запилить свои ключи:
Редактируем vars как вам надо
и выполняем
source ./vars ./clean-all ./build-ca ./build-key-server server ./build-dh openvpn --genkey --secret keys/tls.key ./build-key-pass user001# тут устанавливаем нужный пароль для пользователя
Замечу что все сгенерированные ключи должны лежать в директории keys.
Теперь нам нужен форвардинг:
в /etc/sysctl.conf включаем его
net.ipv4.ip_forward = 1
фигачим дальше:
sysctl -p iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j SNAT --to-source ваш ip iptables-save > /etc/sysconfig/iptables
Вот теперь все красиво:
Наши ключи для клиентов такие
/etc/openvpn/easy-rsa/keys/ca.crt /etc/openvpn/easy-rsa/keys/user001.crt /etc/openvpn/easy-rsa/keys/user001.key /etc/openvpn/easy-rsa/keys/tls.key
а конфиг таков:
client remote xxx.yyy.xxx.yyy 1194 proto tcp dev tun0 ca ca.crt dh dh1048.pem cert user001.crt key user001.key tls-auth tls.key 1 cipher AES-256-CB verb 3 mute 20 keepalive 10 120 comp-lzo persist-key persist-tun resolv-retry infinite nobind