Форум русскоязычного сообщества Ubuntu


Следите за новостями русскоязычного сообщества Ubuntu в Twitter-ленте @ubuntu_ru_loco

Автор Тема: Выход в интернет через 2-а OpenVPN сервера  (Прочитано 2332 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн katrin-a-a

  • Автор темы
  • Любитель
  • *
  • Сообщений: 74
    • Просмотр профиля
Здравствуйте.
Получится ли такая схема подключения или нет?
Клиент1 подключается к OpenVPN серверу №1 ему назначается IP 10.0.1.2, этот первый OpenVPN сервер подключен к серверу №2 (через файл ovpn) и ему назначен IP 10.0.2.3 получится ли так, что клиент будет выходить в интернет с IP адреса сервера №2 или он будет выходить в интернет с IP адреса OpenVPN сервера №1?

Что хотелось бы получить:
два клиента у обоих ovpn файлы с настройками и ключами для подключения к OpenVPN серверу №1.
клиент1 получает адрес 10.0.1.2 и выходит в интернет через сервер №2
клиент2 получает адрес 10.0.1.3 и выходит в интернет через сервер №1 (к которому и подключился)

Такое реально сделать? Если я правильно понимаю на первом сервере нужно какие то настройки прописать в iptables, чтобы весь трафик для клиента с Ip 10.0.1.2 шел через 10.0.2.3 и там уже выходил в интернет?

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13756
    • Просмотр профиля
Re: Выход в интернет через 2-а OpenVPN сервера
« Ответ #1 : 20 Октября 2017, 07:04:01 »
Реально.
Если я правильно понимаю на первом сервере нужно какие то настройки прописать в iptables
Если не вдаваться в правильность терминологии, то да, примерно так и нужно сделать.
Правда придётся ещё и iproute2 задействовать.

Оффлайн katrin-a-a

  • Автор темы
  • Любитель
  • *
  • Сообщений: 74
    • Просмотр профиля
Re: Выход в интернет через 2-а OpenVPN сервера
« Ответ #2 : 20 Октября 2017, 12:53:45 »
Реально.
Если я правильно понимаю на первом сервере нужно какие то настройки прописать в iptables
Если не вдаваться в правильность терминологии, то да, примерно так и нужно сделать.
Правда придётся ещё и iproute2 задействовать.
Поискала в интернете видимо у меня мозгов не хватит настроить как хотела. А если использовать вот такую схему.
Есть только один сервер с OpenVPN при подключении к нему выдаются IP из 10.8.0.2 и т.д., подключить второй сервер к этому OpenVPN как клиент и второй сервер в сети получит IP 10.8.0.3. Когда я подключаюсь к ОpenVPN то получаю IP например 10.8.0.2 и дальше в интернет выхожу через подключенный сервер с IP 10.8.0.3 -> интернет. Подскажите, пожалуйста какие маршруты нужно добавить в OpenVPN на первом сервере, чтобы он перекидывал пользователей на 10.8.0.3 и они с него выходили в интернет. И как понимаю на 10.8.0.3 сервере тоже нужно, что-то прописать, чтобы он разрешил выход через него в интернет.

Оффлайн victor00000

  • Старожил
  • *
  • Сообщений: 15568
  • Глухонемой (Deaf)
    • Просмотр профиля
Re: Выход в интернет через 2-а OpenVPN сервера
« Ответ #3 : 20 Октября 2017, 13:03:26 »
sleep 3m && <убить в OpenVPN.>
Wars ~.o

Оффлайн katrin-a-a

  • Автор темы
  • Любитель
  • *
  • Сообщений: 74
    • Просмотр профиля
Re: Выход в интернет через 2-а OpenVPN сервера
« Ответ #4 : 20 Октября 2017, 13:49:58 »
sleep 3m && <убить в OpenVPN.>
Это какая то шутка? Как я понимаю эта команда переводит в спящий режим, через 3 минуты. Или вы предлагаете сделать скрипт который через 3 минуты после запуска будет отключать OpenVPN?
« Последнее редактирование: 20 Октября 2017, 13:52:02 от katrin-a-a »

Оффлайн victor00000

  • Старожил
  • *
  • Сообщений: 15568
  • Глухонемой (Deaf)
    • Просмотр профиля
Re: Выход в интернет через 2-а OpenVPN сервера
« Ответ #5 : 20 Октября 2017, 14:00:06 »
что понятно, я не умею впн.
Wars ~.o

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13756
    • Просмотр профиля
Re: Выход в интернет через 2-а OpenVPN сервера
« Ответ #6 : 20 Октября 2017, 14:05:41 »
Это какая то шутка?
Нет, он часто дело говорит, но его переводить надо. Правда я за несколько лет так словарик и не нашёл.

Второй вариант тоже возможен и возможно даже попроще. Думаю в ccd- клиента нужно будет указать замену default gateway на IP в сети OVPN второго сервера (только в сети OVPN он уже будет так же клиентом). На сервере OVPN нужно будет разрешить соединения между клиентами.

Оффлайн katrin-a-a

  • Автор темы
  • Любитель
  • *
  • Сообщений: 74
    • Просмотр профиля
Re: Выход в интернет через 2-а OpenVPN сервера
« Ответ #7 : 20 Октября 2017, 17:33:01 »
Это какая то шутка?
Второй вариант тоже возможен и возможно даже попроще. Думаю в ccd- клиента нужно будет указать замену default gateway на IP в сети OVPN второго сервера (только в сети OVPN он уже будет так же клиентом). На сервере OVPN нужно будет разрешить соединения между клиентами.
"На сервере OVPN нужно будет разрешить соединения между клиентами", если я вас верно поняла, то вы про то что нужно в настройках сервере OpenVPN прописать - client-to-client? Это я сделала теперь клиенты могут пинговать друг другаю

"ccd- клиента нужно будет указать", если я верно поняла, то это в настройках сервера нужно прописать настройку - client-config-dir ccd а затем в папку ccd поместить файл с таким же именем как у файла ovpn? Это сделала.

"default gateway на IP в сети OVPN второго сервера" вот этот момент не поняла как сделать. Насколько я поняла из того, что нашла в сети вы про то, что нужно прописать команду нечто вроде push "route 10.8.0.0 255.255.255.0", но что именно нужно вводить?

Сервер на котором установлен OpenVPN например имеет IP в сети интернет 84.14.2.5 (eth0) шлюз его 84.14.2.1 на нем запущен tun0 - ip 10.8.0.1. К этому сервере (84.14.2.5) подключен второй через VPN (как клиент) и получил IP 10.8.0.8 (его ip в интернете 120.5.5.40, а шлюз 120.5.5.1). Подскажите, пожалуйста, что нужно прописать в настройках ccd для подключившегося клиента (меня) и получившего IP 10.8.0.2, чтобы весь трафик стал проходить через IP 120.5.5.40?

Оффлайн victor00000

  • Старожил
  • *
  • Сообщений: 15568
  • Глухонемой (Deaf)
    • Просмотр профиля
Re: Выход в интернет через 2-а OpenVPN сервера
« Ответ #8 : 20 Октября 2017, 17:52:58 »
katrin-a-a,
ещё iptables, что можно отключать ип адресса 3м.
только спроси в фишеру умеет, должно оплата и ЛС.
Wars ~.o

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13756
    • Просмотр профиля
Re: Выход в интернет через 2-а OpenVPN сервера
« Ответ #9 : 20 Октября 2017, 21:18:52 »
должно оплата и ЛС.
Бормочащий рядом собеседник видимо меня с кем-то путает... не с собой ли?

По DG.
В ovpn есть стандартная опция "redirect-gateway def1", которая подменяет шлюз по умолчанию клиента на себя.
Вижу 2 варианта
1. попробовать ДЛЯ КЛИЕНТА добавить опцию "redirect-gateway 10.8.0.8" Сразу скажу - я не видел подобного в man-е потому будет как недокументированная опция. На пробовал, потому может и не сработать.
2. попробовать КЛИЕНТУ передать маршруты
push "route 0.0.0.0 128.0.0.0 10.8.0.8"
push "route  128.0.0.0 128.0.0.0 10.8.0.8"
Этот вариант тоже не пробовал, потому не гарантирую.

ЗЫ обращаю внимание, что эти опции должны передаваться ТОЛЬКО конечному клиенту, а не всем клиентам OVPN (для Вашей ситуации)

ЗЗЫ Пишу только про маршруты. NAT-ить клиента, естественно, тоже придётся, но это уже на следующем этапе.
« Последнее редактирование: 20 Октября 2017, 21:23:58 от fisher74 »

Оффлайн katrin-a-a

  • Автор темы
  • Любитель
  • *
  • Сообщений: 74
    • Просмотр профиля
Re: Выход в интернет через 2-а OpenVPN сервера
« Ответ #10 : 20 Октября 2017, 23:02:29 »
Спасибо вам за то, что стараетесь помочь. Искала в интернете, есть куча статей, как настроить OpenVPN, но нет ничего похожего с тем, что я хочу получить. Будем экспериментировать :-)

