Ну вот думаю что все мы типа хацкеры и пора обзавестить своим собственым Open Vpn сервером !!!
Для чего он вам будет нужен решайте сами
как минимум безопасность , как максимум
просто свободное средство для извлечения прибыль ))
ЗА СТАТЬЮ ПРОШУ НЕ ПИНАТЬ ПИШУ НА КОЛЕНКЕ
но всетаки думаю что доступным языком ))
Ну всетаки начнем
1. Что нам понадобиться так это простой выделенный сервер либо виртуальный сервер по технологии Virtuozo....
Для экспериментов я взял за 150 рублей виртуалку
на firstvds.ru (linux debian)
и так начнем
заходим под root на наш драгоценный сервер
и начинаем производить хитрые манипуляции
если у вас по моим рекомендациям стоит всетаки линкус дебиан то в консоли просто пишем (незабываем зайти под рутом)
PHP код:
# apt-get install openvpn
теперь ваш сервак считывает предустановленные пакеты и инсталит openvpn к вам на сервер
Теперь нужно создать папку
/etc/openvpn
(если она еще не создана) и скопировать туда папку с сертификатами и конфигами. Примеры того и другого лежат в корне архива .tar.gz, если была установка из source, иначе они будут разбросаны по всей системы на усмотрение того, кто делал rpm. Вот некоторые варианты, где можно найти эти папки:
PHP код:
/etc/share/openvpn /usr/share/doc/openvpn
/usr/share/doc/packages/openvpn
Итак, надо скопировать папки easy-rsa и sample-config-files. На самом деле, примеры конфигов можно не копировать, а скопировать оттуда только файл server.conf.
Идем в /etc/openvpn/easy-rsa и выполняем следующим команды:
PHP код:
. ./vars
./clean-all
./build-ca
потом наш сервак начнет в инстале спрашивать всяческие даные,лучше отвечать по существу
так как есть риск забыть данные в конфигах
а это на самом деле чревато!
выполняем в консоли следующее
PHP код:
./build-key-server server
Аналогично, отвечать нужно на все вопросы.
Теперь делаем сертификат для клиента. Если у нас несколько клиентов, то повторяем этот шаг несколько раз, меняя номер клиента.
Важно с поле Common Name писать соответствующее имя, например client1
Настраиваем конфиг для сервера. Он должен находится в /etc/openvpn и называтся server.conf. Все что нам нужно изменить в примера конфига:
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
push "redirect-gateway def1"
push "dhcp-option DNS ваш dns"
push "dhcp-option WINS ваш dns"
user nobody
group nobody
Сохраняем файл.
Выполняем
PHP код:
iptables -t nat -A POSTROUTING -s МАСКА_ПОДСЕТИ/0 -o venet0 -j SNAT --to-source IP_АДРЕС_ВАШЕГО_ВДС'а
запускаем VPN
/etc/init.d/openvpn start
Теперь ставим OpenVPN клиент для Windows. Его можно скачать здесь: http://openvpn.se. После установки заходим в папку установки программы, например: C:\Program and Files\OpenVPN\sample-config. Открываем текстовым редактором (блокнотом) файл client.ovpn и пишем в строке
PHP код:
remote my-server-1 1194 (тут выбираеться порт я у себя ставил 5000)
IP своего сервера вместо my-server-1. Больше ничего не трогаем, сохраняем и закрываем файл.
Последнее что надо сделать, это скачать с сервера 3 файла сертификатов в эту же папку, где только что редактировали файл. Итак, скачать нужно следующие файлы:
PHP код:
/etc/openvpn/easy-rsa/keys/ca.crt
/etc/openvpn/easy-rsa/keys/client1.crt
/etc/openvpn/easy-rsa/keys/client1.key
client1 соответственно нужно заменить на нужный номер клиента. После этого переименовываем файлы, убирая цифры номера клиент, т.е. из client1.crt делаем client.crt и т.д.
Все готово для подключения и проверки.
Нажимаем правой кнопкой на файл client.ovpn и выбираем Start OpenVPN on this config file. Убеждаемся, что соединение установлено правильно
Все написанго на коленке и все работает, если есть вопросы
пожалуйста пишите в ЛС постараюсь по мере возможности ответить !
и по существу дополнить статью!