Встановлення OpenVPN на CentOS

Огляди хостинг-провайдерів, посібники з адміністрування

Я довго шукав робочий туторіал про встановлення OpenVPN, тому опублікую свій, сподіваюся комусь допоможе раз і назавжди забути про цю нелегку справу.

Я використовую VPS на базі OpenVZ, 32-бітну ОС CentOS 5.5, 128Мб оперативної пам'яті. Щодо пам'яті: не хвилюйтеся, OpenVPN їсть не більше 25МБ, при активних 20 клієнтах.

Для початку потрібно перевірити, чи працює tun/tap. Вводимо:

cat: /dev/net/tun: File descriptor in bad state

Зверніть увагу на статус: "File descriptor in bad state" означає, що всі чікі-пукі, тобто добре. Якщо ні, напишіть хостеру про активацію tun/tap.

Встановимо необхідні модулі

yum install gcc make rpm-build autoconf.noarch zlib-devel pam-devel openssl-devel

Для 32-бітових систем:

Для 64-бітових систем:

Компілюємо менеджери пакетів

rpmbuild-rebuild lzo-1.08-4.rf.src.rpm

rpm -Uvh /usr/src/redhat/RPMS/i386/lzo-*.rpm

rpm -Uvh rpmforge-release-0.5.2-2.el5.rf.i386.rpm

*не забудьте змінити i386 на x86_64 якщо у вас 64-бітна система.

yum install openvpn

Скопіюємо папку easy-rsa в /etc/openvpn/

cp -R /usr/share/doc/openvpn-2.1.4/easy-rsa/ /etc/openvpn/

Тепер створимо сертифікат

Можете написати будь-що, можете пропустити все, крім

Common Name: Ваш hostname

Створимо сертифікат сервера

Common Name:server

A challenge password: пропустити

Optional company name: за бажанням

sign the certificate: y

1 out of 1 certificate requests: y

Побудуємо Diffie Hellman (доведеться трохи почекати. У мене на одному ядрі Intel i7 процес займає менше 5секунд)

local 123.123.123.123 #- IP сервера

port 1194 #- порт

proto udp #-протокол

plugin /usr/share/openvpn/plugin/lib/openvpn-auth-pam.so /etc/pam.d/login

server 1.2.3.0 255.255.255.0

push "redirect-gateway def1"

push "dhcp-option DNS 8.8.8.8"

push "dhcp-option DNS 8.8.4.4"

Зверніть увагу, "plugin /usr/share/.. /pam.d/login" - це один рядок

echo 1 > /proc/sys/net/ipv4/ip_forward

iptables -t nat -A POSTROUTING -s 1.2.3.0/24 -j SNAT-toIP СЕРВЕРУ

useradd alex -s /bin/false

Завантажте файлca.crt ​​з/etc/openvpn/easy-rsa/2.0/keys/

Завантажте, встановіть OpenVPN-клієнт для Windows, завантажте останню версію звідси.

Скопіюйте файлca.crt, який ви завантажили з/etc/openvpn/easy-rsa/2.0/keys/ в OpenVPN-папку конфігураційних файлів (С:\Program Files\OpenVPN\ config).

Там же створює файл

proto udp #-протокол

remote 123.123.123.123 1194 # - IP сервера та порт

і збережіть його, назвавши1194.ovpn.

Запустіть клієнт, з'єднуйтесь, вбивайте логін та пароль.