OpenVPN Сравнение версий

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
wiki:openvpn [2020/12/01 21:53]
[Создание ключей и сертификатов]
wiki:openvpn [2021/09/03 11:00] (текущий)
[Создание ключей и сертификатов]
Строка 41: Строка 41:
 ==== Создание ключей и сертификатов ==== ==== Создание ключей и сертификатов ====
 Защита соединения в OpenVPN в данном случае строится на использовании сертификатов и ключей для сервера и для клиентов. Защита соединения в OpenVPN в данном случае строится на использовании сертификатов и ключей для сервера и для клиентов.
-Для их генерации в пакете OpenVPN имеются специальные скрипты,​ расположенные в **/​usr/​share/​doc/​openvpn/​examples/​easy-rsa/​2.0** Перед началом работы скопируем их, чтобы не изменять оригиналы. 
- 
-(для 12.04 LTS) 
 <​code>​ <​code>​
-mkdir /​etc/​openvpn/​easy-rsa +apt-get install ​easy-rsa
-cp -r /​usr/​share/​doc/​openvpn/​examples/​easy-rsa/​2.0 /​etc/​openvpn/​easy-rsa+
 </​code>​ </​code>​
- 
-(для 14.04 LTS) 
-С лета 2013 года easy-rsa не входит в OpenVPN и команда указанная выше не сработает(не найдет easy-rsa), 
-тогда делаем следующее:​ 
-<​code>​apt-get install easy-rsa</​code>​ 
  
 <​code>​ <​code>​
Строка 236: Строка 227:
  
 # Задаем маршрут для клиента,​ чтобы он видел сеть за OpenVPN-сервером. # Задаем маршрут для клиента,​ чтобы он видел сеть за OpenVPN-сервером.
 +# Если маршрут требуется для всех подключаемых клиентов,​ достаточно эту
 +# строку прописать в конфигурационный файл сервера server.conf ​
 push "route 192.168.1.0 255.255.255.0"​ push "route 192.168.1.0 255.255.255.0"​
 </​code>​ </​code>​
Строка 276: Строка 269:
 <note important>​Если планируется на клиенте импортировать файл настроек **.ovpn** вместе с сертификатами и ключами,​ например,​ для Android, важно в конфигурации клиента исключить строку **tls-auth**,​ вместо нее добавить **key-direction 1**. В противном случае будет ошибка вида //tls error: incoming packet authentication failed from [af_inet]//​. ​ <note important>​Если планируется на клиенте импортировать файл настроек **.ovpn** вместе с сертификатами и ключами,​ например,​ для Android, важно в конфигурации клиента исключить строку **tls-auth**,​ вместо нее добавить **key-direction 1**. В противном случае будет ошибка вида //tls error: incoming packet authentication failed from [af_inet]//​. ​
 </​note>​ </​note>​
-''​ca.crt - вставляется между тегами <​ca>​...</​ca>​ 
-client.crt - вставляется между тегами <​cert>​...</​cert>​ 
-client.key - вставляется между тегами <​key>​...</​key>​ 
-ta.key - вставляется между тегами <​tls-auth>​...</​tls-auth>''​ 
 ==== Создание файла конфигурации клиента ==== ==== Создание файла конфигурации клиента ====
 **/​etc/​openvpn/​client.conf** **/​etc/​openvpn/​client.conf**
Строка 310: Строка 299:
 mute 20 mute 20
 </​code>​ </​code>​
 +
 +==== ИЛИ единый файл конфигурации клиента client.ovpn с сертификатами и ключами для импорта ====
 +
 +<​code>​
 +client
 +dev tun
 +proto udp
 +
 +# Внеший IP, на или за которым находится ваш сервер OpenVPN и порт (на сервере или роутере,​ за которым стоит сервер)
 +remote 111.222.333.444 1194
 +
 +# необходимо для DynDNS
 +resolv-retry infinite
 +
 +tls-client
 +
 +# Строка tls-auth /​etc/​openvpn/​keys/​ta.key 1, как выше говорилось,​ заменяется на 
 +key-direction 1
 +
 +auth SHA1
 +cipher AES-256-CBC
 +remote-cert-tls server
 +comp-lzo
 +persist-key
 +persist-tun
 +
 +verb 3
 +mute 20
 +
 +# Далее идут сертификаты и ключи которые берутся из соответствующих файлов сгенерированных выше
 +
 +# Из ca.crt
 +<ca>
 +-----BEGIN CERTIFICATE-----
 +...
 +-----END CERTIFICATE-----
 +</ca>
 +
 +# Из client.crt
 +<​cert>​
 +-----BEGIN CERTIFICATE-----
 +...
 +-----END CERTIFICATE-----
 +</​cert>​
 +
 +# Из client.key
 +<key>
 +-----BEGIN PRIVATE KEY-----
 +...
 +-----END PRIVATE KEY-----
 +</​key>​
 +
 +# Из ta.key
 +<​tls-auth>​
 +-----BEGIN OpenVPN Static key V1-----
 +...
 +-----END OpenVPN Static key V1-----
 +</​tls-auth>​
 +</​code>​
 +
  
 Можно запускать наш клиент OpenVPN Можно запускать наш клиент OpenVPN