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


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

Автор Тема: Пробросить порт на клиента OpenVPN  (Прочитано 4351 раз)

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

Оффлайн faraq

  • Автор темы
  • Новичок
  • *
  • Сообщений: 10
  • :)
    • Просмотр профиля
Пробросить порт на клиента OpenVPN
« : 05 Января 2017, 14:48:19 »
Ребята, ну помогите, пожалуйста.
Как пробросить порты на клиенскую машину? Поднял впн по статье, все отлично, с одного компа в впн 10.8.0.10 захожу на веб сервер компа 10.8.0.14.
А я хочу чтобы обращаясь на внешний адрес VPN сервера(94.XX.XX.XX), открывался веб сервер с машины 10.8.0.14
« Последнее редактирование: 10 Января 2017, 09:42:11 от faraq »
эх...

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13756
    • Просмотр профиля
Re: Настройка OpenVPN
« Ответ #1 : 06 Января 2017, 00:11:00 »
Пробрасывается так же, как обычно. Или Вас пугают названия "виртуальная" и "персональная"? Это всего лишь среда носителя сети, ака транспорт. А с точки зрения строения сетей - та же локальная сеть.

А потому название топика совершенно неверное. Настройка OVPN здесь не при чём.

Оффлайн faraq

  • Автор темы
  • Новичок
  • *
  • Сообщений: 10
  • :)
    • Просмотр профиля
Re: Настройка OpenVPN
« Ответ #2 : 09 Января 2017, 12:23:11 »
Пробую делать следующим образом:
/sbin/iptables -D FORWARD -p tcp -i eth0 -d 10.8.0.14 —dport 80 -j ACCEPT
/sbin/iptables -t nat -D PREROUTING -p tcp -d (внешний айпи сервера впн) —dport 80 -j DNAT —to-destination 10.8.0.14:80

Все ровно 80ый порт пытается взять от айпи сервера, а не 10.8.0.14  :'(
К сожалению, я не разобрался с форумом, и пытался написать комментарий к теме про openVPN на ubuntu. Однако появилась новая тема.
« Последнее редактирование: 09 Января 2017, 12:25:19 от faraq »
эх...

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13756
    • Просмотр профиля
Re: Настройка OpenVPN
« Ответ #3 : 09 Января 2017, 17:32:39 »
/sbin/iptables -D FORWARD -p tcp -i eth0 -d 10.8.0.14 —dport 80 -j ACCEPT
Я бы серьёзно подумал на счёт выделенного цветом параметра


Пользователь добавил сообщение 09 Января 2017, 17:33:56:
К сожалению, я не разобрался с форумом, и пытался написать комментарий к теме про openVPN на ubuntu. Однако появилась новая тема.
это не страшно. Но исправить название темы нужно: входим в режим редактирование первого сообщения и в нём правим название темы

Оффлайн faraq

  • Автор темы
  • Новичок
  • *
  • Сообщений: 10
  • :)
    • Просмотр профиля
Re: Пробросить порт на клиента OpenVPN
« Ответ #4 : 10 Января 2017, 09:53:01 »
Я поставил тюн, все ровно не работает, думаю полезнее будет описать мои интерфейсы и правила iptables

Вывод sudo iptables -S
-P INPUT ACCEPT
-P FORWARD ACCEPT
-P OUTPUT ACCEPT
-N f2b-sshd
-A INPUT -p tcp -m multiport --dports 22 -j f2b-sshd
-A INPUT -i tun0 -p tcp -m tcp --dport 80 -j ACCEPT
-A f2b-sshd -j RETURN
Вывод прероутинг
DNAT       tcp  --  anywhere             anywhere             tcp dpt:http to:10.8.0.14:80
построутинг
MASQUERADE  all  --  10.8.0.0/24          anywhere
MASQUERADE  all  --  10.8.0.0/24          anywhere

вывод ifconfig

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0


tun0      inet addr:10.8.0.1  P-t-P:10.8.0.2  Mask:255.255.255.255
venet0    Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
          inet addr:127.0.0.2  P-t-P:127.0.0.2  Bcast:0.0.0.0  Mask:255.255.255.255
          RX bytes:17354941083 (17.3 GB)  TX bytes:17678195330 (17.6 GB)//тут кстати трафик основной

venet0:0  Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
          inet addr:(внешний айпи)  Mask:255.255.255.255
          UP BROADCAST POINTOPOINT RUNNING NOARP  MTU:1500  Metric:1
« Последнее редактирование: 10 Января 2017, 09:55:07 от faraq »
эх...

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13756
    • Просмотр профиля
Re: Пробросить порт на клиента OpenVPN
« Ответ #5 : 10 Января 2017, 13:15:36 »
iptables-save покажите, пжлст

Оффлайн faraq

  • Автор темы
  • Новичок
  • *
  • Сообщений: 10
  • :)
    • Просмотр профиля
Re: Пробросить порт на клиента OpenVPN
« Ответ #6 : 10 Января 2017, 13:40:43 »
Такое у меня там... Уууу...
# Generated by iptables-save v1.6.0 on Tue Jan 10 05:38:14 2017
*mangle
:PREROUTING ACCEPT [28437195:18134520042]
:INPUT ACCEPT [8353087:1332799339]
:FORWARD ACCEPT [20084102:16801720151]
:OUTPUT ACCEPT [13161170:17479677932]
:POSTROUTING ACCEPT [33245254:34281396667]
COMMIT
# Completed on Tue Jan 10 05:38:14 2017
# Generated by iptables-save v1.6.0 on Tue Jan 10 05:38:14 2017
*nat
:PREROUTING ACCEPT [54091:6788493]
:POSTROUTING ACCEPT [12:833]
:OUTPUT ACCEPT [12:833]
-A PREROUTING -i venet0:0 -p tcp -m tcp --dport 80 -j DNAT --to-destination 10.8.0.14:80
-A POSTROUTING -s 10.8.0.0/24 -o venet0 -j MASQUERADE
-A POSTROUTING -s 10.8.0.0/24 -o venet0 -j MASQUERADE
COMMIT
# Completed on Tue Jan 10 05:38:14 2017
# Generated by iptables-save v1.6.0 on Tue Jan 10 05:38:14 2017
*raw
:PREROUTING ACCEPT [28437195:18134520042]
:OUTPUT ACCEPT [13161170:17479677932]
COMMIT
# Completed on Tue Jan 10 05:38:14 2017
# Generated by iptables-save v1.6.0 on Tue Jan 10 05:38:14 2017
*filter
:INPUT ACCEPT [8248121:1282831553]
:FORWARD ACCEPT [20055668:16791904055]
:OUTPUT ACCEPT [13053657:17430217715]
:f2b-sshd - [0:0]
-A INPUT -p tcp -m multiport --dports 22 -j f2b-sshd
-A INPUT -i tun0 -p tcp -m tcp --dport 80 -j ACCEPT
-A f2b-sshd -j RETURN
COMMIT
эх...

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13756
    • Просмотр профиля
Re: Пробросить порт на клиента OpenVPN
« Ответ #7 : 10 Января 2017, 14:53:34 »
Такое у меня там... Уууу...
Вполне прилично, видели и пострашнее.

-A PREROUTING -i venet0:0 -p tcp -m tcp --dport 80 -j DNAT --to-destination 10.8.0.14:80
лучше добавить -d внешний_адрес

Дальше: на этом же шлюзе покажите, что покажет
sysctl net.ipv4.ip_forward
Дальше: с клиента VPN 10.8.0.14 покажите ip a; ip r| (если не *nix, то туже информацию)

Оффлайн faraq

  • Автор темы
  • Новичок
  • *
  • Сообщений: 10
  • :)
    • Просмотр профиля
Re: Пробросить порт на клиента OpenVPN
« Ответ #8 : 10 Января 2017, 15:27:33 »
Вывод sysctl
net.ipv4.ip_forward = 1

P.S. C одного из клиентов на порт 80 10.8.0.14 заходит.
Вывод ipconfig /all
Ethernet adapter Ethernet 2:

   DNS-суффикс подключения . . . . . :
   Описание. . . . . . . . . . . . . : TAP-Windows Adapter V9
   DHCP включен. . . . . . . . . . . : Да
   Автонастройка включена. . . . . . : Да
   IPv4-адрес. . . . . . . . . . . . : 10.8.0.14(Основной)
   Маска подсети . . . . . . . . . . : 255.255.255.252
   Аренда получена. . . . . . . . . . : 8 января 2017 г. 20:21:50
   Срок аренды истекает. . . . . . . . . . : 8 января 2018 г. 20:21:50
   Основной шлюз. . . . . . . . . :
   DHCP-сервер. . . . . . . . . . . : 10.8.0.13
   DNS-серверы. . . . . . . . . . . : 8.8.8.8
   NetBios через TCP/IP. . . . . . . . : Включен

