Главная » Виртуальные частные сети » OpenVPN » Основные параметры OpenVPN

📑 Основные параметры OpenVPN

Подробности использования команд и их параметры — man openvpn.

remote < host > — определяет удаленный конец туннеля. Могут использоваться записи IP и DNS.

local < host > — определяет локальный ip или имя хоста, на котором будет работать OpenVPN. Актуально, если на локальной машине несколько адресов.

dev < device > — определяет какой использовать тип устройства tun или tap. Например:

  • dev tun
  • dev tap

При одном из таких указаний будет использован свободный интерфейс tun или tap. Так же можно явно указывать номер виртуального интрефейса, например tun0.

port < port number > — указывает на каком порту будет работать OpenVPN (локально и удаленно).

proto < proto > — какой протокол будет использоваться. Возможные значения: udp, tcp, tcp-client, tcp-server.

  • tcp-client — сам пытается установить соединение
  • tcp-server — только ждет подключений

С использованием протокола udp VPN будет работать быстрее, чем tcp, но в плане стабильности работы лучше выбирать tcp (как показывает практика, VPN-соединение более устойчиво).

remote-random — если указана данная опция и в random перечисленно несколько удаленных хостов, то OpenVPN в случайном порядке будет к ним подключаться. Применяется для балансировки нагрузки.

float — позволяет удаленному хосту изменять IP во время работы туннеля. Соединение при этом не разрывается.

ipchange < cmd > — выполняет скрипт или команду указанную в < cmd >, если IP сменился. Пример:
ipchange script-ip.sh

connect-retry < seconds > — пробует переподключиться через указанное время в секундах, если соединение было разорвано.

connect-retry-max < n > — максимальное количество повторов если соединение было разорвано

resolv-retry < seconds > — если OpenVPN не удалось узнать имя удаленного хоста по DNS, то через указанное количество секунд попытаться переподключиться.

lport < port > — указывает на локальный порт для использования OpenVPN

rport < port > — аналогично для удаленного порта. Пример:
rport 8000 — OpenVPN будет пытаться подключится к удаленному порту 8000

nobind — использовать динамический порт для подключения (только для клиента)

shaper < bytes > — указывает скорость передачи данных в байтах для исходящего трафика (только для клиента)

tun-mtu < mtu size > — устанавливает максимальный размер MTU. По умолчанию tun-mtu равен 1500. Использование:
tun-mtu 1200

dev-node < interface name > — устанавливает имя виртуального интерфейса. Например:

dev-node openvpn1

ifconfig — устанавливает локальный IP и маску подсети для туннельного интерфейса. Например:

ifconfig 10.3.0.0 255.255.255.0

server < network > < mask > — автоматически присваивает адреса всем клиентам (DHCP) в указанном диапазоне с маской сети. Данная опция заменяет ifconfig и может работаеть только с TLS-клиентами в режиме TUN, соответственно использование сертификатов обязательно. Например:

server 10.3.0.0 255.255.255.0

Подключившиеся клиенты получат адреса в диапазоне между 10.3.0.3 и 10.3.0.254. Адрес 10.3.0.1 сервер оставит себе.

server-bridge < gateway > < mask > < pool > — сервер в режиме моста для TAP устройств. Пример:

server bridge 10.3.0.1 255.255.255.0 10.3.0.128 10.3.0.254

Клиентам будут выданы адреса в диапазоне 10.3.0.128 — 10.3.0.254, в качестве шлюза будет указан 10.3.0.1.

mode server — переключает OpenVPN в режим сервера (начиная с 2-й версии)

mode p2p — данная опция идет по умолчанию.

push < options > — передача клиенту конфигурационных параметров. Пример:

push "route 192.168.0.0 255.255.255.0"

Аналогично с помощью push клиенту могут передаваться следующие параметры:

route
 route-gateway
 route-delay
 redirect-gateway
 inactive
 ping, ping-exit, ping-restart
 persist-key, persist-tun
 comp-lzo
 dhcp-option
 ip-win32

Последние две опции применимы только для Window-клиентов.

comp-lzo — параметр сжатия трафика, идущего через виртуальный туннель. Может принимать значения yes, no, adaptive.

  • comp-lzo yes — принудительно включить сжатие
  • comp-lzo no — принудительно отключить сжатие
  • comp-lzo adaptive — адаптивный режим.

route < network > — устанавливает указанную маршрутизацию на VPN-хосте, после успешного запуска туннеля. Пример:
route 10.0.10.0 255.255.255.252

route-gateway < IP > — устанавливает шлюз на VPN-хосте. Пример:
route-gateway 192.168.0.22
После успешного запуска виртуального туннеля клиенту будет задан шлюз 192.168.0.22

route-delay < seconds > — указывает подождать n-секунд перед установкой маршрутов. Пример:
route-delay 5
Т.е. через 5 секунд после установки туннеля будут заданы маршруты.

route-up < cmd > — выполнить скрипт или программу < cmd > после установки маршрутов. Пример:
route-up /script.sh

redirect-gateway — установить шлюзом по умолчанию удаленный сервер. Т.е. когда удаленный пользователь подключается к нашему серверу, то ему будет задан шлюз по умолчанию на наш сервер.

ping < seconds > — указывает отсылать ping на удаленный конец тунеля после указанных n-секунд, если по туннелю не передавался никакой трафик. Пример:
ping 10

ping-restart < seconds > — если за указанное время не было получено ни одного пакета с удаленной стороны, то перезапускать туннель. Пример:
ping-restart 60 — если в течении 60 секунд не было получено ни одного пакета, то туннель будет перезапущен.

ping-timer-rem — позволяет перезапускать туннель, только когда указан удаленный адрес.

persist-tun — данная опция оставляет без изменения устройства tun/tap при перезапуске OpenVPN.

persist-key — указывает не перечитавать файлы ключей при перезапуске туннеля.

resolv-retry < seconds > — устанавливает время в секундах для запроса об удаленном имени хоста. Актуально только если используется DNS-имя удаленного хоста. Пример:
resolv-retry 86400
inactive < seconds > — после n-секунд неактивности устройство TUN/TAP автоматически отключется. Пример:
inactive 120

ping-exit < seconds > — если за указанные n-секунд не было получено ни одного пакета, то отключать OpenVPN. Пример:
ping-exit 120

keepalive < seconds > < seconds > — является совмещением сразу двух команд — ping и ping-restart. Использует сразу два параметра в секундах, перечисленных через пробел. Пример:
keepalive 10 180
Означает следующее: каждые 10 секунд посылать ping на удаленный хост, и, если за 180 секунд не было получено ни одного пакета — то перезапускать туннель.

persist-local-ip < IP > — оставлять неизменными локальный IP адрес и номер порт, если туннель был перезапущен.

persist-remote-ip < IP > — оставлять неизменными удаленный IP адрес и номер порт, если туннель был перезапущен.
persist-remote-ip 192.168.50.1

 

При перепечатке просьба вставлять активные ссылки на oslogic.ru
Copyright oslogic.ru © 2024 . All Rights Reserved.