Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2008-11-29 13:54:38

  tilk - Nowy użytkownik

tilk
Nowy użytkownik
Zarejestrowany: 2008-11-29

router na debianie + iptables + HTB

postawiłem router na systemie debian wydało mi się to optymalnym rozwiązaniem dla mojej sieci i moich potrzeb.
problemy mam dwa dziwne, mianowicie przekierowanie portów na zewnętrzny ip działa dość dziwnie bo każdy klient sieci bittorent zgłasza że port na słuchu nie jest otrwty
o to mój firewal

Kod:

router:~# cat /etc/init.d/firewall 
#!/bin/bash
#Na początek czyścimy regułki:
iptables -F
iptables -t nat -F

#Domyślne zasady dla pakietów nie pasujących do żadnej regułki
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD DROP

#Przykłady można przekleić
export LAN=eth0
export WAN=ppp0

#Potem blokujemy usługi tak, aby były dostępne tylko dla sieci LAN

iptables -I INPUT 1 -i ${LAN} -j ACCEPT
iptables -I INPUT 1 -i lo -j ACCEPT
iptables -A INPUT -p UDP --dport bootps -i ! ${LAN} -j REJECT
iptables -A INPUT -p UDP --dport domain -i ! ${LAN} -j REJECT

#(Opcjonalnie) Pozwalamy na dostęp do naszego serwera SSH z Internetu

iptables -A INPUT -p TCP --dport ssh -i ${WAN} -j ACCEPT

#Pozwalamy zobaczyć nasz serwer w sieci

iptables -A INPUT -p TCP --dport http -i ${WAN} -j ACCEPT

#Upuszczamy pakiety TCP/UDP dla uprzywilejowanych portów
iptables -A INPUT -p TCP -i ! ${LAN} -d 0/0 --dport 0:1023 -j DROP
iptables -A INPUT -p UDP -i ! ${LAN} -d 0/0 --dport 0:1023 -j DROP

#Ostatecznie dodajemy regułki dla NAT
iptables -I FORWARD -i ${LAN} -d 192.168.1.1/255.255.255.0 -j DROP
iptables -A FORWARD -i ${LAN} -s 192.168.1.1/255.255.255.0 -j ACCEPT
iptables -A FORWARD -i ${WAN} -d 192.168.1.1/255.255.255.0 -j ACCEPT
iptables -t nat -A POSTROUTING -o ${WAN} -j MASQUERADE

#Bittorrent
iptables -t nat -A PREROUTING -p tcp --dport 6881:6889 -i ${WAN} -j DNAT --to 192.168.0.2
iptables -t nat -A PREROUTING -p tcp --dport 6881:6889 -i ${WAN} -j DNAT --to 192.168.0.3



#Informujemy jądro o chęci przekazywania IP jaki i udowstępnienia połączeia
echo 1 > /proc/sys/net/ipv4/ip_forward
for f in /proc/sys/net/ipv4/conf/*/rp_filter ; do echo 1 > $f ; done

a HTB zgłasza taki komunikat

Kod:

router:~# /root/htb.sh 
RTNETLINK answers: No such file or directory

mój plik HTB

Kod:

router:~# cat /root/htb.sh 
#!/bin/bash
# czyszczenie smieci z eth0
tc qdisc del root dev eth0
tc qdisc add dev eth0 root handle 1:0 htb
# lanik
tc class add dev eth0 parent 1:0 classid 1:1 htb rate 99000kbps ceil 99000kbps

# cale lacze wykorzysten
tc class add dev eth0 parent 1:1 classid 1:2 htb rate 16mbps ceil 16mbps
tc class add dev eth0 parent 1:1 classid 1:3 htb rate 98000kbps ceil 98000kbps

# podzial wlasciwy lacza + priorytety
tc class add dev eth0 parent 1:2 classid 1:4 htb rate 2mbps ceil 16mbps prio 2
tc class add dev eth0 parent 1:2 classid 1:5 htb rate 8mbps ceil 16mbps prio 1
tc class add dev eth0 parent 1:2 classid 1:6 htb rate 2mbps ceil 16mbps prio 2
tc class add dev eth0 parent 1:2 classid 1:7 htb rate 2mbps ceil 16mbps prio 2
tc class add dev eth0 parent 1:2 classid 1:8 htb rate 2mbps ceil 16mbps prio 2

# serwer 
tc filter add dev eth0 protocol ip preference 1 parent 1:0 u32 match ip src 192.168.1.1 flowid 1:3

# klienci 
tc filter add dev eth0 protocol ip preference 2 parent 1:0 u32 match ip dst 192.168.1.2 flowid 1:4
tc filter add dev eth0 protocol ip preference 2 parent 1:0 u32 match ip dst 192.168.1.3 flowid 1:5
tc filter add dev eth0 protocol ip preference 2 parent 1:0 u32 match ip dst 192.168.1.4 flowid 1:6
tc filter add dev eth0 protocol ip preference 2 parent 1:0 u32 match ip dst 192.168.1.5 flowid 1:7
tc filter add dev eth0 protocol ip preference 2 parent 1:0 u32 match ip dst 192.168.1.6 flowid 1:8


# dostep do lanu przez serwer
tc qdisc add dev eth0 parent 1:3 handle 3:0 sfq perturb 10

# klienci i rowny dostep do lanu
tc qdisc add dev eth0 parent 1:4 handle 4:0 sfq perturb 10
tc qdisc add dev eth0 parent 1:5 handle 5:0 sfq perturb 10
tc qdisc add dev eth0 parent 1:6 handle 6:0 sfq perturb 10
tc qdisc add dev eth0 parent 1:7 handle 7:0 sfq perturb 10
tc qdisc add dev eth0 parent 1:8 handle 8:0 sfq perturb 10
router:~#

puki mam takie problemy nie mogę całej sieci przełączyć i na router:(
i nici zabawy
z góry dziękuję za pomoc

Offline

 

#2  2008-12-01 19:54:00

  milyges - inż.

milyges
inż.
Skąd: Gorlice/Kraków
Zarejestrowany: 2006-04-09
Serwis

Re: router na debianie + iptables + HTB

Spróbuj odpalić htb.sh ponownie, wiem że to głupie ale IMO wynika to z kasowania kolejki głównej która nie istnieje...
Może cie się ze mnie śmiać i powiedzieć że się nie znam, ale u mnie dostawałem identyczny komunikat ale tylko przy 1 odpaleniu skryptu do HTB (na czystym systemie)

Pozdrawiam.

Offline

 

#3  2008-12-02 10:46:48

  keddie - Użytkownik

keddie
Użytkownik
Skąd: localhost
Zarejestrowany: 2008-04-22

Re: router na debianie + iptables + HTB

milyges - masz racje, komunikat wyskakuje bo nie ma początkowo takiej kolejki. Nie ma także potrzeby odpalać skryptu drugi raz bo i po co? Wszystko działa, a usuwanie kolejki jest przydatne w razie restartu skryptu.

Offline

 

#4  2008-12-03 17:32:10

  tilk - Nowy użytkownik

tilk
Nowy użytkownik
Zarejestrowany: 2008-11-29

Re: router na debianie + iptables + HTB

działa panowie samo się jakoś naprawiło:) ale za to nie mam połączenia z siecią bittorent za zadną jasną ciasną

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
Możesz wyłączyć AdBlock — tu nie ma reklam ;-)