[ Pobierz całość w formacie PDF ]
32
Piotr Kopyt, Michał Kułakowski, Krzysztof Niemiec
modułów). Dla kart opartych o popularnie chipsety RTL 8029 i RTL8139 (zastosowane w testowanym
systemie) sÄ… to opcje (odpowiednio):
CONFIG_NE2K_PCI=y
CONFIG_8139CP=y
CONFIG_8139TOO=y
5.2.2. Instalacja kart sieciowych.
Sposób instalacji drugiej karty sieciowej zależny jest od tego czy sterowniki zostały wkompilowane w jądro
czy też została wybrana opcja ładowania ich jako modułów
Sterowniki wkompilowane w jÄ…dro.
Jądro standardowo wykrywa tylko jedną kartę sieciową i aby druga karta została również wykryta należy do
jądra przekazać parametr ether=irq, base_addr, name. Gdzie irq jest numerem przerwania pod
którym karta ma być obsługiwana, base_addr jest adresem początkowym zakresu pamięci przydzielonej
karcie a name jest nazwą interfejsu (standardowo jest to nazwa postaci ethN). Parametr można przekazać do
jÄ…dra poprzez dodanie do pliku /etc/lilo.conf linijki:
append= ether=irq, base_addr, name
po dodaniu tej linijki należy przeinstalować lilo poprzez wydanie komendy lilo.
Sterowniki ładowane jako moduły.
W przypadku sterowników ładowanych jako moduły przypisanie kartom adresów i przerwań odbywa się
poprzez wpis w pliku /etc/modules.conf, wpisy te mają postać:
alias eth0 ne2k-pci
alias eth1 8139cp
options ne2k-pci irq=5 io=0xe400
options 8139 irq=7 io=0xe800
Nadawanie interfejsom sieciowym numerów IP odbywa się z użyciem narzędzia ifconfig.
5.2.3. Definiowanie rutingu.
Aby możliwe było poprawne przekazywanie pakietów pomiędzy interfejsami konieczne jest zdefiniowanie
rutingu. Służy do tego narzędzie route. Polecenia konfigurujące ruting znajdują się w pliku
/etc/sysconfig/network dla naszego systemu powinny się tam znalezć odpowiednie wpisy (w testowanym
systemie w pliku tym były polecenia definiujące ruting z tym że wymagały one modyfikacji gdyż otrzymana
w wyniku ich działania tablica rutingu była nieprawidłowa):
# ruting dla adresu lokalnego
route add 127.0.0.1 dev lo
# siec zawierajaca serwery uslug sieciowych
route add net 192.168.1.0 netmask 255.255.255.0 dev eth1
# intranet
route add net 192.168.2.0 netmask 255.255.255.0 dev eth2
# siec zewnetrzna
route add net 140.140.0.0 netmask 255.255.0.0 dev eth0
# wyjscie na swiat przez 140.140.1.1
route add net default gw 140.140.1.1 dev eth0
Plik: firewall Wersja: 0.1-82 z dnia 13.06.2002 Stron: 41 Długość: 307 kB
Copyright © 2002 Akademia Górniczo-Hutnicza Prowadzenie zajęć: mgr inż. BogusÅ‚aw Juza
33
Piotr Kopyt, Michał Kułakowski, Krzysztof Niemiec
Dodatkowo należy zezwolić na forwarding pakietów przez jądro (defaultowo opcja ta jest wyłączona),
dokonuje siÄ™ tego poleceniem:
echo 1 >> /proc/sys/net/ipv4/ip_forward
Polecenie to należy umieścić w dowolnym skrypcie uruchamianym podczas startu systemu (np. w skrypcie
definiującym reguły firewalla).
5.2.4. Konfigurowanie firewalli.
Poniżej przedstawiono skrypt konfiguracyjny firewalla, skrypt ten umieszczony został w katalogu
/etc/rc.d/init.d, aby skrypt ten był wywoływany podczas startu systemu na odpowiednim poziomie należy w
odpowiednim katalogu umieścić link do niego, najczęściej jest to poziom 3 w związku z tym jest to katalog
/etc/rc.d/rc3.d
#! /bin/sh
# nasze sieci
WEB_SERVERS="192.168.1.0/24"
INTRANET="192.168.2.0/24"
GATEWAY_IP="140.140.140.14"
# nasze serwery
WWW_SERVER="192.168.1.10"
WWW_SERVER_PORTS="80,443"
FTP_SERVER="192.168.1.11"
FTP_SERVER_PORTS="20,21"
MAIL_SERVER="192.168.1.12"
MAIL_SERVER_PORTS="25,110"
NEWS_SERVER="192.168.1.13"
NEWS_SERVER_PORTS="119,563"
# porty gatewaya na których ruch ma być przepuszczany
GATEWAY_TCP_PORTS="22,23,53"
GATEWAY_UDP_PORTS="53"
MASQUERADE_LOG_SYN=" MASQUERADE_LOG_SYN "
MASQUERADE_LOG_FIN=" MASQUERADE_LOG_FIN "
MASQ_INFO="Setting masquerade and firewall rules"
##################################################################
# skrypt zawierajÄ…cy funkcje biblioteczne
. /etc/rc.d/init.d/functions
# 1 zezwalamy na forwarding pakietów
echo '1' >> /proc/sys/net/ipv4/ip_forward
# 2 pozwalamy na ruch do gatewaya na zdefiniowanych wcześniej portach
# zezwalamy także na obsługę pakietów ICMP
iptables -P INPUT DROP
iptables -A INPUT -m multiport -p tcp -d "$GATEWAY_IP" --dport
"$GATEWAY_TCP_PORTS" -j ACCEPT
iptables -A INPUT -m multiport -p udp -d "$GATEWAY_IP" --dport
"$GATEWAY_UDP_PORTS" -j ACCEPT
iptables -A INPUT -m icmp -p icmp -d "$GATEWAY_IP" -j ACCEPT
Plik: firewall Wersja: 0.1-82 z dnia 13.06.2002 Stron: 41 Długość: 307 kB
Copyright © 2002 Akademia Górniczo-Hutnicza Prowadzenie zajęć: mgr inż. BogusÅ‚aw Juza
34
Piotr Kopyt, Michał Kułakowski, Krzysztof Niemiec
# 3 zabezpieczamy się przed skanowaniem portów przy użyciu najczęściej
# stosowanych technik, logujemy próby skanowania
iptables -t nat -A PREROUTING -p tcp --tcp-flags ALL FIN,URG,PSH
-j LOG --log-prefix "XMAS PORT SCAN: " --log-level warning
[ Pobierz całość w formacie PDF ]