OpenVPN на FreeBSD
pkg_add -r openvpn
. ./vars ./clean-all ./build-caБудут спрашивать данные для сертификата, лучше отвечать ближе к правде, хотя и не обязательно. Важно обязательно что-то писать в поле, не оставлять пустыми.
./build-key-server serverАналогично, отвечать нужно на все вопросы. Common name должно быть server. На 2 вопроса отвечать y
./build-dhТеперь делаем сертификат для клиента. Если у нас несколько клиентов, то повторяем этот шаг несколько раз, меняя номер клиента.
./build-key client1Если Вы хотите защитить сертификат паролей то используйте
./build-key-pass client1Важно с поле Common Name писать соответствующее имя, например client1
ca /usr/local/share/doc/openvpn/easy-rsa/keys/ca.crt cert /usr/local/share/doc/openvpn/easy-rsa/keys/server.crt key /usr/local/share/doc/openvpn/easy-rsa/keys/server.key dh /usr/local/share/doc/openvpn/easy-rsa/keys/dh1024.pem push "redirect-gateway def1" push "dhcp-option DNS 10.8.0.1" push "dhcp-option WINS 10.8.0.1" user nobody group nobodyСохраняем файл.
sysctl net.inet.ip.forwarding=1 /sbin/ipfw nat 123 config ip ВАШ_ВНЕШНИЙ_ИП log /sbin/ipfw add 10 nat 123 ip from 10.8.0.0/24 to any /sbin/ipfw add 20 nat 123 ip from any to ВАШ_ВНЕШНИЙ_ИП
/usr/local/etc/rc.d/openvpn start
remote my-server-1 1194IP своего сервера вместо my-server-1. Больше ничего не трогаем, сохраняем и закрываем файл.
/usr/local/share/doc/openvpn/easy-rsa/keys/ca.crt /usr/local/share/doc/openvpn/easy-rsa/keys/client1.crt /usr/local/share/doc/openvpn/easy-rsa/keys/client1.keyclient1 соответственно нужно заменить на нужный номер клиента. После этого переименовываем файлы, убирая цифры номера клиент, т.е. из client1.crt делаем client.crt и т.д.