Таблицы IP как основной прокси, не функционирующий как ожидалось

Я пытаюсь выполнить простую пакетную передачу на сервере Ubuntu 14.04 (IP=192.168.36.217) с помощью iptables. Я хочу взять входящие пакеты, предназначенные к серверу на конкретном порте и переписать их новому месту назначения с указанным портом (HTTPS) и исходный набор IP к этому порту сервера и исходному порту, настроенному с NAT, таким образом, он может быть инвертирован на возвращаемых пакетах.

Искажение таблиц, сырые данные и безопасность пусты. Все правила всех таблиц имеют значение по умолчанию, ПРИНИМАЮТ. У меня есть 1 правило DNAT в PREROUTING и 1 правило SNAT в POSTROUTING. Затем я добавил некоторые правила ЖУРНАЛА только для проверки то, что происходило. Вот то, на что похожи туземные таблицы и фильтр:

Таблица фильтра

Chain INPUT (policy ACCEPT 249 packets, 15888 bytes)
num   pkts bytes target     prot opt in     out     source               destination
1      143  8348 LOG        tcp  --  *      *       10.15.4.115          0.0.0.0/0            LOG flags 0 level 4 prefix "l++: INP of interest: "

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
num   pkts bytes target     prot opt in     out     source               destination

Chain OUTPUT (policy ACCEPT 169 packets, 12148 bytes)
num   pkts bytes target     prot opt in     out     source               destination
1        0     0 LOG        tcp  --  *      *       0.0.0.0/0            45.45.45.45          LOG flags 0 level 4 prefix "l++: filter\OUTPUT : "

туземная Таблица

Chain PREROUTING (policy ACCEPT 2762 packets, 279K bytes)
num   pkts bytes target     prot opt in     out     source               destination
1       33  1672 LOG        tcp  --  *      *       10.15.4.115          0.0.0.0/0            tcp dpt:65001 LOG flags 0 level 4 prefix "l++: nat PRE "
2       15   760 DNAT       tcp  --  *      *       10.15.4.115          0.0.0.0/0            tcp dpt:65001 to:45.45.45.45:45001
3        0     0 LOG        tcp  --  *      *       10.15.4.115          0.0.0.0/0            LOG flags 0 level 4 prefix "l++: nat PRE BOT"

Chain INPUT (policy ACCEPT 263 packets, 46239 bytes)
num   pkts bytes target     prot opt in     out     source               destination
1        0     0 LOG        all  --  *      *       10.15.4.115          0.0.0.0/0            LOG flags 0 level 4 prefix "l++: nat INP: "

Chain OUTPUT (policy ACCEPT 60 packets, 4285 bytes)
num   pkts bytes target     prot opt in     out     source               destination

Chain POSTROUTING (policy ACCEPT 60 packets, 4285 bytes)
num   pkts bytes target     prot opt in     out     source               destination
1        0     0 LOG        tcp  --  *      *       10.15.4.115          0.0.0.0/0            LOG flags 0 level 4 prefix "l++: nat POST end: "
2        0     0 SNAT       tcp  --  *      em1     10.15.4.115          0.0.0.0/0            to:192.168.36.217
3        0     0 LOG        tcp  --  *      em1     192.168.36.217       0.0.0.0/0            LOG flags 0 level 4 prefix "l++: nat POST after SNAT: "
4        0     0 LOG        tcp  --  *      em1     10.15.4.115          0.0.0.0/0            LOG flags 0 level 4 prefix "l++: nat POST after SNAT what"

Когда я тестирую (от 10.15.4.115: telnet 192.168.36.217 65001), это - все, что я вижу в системном журнале сообщений:

May 19 15:20:40 LDAP-Proxy kernel: [1891508.926283] l++: nat PRE IN=em1 OUT=  
MAC=<omitted> SRC=10.15.4.115 DST=192.168.36.217 LEN=52 TOS=0x00 PREC=0x00 
TTL=127 ID=21164 DF PROTO=TCP SPT=59394 DPT=65001 WINDOW=64512 RES=0x00 SYN 
URGP=0

Я полагаю, что у меня есть правило PREROUTING, загнанное в угол с правилами ЖУРНАЛА. Пакет входит, добирается до правила DNAT и быстро исчезает.

Я с удовольствием получу любые предложения, идеи, произвольные предположения на этом проступке.Спасибо!

0
задан 19 May 2016 в 23:42

1 ответ

В дополнение к надлежащему набору правила iptables, передавая потребности, которые будут включены в ядре. Проверьте текущую установку (который значения по умолчанию к отключенному):

cat /proc/sys/net/ipv4/ip_forward

И если это отключило (0) затем, это может быть включено (не персистентное) через:

echo 1 | sudo tee /proc/sys/net/ipv4/ip_forward

или (все еще не персистентный) через:

sudo sysctl -w net.ipv4.ip_forward=1

Для персистентной установки (после следующей перезагрузки), отредактируйте как sudo файл /etc/sysctl.conf и изменение эта строка:

# Uncomment the next line to enable packet forwarding for IPv4
#net.ipv4.ip_forward=1

К этому:

# Uncomment the next line to enable packet forwarding for IPv4
net.ipv4.ip_forward=1
1
ответ дан 23 December 2019 в 17:34

Другие вопросы по тегам:

Похожие вопросы: