Witam.
Konfiguruję router na Debianie - kernel 2.6.18.
Moja sytuacja wygląda tak:
eth0 - internet - (wyjście na świat)
eth1 - wyjście na sieć lokalną LAN (WLAN)
Skonfigurowane mam następujące rzeczy:
- dhcp na eth1
- firewall (filtracja po adresach mac karty sieciowej, adres IP przypisany dla danego mac-a)
- kolejkowanie htb
Wszystko działa tak jak należy, tylko wiadomo, że filtracja po mac nie jest żadnym zabezpieczeniem. Z tego powodu chcę wprowadzić pppoe, tzn. użytkownik ma dostęp do internetu dopiero po podaniu loginu i hasła.
Problem w tym, że nie wiem jak do tego się zabrać.
Proszę o pomoc.
pppoe i router na Debianie
Zostaw tylko sam serwer dhcp zeby automatycznie przypisywał adresy ip (nie musza byc powiazane z mac'em), wywal calego firewalla, domyslna polityka FORWARD na drop. Gdy postawisz serwer PPPoE używaj skryptów if-up oraz if-down (/etc/ppp/). Poprzez nie dodajesz regółki do firewalla np. iptables -A FORWARD -s 10.0.0.2 -i ppp5 -j ACCEPT. Jesli chcesz moge Ci podac kawałki skryptów jak to jest u mnie zrobione.
oczywiscie nie obejdzie sie bez rekompilacji jajka, trzeba wgrac patch mppe/mppc (szyfrowanie MSCHAP V2) i jak dobrze pamietam jakas nakladke z pppoe (nie gwarantuje, ze trzeba :P)
serwerek pppoe odpalam tak:
gdy ktos sie polaczy, skrypt ip-up odwoluje sie do innego skryptu:
z koleji w rc.ip mam tak:
rc.allow:
I to by było na tyle, wiem, że jest do zrobione dość MOCNO amatorsko ale poprostu lepiej nie potrzebuje ...
Pozdrawiam,
życze sukcesu ze stawianiem serwerka
serwerek pppoe odpalam tak:
Kod: Zaznacz cały
/usr/local/ppp/sbin/pppoe-server -I eth0 -L 10.1.1.1 -N 30 -k
Kod: Zaznacz cały
/home/momok/skrypty/rc.ip up $5 $1
Kod: Zaznacz cały
#!/bin/bash
case "$1" in
'up')
case "$2" in
'10.1.1.2')
/home/momok/skrypty/rc.allow $3 10.1.1.2 8192 add
/home/momok/skrypty/rc.przekierowania add momok $3
;;
'10.1.1.3')
/home/momok/skrypty/rc.allow $3 10.1.1.3 1224 add
/home/momok/skrypty/rc.przekierowania add kajdzioch $3
;;
*) echo "non" ;;
esac
;;
'down')
case "$2" in
'10.1.1.2')
/home/momok/skrypty/rc.allow $3 10.1.1.2 1024 del
/home/momok/skrypty/rc.przekierowania del momok $3
;;
'10.1.1.3')
/home/momok/skrypty/rc.allow $3 10.1.1.3 1024 del
/home/momok/skrypty/rc.przekierowania del kajdzioch $3
;;
*) echo "NON" ;;
esac
;;
*) echo "Usage up/down" ;;
esac
Kod: Zaznacz cały
#!/bin/bash
case "$4" in
'add')
#ftp
iptables -A FORWARD -i $1 -p tcp --dport 19:21 -s $2 -j ACCEPT
#ssh
iptables -A FORWARD -i $1 -p tcp --dport 22 -s $2 -j ACCEPT
#poczta pop3
iptables -A FORWARD -i $1 -p tcp --dport 25 -s $2 -j ACCEPT
iptables -A FORWARD -i $1 -p udp --dport 25 -s $2 -j ACCEPT
#caly ruch
iptables -A FORWARD -i eth1 -d $2 -j ACCEPT
#dnsy
iptables -A FORWARD -i $1 -p tcp --dport 53 -s $2 -j ACCEPT
iptables -A FORWARD -i $1 -p udp --dport 53 -s $2 -j ACCEPT
#www
iptables -A FORWARD -i $1 -p tcp --dport 80 -s $2 -j ACCEPT
#443
iptables -A FORWARD -i $1 -p tcp --dport 443 -s $2 -j ACCEPT
iptables -A FORWARD -i $1 -p udp --dport 443 -s $2 -j ACCEPT
#moor
iptables -A FORWARD -i $1 -p tcp --dport 1040:1050 -s $2 -j ACCEPT
iptables -A FORWARD -i $1 -p udp --dport 1040:1050 -s $2 -j ACCEPT
#l2
iptables -A FORWARD -i $1 -p tcp --dport 3790 -s $2 -j ACCEPT
iptables -A FORWARD -i $1 -p udp --dport 3790 -s $2 -j ACCEPT
#diablo
iptables -A FORWARD -i $1 -p tcp --dport 6112:6114 -s $2 -j ACCEPT
iptables -A FORWARD -i $1 -p tcp --dport 4000 -s $2 -j ACCEPT
#aqq
iptables -A FORWARD -i $1 -p tcp --dport 7543 -s $2 -j ACCEPT
iptables -A FORWARD -i $1 -p udp --dport 7543 -s $2 -j ACCEPT
#http proxy
iptables -A FORWARD -i $1 -p tcp --dport 8080 -s $2 -j ACCEPT
iptables -A FORWARD -i $1 -p udp --dport 8080 -s $2 -j ACCEPT
#counterstrike
iptables -A FORWARD -i $1 -p tcp --dport 27000:30000 -s $2 -j ACCEPT
iptables -A FORWARD -i $1 -p udp --dport 27000:30000 -s $2 -j ACCEPT
#gadugadu
iptables -A FORWARD -i $1 -p tcp --dport 8074 -s $2 -j ACCEPT
#pingi
iptables -A FORWARD -p icmp -i $1 -m limit --limit 1/s -j ACCEPT
#kurnik
iptables -A FORWARD -i $1 -p tcp --dport 17001 -s $2 -j ACCEPT
iptables -A FORWARD -i $1 -p udp --dport 17001 -s $2 -j ACCEPT
#kasyno bennego
iptables -A FORWARD -i $1 -p tcp --dport 50000:50001 -s $2 -j ACCEPT
iptables -A FORWARD -i $1 -p udp --dport 50000:50001 -s $2 -j ACCEPT
iptables -A FORWARD -i $1 -p tcp --dport 6667 -s $2 -j ACCEPT
iptables -A FORWARD -i $1 -p udp --dport 6667 -s $2 -j ACCEPT
#samba
iptables -A FORWARD -i $1 -p tcp --dport 135 -s $2 -j ACCEPT
iptables -A FORWARD -i $1 -p udp --dport 137:138 -s $2 -j ACCEPT
iptables -A FORWARD -i $1 -p tcp --dport 139 -s $2 -j ACCEPT
iptables -A FORWARD -i $1 -p tcp --dport 445 -s $2 -j ACCEPT
#poczta pinczow.com.pl
iptables -A FORWARD -i $1 -p tcp --dport 995 -s $2 -j ACCEPT
iptables -A FORWARD -i $1 -p tcp --dport 465 -s $2 -j ACCEPT
iptables -A FORWARD -i $1 -p udp --dport 995 -s $2 -j ACCEPT
iptables -A FORWARD -i $1 -p udp --dport 465 -s $2 -j ACCEPT
iptables -A FORWARD -i $1 -p tcp --dport 110 -s $2 -j ACCEPT
iptables -A FORWARD -i $1 -p udp --dport 110 -s $2 -j ACCEPT
iptables -A FORWARD -i $1 -p tcp --dport 10001 -s $2 -j ACCEPT
iptables -A FORWARD -i $1 -p udp --dport 10001 -s $2 -j ACCEPT
#htb
tc qdisc del root dev $1
tc qdisc add dev $1 root handle 1:0 htb
tc class add dev $1 parent 1:0 classid 1:1 htb rate 90000kbit ceil 90000kbit quantum 6000
tc class add dev $1 parent 1:1 classid 1:2 htb rate 8192kbit ceil 8192kbit
tc class add dev $1 parent 1:1 classid 1:3 htb rate 85000kbit ceil 85000kbit quantum 3000
tc class add dev $1 parent 1:2 classid 1:5 htb rate 528kbit ceil $3kbit quantum 1500 prio 0
tc filter add dev $1 protocol ip preference 2 parent 1:0 u32 match ip dst $2 flowid 1:5
;;
'del')
iptables -D FORWARD -i $1 -p tcp --dport 10001 -s $2 -j ACCEPT
iptables -D FORWARD -i $1 -p udp --dport 10001 -s $2 -j ACCEPT
iptables -D FORWARD -i $1 -p tcp --dport 110 -s $2 -j ACCEPT
iptables -D FORWARD -i $1 -p udp --dport 110 -s $2 -j ACCEPT
iptables -D FORWARD -i $1 -p tcp --dport 995 -s $2 -j ACCEPT
iptables -D FORWARD -i $1 -p tcp --dport 465 -s $2 -j ACCEPT
iptables -D FORWARD -i $1 -p udp --dport 995 -s $2 -j ACCEPT
iptables -D FORWARD -i $1 -p udp --dport 465 -s $2 -j ACCEPT
iptables -D FORWARD -i $1 -p tcp --dport 135 -s $2 -j ACCEPT
iptables -D FORWARD -i $1 -p udp --dport 137:138 -s $2 -j ACCEPT
iptables -D FORWARD -i $1 -p tcp --dport 139 -s $2 -j ACCEPT
iptables -D FORWARD -i $1 -p tcp --dport 445 -s $2 -j ACCEPT
iptables -D FORWARD -i $1 -p tcp --dport 50000:50001 -s $2 -j ACCEPT
iptables -D FORWARD -i $1 -p udp --dport 50000:50001 -s $2 -j ACCEPT
iptables -D FORWARD -i $1 -p tcp --dport 6667 -s $2 -j ACCEPT
iptables -D FORWARD -i $1 -p udp --dport 6667 -s $2 -j ACCEPT
iptables -D FORWARD -i $1 -p tcp --dport 25 -s $2 -j ACCEPT
iptables -D FORWARD -i $1 -p udp --dport 25 -s $2 -j ACCEPT
iptables -D FORWARD -i $1 -p tcp --dport 3790 -s $2 -j ACCEPT
iptables -D FORWARD -i $1 -p udp --dport 3790 -s $2 -j ACCEPT
iptables -D FORWARD -i $1 -p tcp --dport 1040:1050 -s $2 -j ACCEPT
iptables -D FORWARD -i $1 -p udp --dport 1040:1050 -s $2 -j ACCEPT
iptables -D FORWARD -i $1 -p tcp --dport 7543 -s $2 -j ACCEPT
iptables -D FORWARD -i $1 -p udp --dport 7543 -s $2 -j ACCEPT
iptables -D FORWARD -i $1 -p tcp --dport 8080 -s $2 -j ACCEPT
iptables -D FORWARD -i $1 -p udp --dport 8080 -s $2 -j ACCEPT
iptables -D FORWARD -i $1 -p tcp --dport 443 -s $2 -j ACCEPT
iptables -D FORWARD -i $1 -p udp --dport 443 -s $2 -j ACCEPT
iptables -D FORWARD -i $1 -p tcp --dport 19:21 -s $2 -j ACCEPT
iptables -D FORWARD -i $1 -p tcp --dport 22 -s $2 -j ACCEPT
iptables -D FORWARD -i eth1 -d $2 -j ACCEPT
iptables -D FORWARD -i $1 -p tcp --dport 53 -s $2 -j ACCEPT
iptables -D FORWARD -i $1 -p udp --dport 53 -s $2 -j ACCEPT
iptables -D FORWARD -i $1 -p tcp --dport 80 -s $2 -j ACCEPT
iptables -D FORWARD -i $1 -p tcp --dport 6112:6114 -s $2 -j ACCEPT
iptables -D FORWARD -i $1 -p tcp --dport 27000:30000 -s $2 -j ACCEPT
iptables -D FORWARD -i $1 -p udp --dport 27000:30000 -s $2 -j ACCEPT
iptables -D FORWARD -i $1 -p tcp --dport 8074 -s $2 -j ACCEPT
iptables -D FORWARD -p icmp -i $1 -m limit --limit 1/s -j ACCEPT
iptables -D FORWARD -i $1 -p tcp --dport 17001 -s $2 -j ACCEPT
iptables -D FORWARD -i $1 -p tcp --dport 4000 -s $2 -j ACCEPT
iptables -D FORWARD -i $1 -p udp --dport 17001 -s $2 -j ACCEPT
;;
*) echo 'Usage add/del' ;;
esac
Pozdrawiam,
życze sukcesu ze stawianiem serwerka
Widze jestes poczatkujacym uzytkownikiem ponizej zalaczam przezemnie napisany skrypcik ktory sam za ciebie zaintaluje pppoe sciagasz te 2 pliki do jakiegos folderu
http://dug.net.pl/texty/pliki/ppp-2.4.3.tar.gz
http://dug.net.pl/texty/pliki/rp-pppoe-3.7.tar.gz
dodatkowo skrypt ponizej w zalaczniku umieszczasz te wszystkie pliki wraz ze skryptem w jakims folderze nastepnie nadajesz uprawnienia skryptowi poprzez chmod +x inst-pppoe nastepnie bedac w tym folderze odpalasz skrypt ./inst-pppoe
po zakonczeniu pracy skryptu dodajesz uzytkownikow /etc/ppp/chap-secret login * haslo ip
nastepnie odpalasz serwer
pppoe-server -I eth1 -N 1024 -C tutaj-nazwasieci -L tutaj-adres-ip-serwera -k
http://dug.net.pl/texty/pliki/ppp-2.4.3.tar.gz
http://dug.net.pl/texty/pliki/rp-pppoe-3.7.tar.gz
dodatkowo skrypt ponizej w zalaczniku umieszczasz te wszystkie pliki wraz ze skryptem w jakims folderze nastepnie nadajesz uprawnienia skryptowi poprzez chmod +x inst-pppoe nastepnie bedac w tym folderze odpalasz skrypt ./inst-pppoe
po zakonczeniu pracy skryptu dodajesz uzytkownikow /etc/ppp/chap-secret login * haslo ip
nastepnie odpalasz serwer
pppoe-server -I eth1 -N 1024 -C tutaj-nazwasieci -L tutaj-adres-ip-serwera -k