Mój pierwszy ruter - pytania

Masz problemy z siecią bądź internetem? Zapytaj tu
Awatar użytkownika
Bastian
Member
Posty: 1424
Rejestracja: 30 marca 2008, 16:09
Lokalizacja: Poznañ

Post autor: Bastian »

Ale jak rozumiem PS3 ma przeglądarkę, i chcesz mieć dostęp do sieci web przez nią. Masz politykę OUTPUT na ACCEPT, więc powinieneś móc łączyć się z siecią. No chyba, że masz serwer www i chcesz udostępniać jakieś rzeczy. Wtedy:

Kod: Zaznacz cały

iptables -A INPUT -i eth0 -o eth1 -p tcp --dport 80  -d adres_serwera_www -j ACCEPT
Awatar użytkownika
sponsoriada
Beginner
Posty: 149
Rejestracja: 03 października 2010, 22:58
Lokalizacja: Płock

Post autor: sponsoriada »

Wygląda to tak. Chciałbym zablokować INPUT i przekierowywać porty potrzebne tylko do życia mojej sieci. Na serwerku jest serwer www więc port 80 musi być otwarty. I np. 3650 UDP przekierowany na PS3. Chciałbym żebyście podali mi dwa takie przykłady jak to zrobić. Z resztą analogicznie sobie powinienem poradzić.
Awatar użytkownika
Bastian
Member
Posty: 1424
Rejestracja: 30 marca 2008, 16:09
Lokalizacja: Poznañ

Post autor: Bastian »

No to pierwszą regułę już masz powyżej a co do drugiej to spójrz:

http://debian.linux.pl/threads/23303-pr ... kierowanie
Awatar użytkownika
sponsoriada
Beginner
Posty: 149
Rejestracja: 03 października 2010, 22:58
Lokalizacja: Płock

Post autor: sponsoriada »

Witam.
Właśnie napisałem coś nowego. Chciałbym aby ktoś na to zerknął swoim fachowym okiem.
Nie jestem pewny co do priorytetów (czy prawidłowo są użyte - jeśli nie proszę o podpowiedź), jeśli chodzi o klasy na eth0. Klasa 1:10 ma być tą ,,szybką''. Czy dobrze jest do niej przefiltrowany port 22. Celem było aby ssh działało dobrze użytkownikom łączącym się do serwera. Cała reszta ma być kierowana do 1:20...
Oto on:

Kod: Zaznacz cały

#!/bin/sh

ifconfig eth0 down
ifconfig eth0 hw ether 00:17:9A:61:AC:62
dhclient eth0
ifconfig eth1 192.168.1.1 up

echo "1" > /proc/sys/net/ipv4/ip_forward

#Czyszczenie tablic
iptables -F -t nat
iptables -X -t nat
iptables -F -t filter
iptables -X -t filter

#Domyślna polityka działania
iptables -t filter -P INPUT ACCEPT
iptables -t filter -P FORWARD DROP
iptables -t filter -P OUTPUT ACCEPT

#Przekierowanie pakietów
iptables -t filter -A FORWARD -s 192.168.1.0/255.255.255.0 -d 0/0 -j ACCEPT
iptables -t filter -A FORWARD -s 0/0 -d 192.168.1.0/255.255.255.0 -j ACCEPT

#NAT
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o eth0 -j SNAT --to-source 212.180.172.206

#Przekierowania portów
#iptables -t nat -A PREROUTING -p tcp -i eth0 -s 0/0 --dport 1550 -j DNAT --to 192.168.1.2

#Przekierowania PS3
iptables -t nat -A PREROUTING -p tcp -i eth0 -s 0/0 --dport 443 -j DNAT --to 192.168.1.201
iptables -t nat -A PREROUTING -p tcp -i eth0 -s 0/0 --dport 5223 -j DNAT --to 192.168.1.201
iptables -t nat -A PREROUTING -p udp -i eth0 -s 0/0 --dport 3478 -j DNAT --to 192.168.1.201
iptables -t nat -A PREROUTING -p udp -i eth0 -s 0/0 --dport 3479 -j DNAT --to 192.168.1.201
iptables -t nat -A PREROUTING -p udp -i eth0 -s 0/0 --dport 3658 -j DNAT --to 192.168.1.201

######KSZTALTOWANIE RUCHU#####
#CZYSZCZENIE KOLEJEK
tc qdisc del root dev eth0
tc qdisc del root dev eth1

#TWORZENIE KLAS DLA INTERFEJSOW
tc qdisc add dev eth0 root handle 1:0 htb default 10
tc qdisc add dev eth1 root handle 2:0 htb default 10

#OGRANICZAMY PASMO
tc class add dev eth0 parent 1:0 classid 1:1 htb rate 1500kbit ceil 1500kbit
tc class add dev eth1 parent 2:0 classid 2:1 htb rate 100000 kbit ceil 100000kbit

