Установка и настройка OpenVPN на CentOS 5 / 6

Приветствую читателя технической части блога.

В сети до сих пор «ходят» возмущения по поводу системы СОРМ и СОРМ — 2.
Секрет полишинеля раскрыт, да, власть слушает наш, сливает наш трафик, переписки, операции и т.д.
А новые требования, вообще обязывают провайдеров хранить логи каждой операции, включая разговоры в любимом многими скайпе.

С одной стороны цель оправдана, возможно, такие меры помогают пресекать крупные преступления.
С другой стороны, свобода сети сведена на нет.
В этой статья я пошагово объясню, как сделать свой трафик нечитабельным, шифрованным, а значит сохранить его приватность.

Выбираем VPS или выделенный сервер с широким каналом.

И ставим OpenVPN:

CentOS 6 — wget http://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
CentOS 5 — wget http://dl.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm

CentOS 6 — rpm -Uvh epel-release-6-8.noarch.rpm
CentOS 5 — rpm -Uvh epel-release-5-4.noarch.rpm

yum install openvpn

Копируем дефолтный конфиг. файл:

  1. cp /usr/share/doc/openvpn-2.*/sample/sample-config-files/server.conf /etc/openvpn

Открываем /etc/openvpn/server.conf, раскомментируем следующие строки:

push «redirect-gateway def1 bypass-dhcp»
push «dhcp-option DNS 8.8.8.8» (дефолтные днс, заменить на гугл днс, или любые другие)
push «dhcp-option DNS 8.8.4.4» (дефолтные днс, заменить на гугл днс, или любые другие)
user nobody
group nobody

Генерируем ключи с сертификатами, копируем исходные скрипты в /etc/openvpn

  1. yum install easy-rsa
  2. mkdir -p /etc/openvpn/easy-rsa/keys
  3. cp -rf /usr/share/easy-rsa/2.0/* /etc/openvpn/easy-rsa

Открываем /etc/openvpn/easy-rsa/vars редактируем под себя следующие строки:

export KEY_COUNTRY=»XX»
export KEY_PROVINCE=»XX»
export KEY_CITY=»XX»
export KEY_ORG=»Elik.by»
export KEY_EMAIL=»admin@elik.by»
export KEY_CN=»srv.elik.by»
export KEY_NAME=»server»
export KEY_OU=»server»

Везде, где нет кавычек, их необходимо проставить.
Сохраняем, «поехали» далее.

Известна проблема, когда OpenVPN не может определить версию OpenSSL и не стартует, пресечем возможную проблему:

  1. cp /etc/openvpn/easy-rsa/openssl-1.0.0.cnf /etc/openvpn/easy-rsa/openssl.cnf

Задаем каталог для CA сертификата, ключей и клиентских сертификатов /etc/openvpn/easy-rsa, генерируем CA сертификат:

  1. cd /etc/openvpn/easy-rsa
  2. source ./vars
  3. ./clean-all
  4. ./build-ca

Генерируем сертификат VPN сервера, тут, в предпоследнем вопросе, рекомендую установить пароль. И дважды «y» в конце генерации.

  1. ./build-key-server server

 

Генерируем DH ключ:

  1. ./build-dh
  2. cd /etc/openvpn/easy-rsa/keys

Переносим сертификаты нашего сервера в его рабочую директорию:

  1. cp dh2048.pem ca.crt server.crt server.key ta.key /etc/openvpn

Генерируем клиентские сертификаты, для каждого подключающегося клиента свой:

  1. cd /etc/openvpn/easy-rsa
  2. ./build-key client

Разрешим клиентским пакетам ходить за пределы сети OpenVPN:

  1. iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
  2. service iptables save

Настроим IP Forwarding в sysctl, редактируем /etc/sysctl.conf

  1. net.ipv4.ip_forward = 0 меняем на net.ipv4.ip_forward = 1

По желанию, отключим логи OpenVPN:

Открываем /etc/openvpn/server.conf и в самом низу задаем параметры:

  1. verb 0
  2. log /dev/null
  3. status /dev/null

Готово, применяем параметры, запускаем OpenVPN:

  1. sysctl -p
  2. chkconfig openvpn on
  3. service openvpn start

Теперь о настройке клиента под Windows.

Качаем последнюю версию: http://openvpn.net/index.php/open-source/downloads.html на момент написания это OpenVPN 2.3.2 — released on 2013.06.03
В C:/Program Files/OpenVPN/config создаем конфигурационный файл config с расширением .ovpn, со следующим содержанием:

client
dev tun
proto udp
remote xx.xx.xx.xx 1194 — xx.xx.xx.xx = IP Вашего vps или выделенного сервера.
resolv-retry infinite
nobind
persist-key
persist-tun
comp-lzo
verb 3
ca ca.crt
cert client.crt
key client.key

В эту же директорию C:/Program Files/OpenVPN/config переносим с сервера следующие файлы:
ca.crt
ca.key
client.crt
client.key
dh1024.pem

Нажимаем правой кнопкой мышки по config.ovpn «Start OpenVPN on this configuration file».
Наслаждаемся безопасным, шифрованным каналом.


Эта запись опубликована в Технические статьи/подсказки и отмечена , , , , , , , , . Добавьте в закладки постоянную ссылку.

Комментарии:

Добавить комментарий

Войти с помощью: