Föreläsning 6 Mål Förse en översikt av tillämpningar i Internet Förstå betydelsen av DNS och grundstrukturen i DNS Förstå användning DHCP förstå hur HTTP fungerar Mänskor och IP adresser Numeriska adresser används i Internet exempel: 10.0.0.1 (IPv4), fe80::a0a1:46ff:fe06:61ee (IPv6) Mänskor minns namn bättre än nummersekvenser I Internet har namn använts ända från början Domain Name System (1/3) Historia: i början hade man alla DNS data i en fil: hosts.txt blev opraktiskt när Internet växte Lösningen var DNS Huvuduppgifter: mapping mellan namn och IP adress, och vice versa kontrollerar e-postöverföring domännamn: absolut: Fully Qualified Domain Name (FQDN) slutar alltid med beteckningen för rotnoden (.) t. ex. www.hut.fi. Relativt t. ex. www eller www.hut 1
Domain Name System (2/3) DNS databasen är: global globalt unika namn och adresser distribuerad ingen nod har fullständig information en organisation kan sköta sin egen lokala DNS data hierarkisk organiserat som ett träd med en rotnod, som Unix filsystem domäner och zoner Domain Name System (3/3) Noderna kallas för domäner t. ex. hut.fi toppnivådomäner: organisatoriska arpa, com, edu, gov, int, mil, net, org nya:.name (registrations by individuals),.biz (for business),.info (unrestricted use) geografiska fi, se, uk, us, nu, go, etc... Struktur Global hierarkisk distribuerad Rot nod, rot namn servrar (13) Toppnivådomäner (com, edu, fi, se, uk) Lägre nivå domäner (hut.fi) Löv (www.hut.fi -> 130.233.220.31) 2
DNS begrepp (1/3) namnserver master (primary, master) den server där datan administreras slav (secondary, slave) har auktoritativ data om en viss zon laddar ny data från primären med jämna mellanrum medelst zonöverföring (zone transfer) Buffertminne (cache) en namnserver kan spara DNS data den fått via förfrågningar för en viss tid BIND (Berkeley Internet Name Daemon) mest använda namnbetjänten fritt distribuerbar mjukvara DNS begrepp (2/3) Resolver: klienten i DNS kan göra namnförfrågningar t. ex. nslookup eller dig Resolution processen bestående av en eller flera förfrågningar för att få en viss information namnservrar måste känna till de servrar som är ansvariga för rotnoden: rotnamnserver (root name server) DNS begrepp (3/3) delegering: ansvaret för en underdomän ges åt en ny namnbetjänt in-addr.arpa: den del av trädet som innehåller adress-till-namn information 3
8. IP address DNS träd med in-addr.arpa Root node (.) arpa inaddr 130 com fi 233 220 Leaves (www.hut.fi -> 130.233.220.31) 31 Leaves (31.220.233.130.in-addr.arpa -> www.hut.fi) Resolution 2. www.cnn.com? Root name server Hut namnserver 3. referral (.com) 4. www.cnn.com? 1. www.cnn.com? 5. referral (cnn.com) 6. www.cnn.com?.com name server 7. IP address machine.hut.fi cnn.com name server DNS i infrastrukturen DNS is a fundamental component of the Internet infrastructure application DNS transport TCP UDP network link IP Ethernet 4
Data i DNS Informationen måste sparas i ett visst fastlagt format RR (resource record) A: namn till adress PTR: adress till namn NS: information om namnservers för en viss zon CNAME: alias MX: mail exchanger, information om vilka maskiner emottar elpost för en maskin eller en zon SOA: Start Of Authority, varje zon har en SOA Master Zone File Example verkot.example. IN SOA ns.verkot.example. dnsadmin.verkot.example. ( 6 28800 7200 604800 86400 ) IN NS ns.verkot.example. IN MX 10 mail.verkot.example. $ORIGIN verkot.example. localhost IN A 127.0.0.1 ns IN A 10.10.10.1 mail IN A 10.10.10.2 www IN A 10.10.10.3 IN TXT "Our web server" ftp IN CNAME mail Serial, refresh, retry, expiry, minimum TTL Error, dot missing Problem i DNS Komplicerat protokoll DNS administration dåligt dokumenterat Master file format: formatet som används för att spara DNS information känsligt för felkonfigurationer: fatalt att t. ex. glömma bort en punkt i ett absolut domännamn En undersökning av Men and Mice November 2000 : 80 % av zonerna innehåller felaktig information som kan leda till problem Säkerhet Crackers samlar ofta DNS information som förberedelse för attacker DNS implementationerna har haft många svagheter 5
Nya krav IPv6 stöd DNS behöver datasäkerhetsmekanismer många attacker utnyttjar svagheter i DNS DNS Security Extensions (DNSSEC) dynamisk uppdatering dynamic DNS update, dyndns Internationell DNS Dynamic Host Configuration Protocol Mål att underlätta konfigurationsprocessen när en ny maskin kopplas till nätet nätkonfigurationen sker automatiskt den nya som maskinen kopplas till nätet kör en DHCP klient en DHCP server i nätet tilldelar maskinen en address för en viss tid (lease) dyndns gör det möjligt för en DHCP server att konfigurera DNS automatiskt då en ny maskin kopplas till nätet Tillämpningar (1/3) Telnet, Rlogin, rsh för fjärrkontakt till en annan maskin ssh borde användas i stället för dessa rcp kopiering till en annan maskin scp bör användas för säker kopiering File transfer protocol (FTP) Filöverföring Scp eller sftp bör användas för säker filöverföring 6
Tillämpningar (2/3) Simple Network Management Protocol (SNMP) används för nätverksadministration nyare versioner har datasäkerhetsmekanismer World-wide web (WWW) HTTP (HyperText Transfer Protocol) används Tillämpningar (3/3) E-post Simple Mail Transfer Protocol (SMTP, RFC822) MIME (stöder teckenuppsättningen ISO Latin-1) sendmail: program som sköter e-postöverföring invecklat, har innehållit många säkerhetshål PGP (eller GPG) för säker e-postöverföring Post Office Protocol (POP) och Internet Message Access Protocol (IMAP) En e-post klient tar kontakt till en POP eller IMAP server och frågar efter ny e-post WWW (1/3) klient-server-modellen överföringsprotokoll HTTP olika representationer av text: HTML, XML Standard Generalized Markup Language (SGML) metaspråk internationell standard annoterad text för att göra det möjligt att bestämma hur en test skall se ut (t. ex. då texten printas) deskriptiv annotation dokumenttyper systemoberoende 7
WWW (2/3) HyperText Markup Language (HTML) ett metaspråk för att göra hypertextdokument som är portabla från en platform till annan följer SGML-standarden (en tillämpning av SGML), dvs syntaxen för HTML definieras med SGML och en DTD (document type definition) <!DOCTYPE HTML PUBLIC "- //W3C//DTD HTML 3.2 Final//EN"> WWW (3/3) exstensible Markup Language (XML) rekommendation för att göra WWW till ett mångsidigare redskap erbjuder mer flexibilitet: möjligt att göra saker som inte kan göras eller är svåra att göra med HTML HTML erbjuder en definierad, fast mängd annotationssymboler (tags) XML ger möjlighet att definiera nya symboler (t. ex. <PHONENUM>) och beroendeförhållanden mellan olika symboler Hypertext Transfer Protocol (1/3) protokoll för kommunikation mellan en WWW klient (browser) och en WWW server port 80 används vanligen enkelt protokoll två typer av meddelanden: begäran (request) och svar (response) URI (Uniform Resource Identifier) URL (Uniform Resource Locator) URN (Universal Resource Names) 8
HTTP (2/3) begäran, format: request-line: Method request-uri HTTP-version headers <blankline> body GET ger som svar informationen som identifieras i URI i begäran HEAD ger endats huvudet som svar POST används för att posta e-post, nyheter eller för att sända informationen i en ifyll blankett HTTP (3/3) svar, format status-line: HTTP-version response-code response-phrase headers <blankline> body svarkoder Framgångsrikt resultat, redirect, klientfel, serverfel 200: OK, request succeeded 301: requested resource has been assigned a new permanent URL 404: Not found 503: Service temporarily unavailable HTTP proxy CGI (Common Gateway Inteface) www-sidor kan genereras medelst kod skriptar kan byggas för att behandla information (POST) Exempel (1/3) morphine ~ 35 % telnet www.hut.fi 80 Trying 130.233.220.31... Connected to www.hut.fi. Escape character is '^]'. HEAD /index.html HTTP/1.1 Host: www.hut.fi HTTP/1.1 200 OK Date: Wed, 24 Nov 1999 08:46:27 GMT Server: Apache/1.3.9 (Unix) Last-Modified: Tue, 23 Nov 1999 15:24:03 GMT ETag: "17b4f-148f-383ab193" Accept-Ranges: bytes Content-Length: 5263 Content-Type: text/html;charset=iso-8859-1 9
Exempel (2/3) morphine ~ 36 % telnet www.hut.fi 80 Trying 130.233.220.31... Connected to www.hut.fi. Escape character is '^]'. GET /index.html HTTP/1.1 Host: www.hut.fi HTTP/1.1 200 OK Date: Wed, 24 Nov 1999 08:48:24 GMT Server: Apache/1.3.9 (Unix) Last-Modified: Tue, 23 Nov 1999 15:24:03 GMT ETag: "17b4f-148f-383ab193" Accept-Ranges: bytes Content-Length: 5263 Content-Type: text/html;charset=iso-8859-1 Exempel (3/3) <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"> <html> <head> <title>teknillinen korkeakoulu</title> <link rev="made" href="mailto:webmaster@hut.fi"> <!-- (v4.6 13.2.1998, v4.6.1 23.11.1998, v4.6.2 27.1.1999) v4.7 26.4.1999 --> </head>... <tr><td colspan=2> </td><td align=left colspan=3><small>sivusta vastaa <a href="mailto:www-ryhma@hut.fi">www-ryhma@hut.fi</a>. Päivitetty 8.10.1999.</small></td></tr> </table> </center> </body> </html> Connection closed by foreign host. morphine ~ 37 % Framtid Ny version av HTTP-protokollet (1.1) innehåller nya primitiv PUT DELETE TRACE CONNECT OPTIONS interaktivitet i WWW javascript Java ActiveX 10