The OpenNET Project / Index page

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




Версия для распечатки Пред. тема | След. тема
Новые ответы [ Отслеживать ]
Подмена внешнего адреса локальным, !*! rdiamond, 12-Янв-17, 12:58  [смотреть все]
Всем привет,
понимаю что тема поднималась не раз, и по писку я много чего нашел, но все же ничего найденного мне не помогло.

шлюз Ubuntu 16

внутр инт br0 10.90.90.1
внеш инт eth1 X.X.X.X

$IPT -P INPUT DROP
$IPT -P FORWARD ACCEPT (сделаем временно ACCEPT)
$IPT -P OUTPUT ACCEPT


$IPT -t nat -A PREROUTING  -p icmp -d 1.2.3.4 -j DNAT --to-destination 10.90.90.3
$IPT -t nat -A POSTROUTING  -d 10.90.90.3 -j SNAT --to-source 10.90.90.1


Every 2.0s: iptables -t nat -vnL                                                                                                                                                                                     Thu Jan 12 13:02:59 2017

Chain PREROUTING (policy ACCEPT 1116 packets, 306K bytes)
pkts bytes target     prot opt in     out     source               destination
    0     0 LOG        tcp  --  eth1   *       0.0.0.0/0            0.0.0.0/0            tcp dpt:5301 LOG flags 0 level 4 prefix "ipt:Synology HTTP "
    0     0 DNAT       tcp  --  eth1   *       0.0.0.0/0            0.0.0.0/0            tcp dpt:5301 to:10.90.90.3:5001
  134  8040 DNAT       icmp --  *      *       0.0.0.0/0            1.2.3.4              to:10.90.90.3
    0     0 LOG        tcp  --  eth1   *       0.0.0.0/0            0.0.0.0/0            tcp dpt:5122 LOG flags 0 level 4 prefix "ipt:SSH "
    0     0 DNAT       tcp  --  eth1   *       0.0.0.0/0            0.0.0.0/0            tcp dpt:5122 to:10.90.90.1:22
    0     0 LOG        tcp  --  eth1   *       0.0.0.0/0            0.0.0.0/0            tcp dpt:51022 LOG flags 0 level 4 prefix "ipt:SSH "
    0     0 DNAT       tcp  --  eth1   *       0.0.0.0/0            0.0.0.0/0            tcp dpt:51022 to:10.90.90.10:22
    0     0 LOG        tcp  --  eth1   *       0.0.0.0/0            0.0.0.0/0            tcp dpt:5322 LOG flags 0 level 4 prefix "ipt:SSH "
    0     0 DNAT       tcp  --  eth1   *       0.0.0.0/0            0.0.0.0/0            tcp dpt:5322 to:10.90.90.3:22
    0     0 LOG        tcp  --  eth1   *       0.0.0.0/0            0.0.0.0/0            tcp dpt:5422 LOG flags 0 level 4 prefix "ipt:SSH "
    0     0 DNAT       tcp  --  eth1   *       0.0.0.0/0            0.0.0.0/0            tcp dpt:5422 to:10.90.90.4:22
    0     0 LOG        tcp  --  eth1   *       0.0.0.0/0            0.0.0.0/0            tcp dpt:57081 LOG flags 0 level 4 prefix "ipt:ROCAM_HTTP "
    0     0 DNAT       tcp  --  eth1   *       0.0.0.0/0            0.0.0.0/0            tcp dpt:57081 to:10.90.90.70:81
    0     0 LOG        tcp  --  eth1   *       0.0.0.0/0            0.0.0.0/0            tcp dpt:5195 LOG flags 0 level 4 prefix "ipt:OpenVPN "
    0     0 DNAT       tcp  --  eth1   *       0.0.0.0/0            0.0.0.0/0            tcp dpt:5195 to:10.90.90.1:1194
    0     0 LOG        tcp  --  eth1   *       0.0.0.0/0            0.0.0.0/0            tcp dpt:5321 LOG flags 0 level 4 prefix "ipt:FTP "
    0     0 DNAT       tcp  --  eth1   *       0.0.0.0/0            0.0.0.0/0            tcp dpt:5321 to:10.90.90.3:21
    0     0 DNAT       tcp  --  eth1   *       0.0.0.0/0            0.0.0.0/0            tcp dpts:55536:55599 to:10.90.90.3:55536-55599

