The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]




Версия для распечатки Пред. тема | След. тема
Новые ответы [ Отслеживать ]
Проброс портов в локальную сеть, !*! icognac, 15-Июл-12, 03:48  [смотреть все]
Здравствуйте. Есть сервер (Ubuntu) в интернете с настроенным openvpn. Вот его конфиг:

port 1194
dev tap0
secret /etc/openvpn/server.key
comp-lzo
daemon
log-append /var/log/openvpn.log
verb 4
ifconfig 172.16.128.1 255.255.255.0
ping 15

Есть так же клиент (172.16.128.2). Задача опубликовать vnc порты клиента на внешней ip сервера.

Вот правила iptables:
:INPUT ACCEPT [2039:1678228]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [531:61486]
-A INPUT -i tap+ -j ACCEPT
-A INPUT -p udp -m udp --dport 1194 -j ACCEPT
-A FORWARD -i eth0 -o tap+ -j ACCEPT
-A FORWARD -i tap+ -o eth0 -j ACCEPT
-A FORWARD -d 1.2.3.4/32 -p tcp -m tcp --dport 5800 -j ACCEPT
-A FORWARD -d 1.2.3.4/32 -p tcp -m tcp --dport 5900 -j ACCEPT

-t nat -A PREROUTING -p tcp -i eth0 --dport 5800 -j DNAT --to 172.16.128.2:5800
-t nat -A PREROUTING -p tcp -i eth0 --dport 5900 -j DNAT --to 172.16.128.2:5900

Кажется, все верно. Пакеты на правила в таблице nat приходят (на первое, второе должно отрабатывать после того, как будет установлена связь на порту 5800). Но в таблице FORWARD их нет. NAT не работает. На клиентском компьютере порты открыты.

Подскажите, пожалуйста, в чем может быть причина? Горит...

  • Проброс портов в локальную сеть, !*! LSTemp, 05:03 , 15-Июл-12 (1)
    • Проброс портов в локальную сеть, !*! icognac, 11:25 , 15-Июл-12 (2)
      >[оверквотинг удален]
      > 2) для поддержки проброса некоторых протоколов ч/з сервер, следует явно указать/загрузить
      > соответствующие модули iptables.
      > 3) * -j --log-prefix никто не отменял, если нативных логов от сервиса
      > не достаточно
      > 4) ну tcpdump уж на крайний случай
      > NAT не работает. На
      >> клиентском компьютере порты открыты.
      >> Подскажите, пожалуйста, в чем может быть причина? Горит...
      > Печально..... А тут как раз хрустальный шар пропал и теперь не могу
      > провидеть , что за хрень Вы по этим портам пробросить пытаетесь...

      Я же явно указал в топике: пробросить пытаюсь vnc. Для него не нужно отдельных модулей в ядре. 5800 и 5900 - два порта, которые нужны для работы сервиса. 5800 как командный, наверное.

      Подскажите, какие цепочки мне смотреть? Пакеты приходят на -t nat -A PREROUTING -p tcp -i eth0 --dport 5800 -j DNAT --to 172.16.128.2:5800, но

      -I FORWARD 1 -p tcp --dport 5800 -j LOG
      -I INPUT 1 -p tcp --dport 5800 -j LOG

      ничего не показывают.

      • Проброс портов в локальную сеть, !*! anonym, 16:26 , 15-Июл-12 (3) +1
        • Проброс портов в локальную сеть, !*! icognac, 23:55 , 15-Июл-12 (4)
          >[оверквотинг удален]
          >>> провидеть , что за хрень Вы по этим портам пробросить пытаетесь...
          >> Я же явно указал в топике: пробросить пытаюсь vnc. Для него не
          >> нужно отдельных модулей в ядре. 5800 и 5900 - два порта,
          >> которые нужны для работы сервиса. 5800 как командный, наверное.
          >> Подскажите, какие цепочки мне смотреть? Пакеты приходят на -t nat -A PREROUTING
          >> -p tcp -i eth0 --dport 5800 -j DNAT --to 172.16.128.2:5800, но
          >> -I FORWARD 1 -p tcp --dport 5800 -j LOG
          >> -I INPUT 1 -p tcp --dport 5800 -j LOG
          >> ничего не показывают.
          > А форвардинг включен?

          Включен. -t nat -A POSTROUTING -p tcp --dport 5800 -j LOG показывает, что пакеты походят.

          • Проброс портов в локальную сеть, !*! Artif, 07:05 , 16-Июл-12 (5)
            • Проброс портов в локальную сеть, !*! Artif, 07:11 , 16-Июл-12 (6)
            • Проброс портов в локальную сеть, !*! icognac, 09:50 , 17-Июл-12 (7)
              Добрый провайдер отключил vps на которой я все это поднимал, так что нужно будет делать все заново.

              >>>> 5800 и 5900 - два порта,
              >>>> которые нужны для работы сервиса. 5800 как командный, наверное.
              > Зачем в неработающей системе ненужный порт, организованный разработчиками?

              На нем java-апплет, который мне нужен.

              >>> А форвардинг включен?
              >> Включен. -t nat -A POSTROUTING -p tcp --dport 5800 -j LOG показывает,
              >> что пакеты походят.
              > Это только на шлюзе. А у VNC сервера на входе появляются? А
              > у клиента VNC сервера?

              Нет, не появляются.

              > Подсети VNC сервера, VPN канала на шлюзе и удалённого клиента разные? Если
              > нет, то как это преодолевается?

              Разные. Удаленный клиент - через интернет. VNC-сервер в локальной и vpn сети. Шлюз, соответственно, интернет и openvpn.

              > Порты у сервера и клиента открыты, а как система VNC сервера реагирует
              > на пакеты из несвоих подсетей?

              Не понял вопроса.

              >[оверквотинг удален]
              > и создавать.
              > Запустить VPN,
              > отладить пинги на все возможные адреса между двумя VPN серверами (шлюз <->
              > VNС сервер),
              > отладить пинги на все возможные адреса между двумя клиентами использующими канал (шлюз
              > <-> внешний клиент),
              > отладить пинги на все возможные адреса VNС сервер <-> внешний клиент и
              > т.д.,
              > отладить отдельно VNC сервер для локальных,
              > отлаживать VNC сервер через VPN для шлюза (или его подмены).

              До этого момента все работает.

              > отлаживать VNC сервер через VPN для внешнего клиента.
              > Инструменты: в терминале, но не в файле, журнал OpenVPN со степенью подробности
              > 5, плюс логи iptables, плюс tcpdump. Для M$ - Wireshark. Прочие
              > логи.

              Проблема - где-то во время форвардинга на сервере. Я понимаю, что вышеперечисленное - нужные мне инструменты. Я ими и пользовался. Результаты указал выше. На основе я прошу подсказать, в какую сторону мне смотреть.

      • Проброс портов в локальную сеть, !*! LSTemp, 23:30 , 17-Июл-12 (8)
        • Проброс портов в локальную сеть, !*! icognac, 14:35 , 18-Июл-12 (9)
          >[оверквотинг удален]
          >> ничего не показывают.
          > мои рекомендации:
          > - смотреть iptables -L +
          > - изучить прохождение трафика по существующим таблицам-цепочкам iptables
          > - netstat & nmap на предмет отрытых портов внутри и снаружи для
          > определения доступности сервиса
          > - tcpdump - последняя линия обороны... детальный анализ трафика
          > PS
          > или уже давайте выкладывайте все правила фаерфола в студию, чтобы не гадать,
          > а на конкретном примере разбираться.

          Проблему в конечном счете решил при помощи rinetd. В дальнейшем, может, разберусь. Но сейчас на это просто нет времени.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру