Потом нормально оформлю ;)

ls -l /dev/net/tun
crw-rw-rw- 1 root root 10, 200 Nov 19 23:02 /dev/net/tun

apt-get update && apt-get upgrade
apt-get install openvpn

mkdir /etc/openvpn/easy-rsa/

cp -r /usr/share/easy-rsa/* /etc/openvpn/easy-rsa/

cd /etc/openvpn/easy-rsa/

vim vars

export KEY_COUNTRY=»US»
export KEY_PROVINCE=»CA»
export KEY_CITY=»SanFrancisco»
export KEY_ORG=»Fort-Funston»
export KEY_EMAIL=»me@myhost.mydomain»

source ./vars
NOTE: If you run ./clean-all, I will be doing a rm -rf on /etc/openvpn/easy-rsa/keys
Если:
**************************************************************  No /etc/openvpn/easy-rsa/openssl.cnf file could be found  Further invocations will fail
**************************************************************
ln -s openssl-1.0.0.cnf openssl.cnf
Далее снова:
source ./vars
./clean-all - Только при первичной настройке сервера! Удаляет все ключи!
./build-ca
./build-key-server server - server.key - Это секрет!
./build-key client1 (CN должен совпадать с именем сертификата)
./build-key client2 .. clientN
./build-dh
openvpn --genkey --secret keys/ta.key
# cd /etc/openvpn/easy-rsa/keys
# cp server.crt server.key ca.crt dh2048.pem ta.key /etc/openvpn/

На клиентскую машину OpenVPN необходимо скопировать следующие ключи и сертификаты:
client1.crt - Это не секрет
client1.key - Это секрет!
ca.crt
ta.key

# cp /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz /etc/openvpn/
# gzip -d /etc/openvpn/server.conf.gz
Конфиг сервера:
local xx.xx.xx.xx             # внешний IP сервера (Инетовский IP-адрес)
port 1194                   # порт на котором будет висеть служба OpenVPN
proto udp                    # протокол 
dev tun
tls-server     #Сервер будет использовать TLS

ca ca.crt                     # наши сертификаты
cert server.crt
key server.key
dh dh2048.pem


server 10.10.14.0 255.255.255.0    # Наша виртуальная сеть (адреса, которые будут присваиваться клиентам OpenVPN)

cipher AES-128-CBC   #Должно быть одинаково с клиентом
tls-auth ta.key 0


client-config-dir ccd

ifconfig-pool-persist ipp.txt              # запоминать выданные динамические адреса
keepalive 10 120            # пинг каждые 10 секунд для поддержания канала связи
comp-lzo              # сжатие трафика

tun-mtu 1500
mssfix

persist-key
persist-tun
log /var/log/openvpn.log                 # Путь к лог-файлу
verb 3                                             # Уровень детализации лога.
;mute                                              # В лог будет записываться до 10 сообщений из одной категории.
status openvpn-status.log #лог
client-to-client
;push "redirect-gateway def1"  # Перенаправлять default gateway на vpn-сервер. Если не нужно - закомментировать. Весь инет пойдет через ВПН
;push "route 192.168.2.0 255.255.255.0"
;client-config-dir ccd                # Директория где хранятся настройки клиентов 
user nobody  #Понижение прав для NIX - большая безопасность
group nogroup
Конфиг клиента:
client
tls-client
ns-cert-type server
dev tun
proto udp
remote xx.xx.xx.xx 1194                        # Адрес и порт сервера OpenVPN (внешний, инетовский)
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert namefile.crt
key namefile.key
tls-auth ta.key 1
cipher AES-128-CBC
mssfix
tun-mtu 1500
ping-restart 60
ping 10
comp-lzo adaptive
nobind
;log /var/log/openvpn.log
;status /var/log/openvpn-status.log
verb 3
;mute 20
;route 192.168.1.0 255.255.0.0   

У клиента должны быть файлы:
namefile.crt - Клиентский сертификат (публичный)
namefile.key - Клиентский ключ (секретный)
ca.crt - Серверный сертификат (публичный)
ta.key - Нужен если используется TLS (один для всех клиентов)
nameclient.ovpn - Файл конфигурации.
# mkdir /etc/openvpn/ccd
# reboot
Проверяем интерфейс
# ifconfig
Если нету, смотрим логи
# cat /var/log/openvpn.log
Настройка маршрутизации для клиентов OpenVPN
После подключения клиента к серверу OpenVPN, если он (клиент)
находится в локальной сети, нужно дополнительно настроить
маршрутизацию для доступа к ресурсам внутри сети.
Для этого создаем файл в каталоге ccd с тем же именем ключа клиента:
vim /etc/openvpn/ccd/client1
Добавим в файл следующие параметры:
push "route 192.168.2.0 255.255.255.0"
push "dhcp-option DNS 192.168.1.1"
Первая строка добавляет маршрут в локальную сеть клиента.
Проще говоря - говорит клиенту OpenVPN "ходить"
в сеть 192.168.2.0 через сервер OpenVPN.
Если ваша локалка связана еще с какой-либо подсетью,
то её также нужно указать.
Вторая строка задает DNS-сервер,
который будет использоваться после подключения
(Если в вашей локальной сети DNS-сервер отсутствует,
то можно указать ns от Google - 8.8.8.8,
либо не указывать вообще.