Цитировать
В ovpn есть стандартная опция "redirect-gateway def1", которая подменяет шлюз по умолчанию клиента на себя.
Да у меня сейчас в файле server.conf есть вот такая строчка: push "redirect-gateway def1 bypass-dhcp"
Цитировать
Вижу 2 варианта
Я создала в папке ccd два файла, один названа s2s (по этому файлу подключается второй сервер. как клиент) и второй client в нем написала:
redirect-gateway 10.8.0.8 (без кавычек)
push "route 0.0.0.0 128.0.0.0 10.8.0.8"
push "route  128.0.0.0 128.0.0.0 10.8.0.8"

в файле s2s (по которому подключается второй сервер) нужно что-то писать? Как я понимаю ему нужно передать какие то настройки, чтобы он подключился к vpn но в интерент выходил через свой шлюз 120.5.5.1.

Подключилась с Win7 к сервере OpenVPN по файлу client.ovpn, вот что показывает route print:
(Нажмите, чтобы показать/скрыть)

192.168.100.1 - домашний роутер,
84.14.2.5 - IP адреса сервера на котором OpenVPN
10.8.0.8 - IP адрес который получил второй сервер подключившись как клиент
169.254.98.19 - без понятия что это

При трасировке показывает, что первый пакет идет 10.8.0.1 далее 84.14.2.1 (шлюз OpenVPN сервера) и дальше в интернет. Как понимаю, а должно идти 10.8.0.8 -> 120.5.5.1 (шлюз второго сервера) и в интернет.

