Задать вопрос
@servicebro

Могли бы вы подсказать что я забыл добавить в netfilter?

Очень стыдно, но я спрошу.
Есть tap интерфейс ( openvpn )
Делаю чтобы пакеты определенного пользователя шли через этот интерфейс
добавил правила mangle, ip route/rule

iptables
-A OUTPUT -m owner --uid-owner 1001 -j MARK --set-xmark 0x16/0xffffffff # это 22


ip route/rule
ip route add default via 10.11.1.1 dev tap0 table 1133
ip rule add fwmark 22 table 1133


Запускаю на клиенте
sudo -u conntest /usr/bin/curl https://api.ipify.org?format=json


Смотрю на сервере openvpn tcpdumр и вижу что пакеты приходят

16:01:42.443228 IP cli.ent.ip.add.50756 > dns.google.domain: 2356+ A? api.ipify.org. (31)
16:01:42.443275 IP cli.ent.ip.add.50756 > dns.google.domain: 37680+ AAAA? api.ipify.org. (31)
16:01:47.448345 IP cli.ent.ip.add.36315 > c.resolvers.level3.net.domain: 2356+ A? api.ipify.org. (31)
16:01:47.448392 IP cli.ent.ip.add.36315 > c.resolvers.level3.net.domain: 37680+ AAAA? api.ipify.org. (31)
16:01:47.659689 ARP, Request who-has 10.11.1.1 tell 10.11.1.2, length 28
16:01:47.659700 ARP, Reply 10.11.1.1 is-at xx:xx:xx:xx:xx:xx (oui Unknown), length 28
16:01:52.453516 IP cli.ent.ip.add.50756 > dns.google.domain: 2356+ A? api.ipify.org. (31)
16:01:52.453556 IP cli.ent.ip.add.50756 > dns.google.domain: 37680+ AAAA? api.ipify.org. (31)
16:01:57.458812 IP cli.ent.ip.add.36315 > c.resolvers.level3.net.domain: 2356+ A? api.ipify.org. (31)
16:01:57.458849 IP cli.ent.ip.add.36315 > c.resolvers.level3.net.domain: 37680+ AAAA? api.ipify.org. (31)


В это время на клиенте ошибка
curl: (6) Could not resolve host: api.ipify.org

Потом на клиенте запускаю curl по прямому IP с добавлением заголовка HOST, чтобы отмести проблему в днс
sudo -u conntest /usr/bin/curl https://64.185.227.156?format=json -H "Host: api.ipify.org"

В ответ приходит
curl: (28) Failed to connect to 64.185.227.156 port 443: Connection timed out


На сервере openvpn вижу
16:05:29.118215 IP cli.ent.ip.add.47080 > 64-185-227-156.static.webnx.com.https: Flags [S], seq 4157234643, win 64240, options [mss 1329,sackOK,TS val 3673645679 ecr 0,nop,wscale 7], length 0
16:05:30.123853 IP cli.ent.ip.add.47080 > 64-185-227-156.static.webnx.com.https: Flags [S], seq 4157234643, win 64240, options [mss 1329,sackOK,TS val 3673646685 ecr 0,nop,wscale 7], length 0
16:05:32.139767 IP cli.ent.ip.add.47080 > 64-185-227-156.static.webnx.com.https: Flags [S], seq 4157234643, win 64240, options [mss 1329,sackOK,TS val 3673648701 ecr 0,nop,wscale 7], length 0
16:05:34.219812 ARP, Request who-has 10.11.1.1 tell 10.11.1.2, length 28
16:05:34.219823 ARP, Reply 10.11.1.1 is-at xx:xx:xx:xx:xx:xx (oui Unknown), length 28


Ясно что я просто что-то забыл добавить, но совсем не могу вспомнить что именно.
На сервере openvpn включен форвардинг и также добавил правило
-A POSTROUTING -s 10.11.1.0/24 -o eth0 -j MASQUERADE


Стыдно задавать подобный ламерский вопрос, успокаиваю себя тем что сам последний раз вбивал iptables в 2017 году.
Подскажите что забыл.
  • Вопрос задан
  • 76 просмотров
Подписаться 1 Простой 2 комментария
Решения вопроса 1
@servicebro Автор вопроса
Надо было просто включить маскарад на клиенте 440px-Paris_Tuileries_Garden_Facepalm_statue.jpg
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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