LINUX.ORG.RU

Настройка iptables на CyanogenMod 11

 , , ,


0

1

Юзаю мобилу с CyanogenMod 11 в режиме роутера - раздаю wifi. Iptables в наличие. Ядро - 3.0.101, iptables v1.4.11.1. Задача поднять firewall с типичными настройками для среднестатистического узла и по совместительству роутера.

Первое что смутило количество сетевых интерфейсов. Вот нахрена всё это: lo, gannet0, dummy0, ifb0, ifb1, rmnet0, rmnet1, rmnet2, rmnet3, rmnet4, rmnet5, rmnet6, rmnet7, sit0, ip6tnl0, wlan0, mon.wlan0 ? Ну lo понятно. wlan0 по всему похоже на wifi телефона/роутера с которого я и получаю интернет. А всё остальное что это и зачем? А самое главное с какого интерфейса интернет приходит на телефон/роутер? Т.е. где из всего этого внешний интерфейс? rmnet0 похоже на внешку.

Второе это почему оно идет с пустым конфигом iptables? Это мода такая или кто-то просрал даже минимальный конфиг положить?

И вообще если есть победившие сабж поделитесь хотя-бы минимальными настройками.

★★★★★

Последнее исправление: Klymedy (всего исправлений: 3)

Введи

ip route list
там будет видно где локалка, а где интернет.

Минимум для раздачи интернета примерно так:
iptables -t filter -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -t filter -A INPUT -p tcp --tcp-flags SYN,RST SYN --dport 22 -j ACCEPT
iptables -t filter -A INPUT -p tcp --tcp-flags SYN,RST SYN -j DROP
iptables -t filter -A FORWARD -j ACCEPT
iptables -t nat -A POSTROUTING -o rmnet0 -j MASQUERADE #rmnet0 - интерфейс в интернет
iptables -t mangle -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu 
echo 1 > /proc/sys/net/ipv4/ip_forward
p.s. И скорее всего, при перезапуске мобилки, а возможно и при переподключении интернета, все правила iptables сбросятся.

DiMoN ★★★
()

с пустым конфигом iptables

Если это сильно затрудняет жизнь, лучше поискать инструменты типа shorewall.

anonymous
()

Второе это почему оно идет с пустым конфигом iptables? Это мода такая или кто-то просрал даже минимальный конфиг положить?

Эмммм… Как выяснилось это ^ не вполне верно ибо:

$ adb shell "logcat | grep iptables"
V/NatController( 1625): runCmd(/system/bin/iptables -t nat -A natctrl_nat_POSTROUTING -o rmnet0 -j MASQUERADE) res=0
V/NatController( 1625): runCmd(/system/bin/iptables -A natctrl_FORWARD -i rmnet0 -o wlan0 -m state --state ESTABLISHED,RELATED -g natctrl_tether_counters) res=0
V/NatController( 1625): runCmd(/system/bin/iptables -A natctrl_FORWARD -i wlan0 -o rmnet0 -m state --state INVALID -j DROP) res=0
V/NatController( 1625): runCmd(/system/bin/iptables -A natctrl_FORWARD -i wlan0 -o rmnet0 -g natctrl_tether_counters) res=0
V/NatController( 1625): runCmd(/system/bin/iptables -A natctrl_tether_counters -i wlan0 -o rmnet0 -j RETURN) res=0
V/NatController( 1625): runCmd(/system/bin/iptables -A natctrl_tether_counters -i rmnet0 -o wlan0 -j RETURN) res=0
V/NatController( 1625): runCmd(/system/bin/iptables -D natctrl_FORWARD -j DROP) res=0
V/NatController( 1625): runCmd(/system/bin/iptables -A natctrl_FORWARD -j DROP) res=0

Внимание вопрос - кто такая это самое NatController и где отыскать сам скрипт/исходник?

init_6 ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.