Debian oferuje oprogramowanie ogólnego przeznaczenia do uruchomienia bramki
sieciowej, która obsługuje NAT, pocztę, DHCP, buforowanie DNS, buforowanie
zapytań HTTP (proxy), CVS, NFS i zasoby Samba dla domowej sieci lokalnej.
Przeczytaj Netfilter
,
gdzie jest opisanych wiele problemów z konfiguracją sieci.
Sieć lokalna używa adresów IP z puli prywatnych adresów sieciowych po to, by zapobiec kolizjom adresów z tymi używanymi w Internecie.
Klasa A: 10.0.0.0 z maską 255.0.0.0 Klasa B: 172.16.0.0 - 172.31.0.0 z maską 255.255.0.0 Klasa C: 192.168.0.0 - 192.168.255.0 z maską 255.255.255.0
Debian używa pliku /etc/network/interfaces
do konfiguracji IP.
Na przykład, jeśli eth0
łączy Cię z Internetem z wykorzystaniem
adresu IP pobieranego przez DHCP, a eth1
łączy Cię z siecią
lokalną (LAN), plik /etc/network/interfaces
wygląda następująco (w
przypadku Woodiego lub nowszej dystrybucji):
auto eth0 iface eth0 inet dhcp auto eth1 iface eth1 inet static address 192.168.1.1 network 192.168.1.0 netmask 255.255.255.0 broadcast 192.168.1.255
Wprowadź poniższe polecenie, by uaktualnić konfigurację sieciową używając
nowego pliku /etc/network/interfaces
:
# /etc/init.d/networking restart
Pamiętaj: Plik /etc/network/interfaces
z Woodiego (i późniejszych
wersji) nie jest kompatybilny z podobnym plikiem z Potato. (Taka sama sytuacja
może zaistnieć między Woody a Sarge.)
Jeśli system używa karty sieciowej PCMCIA, należy skonfigurować sieć w pliku
/etc/pcmcia/network.opts
(dotyczy tylko Potato). W Woodym ten
problem został rozwiązany.
Jeśli nie jesteś pewien, przyjrzyj się wynikowi poniższych poleceń:
# ifconfig # cat /proc/pci # cat /proc/interrupts # dmesg|more
Wiele nowych usług ADSL korzysta do połączeń z PPPoE. Instalator Woodiego nie
posiada menu dla PPPoE ale ma wszelkie potrzebne do tego pakietu, np.
pppoe
i pppoeconf
. By łatwo skonfigurować połączenie
podczas procesu instalacji uruchom pppoeconf
. Czasami przy
połączeniu DSL (PPPoE) trzeba zainteresować się tematem MTU. Szczegółowe
informacje znajdują się w LDP DSL-HOWTO
.
Jeśli masz problemy z niektórymi stronami, zobacz Dziwne kłopoty z dostępem do witryn WWW., Rozdział 3.7.5.
Typowy zestaw programów:
# apt-get install nfs samba dhcpd dhcp-client bind squid procmail fetchmail # apt-get install ssh cvs
Następnie przyjrzyj się następującym plikom:
/etc/init.d/dhcpd (zmodyfikuj, by mieć tylko LAN = eth1) /etc/host.allow (ALL: 192.168.0.0/16 127.0.0.0/8) dla NFS /etc/exports (potrzebny dla NFS) /etc/bind/db.192.168.1 (dodaj) /etc/bind/db.lan (dodaj) /etc/bind/named.conf (zmodyfikuj) /etc/resolv.conf (zmodyfikuj) /etc/hosts /etc/dhcpd.conf (zmodyfikuj dla LAN = eth1) /etc/dhclient.conf (zmodyfikuj by wymusić lokalny DNS) /etc/samba/smb.conf /etc/exim/exim.conf /etc/mailname /etc/aliases /etc/squid.conf (dodaj adresy IP wszystkich dozwolonych hostów)
bind
tworzy lokalny serwer buforujący DNS i zmienia adres serwera
DNS na localhost. Przyjrzyj się plikowi /etc/resolv.conf
:
nameserver 127.0.0.1 search lan.aokiconsulting.com
Projekt netfilter/iptables jest podsystemem ściany ogniowej dla Linuksa 2.4 i
nowszych. Udaj się na stronę Netfilter
, gdzie opisano i
wyjaśniono wiele zagadnień dotyczących konfiguracji sieciowej.
Netfilter przetwarza pakiety przy użyciu pięciu wbudowanych łańcuchów: PREROUTING, INPUT, FORWARD, OUTPUT i POSTROUTING.
decyzja routingu IN ------> PRE ---> ------> FORWARD -----> ----> POST -----> OUT interfejs ROUTING \ śledzenie / ROUTING interfejs DNAT | połączeń ^ SNAT REDIRECT | | MASQUERADE v | INPUT OUTPUT | filtrowanie ^ filtrowanie,DNAT v | \--> Lokalny Proces--/ program przestrzeni użytkownika
Pakiety są przetwarzane w każdym łańcuchu w poszczególnych tablicach.
Reguły ściany ogniowej mają wiele celów (miejsc przeznaczenia):
--to-source ipaddr[-ipaddr][:port-port]
--to-ports port[-port]
--to-destination ipaddr[-ipaddr][:port-port]
--to-ports port[-port]
Podstawowe polecenia iptables
:
iptables -N łańcuch # tworzy łańcuch iptables -A łańcuch \ # dodaje regułkę do łańcuch -t tablica \ # w tablica (filter, nat, mangle) -p protokół \ # tcp, udp, icmp lub all -s adres-źródłowy[/maska] \ --sport port[:port] \ # port źródłowy, jeśli -p jest tcp lub udp -d adres-docelowy[/maska] \ --dport port[:port] \ # port docelowy, jeśli -p jest tcp lub udp -j cel \ # co zrobić, jeśli regułka pasuje -i interfejs-wejściowy \ # dla INPUT, FORWARD, PREROUTING -o interfejs-wyjściowy # dla FORWARD, OUTPUT, POSTROUTING
Komputery w sieci lokalnej mogą mieć dostęp do Internetu przez bramkę sieciową, na której działa maskarada IP (NAT) dzieląc pojedynczy, osiągalny z zewnątrz adres IP.
# apt-get install ipmasq
Zastosuj przykładowe reguły, by zwiększyć zabezpieczenia ipmasq
.
Przeczytaj /usr/share/doc/ipmasq/examples/stronger/README
. W
przypadku debianowego kernel-image-2.4 upewnij się, że załadowałeś odpowiednie
moduły. Opis potrzebnej konfiguracji jest w Obsługa sieci, Rozdział 7.2.3.
W przypadku debianowego kernel-image-2.2, modyfikuj plik
Z92timeouts.rul
w katalogu /etc/masq/rules
tak, jak
pokazano poniżej, by zapewnić dłuższe połączenia ze zdalnymi serwerami (dobre
dla dużych listów elektronicznych, itp.):
# tcp, tcp-fin, udp # 2hr, 10 sec, 160 sec - domyślnie # 1 day, 10 min, 10 min - przykład dłuższego czasu życia $IPCHAINS -M -S 86400 600 600
Również jeśli sieć jest osiągalna przez kartę PCMCIA, ipmasq
musi
być wystartowane z pliku /etc/pcmcia/network.opts
. Przeczytaj
plik /usr/share/doc/ipmasq/ipmasq.txt.gz
.
Załóżmy, że masz notebooka, który jest tak skonfigurowany, że używa różnych środowisk sieciowych i chcesz używać swojego agenta (serwer) poczty bez potrzeby ciągłej zmiany jego konfiguracji.
Dodając poniższą regułkę iptables
na bramce sieciowej
przekierujesz połączenia SMTP do komputera pełniącego funkcję bramki.
# iptables -t nat -A PREROUTING -s 192.168.1.0/24 -j REDIRECT \ -p tcp --dport smtp --to-port 25 # smtp=25, INPUT is open
Jeśli oczekujesz dokładniejszych zestawów regułek, rozważ zainstalowanie
pakietu ipmasq
i dodanie M30redirect.def
do katalogu
/etc/ipmasq/rules/
.
[FIXME] Routing rozszerzony (policy routing) (autor: Phil Brutsche pbrutsch@tux.creighton.edu
):
Zobacz iproute manual
, jeśli
interesują Cię szczegóły. Kształtowanie ruchu (tc, ang. Traffic control) może
być równie interesujące.
Środowisko:
eth0: 192.168.1.2/24; brama 192.168.1.1 eth1: 10.0.0.2/24; brama 10.0.0.1 Brak maskarady na tym komputerze.
Magiczne zaklęcia:
[FIXME] Nigdy tego nie robiłem. Jak ustawić połączenie wdzwaniane jako połączenie zapasowe szybkiego łącza, używając właściwości automatycznego łączenia na żądanie? Wyślij łatkę tutaj :)
Debian Reference
1.07-6, środa, 23 czerwiec 2004, 21:21:03 UTCosamu@debian.org
fenio@o2.pl