Konfiguracja prostego serwera PPPoE
Kategoria: Artykuły, etykiety: sieć, internet
Dodany: 2009-09-20 20:29
(zmodyfikowany: 2009-09-20 20:32)
Przez: BiExi
Wyświetleń: 121757
Poniższy opis jest dla celów poglądowych do zastosowania na większą produkcyjną skale się nie nadaje.
Jak wiadomo użytkownicy sieci są coraz „sprytniejsi” potrafią „ukraść” komuś adres IP albo podmienić adres fizyczny karty sieciowej, a wszystko po to by za darmo móc korzystać z internetu :].
Jedną z prostszych metod zabezpieczenia się przed tego typu działaniami jest postawienie koncentratora PPPoE. Dzięki któremu dostęp do internetu będą mieli tylko Ci którzy połączą się po autoryzacji loginem i hasłem otrzymają dostęp do internetu
Opis składa się z 3 części
Podstawowa konfiguracja koncentratora PPPoE
Udostępnienie internetu dla urządzeń łączących się za pomocą PPPoE
Odpalenie koncentratora PPPoE
1. Konfiguracja koncentratora
Instalujemy serwer pppoe
aptitude install pppoe
tworzymy plik /etc/ppp/pppoe-server-options z zawartością
require-chap
lcp-echo-interval 20
lcp-echo-failure 10
gdzie
require-chap – określa metodę autoryzacji
lcp-echo-interval – dzięki tej funkcji będziemy mogli wykryć zerwanie połączenia
**lcp-echo-failure **- potrzebne do odnawiania połączenia gdy z nieustalonych przyczyn połączenie się zawiesi
w pliku /etc/ppp/options wpisujemy
mtu 1472
mru 1472
-pap
+chap
ms-dns 194.204.159.1
ms-dns 194.204.152.34
Gdzie:
mtu 1472 – określa wielkość Maximum Transmission Unit
mru 1472 – określa wielkość Maximum Receive Unit
-pap – sposób uwierzytelniania Password Authentication Protoco
+chap - sposób uwierzytelniania Challenge Handshake Authentication Protocol
ms-dns 194.204.159.1
ms-dns 194.204.152.34 – ustawienie serwerów DNS
Przykładowy plik z użytkownikami /etc/ppp/chap-secrets będzie wyglądał tak
# Secrets for authentication using CHAP
# client server secret IP addresses
login1 * haslo1 10.10.10.2
login2 * haslo2 10.10.10.3
Uwaga: poszczególne elementy muszą być oddzielone tabulatorami
2. Udostępnienie internetu dla sprzętu połączonego za pomocą PPPoE
Tworzymy plik /etc/init.d/firewall z zawartością szczegółowe objaśnienia dostępne są http://dug.net.pl/tekst/31/udostepnienie_polaczenia_internetowego_(masq)/
# wlaczenie w kernelu forwardowania
echo 1 > /proc/sys/net/ipv4/ip_forward
# czyszczenie starych regul
iptables -F
iptables -X
iptables -t nat -X
iptables -t nat -F
iptables -t mangle -F
iptables -t mangle -X
# ustawienie domyslnej polityki
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
# utrzymanie polaczen nawiazanych
iptables -A INPUT -j ACCEPT -m state --state ESTABLISHED,RELATED
iptables -A FORWARD -j ACCEPT -m state --state ESTABLISHED,RELATED
iptables -A OUTPUT -j ACCEPT -m state --state ESTABLISHED,RELATED
Nadajemy w/w plikowi prawo uruchomienia i ustawiamy by wykonywał się podczas startu systemu
update-rc.d firewall defaults 20
/etc/init.d/firewall
Kolejną czynnością jest ustawienie by podczas podnoszenia się tunelu PPP wykonywały się reguły do udostępnienia internetu w tym celu na końcu pliku /etc/ppp/ip-up dopisujemy
iptables -t nat -A POSTROUTING -s $5 -j MASQUERADE
iptables -A FORWARD -s $5 -j ACCEPT
Po zamknięciu tunelu PPP chcemy by wpisy do udostępniania internetu zostały usunięte na końcu pliku /etc/ppp/ip-down dopisujemy
iptables -t nat -D POSTROUTING -s $5 -j MASQUERADE
iptables -D FORWARD -s $5 -j ACCEPT
teraz małe wyjaśnienie $5 – jest to parametr przekazywany do 2 w/w plików i jest to adres IP 2 końca tunelu PPP czyli adres IP komputera który łączył się do naszego koncentratora PPPoE
3. Odpalenie serwera PPPoE
pppoe-server -I eth0 -N 1024 -C dug -L 10.10.10.1 -k
gdzie:
-I – określa interfejs na którym serwer PPPoE nasłuchuje
-N – ilość obsługiwanych sesji dla PPPoE
-C – nazwa serwera PPPoE tutaj dug
-L – adres IP serwera przy podnoszeniu połączenia
-k – korzystaj z sterowników jądra