Какое правило IPTABLES мешает работе виртуалки?

Пробую настроить виртуализацию на сервере SoyouStart (OVH) — вроде всё настроил правильно, но не работает резолв адресов внутри виртуалки. В ней же невозможно что либо установить и нет возможности связаться с ней по SSH. Как оказалось, в предустановленном образе ОС от ovh ipitables настроен необычным образом.

Я сбросил все правила ipitables на хосте и в виртуалке всё заработало
iptables-restore # Таблица filter и её цепочки *filter :INPUT ACCEPT [0:0] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [0:0] # Разрешаем связанные и установленые соединения -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT # Разрешаем служебный icmp-трафик -A INPUT -p icmp -j ACCEPT # Разрешаем доверенный трафик на интерфейс loopback -A INPUT -i lo -j ACCEPT COMMIT

Помогите пожалуйста понять, какое именно правило мешает нормальной работе виртуалки.
Дамп правил до полного сброса

# Generated by iptables-save v1.6.0 on Fri Feb 9 17:02:38 2018 *raw :PREROUTING ACCEPT [45528:3229067] :OUTPUT ACCEPT [28390:6649125] COMMIT # Completed on Fri Feb 9 17:02:38 2018 # Generated by iptables-save v1.6.0 on Fri Feb 9 17:02:38 2018 *nat :PREROUTING ACCEPT [18482:1078668] :INPUT ACCEPT [5690:338420] :OUTPUT ACCEPT [2108:902153] :POSTROUTING ACCEPT [5977:1025961] -A POSTROUTING -s 192.168.122.0/24 -d 224.0.0.0/24 -j RETURN -A POSTROUTING -s 192.168.122.0/24 -d 255.255.255.255/32 -j RETURN -A POSTROUTING -s 192.168.122.0/24! -d
Читать дальше

Настройка правил iptables?

И снова всем Здравствуйте, авось кто помнит) В общем, опять я к старому вернулся, после небольшой(или большой, для кого как) передышки. Все та же задача. Раздать Wi-Fi на внешний адаптер с отфильтрованным через Socks TCP/UDP трафиком. Сделано почти все, осталась финишная прямая, а именно, при подключении планшета к этому адаптеру DNS идет Google, вместе с DNS от Socks, а нужно чтобы просто было от Socks. В общем, то что работает расписывать не буду. Вкратце объясню. Запущен Redsocks, прописаны правила под него, запущен isc-dhcp-server, настроен на раздачу адресов для адаптера, запущен hostapd, который собственно и раздает, запущен dns-tcp-socks-proxy. Это трогать не буду, все четко работает. Вот что говорит netstat tcp 0 0 0.0.0.0:6666 0.0.0.0:* LISTEN 3234/redsocks tcp 0 0 127.0.0.1:53 0.0.0.0:* LISTEN 1172/dnsmasq tcp 0 0 192.168.2.1:53 0.0.0.0:* LISTEN 1172/dnsmasq tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1251/sshd tcp 0 0 0.0.0.0:25 0.0.0.0:* LISTEN 1604/master tcp6 0 0 ::1:53 :::* LISTEN 1172/dnsmasq tcp6 0 0 :::22 :::* LISTEN 1251/sshd tcp6 0 0 :::25 :::* LISTEN 1604/master udp 0 0 0.0.0.0:5353 0.0.0.0:* 973/avahi-daemon: r udp 0 0 0.0.0.0:3533 0.0.0.0:* 1333/dhcpd udp 0 0 0.0.0.0:57326 0.0.0.0:* 973/avahi-daemon: r udp 0 0 127.0.0.1:53 0.0.0.0:* 1172/dnsmasq udp 0 0 192.168.2.1:53 0.0.0.0:* 1172/dnsmasq udp 0 0 0.0.0.0:67 0.0.0.0:* 1333/dhcpd udp 0 0 0.0.0.0:67 0.0.0.0:* 1172/dnsmasq udp 0 0 0.0.0.0:68 0.0.0.0:* 1723/dhclient udp 0 0 192.168.2.1:123 0.0.0.0:* 1440/ntpd udp 0 0 192.168.1.25:123 0.0.0.0:* 1440/ntpd udp 0 0 127.0.0.1:123 0.0.0.0:* 1440/ntpd udp 0 0 0.0.0.0:123 0.0.0.0:* 1440/ntpd udp 0 0 0.0.0.0:631 0.0.0.0:* 1099/cups-browsed udp6 0 0 :::48014 :::* 973/avahi-daemon: r udp6 0 0 :::5353 :::* 973/avahi-daemon: r udp6 0 0 :::41002 :::* 1333/dhcpd udp6 0 0 ::1:53 :::* 1172/dnsmasq udp6 0 0 fe80::c24a:ff:fe2f::123 :::* 1440/ntpd udp6 0 0 fe80::ced8:7651:a52:123 :::* 1440/ntpd udp6 0 0 ::1:123 :::* 1440/ntpd udp6 0 0 :::123 :::* 1440/ntpd raw 0 0 0.0.0.0:1 0.0.0.0:* 7 1333/dhcpd raw6 0 0 :::58 :::* 7 972/NetworkManager при запущенном redsocks, hostapd,
Читать дальше

Настройка правил Iptables?

Всем добрый вечер. Проблема следующего характера. Не могу настроить правила iptables для redsocks. TCP трафик фильтруется, ip носка, но dns по прежнему мои. Чтобы они подменялись, нужно настроить udp. Я не совсем понимаю, что и куда направлять. Поправьте меня если ошибаюсь. Как я понимаю, сначала нужно направить трафик на «redudp», то есть 127.0.0.1:10053, затем перенаправить его с этого адреса на «dnstc», то есть 127.0.0.1:5300, а с него отправить его на локальный адрес компьютера, откуда выходит весь udp трафик, то есть 127.0.0.1:53. Вопрос, правильно ли я думаю? И можно пример команды с фильтрацией udp в моем случае. А если не правильно то объяснить что неправильно и подсказать как решить эту проблему. Заранее благодарен. Redsocks.conf base { // debug: connection progress & client list on SIGUSR1 log_debug = on; // info: start and end of client session log_info = on; /* possible `log' values are: * stderr * «file:/path/to/file» * syslog:FACILITY facility is any of «daemon», «local0»...«local7» */ log = «file:/tmp/reddi.log»; // detach from console daemon = on; /* Change uid, gid and root directory, these options require root * privilegies on startup. * Note, your chroot may requre /etc/localtime if you write log to syslog. * Log is opened before chroot & uid changing. */ user = redsocks; group = redsocks; // chroot = "/var/chroot"; /* possible `redirector' values are: * iptables — for Linux * ipf — for FreeBSD * pf — for OpenBSD * generic — some generic redirector that MAY work */ redirector = iptables; } redsocks { /* `local_ip' defaults to 127.0.0.1 for security reasons, * use 0.0.0.0 if you want to listen on every interface. * `local_*' are used as port to redirect to. */ local_ip = 127.0.0.1; local_port = 31330; // `ip' and `port' are IP and tcp-port of proxy-server // You can also use hostname instead of IP, only one (random) // address of multihomed host will be used. ip = 81.165.130.165; port = 45554; // known types: socks4, socks5, http-connect, http-relay type = socks5; // login = «foobar»; // password = «baz»; } redudp { // `local_ip' should not be 0.0.0.0 as
Читать дальше

INPUT -j DROP блокирует исходящий трафик. Что делать?

Через файрвол ISPManager 5 lite создал правила для входящего трафика: разрешить порт 80 для всех, остальное запретить, кроме 2х ip-адресов. И потерял весь исходящий трафик с сервера.
Вывод ifconfig:
lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:65536 Metric:1 RX packets:1132 errors:0 dropped:0 overruns:0 frame:0 TX packets:1132 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:4302058 (4.1 MiB) TX bytes:4302058 (4.1 MiB) 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.1 P-t-P:127.0.0.1 Bcast:0.0.0.0 Mask:255.255.255.255 UP BROADCAST POINTOPOINT RUNNING NOARP MTU:1500 Metric:1 RX packets:1521500 errors:0 dropped:0 overruns:0 frame:0 TX packets:1611473 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:1226684983 (1.1 GiB) TX bytes:1397221869 (1.3 GiB) venet0:0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 inet addr:1**.2*.7*.2** P-t-P:1**.2*.7*.2** Bcast:1**.2*.7*.2** Mask:255.255.255.255 UP BROADCAST POINTOPOINT RUNNING NOARP MTU:1500 Metric:1
etc/sysconfig/iptables:
# Generated by iptables-save v1.4.7 on Thu Mar 3 14:16:17 2016 *mangle :PREROUTING ACCEPT [1610:216627] :INPUT ACCEPT [1610:216627] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [2034:2105792] :POSTROUTING ACCEPT [2034:2105792] COMMIT # Completed on Thu Mar 3 14:16:17 2016 # Generated by iptables-save v1.4.7 on Thu Mar 3 14:16:17 2016 *filter :INPUT ACCEPT [0:0] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [1:52] :ispmgr_allow_ip — [0:0] :ispmgr_allow_sub — [0:0] :ispmgr_deny_ip — [0:0] :ispmgr_deny_sub — [0:0] :ispmgr_limit_req — [0:0] -A INPUT -j ispmgr_deny_ip -A INPUT -j ispmgr_allow_ip -A INPUT -j ispmgr_allow_sub -A INPUT -j ispmgr_deny_sub -A INPUT -m conntrack
Читать дальше

Почему Docker ругается на Iptables?

Добрый день!
Сразу скажу, что админ я не очень хороший (и докером пользуюсь 2-ой час), и скорее всего жестко туплю, но Docker ругается на Iptable и не хочет прокидывать 8080 порт.

Система: CentOS 7
Kernel:

Linux ****** 3.10.0-327.4.5.el7.x86_64 #1 SMP Mon Jan 25 22:07:14 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

docker -v:

Docker version 1.9.1, build a34a1d5

docker info:

Containers: 12
Images: 14
Server Version: 1.9.1
Storage Driver: devicemapper
Читать дальше

Как пробросить трафик с одного сервера на другой?

Доброго дня.
Столкнулся со следующей проблемой — необходимо пробросить трафик с 80 порта одного сервера (дале 1.1.1.1) на другой (далее 2.2.2.2). Оба сервера хостятся на амазоне, ОС — восьмой дебиан на первом и бубунта 14.04 на втором.

Делал так, через iptables:

# sed -i 's/#net.ipv4.ip_forward=1/net.ipv4.ip_forward=1/g' /etc/sysctl.conf # включил ip forwarding # sysctl -p // проверил, включилось # iptables -F // удалил текущие правила # iptables -t nat -F // и специально для nat // Далее сами правила # iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination 2.2.2.2:80 # iptables -t nat -A POSTROUTING -p tcp -d 2.2.2.2 --dport 80 -j SNAT --to-source 1.1.1.1 # sudo iptables -t nat -L -n // проверка // вывод: Chain PREROUTING (policy ACCEPT) target prot opt source destination DNAT tcp — 0.0.0.0/0 0.0.0.0/0 tcp dpt:80 to: 2.2.2.2:80 Chain INPUT (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination Chain POSTROUTING (policy ACCEPT) target prot opt source destination SNAT tcp — 0.0.0.0/0 2.2.2.2 tcp dpt:80 to: 1.1.1.1 // и напоследок сохранил и проверил: # iptables-save | sudo tee /etc/iptables.up.rules

Tcpdump на первой машине показывает, что пакет отправляется на второй хост, но на втором хосте он либо не обрабатывается, либо его режет амазоновский нат. Гугление и общение с админами не помогло, все запутались ещё больше. Максимум чего удалось добиться это отправка пакетов на второй хост при обращении на первый, но там они не обрабатываются, в tcpdump нет вывода никакого.
Если кто то захочет предложить Port mirroring или mangle в iptables — в принципе рассматривается.

Заранее спасибо.

Как настроить iptables для 4g модема??

Добрый день! Есть вообщем вот такая схемка: антенна-CRC9-4g модем с симкой от мегафона-TP-Link TL-MR3420-шлюз на centos-конечные пользователи. Суть проблемы такова: при смене провайдера(наконец нашли замену ADSL) из внешки стал недоступен сервер ip-камер. Был куплен белый ip у мегафона, в iptables старый ip заменен на новый и в tp-link настроен проброс портов. Тем не менее сервер по-прежнему недоступен. Подскажите, как решить эту проблему?
*filter :INPUT ACCEPT [0:0] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [0:0] :RH-Firewall-1-INPUT — [0:0] -A INPUT -j RH-Firewall-1-INPUT -A FORWARD -j RH-Firewall-1-INPUT -A RH-Firewall-1-INPUT -i lo -j ACCEPT -A RH-Firewall-1-INPUT -p icmp --icmp-type echo-reply -j ACCEPT -A RH-Firewall-1-INPUT -p udp -m udp --dport 53 -j ACCEPT #-A RH-Firewall-1-INPUT -p tcp -m tcp --dport 16016 -j ACCEPT #pptp -A RH-Firewall-1-INPUT -i ppp0 -p gre -j ACCEPT -A RH-Firewall-1-INPUT -i ppp0 -p tcp -m tcp --dport 1723 -j ACCEPT # CLOSING PORTS ################ # PPP0 ########## -A RH-Firewall-1-INPUT -i ppp0 -p tcp -m multiport --dports 21,53,111,139,443,445 -j REJECT --reject-with tcp-reset -A RH-Firewall-1-INPUT -i ppp0 -p udp -m multiport --dports 21,53,111,139,443,445 -j DROP # DROP WiFi -A RH-Firewall-1-INPUT -s 10.1.0.0/16 -d 192.168.10.0/24 -j DROP -A RH-Firewall-1-INPUT -s 192.168.0.0/24 -d 192.168.10.0/24 -j DROP -A RH-Firewall-1-INPUT -s 192.168.9.1 -d 192.168.10.0/24 -j DROP -A RH-Firewall-1-INPUT -s 192.168.9.2 -d 192.168.10.0/24 -j DROP COMMIT *nat :PREROUTING ACCEPT [0:0] :OUTPUT ACCEPT [0:0] :POSTROUTING ACCEPT [0:0] ############# # OUTDOOR ############# #Dominations -A PREROUTING -p tcp -d 37.x.x.x --dport 7010 -j DNAT --to-destination 192.168.10.101:7000 -A PREROUTING -p udp -d 37.x.x.x --dport 7010 -j DNAT --to-destination 192.168.10.101:7000 -A PREROUTING -p tcp -d 37.x.x.x --dport 7020 -j DNAT --to-destination 192.168.10.103:7000 -A PREROUTING -p udp -d 37.x.x.x --dport 7020 -j DNAT --to-destination 192.168.10.103:7000 #web Cams -A PREROUTING -p tcp -d 37.x.x.x --dport 8080 -j DNAT --to-
Читать дальше

В чем может быть ошибка в iptables?

*mangle :PREROUTING ACCEPT [5276:281135] :INPUT ACCEPT [5276:281135] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [522:204424] :POSTROUTING ACCEPT [522:204424] COMMIT *filter :FORWARD ACCEPT [0:0] :INPUT DROP [0:0] :OUTPUT ACCEPT [0:0] -A INPUT -i lo -j ACCEPT -A INPUT -p icmp -m icmp --icmp-type any -j ACCEPT -A INPUT -p udp -m udp --sport 53 -j ACCEPT -A INPUT -p tcp -m tcp -m state --state ESTABLISHED,RELATED -j ACCEPT -A INPUT -p tcp -m tcp --tcp-flags ACK ACK -j ACCEPT -A INPUT -p tcp -m tcp --dport 22 -j ACCEPT -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT -A INPUT -p tcp -m tcp --dport 20 -j ACCEPT -A INPUT -p tcp -m tcp --dport 21 -j ACCEPT -A INPUT -p tcp -m tcp --dport 35000:35999 --tcp-flags SYN,ACK SYN -j ACCEPT COMMIT

Какой правильный iptables позволит не зацикливаться при выходе через проброшенный порт?

Лежит на сервере-хосте горка KVM-гостей, гости ломятся через 80-й порт наружу, что бы получить апдейты пакетов rpm/yum..., вытянуться curl и т.д. Но все эти запросы запиливаются к локальному http­-серверу по ряду причин в iptables хост-машины:
iptables -t nat -I PREROUTING -p tcp --dport 80 -j DNAT --to-destination 10.10.10.110:80
Это выглядит как-то так:

+----------------------------+ | Debian KVM-Host | iptables -t nat -I PREROUTING -p tcp \ | eth0: 5.5.5.5 | --dport 80 -j DNAT --to-destination 10.10.10.110:80 | vmbr1: 10.10.10.1 | +--------+-------------------+ | +--------+------------+ | nginx 10.10.10.110 | +---------------------+ | | | | | | +---------------------+ | | +----| Guest1 10.10.10.123 | | | +---------------------+ | | +---------------------+ | +---| Guest1 10.10.10.122 | | +---------------------+ | +---------------------+ +---| Guest1 10.10.10.121 | +---------------------+

Допустим, дергаю я wget yandex.ru с Guest3 10.10.10.123, а у меня в nginx-прокси на 10.10.10.110 все запросы незнакомые перенаправляются на Guest2 10.10.10.122, а на нем — Plesk, и вот мне этот самый плеск сообщает, что страница по умолчанию для этого сервера… и отдает мне её. Да и сам 10.10.10.110 все попытки выйти из сети, согласно правилу хост-машины, через себя пропускает и на 10.10.10.122 взад шлет. Сами интернет-адреса правильно ресолвятся (другие порты), но кого это интересует.

Так вот, как «разлупить» мне эту ситуацию — не вразумею. Помогите, пожалуйсталюдидобрые, с таким правилом, что бы все внешние адреса !10.10.10.0/24 слались через NAT и во вне хост-машины.

Как настроить iptables, что бы из локальной в глобальную ходить?

Имеется один паблик IP и сеть из виртуальных машин на Debian
# network interface settings auto lo iface lo inet loopback # device: eth0 auto eth0 iface eth0 inet static address 175.219.59.209 gateway 175.219.59.193 netmask 255.255.255.224 post-up echo 1 > /proc/sys/net/ipv4/conf/eth0/proxy_arp
А вот — моя сеть в двух вариантах настройки:
auto vmbr0 iface vmbr0 inet static address 10.10.0.1 netmask 255.255.0.0 bridge_ports none bridge_stp off bridge_fd 0 post-up ip route add 10.10.0.1/24 dev vmbr0
Тут я могу себе позволить ходить в Интернет, обновлять пакеты и прочие радости грешной жизни,
но в упор не вижу своих соседей по сети 10.10.11.0/24 (все запросы уходят в интернет)

А вот в этом варианте я могу замечательно общаться с соседними машинами 10.10.11.0/24, но никакого
интернета:
auto vmbr1 iface vmbr1 inet static address 10.10.0.1 netmask 255.255.255.0 bridge_ports none bridge_stp off bridge_fd 0 post-up echo 1 > /proc/sys/net/ipv4/ip_forward post-up iptables -t nat -A POSTROUTING -s '10.10.0.0/24' -o vmbr1 -j MASQUERADE post-down iptables -t nat -D POSTROUTING -s '10.10.0.0/24' -o vmbr1 -j MASQUERADE
Вот правило, придуманное где-то между 5 и 6 часами ночи/утра:
iptables -t nat -A POSTROUTING! -d '10.10.11.0/24' -j SNAT --to-source '175.219.59.209'
Оно описывает мой внутренний порыв отсылать все пакеты с адресами вне сети 10.10.11.0/24 через NAT на eth0.

А как правильно это сделать?