Ethernet adapter Ethernet:

   DNS-суффикс подключения . . . . . :
   Описание. . . . . . . . . . . . . : Контроллер семейства Realtek PCIe FE
   DHCP включен. . . . . . . . . . . : Да
   Автонастройка включена. . . . . . : Да
   IPv4-адрес. . . . . . . . . . . . : 192.168.1.8(Основной)
   Маска подсети . . . . . . . . . . : 255.255.255.0
   Аренда получена. . . . . . . . . . : 5 января 2017 г. 14:24:42
   Срок аренды истекает. . . . . . . . . . : 16 февраля 2153 г. 21:52:40
   Основной шлюз. . . . . . . . . : 192.168.1.1
   DHCP-сервер. . . . . . . . . . . : 192.168.1.1
   DNS-серверы. . . . . . . . . . . : 77.88.8.88
                                       77.88.8.2
   NetBios через TCP/IP. . . . . . . . : Включен

Туннельный адаптер isatap.{}:

   Состояние среды. . . . . . . . : Среда передачи недоступна.
   DNS-суффикс подключения . . . . . :
   Описание. . . . . . . . . . . . . : Адаптер Microsoft ISATAP
   Физический адрес. . . . . . . . . : 00-00-00-00-00-00-00-E0
   DHCP включен. . . . . . . . . . . : Нет
   Автонастройка включена. . . . . . : Да

Туннельный адаптер Teredo Tunneling Pseudo-Interface:

   Состояние среды. . . . . . . . : Среда передачи недоступна.
   DNS-суффикс подключения . . . . . :
   Описание. . . . . . . . . . . . . : Teredo Tunneling Pseudo-Interface
   Физический адрес. . . . . . . . . : 00-00-00-00-00-00-00-E0
   DHCP включен. . . . . . . . . . . : Нет
   Автонастройка включена. . . . . . : Да

Туннельный адаптер isatap.{}:

   Состояние среды. . . . . . . . : Среда передачи недоступна.
   DNS-суффикс подключения . . . . . :
   Описание. . . . . . . . . . . . . : Адаптер Microsoft ISATAP #2
   Физический адрес. . . . . . . . . : 00-00-00-00-00-00-00-E0
   DHCP включен. . . . . . . . . . . : Нет
   Автонастройка включена. . . . . . : Да
эх...

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13756
    • Просмотр профиля
Re: Пробросить порт на клиента OpenVPN
« Ответ #9 : 10 Января 2017, 17:16:07 »
больше интересует его таблица маршрутизации
Хотя не нужна. И так видно, что дефолтный шлюз у http-сервера явно не через туннель.
Это решается ректально
sudo iptables -t nat -A POSTROUTING -o -tun0 -j SNAT --to-source 10.8.0.1
Почему ректально? А потому что все запросы на http-сервер будут производиться от имени OVPN-сервера.
« Последнее редактирование: 10 Января 2017, 17:20:05 от fisher74 »

Оффлайн faraq

  • Автор темы
  • Новичок
  • *
  • Сообщений: 10
  • :)
    • Просмотр профиля
Re: Пробросить порт на клиента OpenVPN
« Ответ #10 : 10 Января 2017, 18:16:39 »
route print
IPv4 таблица маршрута
===========================================================================
Активные маршруты:
Сетевой адрес           Маска сети      Адрес шлюза       Интерфейс  Метрика
          0.0.0.0          0.0.0.0      192.168.1.2      192.168.1.8     20
          0.0.0.0        128.0.0.0        10.8.0.13        10.8.0.14     20
         10.8.0.0    255.255.255.0        10.8.0.13        10.8.0.14     20
        10.8.0.12  255.255.255.252         On-link         10.8.0.14    276
        10.8.0.14  255.255.255.255         On-link         10.8.0.14    276
        10.8.0.15  255.255.255.255         On-link         10.8.0.14    276
   (внешний адрес опенвпн сервера)  255.255.255.255      192.168.1.2      192.168.1.8     20
        127.0.0.0        255.0.0.0         On-link         127.0.0.1    306
        127.0.0.1  255.255.255.255         On-link         127.0.0.1    306
  127.255.255.255  255.255.255.255         On-link         127.0.0.1    306
        128.0.0.0        128.0.0.0        10.8.0.13        10.8.0.14     20
      192.168.1.0    255.255.255.0         On-link       192.168.1.8    276
      192.168.1.8  255.255.255.255         On-link       192.168.1.8    276
    192.168.1.255  255.255.255.255         On-link       192.168.1.8    276
        224.0.0.0        240.0.0.0         On-link         127.0.0.1    306
        224.0.0.0        240.0.0.0         On-link         10.8.0.14    276
        224.0.0.0        240.0.0.0         On-link       192.168.1.8    276
  255.255.255.255  255.255.255.255         On-link         127.0.0.1    306
  255.255.255.255  255.255.255.255         On-link         10.8.0.14    276
  255.255.255.255  255.255.255.255         On-link       192.168.1.8    276
===========================================================================

Используя
sudo iptables -t nat -A POSTROUTING -o -tun0 -j SNAT --to-source 10.8.0.1После этого можно будет пробрасывать и другие порты на клиентов впн?

добавил этот построутинг теперь "Сайт не позволяет установить соединение." что-то новое :))
« Последнее редактирование: 10 Января 2017, 18:34:02 от faraq »
эх...

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13756
    • Просмотр профиля
Re: Пробросить порт на клиента OpenVPN
« Ответ #11 : 10 Января 2017, 18:38:54 »
опечатко получилось. Перед tun0 "-" ошибочен
sudo iptables -t nat -A POSTROUTING -o tun0 -j SNAT --to-source 10.8.0.1
После ввода этого правила, покажите полный список правил
sudo iptables-save

Оффлайн faraq

  • Автор темы
  • Новичок
  • *
  • Сообщений: 10
  • :)
    • Просмотр профиля
Re: Пробросить порт на клиента OpenVPN
« Ответ #12 : 10 Января 2017, 18:54:16 »
Удалил старое, добавил заново
sudo iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination 10.8.0.14:80
Вроде помогло! Сейчас буду тестировать остальные порты. Большое спасибо.

iptables такой:
# Generated by iptables-save v1.6.0 on Tue Jan 10 10:53:36 2017
*mangle
:PREROUTING ACCEPT [29002427:18423483818]
:INPUT ACCEPT [8583365:1418566251]
:FORWARD ACCEPT [20419053:17004916739]
:OUTPUT ACCEPT [13424410:17685824487]
:POSTROUTING ACCEPT [33843445:34690739810]
COMMIT
# Completed on Tue Jan 10 10:53:36 2017
# Generated by iptables-save v1.6.0 on Tue Jan 10 10:53:36 2017
*nat
:PREROUTING ACCEPT [28:2677]
:POSTROUTING ACCEPT [2:104]
:OUTPUT ACCEPT [0:0]
-A PREROUTING -p tcp -m tcp --dport 80 -j DNAT --to-destination 10.8.0.14:80
-A POSTROUTING -s 10.8.0.0/24 -o venet0 -j MASQUERADE
-A POSTROUTING -s 10.8.0.0/24 -o venet0 -j MASQUERADE
-A POSTROUTING -o -tun0 -j SNAT --to-source 10.8.0.1
COMMIT
# Completed on Tue Jan 10 10:53:36 2017
# Generated by iptables-save v1.6.0 on Tue Jan 10 10:53:36 2017
*raw
:PREROUTING ACCEPT [29002427:18423483818]
:OUTPUT ACCEPT [13424410:17685824487]
COMMIT
# Completed on Tue Jan 10 10:53:36 2017
# Generated by iptables-save v1.6.0 on Tue Jan 10 10:53:36 2017
*filter
:INPUT ACCEPT [8478399:1368598465]
:FORWARD ACCEPT [20390619:16995100643]
:OUTPUT ACCEPT [13316897:17636364270]
:f2b-sshd - [0:0]
-A INPUT -p tcp -m multiport --dports 22 -j f2b-sshd
-A INPUT -i tun0 -p tcp -m tcp --dport 80 -j ACCEPT
-A f2b-sshd -j RETURN
COMMIT
# Completed on Tue Jan 10 10:53:36 2017
эх...

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13756
    • Просмотр профиля
Re: Пробросить порт на клиента OpenVPN
« Ответ #13 : 10 Января 2017, 19:02:51 »
-A PREROUTING -p tcp -m tcp --dport 80 -j DNAT --to-destination 10.8.0.14:80
плохое правило. Через туннель клиенты не смогут нормально по http ходить(не на Ваш http-сервер)

И "больное" правило удалите и дубль
sudo iptables -t nat -D POSTROUTING -o -tun0 -j SNAT --to-source 10.8.0.1
sudo iptables -t nat -D POSTROUTING  -s 10.8.0.0/24 -o venet0 -j MASQUERADE
не помешают, конечно, но будут Вас же потом путать.

Оффлайн faraq

  • Автор темы
  • Новичок
  • *
  • Сообщений: 10
  • :)
    • Просмотр профиля
Re: Пробросить порт на клиента OpenVPN
« Ответ #14 : 10 Января 2017, 19:06:30 »
плохое правило. Через туннель клиенты не смогут нормально по http ходить(не на Ваш http-сервер)
Почему плохо? Сервер находится за строгим НАТом, провайдер заламывает 400р в месяц за белый ip, а сервер имеет посредственное значение, он важен для 5 человек моей семьи. (Если можно сделать лучше то с удовольствием)
Я совсем не понял почему тунель, ммы же просто сказали перенаправлять трафик 80 на внп клиента?

А дубль удалить любое из этих правил?
« Последнее редактирование: 10 Января 2017, 19:08:02 от faraq »
эх...

 

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