#KLASY ETH0
tc class add dev eth0 parent 1:1 classid 1:10 htb rate 1000kbit ceil 1500kbit prio 1
tc class add dev eth0 parent 1:1 classid 1:20 htb rate 500kbit ceil 1500kbit prio 2
tc qdisc add dev eth0 parent 1:10 handle 10:0 sfq perturb 10
tc qdisc add dev eth0 parent 1:20 handle 20:0 sfq perturb 10
tc filter add dev eth0 protocol ip parent 1:1 prio 1 u32 match ip sport 22 0xffff flowid 1:10
tc filter add dev eth0 protocol ip parent 1:1 prio 1 u32 match ip dport 80 0xffff flowid 1:10
tc filter add dev eth0 protocol ip parent 1:1 prio 1 u32 match src 192.168.1.201/24 flowid 1:10
tc filter add dev eth0 protocol ip parent 1:1 prio 1 u32 match src 192.168.1.200/24 flowid 1:10
tc filter add dev eth0 protocol ip parent 1:1 prio 2 flowid 10:20


#KLASY ETH1
#NIEKLASYFIKOWANE
tc class add dev eth1 parent 2:1 classid 2:10 htb rate 5000kbit ceil 100000kbit
tc qdisc add dev eth1 parent 2:10 handle 10: sfq perturb 10

#192.168.1.100
tc class add dev eth1 parent 2:1 classid 2:100 htb rate 40000kbit ceil 100000kbit
tc filter add dev eth1 protocol ip parent 2:1 u32 match src 192.168.1.100/24 flowid 2:100
tc qdisc add dev eth1 parent 2:100 handle 100: sfq perturb 10

#192.168.1.102
tc class add dev eth1 parent 2:1 classid 2:102 htb rate 10000kbit ceil 100000kbit
tc filter add dev eth1 protocol ip parent 2:1 u32 match src 192.168.1.102/24 flowid 2:102
tc qdisc add dev eth1 parent 2:102 handle 102: sfq perturb 10

#192.168.1.104
tc class add dev eth1 parent 2:1 classid 2:104 htb rate 10000kbit ceil 100000kbit
tc filter add dev eth1 protocol ip parent 2:1 u32 match src 192.168.1.104/24 flowid 2:104
tc qdisc add dev eth1 parent 2:104 handle 104: sfq perturb 10

#192.168.1.200
tc class add dev eth1 parent 2:1 classid 2:200 htb rate 10000kbit ceil 100000kbit
tc filter add dev eth1 protocol ip parent 2:1 u32 match src 192.168.1.200/24 flowid 2:200
tc qdisc add dev eth1 parent 2:200 handle 200: sfq perturb 10

#192.168.1.201
tc class add dev eth1 parent 2:1 classid 2:201 htb rate 20000kbit ceil 100000kbit
tc filter add dev eth1 protocol ip parent 2:1 u32 match src 192.168.1.201/24 flowid 2:201
tc qdisc add dev eth1 parent 2:201 handle 201: sfq perturb 10

hostname espons.pl
killall -9 dhcpd
dhcpd eth1
Dodane:
Chciałbym jeszcze wrócić do otwierania portów. Jeśli otworze sposobem, którym mi podaliście to wtedy pakiety nie potrzebnie będą przechodziły przez interfejs eth1. Można jakoś zrobić tak żeby otworzyć port 80 bezpośrednio na adres zewnętrzny serwera, albo na interfejs eth0?
Panie i panowie z tym sobie poradziłem jednak.
Teraz moje pytanie brzmi następująco, gdy ustawiam regułę:

Kod: Zaznacz cały

iptables -t filter -P INPUT DROP
to czy na interfejsie wewnętrznym też mam pozamykane wszystko?
Awatar użytkownika
Bastian
Member
Posty: 1424
Rejestracja: 30 marca 2008, 16:09
Lokalizacja: Poznañ

Post autor: Bastian »

Jeśli nie pootwierałeś czegoś, to tak. Poza tym dlaczego po prostu nie sprawdzisz?
Awatar użytkownika
sponsoriada
Beginner
Posty: 149
Rejestracja: 03 października 2010, 22:58
Lokalizacja: Płock

Post autor: sponsoriada »

Udało się ;) . Teraz mam tylko jeszcze takie pytanko. Chodzi mi porty które trzeba otworzyć żeby ftp działało prawidłowo. Zrobiłem tak:

Kod: Zaznacz cały

iptables -A INPUT -p tcp --dport 20 -j ACCEPT
iptables -A INPUT -p tcp --dport 21 -j ACCEPT
iptables -A INPUT -p tcp --dport 1024:65535 -j ACCEPT
Ftp działa dopiero po dodaniu ostatniej reguły. Tylko mam teraz takie obawy że to jest sporo portów otwartych. Można to jakoś zmodyfikować tak żeby działało a zmniejszyć zakres otwartych portów?
Awatar użytkownika
Bastian
Member
Posty: 1424
Rejestracja: 30 marca 2008, 16:09
Lokalizacja: Poznañ

Post autor: Bastian »

Tak. W ustawieniach proftpd możesz definiować zakres portów dla trybu pasywnego. Jeśli nie będziesz miał dużo połączeń na ftp to zostaw sobie z 10 i tyle.
Awatar użytkownika
sponsoriada
Beginner
Posty: 149
Rejestracja: 03 października 2010, 22:58
Lokalizacja: Płock

Post autor: sponsoriada »

Udało mi się w inny sposób, do konfiguracji rutera dodałem coś takiego.

Kod: Zaznacz cały

iptables -A INPUT -p tcp --dport 21 -m state --state ESTABLISHED,RELATED -j ACCEPT
ODPOWIEDZ