Linux за българи: Форуми

Linux секция за напреднали => Хардуерни и софтуерни проблеми => Темата е започната от: guzunov в Jan 23, 2004, 12:01



Титла: iptables2
Публикувано от: guzunov в Jan 23, 2004, 12:01
Имамe малка локална мрежа с 10-ина машини , свързани към интернет през Linux router. Интересува ме , как трябва да опиша в iptables зависимостта: на определено IP от вътрешната мрежа  да съответства определен MAC адрес , и  резултата да е  ACCEPT, а ако не е -съответно DROP. Всички останали ,които не са описани в Iptables ,да нямат достъп до интернет!   Linux-a ми е Suse 9.0 Pro. Изчетох цялото HOWTO netfilter, но от там не разбрах нищо за тази зависимост . Благодаря на всички предварително !


Титла: iptables2
Публикувано от: в Jan 23, 2004, 12:38
iptables -A INPUT -s 192.168.101.250 -m mac --mac-source ! 00:A0:C9:39:13:42 -j DROP
 redaktirai si ip-tata i mac adresite s tvoite


Титла: iptables2
Публикувано от: dmvic в Jan 23, 2004, 15:58
Редактирах го, за да си поправя грешките
защо просто на PREROUTING веригата на nat таблицата не сложиш политика дроп и не приемаш само от определени MAC адреси?
Ако трябва да приемаш от интернет ще трябва да добавиш само да приема всичко от картата към него, или по-добре само на портовете, който ти трябват. Тогава праволата ще изглеждат така:
iptables -t nat -P PREROUTING DROP
iptables -t nat -A PREROUTING -m mac --mac-source xx:xx:xx:xx:xx:xx -j ACCEPT (по едно правило за всеки MAC адрес)
iptables -t nat -A PREROUTING -i ethX -j ACCEPT (което ти е към интернет, ако искаш всичко)
iptables -t nat -A PREROUTING -i ethX -tcp --dport 80 -j ACCEPT (и съответно още такива правила за всички портове, който искаш отворени)

Предлагам ти това, защото ми звучи като опит да ограничаваш интернета на който не си е плащал от мрежата ти в блока. Така независимо дали са на статични или динамични IP, пак ще можеш да ги ограничаваш, а с DROP политиката ще си предпазиш сървъра от ненужни проблеми.
Да допълня..
Ако все пак ти трябва чак толкова да вържеш IP с MAC адрес  това ще ти трябва като правило, за всеки компютър:
iptables -t nat -A PREROUTING -s xxx.xxx.xxx.xxx -m mac --mac-source xx:xx:xx:xx:xx:xx -j ACCEPT
Надявам се да съм бил от полза.