Strona 1 z 1
Konfiguracja serwera na Etchu a routing na 2 podsieci
: 05 sierpnia 2008, 22:03
autor: Bizi
Witam!
Korzystając z porad przeczytanych na tym forum zainstalowałem Debiana Etch skompilowałem na nowo kernel dodając patche konfigurując iptables. Wszystko ładnie się odpala. Z podsieci mam dostęp do ftp, statystyk krótko pisząc do wszystkiego tego co mi jest potrzebne i poradziłem sobie z instalacją. W serwerku eth 0 to karta do której podłączam łączę, eth1 to podsieć 192.168.1.0 a eth 2 to podsieć 192.168.2.0. Jedyny ale w sumie najistotniejszy problem to taki że nie mam internetu z tych 2 kart sieciowych. Przykładowo z serwera mogę sobie pingować onet.pl, a z tych podsieci raczej nie bardzo. Adres eth0 to 192.168.0.2 a brama to 192.168.0.1.Jak sprawdzić jak jest ustawiony routing.
I co dokładnie powinienem mieć w iptables by nie blokowany był internet?
# route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.2.0 * 255.255.255.0 U 0 0 0 eth2
192.168.1.0 * 255.255.255.0 U 0 0 0 eth1
localnet * 255.255.255.0 U 0 0 0 eth0
default 192.168.0.1 0.0.0.0 UG 0 0 0 eth0
: 06 sierpnia 2008, 23:17
autor: bolwerk
Absolutne minimum
Kod: Zaznacz cały
$APP -t nat -A POSTROUTING -s IP_WEWN -j MASQUERADE
$APP -A INPUT -i eth1 -s IP_WEWN -j ACCEPT
$APP -A FORWARD -i eth1 -s IP_WEWN -j ACCEPT
$APP -A FORWARD -i eth1 -j ACCEPT -m state --state ESTABLISHED,RELATED
to oczywiście przy założeniu, że ip masz stałe.
Pozdrawiam ...
Polecam lekturę iptables
: 06 sierpnia 2008, 23:22
autor: Bizi
Tak ip mam stałe.
Problem tkwi właśnie w iptables.
Przystosowałem sobie takiego gotowego firewalla:
Kod: Zaznacz cały
#!/bin/bash
echo "1" > /proc/sys/net/ipv4/ip_forward
INTER="eth1"
# tutaj podaj swoj interfejs internetowy
PRIVPORTS="0:1023"
UNPRIVPORTS="1024:65535"
Firewall=DROP
# tutaj mozesz wpisac 2 zmienne ACCEPT -(firewall wylaczony) lub DROP -(firewall wlaczony)
iptables -F
iptables -X
iptables -F -t nat
iptables -X -t nat
iptables -F -t filter
iptables -X -t filter
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD $Firewall
iptables -N lstat
iptables -A FORWARD -j lstat
#iptables -A INPUT -p icmp -i $INTER -j DROP
#iptables -A OUTPUT -p icmp -o $INTER -j DROP
# usuwajac znaczek # z linijek powyzej wylaczasz odpowiedzi na pingi dla interfejsu internetowego
iptables -A INPUT -p tcp --dport 135:139 -j DROP
iptables -A OUTPUT -p tcp --dport 135:139 -j DROP
iptables -A FORWARD -p tcp --dport 135:139 -j DROP
iptables -A INPUT -p udp --dport 135:139 -j DROP
iptables -A OUTPUT -p udp --dport 135:139 -j DROP
iptables -A FORWARD -p udp --dport 135:139 -j DROP
iptables -A INPUT -p tcp --dport 445 -j DROP
iptables -A OUTPUT -p tcp --dport 445 -j DROP
iptables -A FORWARD -p tcp --dport 445 -j DROP
iptables -A INPUT -p udp --dport 445 -j DROP
iptables -A OUTPUT -p udp --dport 445 -j DROP
iptables -A FORWARD -p udp --dport 445 -j DROP
# a oto blokada portow znanych wirusow typu blaster czy sasser ! :)
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -i $INTER -p icmp -s any/0 --icmp-type 0 -j ACCEPT
iptables -A INPUT -i $INTER -p icmp -s any/0 --icmp-type 4 -j ACCEPT
iptables -A INPUT -i $INTER -p icmp -s any/0 --icmp-type 12 -j ACCEPT
iptables -A INPUT -i $INTER -p icmp -s any/0 --icmp-type 3 -j ACCEPT
iptables -A INPUT -i $INTER -p tcp -m multiport --dport 22,80,110,113,443,465,995,3128 -j ACCEPT
iptables -A INPUT -i $INTER -p tcp --dport $PRIVPORTS -j $Firewall
iptables -A INPUT -i $INTER -p udp --dport $PRIVPORTS -j $Firewall
iptables -A INPUT -i $INTER -p tcp --sport $UNPRIVPORTS -j ACCEPT
iptables -A INPUT -i $INTER -p udp --sport $UNPRIVPORTS -j ACCEPT
# udostępnianie połaczenia dla sieci
iptables -t filter -A FORWARD -s 192.168.0.0/255.255.255.0 -d 0/0 -j ACCEPT
iptables -t filter -A FORWARD -s 0/0 -d 192.168.0.0/255.255.255.0 -j ACCEPT
# tu zobacz czy twoje podsiec wew zgadza sie z wpisem 192.168.1.0/255.255.255.0 - jesli nie to zmien wedlug uznania w obu linijkach
iptables -t nat -A POSTROUTING -o $INTER -s 192.168.0.2 -d 0/0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o $INTER -s 192.168.0.3 -d 0/0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o $INTER -s 192.168.0.4 -d 0/0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o $INTER -s 192.168.0.5 -d 0/0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o $INTER -s 192.168.0.6 -d 0/0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o $INTER -s 192.168.0.7 -d 0/0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o $INTER -s 192.168.0.8 -d 0/0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o $INTER -s 192.168.0.9 -d 0/0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o $INTER -s 192.168.0.10 -d 0/0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o $INTER -s 192.168.0.11 -d 0/0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o $INTER -s 192.168.0.12 -d 0/0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o $INTER -s 192.168.0.13 -d 0/0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o $INTER -s 192.168.0.14 -d 0/0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o $INTER -s 192.168.0.15 -d 0/0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o $INTER -s 192.168.0.16 -d 0/0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o $INTER -s 192.168.0.17 -d 0/0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o $INTER -s 192.168.0.18 -d 0/0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o $INTER -s 192.168.0.19 -d 0/0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o $INTER -s 192.168.0.20 -d 0/0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o $INTER -s 192.168.0.21 -d 0/0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o $INTER -s 192.168.0.22 -d 0/0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o $INTER -s 192.168.0.23 -d 0/0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o $INTER -s 192.168.0.24 -d 0/0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o $INTER -s 192.168.0.25 -d 0/0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o $INTER -s 192.168.0.26 -d 0/0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o $INTER -s 192.168.0.27 -d 0/0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o $INTER -s 192.168.0.28 -d 0/0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o $INTER -s 192.168.0.29 -d 0/0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o $INTER -s 192.168.0.30 -d 0/0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o $INTER -s 192.168.0.31 -d 0/0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o $INTER -s 192.168.0.32 -d 0/0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o $INTER -s 192.168.0.33 -d 0/0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o $INTER -s 192.168.0.34 -d 0/0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o $INTER -s 192.168.0.35 -d 0/0 -j MASQUERADE
#tu wlaczasz/wylaczasz przekierowanie na squida
#iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128
#do tych plikow zajrzyj
/sbin/rc.p2p
/sbin/rc.blokady
#iptables -t nat -A PREROUTING -i $INTER -p tcp -d IP_ZEW --dport 1551 -j DNAT --to-destination 192.168.0.2:1551
#iptables -t nat -A PREROUTING -i $INTER -p tcp -d IP_ZEW --dport 1552 -j DNAT --to-destination 192.168.0.3:1552
#iptables -t nat -A PREROUTING -i $INTER -p tcp -d IP_ZEW --dport 1553 -j DNAT --to-destination 192.168.0.4:1553
# to regulki do przekierowania portu potrzebnego dla danego usera - np gg aby mogl wysylac-odbierac pliki oraz rozmawiac przez mikrofon
# w miejsce IP_ZEW wpisz swoj ip zew lacza
siec=192.168.0
eth_siec=eth0
#ilosc polaczen na usera
ILOSC=80
#ilosc ip z sieci od ip nr 2 ( w tym przypadku do ip 254)
ILE=254
echo " Limity polaczen !!! "
for (( (i=$ILE,IP=2); (i=$i-1); (IP=$IP+1) )) ; do
iptables -A PREROUTING -t mangle -p tcp -s ${siec}.${IP} -m connlimit --connlimit-above $ILOSC -i $eth_siec -j DROP
done;
echo " Koniec $eth_siec "
#/sbin/staty
OK juz sobie poradziłem