Кстати если я правильно понимаю на втором сервере нужно как то разрешить, чтобы пакеты передавались между разными сетевыми устройствами? Т.е. это нужно зайти в /etc/sysctl.conf и добавить строчку net.ipv4.ip_forward = 1 Все верно?

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13756
    • Просмотр профиля
Re: Выход в интернет через 2-а OpenVPN сервера
« Ответ #11 : 20 Октября 2017, 23:20:02 »
есть вот такая строчка:
зря. Настройки DG для каждого клиента OVPN нужны разные.
второй client в нем написала
Видимо Вы даже не понимаете что делает каждая из опций, хотя их действия очевидны.

Т.е. это нужно зайти в /etc/sysctl.con
Не бегите сразуза всеми зайцами. Разберитесь сначала с маршрутизацией. Поймите какие где должны быть маршруты, добейтесь правильного заполнения таблиц маршрутизации всех участников OVPN, а потом уже пойдёте дальше.

Оффлайн katrin-a-a

  • Автор темы
  • Любитель
  • *
  • Сообщений: 74
    • Просмотр профиля
Re: Выход в интернет через 2-а OpenVPN сервера
« Ответ #12 : 21 Октября 2017, 00:45:24 »
Цитировать
зря. Настройки DG для каждого клиента OVPN нужны разные.
Мне удалить cстрочку push "redirect-gateway def1 bypass-dhcp" из server.conf?
Цитировать
Видимо Вы даже не понимаете что делает каждая из опций, хотя их действия очевидны.
Эта строчка присутствует в мануалах по настройке OpenVPN, как понимаю она нужна, чтобы назначить шлюз для выхода в интернет, но не ясно нужна ли она в моем случае или нет.

Прописав redirect-gateway 10.8.0.8 в ccd для сlient в таблице появилась строчка: 0.0.0.0        128.0.0.0         10.8.0.8         10.8.0.2     30
Вроде как трафик должен идти через 10.8.0.8, но почему он не идет туда, а только на 10.8.0.1 и в интернет...

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13756
    • Просмотр профиля
Re: Выход в интернет через 2-а OpenVPN сервера
« Ответ #13 : 21 Октября 2017, 07:24:26 »
Мне удалить cстрочку push "redirect-gateway def1 bypass-dhcp" из server.conf?
Я только помогаю думать.

но не ясно нужна ли она в моем случае или нет.
Решайте сами.

Всегда важен алгоритм, инструменты вторичны. А алгоритм Вы должны сами продумать. Кто участник сети. Учитывая что используется виртуальная сеть, то значит, кто её участник. И какие должны быть маршруты у каждого из них.

Оффлайн victor00000

  • Старожил
  • *
  • Сообщений: 15568
  • Глухонемой (Deaf)
    • Просмотр профиля
Re: Выход в интернет через 2-а OpenVPN сервера
« Ответ #14 : 21 Октября 2017, 10:46:27 »
katrin-a-a,
есть продолжать части у фишеру.
Wars ~.o

 

Страница сгенерирована за 0.055 секунд. Запросов: 25.