LINUX.ORG.RU
ФорумAdmin

Запуск нескольких OpenVPN на одном компу через разные интерфейсы

 , ,


0

1

Добрый день! Требуется запустить несколько OpenVPN клиентов через разные интерфейсы

Вот server.conf

# Порт для подключений
port 1194
proto udp
# Устройство
dev tun

# Расположение сертификатов и ключей
ca "/etc/openvpn/keys/ca.crt"
cert "/etc/openvpn/keys/server.crt"
key "/etc/openvpn/keys/server.key" 


dh "/etc/openvpn/keys/dh1024.pem"

# Параметры для виртуального туннеля сервера VPN
server 10.10.10.0 255.255.255.0
ifconfig-pool-persist ipp.txt
# Прописываем маршруты
push "route 10.10.10.0 255.255.255.0"
push "redirect-gateway"
push "dhcp-option DNS 8.8.8.8"

# Разрешаем клиентам обмениваться пакетами
client-to-client

# Максимальное количество одновременно подключенных
# клиентов, которое мы хотим разрешить.
;max-clients 100

# Проверяем соединение каждые 10 секунд, если его нет то через 30 секунд переподключаем
keepalive 10 30
# Используем компрессию
comp-lzo
# Назначаем пользователя и группу для работы с OpenVPN
user nobody
group nobody
# Не перечитывать ключи после получения SIGUSR1 или ping-restart
persist-key
# Не закрывать или переоткрывать TUN\TAP устройство, после получения SIGUSR1 или ping-restart
persist-tun
# Записывать статус сервера OpenVPN
status openvpn-status.log
# Логи
log /var/log/openvpn.log
# Уровень отладки
verb 3
mute 10

topology subnet

# включаем TLS аутификацию
tls-server
# указываем tls-ключ, и указываем 0 для сервера, а 1 для клиента
tls-auth "/etc/openvpn/keys/ta.key" 0
# таймаут до реконекта
tls-timeout 120
auth MD5

# Раскомментируйте эту директиву, если несколько клиентов
# могут подключаться с одинаковыми файлам сертификата/ключа
# или common names.  Это рекомендуется
# только в целях тестирования.  В промышленном использовании
# каждый клиент должен иметь свою собственную пару
# сертификат/ключ.
#
# ЕСЛИ У ВАС НЕ СГЕНЕРИРОВАННА ИНДИВИДУАЛЬНАЯ
# ПАРА СЕРТИФИКАТ/КЛЮЧ ДЛЯ КАЖДОГО КЛИЕНТА И
# КАЖДЫЙ КЛИЕНТ НЕ ИМЕЕТ СВОЕГО УНИКАЛЬНОГО "COMMON NAME",
# РАСКОММЕНТИРУЙТЕ ЭТУ СТРОКУ.
duplicate-cn

Вот клиент-1

client
dev tun0
#dev-node openvpn1
proto udp

# IP-адрес и порт сервера OpenVPN
remote 37.143.14.62  1194
local 192.168.1.100
lport 1196

resolv-retry infinite
;nobind
persist-key
persist-tun
tls-client
tls-auth "/etc/openvpn/keys/ta.key" 1
auth MD5
#Это еще одна защита, на этот раз от "man in the middle" атаки
ns-cert-type server
comp-lzo yes
verb 3

ca "/etc/openvpn/keys/ca.crt"


cert "/etc/openvpn/keys/oper01.crt"
key "/etc/openvpn/keys/oper01.key"

keepalive 10 30
float
user nobody
group nogroup

и клиент 2

client
dev tun1
#dev-node openvpn1
proto udp

# IP-адрес и порт сервера OpenVPN
remote 37.143.14.62  1194
local 192.168.3.100
lport 1193

resolv-retry infinite
;nobind
persist-key
persist-tun
tls-client
tls-auth "/etc/openvpn/keys/ta.key" 1
auth MD5
#Это еще одна защита, на этот раз от "man in the middle" атаки
ns-cert-type server
comp-lzo yes
verb 3

ca "/etc/openvpn/keys/ca.crt"


cert "/etc/openvpn/keys/w.crt"
key "/etc/openvpn/keys/w.key"

keepalive 10 30
float
user nobody
group nogroup

По одному они работают, а сразу два не хотят Подозреваю что проблема в прописки роутера по дефолту в системе

push "redirect-gateway"
Не знаю, как быть пожалуйста подскажите

Посмотреть внимательно на таблицу маршрутов хоста после подключения клиентов и убрать лишнее/добавить недостающее.

Как вариант - расшифровать, зачем это понадобилось - может посоветуют другое решение задачи.

Elyas ★★★★★
()
Ответ на: комментарий от Elyas

Есть несколько интернет каналов, хочу их объединить и настроить балансировку. Но нужно что бы весь трафик шел через vpn канал, так как идет блокировка sip трафика. Прошил роутер, поставил OpenWRT+luci+mwan3-openvpn-polaris Все хорошо. Далее настраиваю openvpn, что бы при запуске openvpn трафик шел через определенный интерфейс указываю

local 192.168.1.100
lport 1196 
А при втором запуске клиента не получается

fudeglan
() автор топика
Ответ на: комментарий от lvi

Спасибо. Тогда как мне быть, как мне запустить несколько openvpn клиентов, что бы их трафик шел через разные интерфейсы на примере ping-га

ping ya.ru -I eth1
ping ya.ru -I eth2
Типо этого параметра -I :)

fudeglan
() автор топика
Ответ на: комментарий от fudeglan

Тогда как мне быть, как мне запустить несколько openvpn клиентов, что бы их трафик шел через разные интерфейсы

iproute2 + iptables.
Поясню, проблема не в самом ovpn а таблице роутинга, предположим у нас eth0 1.1.1.1 eth1 2.2.2.2 defroute 1.1.1.254 - так вот даже если вы отправите пакет с адреса 2.2.2.2 он все равно пойдет маршрутом на 1.1.1.254.
ЗЫ Вообще вопросы очень странные, при учете что «Есть несколько интернет каналов, хочу их объединить и настроить балансировку. » - т.е. это вы как бы в курсе как делать.
ЗЫЫ Не сразу обратил внимание на то что речь про openwrt, но оставлю, смысл один и тот же.

anc ★★★★★
()
Ответ на: комментарий от fudeglan

В конфиге сервера

push «route 10.10.10.0 255.255.255.0» - лишнее

Если сервер нужен только для этих 2-х клиентов, то вместо одного мультиклиентского поднять два точка-точка на разных портах. На клиентской машине соответствующих клиентов разрулить по номеру порта.

iproute2 + iptables.
anc ★★★★ (03.08.2016 19:34:01)

lvi ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.