образовательная корпорация
Создать
Править
Отменить
Вверх

Левое меню

Последние

Изменить меня

1
Вкладки

Асгард сеть

Самарт сеть


openvpn

https://1cloud.ru/help/linux/kak-ustanovit-i-nastroit-openvpn-na-centos7
http://debian-help.ru/articles/ustanovka-nastroika-openvpn-servera-debian-6/
http://www.umgum.com/openvpn-client-iphone-ipad-ipod
https://zorrovpn.com/howto/openvpn/ios?lang=ru

https://serveradmin.ru/nastroyka-openvpn-na-centos-7/
https://habrahabr.ru/post/250859/

Подключаем репу

yum install epel-release

Прежде всего, необходимо установить OpenVPN. Также мы установим инструмент Easy RSA — он будет использоваться для создания пар SSL-ключей, которые обеспечат безопасность VPN-соединений.

yum install openvpn easy-rsa –y

В директории документации OpenVPN содержатся файлы с тестовыми конфигурациями программы. Скопируем файл server.conf — на его основе мы создадим свою конфигурацию.

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

Подредактируем
dh dh2048.pem
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

Шаг #3: Создание ключей и сертификатов
Создадим директорию, в которой будут храниться ключи:
mkdir -p /etc/openvpn/easy-rsa/keys
В эту директорию нужно скопировать скрипты для генерации ключей и сертификатов:
cp -rf /usr/share/easy-rsa/2.0/* /etc/openvpn/easy-rsa

редактируем
/etc/openvpn/easy-rsa/vars

  KEY_NAME: Следует указать значение server, иначе придется вносить изменения в конфигурационные файлы, в которых упоминается server.key и server.crt.
  KEY_CN: здесь надо написать домен или поддомен, который указывает на ваш сервер.

# These are the default values for fields
# which will be placed in the certificate.
# Don't leave any of these fields blank.
export KEY_COUNTRY=«RU»
export KEY_PROVINCE=«Moscow»
export KEY_CITY=«Moscow»
export KEY_ORG=«OOO Romashka»
export KEY_EMAIL=«ivan@example.com»
export KEY_OU=«Community»

# X509 Subject Field
export KEY_NAME=«server»

export KEY_CN=openvpn.example.com

Также следует предотвратить возможность сбоя загрузки конфигурации SSL из-за невозможности определения версии программы. Для скопируем нужный конфигурационный файл и удалим из названия номер версии:

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

Теперь создадим ключи и сертификаты. Для этого перейдем в директорию easy-rsa и запустим команду source для новых переменных:
cd /etc/openvpn/easy-rsa
source ./vars

Затем нужно удалить все предыдущие версии ключей и сертификатов, которые могут содержаться в этой директории:
./clean-all

Указываем информацию об организации, выдавшей сертификат:
./build-ca

Система задаст несколько вопросов, но поскольку мы уже вносили необходимые данные в конфигурационный файл, можно просто нажимать Enter вместо ответа.
./build-key-server server

Также нужно сгенерировать файл обмена по алгоритму Диффи-Хеллмана. Процесс может занять несколько минут:
./build-dh

Теперь скопируем созданные сертификаты и ключи в директорию OpenVPN.
cd /etc/openvpn/easy-rsa/keys
cp dh2048.pem ca.crt server.crt server.key /etc/openvpn

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

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

iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
iptables-save > /etc/sysconfig/iptables

/etc/sysctl.conf
net.ipv4.ip_forward = 1

systemctl restart network.service

Шаг 5: Запуск OpenVPN

Теперь все готово к запуску OpenVPN. Добавим этот сервис в systemctl:
systemctl -f enable openvpn@server.service

Запускаем OpenVPN:
systemctl start openvpn@server.service

Шаг 6: Настройка клиента
Необходимые сертификаты (в нашем случае для клиента «client») хранятся в директории /easy-rsa:
/etc/openvpn/easy-rsa/keys/ca.crt
/etc/openvpn/easy-rsa/keys/client.crt
/etc/openvpn/easy-rsa/keys/client.key

Теперь создадим файл под client.ovpn - конфигурационный файл для клиента OpenVPN. В нем содержатся параметры подключения к серверу. Ниже представлено содержимое этого файла, в котором необходимо заменить имя клиента (в нашем случае client), указать корректный ip-адрес сервера и верный путь к файлам сертификатов и ключей:
client
dev tun
proto udp
remote your_server_ip 1194
resolv-retry infinite
nobind
persist-key
persist-tun
comp-lzo
verb 3
ca /path/to/ca.crt
cert /path/to/client.crt
key /path/to/client.key

Теперь этот файл можно использовать для подключения к серверу.

-A INPUT -p udp -i enp1s0 –dport 1194 -j ACCEPT
-A POSTROUTING -s 10.8.0.0/24 -o enp1s0 -j MASQUERADE

-A INPUT -i lo -j ACCEPT

-A INPUT -i tun+ -j ACCEPT
-A INPUT -i tap+ -j ACCEPT
-A INPUT -j REJECT
-A FORWARD -m state –state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -s 10.8.0.0/24 -j ACCEPT
-A FORWARD -i tun+ -j ACCEPT
-A FORWARD -i tap+ -j ACCEPT
-A FORWARD