Ось налаштував на Бубунті клієнта OpenVPN. Клієнт (і сервер, розповсюджується в одному і тому ж пакунку) присутній в стандартному репозиторії, тому встановити просто.
sudo apt-get install openvpn
Файли конфігурації розміщуються в /etc/openvpn/. Туди треба покласти ca.crt, client.crt, client.key і client.conf. Про самі клієнтські конфігураційні файли, пов’язані з серверними конфігураційними файлами, писати тут не буду.
Виявилося, що демон openvpn при інсталяції прописався в автозавантаження. Я не хочу сидіти за VPN постійно, а хочу вмикати за необхідності. Тому довелося прибрати його з автозавантаження.
В останніх дистрибутивах убунти з’явилася (раніше не було) зручна утиліта chkconfig, така звична для редгетівців. Але вона чомусь не захотіла прибрати openvpn з автозавантаження, видала помилку. Мабуть, тому що нерідна для убунти і портована з помилками.
Скористався стандартною убунтівською
sudo apt-get install sysv-rc-conf
Запустив, познімав хрестики напроти openvpn.
Далі виявилося, що не працює DNS. В конфігураційному файлі сервера в мене є рядки
push "dhcp-option DNS 8.8.8.8"
push "dhcp-option DNS 8.8.4.4"
Але це чомусь не спрацювало. У файлі /etc/resolv.conf залишилися DNS-сервери провайдера (інтернет в мене налаштовується через DHCP) і, очевидно, з чужої мережі (VPN-сервера) вони недоступні.
Тому створив файл /etc/resolv.conf.ovpn з таким вмістом:
nameserver 8.8.8.8
nameserver 8.8.4.4
Це публічні DNS-сервери Google.
І, щоб було зручно підключати і відключати, створив у домашньому каталозі 2 файли.
vpnon
cp /etc/resolv.conf /etc/resolv.conf.before
/etc/init.d/openvpn start
cp /etc/resolv.conf.ovpn /etc/resolv.conf
vpnoff
/etc/init.d/openvpn stop
cp /etc/resolv.conf.before /etc/resolv.conf
Дав звичайним користувачам право запускати ці файли
sudo chmod 4755 vpnon vpnoff
Але це не допомогло, доводиться запускати через sudo :(