wykład 1 – konfiguracja środowiska sieciowego systemów...
TRANSCRIPT
Wykład 1 – Konfiguracja środowiska sieciowego systemów unixowych na
przykładzie GNU/Linux. Usługa DNS i SMB
(c) mgr inż. Adam Mencwal, Katedra Informatyki Stosowanej
➔ obsługa poleceń netstat, ifconfig, route, etc.
➔ hierarchiczna i rekurencyjna architektura DNS
➔ rekordy DNS
➔ SMB – możliwości protokołu
➔ rodzaje wezłów SMB, proces elekcji
➔ parametry konfiguracyjne pakietu Samba
Podstawy konfiguracji środowiska sieciowego systemu GNU/Linux
• lspci <= lista wykrytych urządzeń • modprobe/lsmod/rmmod <= zarządzanie modułem karty
sieciowej• ifconfig <= konfiguracja interfejsu sieciowego• route <= konfiguracja rutingu statycznego• netstat <= wyświetlanie otwartych gniazd
UDP, połączeń TCP, tablicy rutingu,itp.• ping, traceroute <= testowanie drożności tras
• /etc/hosts <= rozwiazywanie nazw(stat.)• /etc/resolv.conf <= rozwiązywanie nazw(dyn.)• /etc/hosts.{allow/deny} <= restrykcje dostępu do usług
(c) mgr inż. Adam Mencwal, Katedra Informatyki Stosowanej
ifconfig – zarządzanie interfejsami sieciowymi
ifconfig <interfejs> <opcje>
<interfejs> <= nazwa interfejsu (np. eth0, eth1, ppp0)<opcje> mogą przyjmować przykładowe wartości:up/down <= włączanie/wyłączanie interfejsu<IP> <= numer IP przydzielony interfejsowinetmask <maska> <= ustawienie maski sieciowejarp <= włączanie/wyłączanie używania
protokołu ARP [-]promisc <= włączanie/wyłączanie trybu
promiscous (przechwytywaniewszystkich pakietów)
mtu <N> <= ustawienie MTUhw ether <MAC> <= ustawienie adresu MAC
(c) mgr inż. Adam Mencwal, Katedra Informatyki Stosowanej
route – zarządzanie trasami
route [add/del] <cel> <opcje>
<cel> <= docelowa sieć lub stacja
<opcje> mogą przyjmować przykładowe wartości:
gw GW <= trasowanie pakietów poprzez bramkę GWnetmask M <= ustawienie maski sieciowej Mdev IF <= związanie trasy z podanym interfejsemmss M <= ustawienie MSS na M
(c) mgr inż. Adam Mencwal, Katedra Informatyki Stosowanej
route – przykład wyjścia polecenia
(c) mgr inż. Adam Mencwal, Katedra Informatyki Stosowanej
U - trasa jest zestawiona [up] H - cel jest stacją [host] G - użyj bramki [gateway] R - reinstancjuj trasę na trasowanie dynamiczne D - dynamicznie instalowana przez demona lub przekierowanie M - modyfikowana z demona trasowania lub przekierowania A - instalowana przez addrconf C - wpis bufora podręcznego [cache] ! - trasa odrzucenia [reject]
Destination Gateway Genmask Flags Metric Ref Use Iface
213.25.2.139 0.0.0.0 255.255.255.255 UH 0 0 0 ppp0192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
0.0.0.0 213.25.2.139 0.0.0.0 UG 0 0 0 ppp0
netstat – przykład wyjścia polecenia (fragment)
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address Statetcp 0 0 0.0.0.0:8192 0.0.0.0:* LISTENtcp 0 0 0.0.0.0:5222 0.0.0.0:* LISTENtcp 0 0 192.168.0.5:80 0.0.0.0:* LISTENtcp 0 22 83.26.26.21:3613 82.21.16.92:105 FIN_WAIT2tcp 131 0 83.26.26.21:4247 80.108.9.23:2456 TIME_WAITtcp 0 0 83.26.26.21:4662 83.24.14.20:3414 ESTABLISHEDudp 0 0 0.0.0.0:4666 0.0.0.0:*udp 0 0 127.0.0.1:53 0.0.0.0:*
Proto Ref Cnt Flags Type State I-Node Pathunix 16 [ ] DGRAM 983 /dev/logunix 2 [ACC] STREAM LISTENING 11375257 /var/run/mysqld.sock
(c) mgr inż. Adam Mencwal, Katedra Informatyki Stosowanej
/etc/hosts & /etc/resolv.conf – przykłady
• /etc/hosts
127.0.0.1 localhost192.168.1.10 foo.mydomain.org foo192.168.1.13 bar.mydomain.org bar146.82.138.7 master.debian.org master209.237.226.90 www.opensource.org
• /etc/resolv.conf
domain kis.p.lodz.plsearch kis.p.lodz.pl lab.kis.p.lodz.plnameserver 127.0.0.1nameserver 194.204.159.1
(c) mgr inż. Adam Mencwal, Katedra Informatyki Stosowanej
hosts.{allow/deny}
hosts.allow i hosts.deny to pliki definiujące restrykcje dostępu do lokalnego komputera według kryteriów:●wywoływany program (demon)●adres źródłowy połączenia
Kolejność wpisów ma znaczenie!(sprawdzanie w kolejności: hosts.allow => hosts.deny => przyjęcie połączenia)
Można nastawić wykonanie komendy przy trafieniu!
(c) mgr inż. Adam Mencwal, Katedra Informatyki Stosowanej
hosts.{allow/deny} - przykłady
/etc/hosts.allowin.tftpd: LOCAL, host.domaintelnet: 10.0.0.8, .sub.domain (echo „uwaga!”)
/etc/hosts.denyALL : ALL: spawn /usr/bin/mail
Polecenie wywoływane(demon)
Źródło połączenia
Uruchomienie programu (opcjonalne)
(c) mgr inż. Adam Mencwal, Katedra Informatyki Stosowanej
DNS – co to takiego?
DNS – Domain Name System (System Nazw Domenowych) RFC 1033,1034
Hierarchiczny, rozproszony system serwerów zapewniający zamianę nazw tekstowych (www.kis.p.lodz.pl) na adresy numeryczne IP (212.191.89.2).
(c) mgr inż. Adam Mencwal, Katedra Informatyki Stosowanej
DNS – założenia funkcjonalne
● Spójna przestrzeń nazw umożliwiająca dostęp do wskazanych zasobów (adres IP) bez wiedzy o trasie, masce sieciowej itp.
● Możliwość decentralizacji zarządzania domeną (sukcesywne tworzenie poddomen) w celu zmniejszenia ruchu sieciowego wywołanego zapytaniami
● Wydajność – protokół UDP (port 53)
(c) mgr inż. Adam Mencwal, Katedra Informatyki Stosowanej
pl.firma.com
uk.firma.com no.firma.com
domena FIRMA.COM
gdansk.pl.firma.com
firma.com
pl.firma.com uk.firma.com no.firma.com
lodz.pl.firma.com
s1.no.firma.coms2.no.firma.com
s3.no.firma.com
klient DNS
domena .lodz.pl
domena .firma.pl
lokalny serwer DNSdomena
p.lodz.pl
domena .pl
domena .com
domena .com(backup)
domena .gov
TLD (Top Level Domain)
domena .uk
212.51.207.68
A: www.p.lodz.pl?
NS: w
ww
.p.lodz.pl?
NS: .pl = 1.2.3.4
Hierarchiczna i rekurencyjna architektura
DNS
NS: www.p.lodz.pl?
NS: .lodz.pl = 2.3.4.5NS: www.p.lodz.pl?NS: .p.lodz.pl = 3.4.5.6
A: www.p.lodz.pl?
A: www.p.lodz.pl = 212.51.207.68
(c) mgr inż. Adam Mencwal, Katedra Informatyki Stosowanej
klient DNS (192.168.0.25)
serwer DNS(192.168.0.1)
DNS – Dialog między klientem a serwerem
UDP | TRNS. ID: 43265
SRC: 192.168.0.25:1087 | DST: 192.168.0.1:53
UDP | TRNS. ID: 43265
DST: 192.168.0.25:1087 | SRC: 192.168.0.1:53
(((((((( )))))))) !!!
(c) mgr inż. Adam Mencwal, Katedra Informatyki Stosowanej
● łatwy do podszycia się (tzw. spoofing) protokół UDP● transmisja nieszyfrowana● nr transakcji liczbą 16 bitową (0-65534)● próby zabezpieczenia: DNSSec
Rodzaje rekordów DNS (fragment)
• SOA (Start of Authority) generalne informacje o domenie
• A (Address)„zwykła” translacja nazwy na numer IP
• CNAME (Cannonical Name)Alias. Wskazanie na inna nazwę
• NS (Name Server)Wskazanie na serwer nazw dla tej domeny
• MX (Mail Exchange)Wskazanie na serwer pocztowy obsługujący tą domenę
• PTR (Pointer)Translacja odwrotna numeru IP na nazwę
• HINFO (Host Info)Informacje o sprzęcie który obsługuje tą domenę
(c) mgr inż. Adam Mencwal, Katedra Informatyki Stosowanej
Przykład konfiguracji pliku strefy
• @ IN SOA test.pl. root.test.pl. (2005010504 ; Serial7200 ; Refresh3600 ; Retry3600000 ; Expire28800 ) ; Negative Cache TTL
• IN NS ns1.test.pl.IN NS ns2.test.pl.
• IN MX 10 mail1.test.pl.IN MX 20 mail2.test.pl.
• ns1 IN A 10.0.0.1ns2 IN A 10.0.0.2
• www IN CNAME ns1mail1 IN CNAME ns2mail2 IN CNAME ns.inna-domena.pl.
(c) mgr inż. Adam Mencwal, Katedra Informatyki Stosowanej
SAMBA – co to takiego?
SaMBa – zbiór uniksowych aplikacji rozumiejących protokół SMB (Server Message Block).
Umożliwia uniksowym serwerom porozumiewanie się za pomocą tego samego protokołu, którego używają systemy Microsoftu (tzw. „otoczenie sieciowe”).
(źródło: Robert Eckstein, David Collier-Brown, Peter Kelly: 'Using Samba' , Wyd.: O'Reilly, 2000 )
(c) mgr inż. Adam Mencwal, Katedra Informatyki Stosowanej
Samba – charakterystyka i ciekawostki
• Podobnie jak system operacyjny Linux, Samba to 'flagowe' oprogramowanie o otwartym kodzie źródłowym (Open Source
Software), rozpowszechniana na warunkach Powszechnej Licencji Publicznej GNU (GPL).
• prace nad Sambą są w części sponsorowane przez Narodowy Uniwersytet Australii (gdzie autor - Andrew Tridgell uzyskał swój tytuł naukowy) oraz przez takie firmy jak Whistle i SGI.
• Microsoft upublicznił definicję protokołu SMB jako CIFS (Common Internet File System)
(c) mgr inż. Adam Mencwal, Katedra Informatyki Stosowanej
Samba – możliwości
• udostępnianie zasobów plikowych
• udostępnianie drukarek
• uwierzytelnianie klientów logujących się do domeny Windows
• wspomaganie odwzorowywania nazw jako serwer WINS
• wszystko powyższe przy kompatybilności (*) z rozwiązaniami MS przy zerowej cenie i nieraz dużo lepszej wydajności(!)
(c) mgr inż. Adam Mencwal, Katedra Informatyki Stosowanej
Teoria, podstawy działaniaprotokołu NetBEUI
• historyczny przodek SMB – NetBEUI (NetBIOS Extended User Interface) : protokół warstwy sieciowej, nierutowalny, oparty o nazwy max 15 znakowe.
• następca – NBT (NetBIOS over TCP/IP) zawierający usługę nazewniczą, obsługę datagramów i sesji.
przykro mi, już ja mam tę nazwę
NetBIOSowyserwer nazw
ok, rejestruję tę nazwę
chcę zarejestrować się jako komp1
chcę zarejestrować się jako komp1
(c) mgr inż. Adam Mencwal, Katedra Informatyki Stosowanej
Protokół NetBEUI(NetBIOS Extended User
Interface)
cechy NetBEUI:
● NIERUTOWALNY!● oparty o nazwy max 15 znakowe
zosia (BIURO )
zbys zek (BIU RO) wl adek (BIURO )
basia (BIURO )
zene k (DOM) zosia (D OM)
basia (D OM)
franek (D OM)
zen ek (BIURO )
gru pa r oboc za BIURO
gru pa r oboc za DOM
(c) mgr inż. Adam Mencwal, Katedra Informatyki Stosowanej
SMB – typy węzłów
Rola Działanie (rejestracja i odwzorowanie nazw)b-węzeł rozgłoszeniowop-węzeł dwupunktowo (serwer NBNS)m-węzeł najpierw próbuj rozgłoszeniowo, jeśli się nie powiedzie –
dwupunktowo (przez NBNS)h-węzeł najpierw próbuj dwupunktowo (przez NBNS) , jeśli się nie
powiedzie – rozgłoszeniowo
C:\>ipconfig /allWindows 98 IP Configuration...Node Type . . . . . . . . . . : Hybrid
(c) mgr inż. Adam Mencwal, Katedra Informatyki Stosowanej
SMB – typy węzłów (c.d.)
Wartość bajtu Działanie (rejestracja i odwzorowanie nazw)00 Stacja robocza (standarowo)03 Posłaniec (Winpopup)06 Serwer dostępu zdalnego1B Główna przeglądarka domeny20 Serwer plików i drukarekBE Agent monitorowania sieci
D:\>NBTSTAT -a serwerNetBIOS Remote Machine Name Table
Name Type Status-------------------------------------------SERWER <00> UNIQUE RegisteredSERWER <03> UNIQUE RegisteredSERWER <20> UNIQUE Registered
(c) mgr inż. Adam Mencwal, Katedra Informatyki Stosowanej
SMB – Domeny i grupy robocze
• Grupa robocza : zbiór komputerów zarejestrowanych w tej samej grupie SMB
• Domena : Grupa robocza + serwer uwierzytelniający (kontroler domeny)
kontrolerdomeny
komp1 (użytkownik:user)
serwer
proszę o dostępdo zasobu
czy user jest zalogowany?
tak, user jest zalogowany, udostępniam żeton dla
niego
przyznaję dostęp do zasobu
(c) mgr inż. Adam Mencwal, Katedra Informatyki Stosowanej
SMB – przeglądanie i elekcja LMB (Local Master Browser), serwer WINS
(Windows Internet Name Service)
• niegdyś dostęp tylko przez UNC (\\serwer\zasób)
• obecnie przez wzgląd na wydajność sieci wprowadzono funkcję głównej przeglądarki lokalnej (przechowującej informacje o dostępnych komputerach w grupie roboczej)
Samba
OS Level = 69
Win 2000
OS Level = 34
Win 98
OS Level = 2
Win XP
OS Level = 40
• kryteria wyboru wg istotności:• wartość systemu operacyjnego• preferowana przeglądarka główna?• czas w sieci• nazwa (alfabetycznie)
ELEKCJA !
(c) mgr inż. Adam Mencwal, Katedra Informatyki Stosowanej
Samba – przegląd najważniejszych składowych
pakietu• nmbd
Demon świadczący usługi Windows Internet Name Service (WINS) i wspomagający przeglądanie zasobów sieci.
• smbdDemon umożliwiający współdzielenie plików i drukarek w sieci SMB i zapewniający uwierzytelnianie klientów SMB.
• smbclientProgram klienta dzięki którym można podłączyć się do zasobów serwera SMB.
• smbpasswdZarządzanie użytkownikami sieci SMB.
• nmblookupPrzeszukiwanie nazw NetBIOSowych w w sieci SMB.
(c) mgr inż. Adam Mencwal, Katedra Informatyki Stosowanej
ogólna struktura pliku /etc/samba/smb.conf
• [global] ; parametry globalne ustawień serwera...
• [homes] ; parametry zasobów użytkowników ...
• [printers] ; parametry ustawień ... ; podsystemu drukowania
• [udzial_testowy] ; definicja dowolnego udziału...
• możliwość używania zmiennych (fragment):• %m - NetBIOSowa nazwa klienta• %u - nazwa użytkownika• %S - nazwa bieżącego udziału• %v - wersja Samby• %T - bieżąca data i czas
(c) mgr inż. Adam Mencwal, Katedra Informatyki Stosowanej
parametry sekcji [global] (fragment)
• workgroup = GRUPA_ROBOCZA• netbios name = SERWER_SAMBY• server string = %h server (Samba %v)• security = user• interfaces = 192.168.0.0/24• os level = 69• domain master= no• local master = yes• preferred master = yes• logon script = %U.bat• include = /usr/local/samba/lib/smb.conf.%L• hosts allow = 192.168.0. 127.0.0.1• log file = /var/log/samba.log.%m
(c) mgr inż. Adam Mencwal, Katedra Informatyki Stosowanej
parametry udziałów [homes] i innych (fragment)
• path = /export/samba/dane• comment = Dysk z danymi• volume = Stacja-Sieciowa• browseable = yes• writeable = no ; read only = yes• guest ok = yes ; public = yes• valid users = @ksiegowosc szef• invalid users = gosc• root preexec = mount /dev/cdrom• root postexec = umount /dev/cdrom
(c) mgr inż. Adam Mencwal, Katedra Informatyki Stosowanej
parametry udziału [printers] (fragment)
• printing = bsd• path = /tmp• printable = yes• guest ok = yes• print command = /usr/bin/ps2pdf %s
(c) mgr inż. Adam Mencwal, Katedra Informatyki Stosowanej
Tematyka Wykładu 1 – podsumowanie
(c) mgr inż. Adam Mencwal, Katedra Informatyki Stosowanej
➔ obsługa poleceń netstat, ifconfig, route, etc.
➔ SMB – możliwości protokołu
➔ rodzaje wezłów SMB, proces elekcji
➔ parametry konfiguracyjne pakietu Samba
➔ hierarchiczna i rekurencyjna architektura DNS
➔ rekordy DNS