Chain INPUT (policy ACCEPT 181 packets, 23275 bytes)
pkts bytes target     prot opt in     out     source               destination

Chain OUTPUT (policy ACCEPT 174 packets, 18474 bytes)
pkts bytes target     prot opt in     out     source               destination
    0     0 DNAT       icmp --  *      *       0.0.0.0/0            1.2.3.4              to:10.90.90.4

Chain POSTROUTING (policy ACCEPT 259 packets, 34942 bytes)
pkts bytes target     prot opt in     out     source               destination
    0     0 SNAT       all  --  *      *       0.0.0.0/0            10.90.90.3           to:10.90.90.1
  229 14046 MASQUERADE  all  --  *      eth1    10.90.90.0/24        0.0.0.0/0


Пакеты попадают в правило DNAT, но не отрабатывается по SNAT.

  • Подмена внешнего адреса локальным, !*! rdiamond, 15:54 , 12-Янв-17 (1)

    $IPT -t nat -A PREROUTING -d $INET_ADDR -p tcp --dport $NEXTCLOUD_HTTP_DNAT -j DNAT --to-destination $APPLICATIONS_IP:$NEXTCLOUD_HTTP_PORT
    $IPT -t nat -A POSTROUTING  -s $LAN_NTWK -d $APPLICATIONS -p tcp --dport $NEXTCLOUD_HTTP_PORT -j SNAT --to-source $
    LAN_ADDR

    Заработало в итоге, но работает только при обращение по IP, если вместо IP указать FQDN (DynDNS) не работает правило.

    • Подмена внешнего адреса локальным, !*! rdiamond, 16:00 , 12-Янв-17 (2)
      Бред какой-то, само по себе заработало.
      Проблема исчерпана.
      • Подмена внешнего адреса локальным, !*! rdiamond, 18:27 , 12-Янв-17 (3)
        > Бред какой-то, само по себе заработало.
        > Проблема исчерпана.

        Вы будете смеяться, но все как-то странно, правило
        $IPT -t nat -A POSTROUTING  -s $LAN_NTWK -d $APPLICATIONS -p tcp --dport $NEXTCLOUD_HTTP_PORT -j SNAT --to-source $LAN_ADDR
        работает только в случае если на шлюзе ($LAN_ADDR) запущен tcpdump, если он выключен то и трафик не ходит, как такое возможно?
        tcpdump -vni br0 host 10.90.90.102 and port 8480

        • Подмена внешнего адреса локальным, !*! Аноним, 19:17 , 12-Янв-17 (4)
          > Вы будете смеяться

          мы таки уже. смеёмся ☺
          попкорна много. жги ещё

          > все как-то странно, правило работает только в случае если на шлюзе запущен tcpdump,
          > если он выключен то и трафик не ходит, как такое возможно?
          > tcpdump -vni br0 host 10.90.90.102 and port 8480

          неисповедимы пути твои, господи. чудеса да и только

          а если не снифирить, а пингать попробоввть - трафик бежит?

          • Подмена внешнего адреса локальным, !*! rdiamond, 20:07 , 12-Янв-17 (5)
            >> Вы будете смеяться
            > мы таки уже. смеёмся ☺
            > попкорна много. жги ещё
            >> все как-то странно, правило работает только в случае если на шлюзе запущен tcpdump,
            >> если он выключен то и трафик не ходит, как такое возможно?
            >> tcpdump -vni br0 host 10.90.90.102 and port 8480
            > неисповедимы пути твои, господи. чудеса да и только
            > а если не снифирить, а пингать попробоввть - трафик бежит?

            А вы зря смеялись, tcpdump без опции -p включает promiscious режим, потому и работает.
            Вообщем проблему решил
            up ip link set $IFACE promisc on down ip link set $IFACE promisc of




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

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