Страница 1 из 1
Настройка firewall on Mandrake 8.2
Добавлено: 11 мар 2003, 14:53
Bazzik
Привет.
У меня есть выход через кабельный модем (512/128) на Инет. Есть два компа (иногда три и больше ) которые подключены через 5-портовый switch. Модем поключен к компу с Mandrake Linux 8.2 (P166MMX) на сетевуху eth1, отуда через другую сетевуху eth0 - на switch (тобиш ко мне и другим ). Все это работает через NAT.
Так вот вопросик - как мне настроить Линуксовский firewall так, чтобы я мог на своей Винде выходить в Интернет (что сейчас и так работает) и мог запускать Kazaa & eMule (eDonkey) и получать HighID в eMule. Тоесть мне нужно, чтобы линукс gateway (192.168.0.15) все входящие коннекшены по определленым портам (1214,2818 для Казы и 46xx для eMule) для TCP&UDP передавал (редиректил) прямиком на мой комп (192.168.0.1).
Заранее благодарю
Добавлено: 11 мар 2003, 20:24
Llama
1) Читать, читать, читать iptables tutorial - ссылок на яндексе навалом
2) Твоя проблема решается при помощи DNAT - см. tutorial
Добавлено: 12 мар 2003, 14:39
Anonymous
Это очень хорошо - читать - уже начитался

до такой степени, что одна строчка на странице
Это дело было здеся:
http://gazette.linux.ru.net/rus/article ... orial.html
И все же, возможно есть какие небудь более конкретные идеи ???
Я юзаю IPTABLES со следуюющим конфигом
Код: Выделить всё
========= RC.FIREWALL =============
#!/bin/sh
#
# Automatically generated by drakgw
#[ -x /etc/rc.d/rc.firewall.inet_sharing ] && /etc/rc.d/rc.firewall.inet_sharing
#
# This is my part (trying)
#Enabe forwarding
echo 1 > /proc/sys/net/ipv4/ip_forward
# Inserrt IPtables module
insmod ip_tables
# Load NAT module
modprobe iptable_nat
# Load FTP nat module
modprobe ip_nat_ftp
modprobe ip_conntrack_ftp
# Create new chain to block acces to firewall
/sbin/iptables -N block
/sbin/iptables -A block -m state --state ESTABLISHED,RELATED -j ACCEPT
/sbin/iptables -A block -m state --state NEW -i ! eth1 -j ACCEPT
/sbin/iptables -A block -p tcp --dport 23 -j ACCEPT
/sbin/iptables -A blick -p tcp --dport 22 -j ACCEPT
/sbin/iptables -A block -p udp --dport 22 -j ACCEPT
/sbin/iptables -A block -j DROP
# doing nating
/sbin/iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
/sbin/iptables -A INPUT -j block
/sbin/iptables -A FORWARD -j block
=========== rc.firewall.inet_sharing ============
#!/bin/sh
KERNELMAJ=`uname -r | sed -e 's,\..*,,'`
KERNELMIN=`uname -r | sed -e 's,[^\.]*\.,,' -e 's,\..*,,'`
if [ "$KERNELMAJ" -eq 2 -a "$KERNELMIN" -eq 2 ]; then
[ -x /etc/rc.d/rc.firewall.inet_sharing-2.2 ] && /etc/rc.d/rc.firewall.inet_sharing-2.2
fi
if [ "$KERNELMAJ" -eq 2 -a "$KERNELMIN" -eq 4 ]; then
[ -x /etc/rc.d/rc.firewall.inet_sharing-2.4 ] && /etc/rc.d/rc.firewall.inet_sharing-2.4
fi
=========== rc.firewall.inet_sharing-2.4 ============
#!/bin/sh
# Load the NAT module (this pulls in all the others).
modprobe iptable_nat
# Turn on IP forwarding
echo 1 > /proc/sys/net/ipv4/ip_forward
# In the NAT table (-t nat), Append a rule (-A) after routing (POSTROUTING)
# which says to MASQUERADE the connection (-j MASQUERADE).
/sbin/iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j MASQUERADE
# Allows forwarding specifically to our LAN
/sbin/iptables -A FORWARD -s 192.168.0.0/24 -j ACCEPT
# Allows related trafic to be forward
/sbin/iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
# Allow dhcp requests
/sbin/iptables -A INPUT -i eth1 -p udp --sport bootpc --dport bootps -j ACCEPT
/sbin/iptables -A INPUT -i eth1 -p tcp --sport bootpc --dport bootps -j ACCEPT
#/sbin/iptables -A INPUT -i eth0 -p udp --sport bootps --dport bootpc -j ACCEPT
#/sbin/iptables -A INPUT -i eth0 -p tcp --sport bootps --dport bootpc -j ACCEPT
# Allow dns requests
/sbin/iptables -A INPUT -i eth0 -p udp --dport domain -j ACCEPT
/sbin/iptables -A INPUT -i eth0 -p tcp --dport domain -j ACCEPT