LINUX.ORG.RU
решено ФорумAdmin

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

 , ,


0

1

Добрый день, 2й день пытаюсь объединить 2 сети: Схема такая: Поставил mikrotik, на нем поднял openvpn сервер. в офисе стоит centos 7, он подключен как клиент к сети микротика.

Суть проблемы: с centos после поднятия VPN канала доступ в локальную сеть за микротиком есть. А вот компы работающие в сети где шлюз Centos 7 сеть за микротиком не видят.

Маршруты на centos:

0.0.0.0         0.0.0.0         0.0.0.0         U     0      0        0 ppp0
10.1.1.0        10.1.1.2        255.255.255.0   UG    0      0        0 tun1
10.1.1.2        0.0.0.0         255.255.255.255 UH    0      0        0 tun1
10.1.2.0        0.0.0.0         255.255.255.0   U     0      0        0 tun0
80.234.75.96    0.0.0.0         255.255.255.255 UH    0      0        0 ppp0
169.254.0.0     0.0.0.0         255.255.0.0     U     1002   0        0 enp1s0
169.254.0.0     0.0.0.0         255.255.0.0     U     1003   0        0 enp2s0
192.168.0.0     0.0.0.0         255.255.255.0   U     0      0        0 enp2s0
192.168.20.0    10.1.2.1        255.255.255.0   UG    0      0        0 tun0

С локальных компов выжу что трафик на шлюз уходит, почему связи нет не могу понять. Где и как посмотреть?

Маршруты на микротике:

И что здесь что? Какой интерфейс это openvpn с CentOS? Какие адреса локалки в сети, где CentOs?

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

извиняюсь: OpenVPN:

10.1.2.1 - сервер микротик
10.1.2.2 - клиент centos

LAN:

192.168.20.1/24 - микротик
192.168.0.1/24 - centos

И я привел маршруты не с микротика а с centos..

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

У OpenVPN, чтобы видеть сеть за клиентом, какое-то колдунство надо применить особое в конфиге (openvpn, только не помню, сервера, или клиента). Обычного ip route add недостаточно. Оно гуглится и вполне описано, просто не помню сходу.

AS ★★★★★ ()
Последнее исправление: AS (всего исправлений: 1)
Ответ на: комментарий от AS

Так мне надо видеть сеть за сервером. странность в том что со шлюза (который в роли клиента) все работает, у меня есть доступ в сеть за сервером. А вот компы в локалке которые за этим шлюзом доступ в сеть за сервером не имеют.

В чем косяк я так и не понимаю.

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

Выше же уже написали, сервер не знает ничего о локалке клиента.
Еще раз конфиги покажите.
btw если замаскарадить локалку клиента то в одну сторону будет работать. :)

anc ★★★★★ ()
Последнее исправление: anc (всего исправлений: 1)
Ответ на: комментарий от anc

Сервер: не нашел в микротике что то на подобии как в линухе, только вот так:

/interface ovpn-server server
set certificate=mikrotik.crt_0 cipher=blowfish128,aes128,aes192,aes256,null \
    default-profile=OpenVPN enabled=yes mode=ethernet port=1195 \
    require-client-certificate=yes

Клиент:

remote myserv.st.ru 1195
dev tap

nobind
persist-key

tls-client


ca /etc/openvpn/mikrotik/ca.crt
cert /etc/openvpn/mikrotik/centos_server.crt
key /etc/openvpn/mikrotik/centos_server.key

ping 10
verb 3
ns-cert-type server
cipher AES-256-CBC
auth SHA1
pull
# эта строка задаёт файл с логином-паролем которые мы прописывали в PPP-Secrets на микротике
auth-user-pass /etc/openvpn/mikrotik/auth.cfg
профиле
#auth-user-pass
route-method exe
route-delay 2
route 192.168.20.0 255.255.255.0 10.1.2.1

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

Да это я понимаю, не понимаю только почему со шлюза который является клиентом OpenVpn я вижу локалку за сервером...

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

Сервер: не нашел в микротике что то на подобии как в линухе, только вот так:

Ищите, конфиги у openvpn везде практические одинаковые, хоть linux хоть androin &etc
Вам нужна волшебная фраза iroute что бы сервер знал о сети клиента.

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

Да ковыряю, настройки меняю, tap сейчас стоит, если это важно то могу обратно на tun переделать как я понял для моей задачи это не важно.

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

В целом нет, но раз только начинаете пробовать не надо «коноплю с грибами мешать», оставайтесь на одном сорте :) В вашем случае tun оставьте.

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

Ищите, конфиги у openvpn везде практические одинаковые, хоть linux хоть androin &etc

Я Неправ, посмотрел наискосок гугл, беру свои слова назад.

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

по другому сделал: iptables -t nat -A POSTROUTING -d 192.168.20.0/20 -s 192.168.0.0/24 -j SNAT --to 10.1.2.1

трафик забегал, только почему то все что на https отказалось работать..правда в момент когда я проверял инет пропал..завтра посмотрю

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

по другому сделал: iptables -t nat -A POSTROUTING -d 192.168.20.0/20 -s 192.168.0.0/24 -j SNAT --to 10.1.2.1

Это почти тоже самое.
1. По простому: В случае SNAT вы указываете явно какой адрес подставить, в случае MASQUERADE выбирается автоматом.
2. Я написал вариант чуть проще с указанием интерфейса.

только почему то все что на https отказалось работать..

Посмотрите на fw.
ЗЫ Тут много знатоков микротика, я с сожалению не помню кто именно, поищите в темах и кастаните сюда. Т.к. решение с маскарадом все-таки костыль.

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

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

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

Ну можно оставить один статик маршрут до роутера (я не думаю что провайдерская локалка нужна) а вю сетку в тунель.

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

Пока работает, трогать не буду, потихоньку, со временем,лучше поменяю адрессацию. Так будет надежнее и проще потом, в поисках «а почему не работает»

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