La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Reti di calcolatori e sicurezza

Presentazioni simili


Presentazione sul tema: "Reti di calcolatori e sicurezza"— Transcript della presentazione:

1 Reti di calcolatori e sicurezza
Domain Name System DNS is a name resolution protocol. It converts host names to IP addresses and vice-versa Seminario per il corso di Reti di calcolatori e sicurezza corso di laurea specialistica in Economia Informatica Docente Prof. Stefano Bistarelli Studente Bruno Marien AA2004/05

2 Esercizi e seminari Scoprire per quali messaggi DNS usa la porta 53 e il TCP (invece che l’UDP) Seminario su configurazioni del DNS Seminario su DNSSEC (due persone) dopo che abbiamo fatto crittografia (novembre)

3 Fai vedere configurazione di resolver (su window e linux)
From: "Stefano Bistarelli" To: "Bruno" Date: Tue, 12 Oct :48: Devi parlare di quello non fatto a lezione. Le slide fino alla 15 devono essere solo 1 slide di introduzione. Mi pare ancora molto nebuloso. Fai vedere configurazione di resolver (su window e linux) e del nameserver (su linux e se vuoi su window2000) parla anche del dynamic update dns e differenze con dhcp

4 Quindi: Introduzione (appena più di 1 slide) La configurazione
del resolver e del nameserver Dynamic Update DNS e DHCP

5 1. Introduzione: la scatola nera
Uomo chiede alla macchina: linguaggio ‘umano’, hostname mnemonico. Macchina fornisce hostname ad un servizio chiamato resolver Resolver restituisce l’indirizzo IP Macchina esegue il sevizio richiesto utilizzando l’indirizzo IP Schema del DNS  Per usare e orientarci nella rete usiamo dei hostname che sono facili da ricordare e capire per gli esseri umani. Un’applicazione però ha bisogno di un indirizzo IP. Si rivolge ad un client DNS, chiamato anche resolver, che gli restituisce l’indirizzo IP corrispondente al hostname fornito. Come funziona questo servizio?

6 L’organizzazine dei nomi di dominio – concetti chiave
DNS è un database gerarchico e distribuito che contiene record di risorse con diversi campi Resolver (client): query (forward e inverse) Name Server (locale, assoluti, root, cache) Concetto di ‘Zona’!! (non è dominio) Resource Record: campi (owner, Type, Class, TTL, Data) Resolver (RFC 1034, par. 5): client DNS per i programmi applicativi che usano il protocollo TCP/IP : Posta elettronica, TELNET, FTP, … Resolver fa parte di libc oppure libresolv, compilato nei programmi applicativi. Chiamate di sistema. gethostbyname(), gethostbyaddr() Diversi tipi di server (root, local,…), bisogna distinguere tra assoluto primario e assoluto secondario (zone-transfer) e tra questi e un caching / forwarder server Devono rispondere a query di un resolver o di altri name server Trovano la risposta nel loro database (risposta assoluta) o cache (non-assoluta) Altrimenti inoltra la query (ricorsivo) o restituisce il nome di un name server che lo potrebbe sapere (iterativo) La configurazione in vista di questo servizio Per motivi amministrativi (organizzativi), lo spazio dei nomi è suddiviso in ‘Zone’ che partono in un determinato nodo (delegazione, indicato con uno o più RR di tipo NS nella zona genitore che a sua volta dovrebbe essere indicato con RR di tipo NS nella radice della zona figlia) e scendono giù fino alle foglie e fino ad incontrare il nodo radice di un’altra zona. I dati per ogni zona sono immagazinnati in un Name Server Assoluto o autoritativo (uno primario e almeno uno secondario) che risponde le query sulla zona seguendo il protocollo DNS. I dati, le informazioni su ogni nome di dominio è imagazzinato in Resource Record che possono essere di diverso tipo a secondo dell’informazione che contengono. Type: 16 bit TTL: 32 bit Class: 16 bit Rdata: dipende dal tipo.

7 I tipi RR più comuni Type= Name Value A Hostname Indirizzo IP NS
(Adress) Hostname relay1.bar.foo.com Indirizzo IP NS (Name Server) Dominio foo.com Hostname server nomi assoluti (FQD) dns.foo.com CNAME (Canonical name) Alias Hostname canonico MX (RFC 974) (Mail eXchange) Hostname server posta mail.bar.foo.com Start of Authority (SOA) Richiesto per ogni dominio. Memorizza informazione sul DNS stesso rispetto al dominio. Name Server (NS) Memorizza informazione utilizzato per identificare i Name Server nella zona (almeno 2) che memorizzano informazione su questo dominio Address (A) Memorizza il nome di ogni singolo host nella zona insieme al suo indirizzo IP Canonical Name (CNAME) Memorizza nomi alternativi (alias) per gli host nella zona. Mail Exchange (MX) Memorizza informazione su dove la posta per la zona dovrebbe essere recapitata Pointer (PTR) Per le query inverse. Memorizza l’indirizzo IP e il nome degli host nella zona. Host Information (HINFO) Superato. Memorizza info sul hardware /software. Well Known Services (WKS) Text Information (TXT) Responsible Person (RP) NAPTR (Rfc 3403) A6 (Rfc 3594) Indirizzi IPv6

8 Altri tipi meno comuni o emergenti
HINFO Host CPU o SO PTR (Pointer) Indirizzo IP Nome di dominio (FQD) SOA (Start of a Zone Authority Inizio di una zona di autorità NAPTR (Cfr. RFC 3403) Name authority pointer A6 (Cfr. RFC 3596) Hostname Indirizzo IPv6 Specifica IP versione 6: RFC 2460 Libro 4.7.

9 Vocabolario Resolver e nameserver Nameserver assoluto primario
Nameserver assoluto secondario Nameserver cache / forwarder File di configurazione File di zona

10 2. La configurazione del DNS
2.1. La configurazione del resolver

11 La configurazione del Resolver 2.1.1. Windows
Start > Pannello di controllo > Connessioni di rete > LAN > Generale > Protocollo internet (TCP/IP) > Generale Scelta: automatica o manuale (fornito dall’amministratore di rete / ISP; preferito, alternativo) > Avanzate, DNS (lista, suffissi e limitazione della risolutizione dei nomi per nomi non qualificati) Specifica che la risoluzione dei nomi non qualificati utilizzati in questo computer è limitata ai suffissi di dominio del suffisso primario e di tutti i suffissi specifici della connessione. Configurazione DNS > Resolver > Windows

12 Configurazione DNS > Resolver > Windows > processo
Il resolver I processi in corso: svchost.exe Dove risiede? Lo scopriamo con: Start > Panello di Controllo > Strumenti di amministrazione >Servizi > Client DNS [dx proprietà] Attivarlo (avvio di Windows): C:\Windows\System32\svchost.exe –k NetworkService (netsvcs per DHCP) Svchost.exe: Generic Host Process for Win32 Services Driver in Win32: dnsrslvr.dll servizio cache del resolver DNS dnsapi.dll DNS client API dll Configurazione DNS > Resolver > Windows > processo

13 La configurazione del Resolver 2.1.2. Linux
File /etc/resolv.conf dice quali nameserver devono essere usati dal resolver domain alei.it nameserver nameserver search alei.com alei.org alei.net options timeout 3 options attempts 3 Configurazione DNS > Resolver > Linux > etc/resolv.conf

14 Configurazione DNS > Resolver > Linux > Esempio
domain alei.it /* identifica il nome del dominio a cui appartiene la propria macchina e il server dns.alei.it */ nameserver /* Indirizzo IP del DNS primario */ nameserver /* Indirizzo IP di un eventuale DNS secondario */ search alei.com alei.org alei.net /* elenca domini che vengono aggiunti a nomi di host per ricerche DNS. Può generare traffico inutile e ritardi */ options timeout 3 options attempts 3 man resolv.conf Domain: nome del dominio locale. La maggior parte dei query per nomi all’interno di questo dominio possono usare nomi abbreviati riguardo questo dominio. Se non è presente questa voce, il dominio è quello del localhost restituito con gesthostname(2). Search: lista di ricerca di nomi degli host Associa il computer con il dominio marien.it (nomi non assoluti): se viene specificato ‘francesco’, il sistema capisce che deve essere francesco.marien.it Nameserver: Indirizza il resolver al Name server con IP e Se non è specificato nessun nameserver, default è Configurazione DNS > Resolver > Linux > Esempio

15 Vedere il contenuto del resolver locale (cache)
Ipconfig /displaydns Ipconfig /flushdns (pulisce la cache) (Ipconfig /all) Configurazione DNS > Resolver > Ipconfig

16 2. La configurazione del DNS
2.2. La configurazione del nameserver

17 Configurazione del Name Server 2.2.1. Linux
Il file etc/named.conf Cache / forwarding nameserver Nameserver assoluto Altri parametri I file di zona in var/named/zones/ Aggiornamenti Controllo /var/named: necessita accesso root. Configurazione DNS > Nameserver > Linux

18 Configurazione DNS > Nameserver > Linux > named.conf
/etc/named.conf /etc/named.conf (BIND 8 e superiori) contiene i parametri di configurazione organizzato in sessioni: affermazioni {...} e commenti /*...*/ // # Sicurezza: bind gira come root. Usare un utente con minor privilegi e mettere bind in un chroot, un ambiente in cui il processo può lavorare con una propria directory root, per esempio: /var/named/ quindi: /var/named/etc/named.conf; /var/named/var/run/named.pid; var/named/zones/; var/named/zones/slave/ Comando di partenza: named –t /var/named –c /etc/named.conf Sulle macchine in aula solo named.custom perché non sono istallate come server. man named.conf Si possono usare le seguenti voci: acl definisce una lista di inidirzzi IP a cui assegna un nome. Da definire prima di usare il nome. Sono già definiti implicitamente: any, none, localhost, localnets controls dichiara i canali di controllo usato dallo strumento rndc (controllo remoto). include include un file. key specifica l’informazione sulla chiave da usare per l’autenticazione e l’autorizzazione con TSIG. logging specifica di cosa il sever tiene traccia (logging) e dove spedisce i messaggi per questo logging. options controlla le opzioni di configurazione globali del server e imposta i valori di default per altri parametri. server imposta certe opzioni di configurazione per singoli server. trusted-keys definisce trusted DNSSEC keys (chiavi DNSSEC). view definisce una vista. zone definisce una zona. Le voci logging e options possono apparire solo una volta in una configurazione. The lwres statement configures the name server to also act as a lightweight resolver server hint Questo tipo di zona specifica l’insieme dei nameserver root. Quando il nameserver parte, us questo file per trovare un nameserver root ed ottenere la lista più recente di root nameservers. If no hint zone is specified for class IN, the server uses a compiled-in default set of root servers hints. Classes other than IN have no built-in defaults hints. blackhole Specifies a list of addresses that the server will not accept queries from or use to resolve a query. Queries from these addresses will not be responded to. The default is none. Configurazione DNS > Nameserver > Linux > named.conf

19 Configurazione DNS > Nameserver > Linux > named.conf
Un primo esempio acl "reteaz" { /28; /8;}; options {directory "/var/named"; pid-file "named.pid"; allow-query {“reteaz"; };}; zone "." { type hint; file "root.hint"; };  zone " in-addr.arpa" { type master; file "localhost.rev"; notify no;}; Configurazione DNS > Nameserver > Linux > named.conf

20 Sezioni di named.conf: acl
acl: access control list (nome simbolico per una lista di indirizzi IP). Predefinito: none, any, localhost, localnets. acl “fidati” { /28; ;}; // fidati: rete interna meno sottozona e altra rete acl “secondari” { ; ;}; // secondari: due host, nameserver assoluti secondari acl “diffidati” { /24;}; // diffidati: rete intera sospetta Configurazione DNS > Nameserver > Linux > named.conf > acl

21 Sezioni di named.conf: options
options: fornisce informazioni globali sul server e valori di default di altre sezioni (es. directory dei file). Esempio options {blackhole {diffidati;}; allow-query {any;}; allow-recursion {fidati;}; allow-transfer {secondari;}; } Configurazione DNS > Nameserver > Linux > named.conf > options

22 forward {first | only;}; controlla il comportamento di forwarders:
Altri parametri: forwarders { ;}; forward {first | only;}; controlla il comportamento di forwarders: first: inoltrare prima di risolvere in proprio only : solo inoltrare, non risolvere in propio Configurazione DNS > Nameserver > Linux > named.conf > options

23 notify {yes | no | explicit;} listen-on {10.0.1.1;};
Specifica l’interfaccia di rete sulla quale il programma è in attesa di query (qui interfaccia della rete interna). Default: tutte le interfaccie. statistics-file Specifica un posto per i file statistici. Default: /var/named/named.stats Configurazione DNS > Nameserver > Linux > named.conf > options

24 Sezioni di named.conf: zone
zone: diversi tipi di file di configurazione: zona assoluto primario: type master zona assoluto secondario: type slave root: type hint cache, intermedio, inoltro: type stub, type forward, type delegation-only Configurazione DNS > Nameserver > Linux > named.conf > zone

25 zone “esempio.com” IN {type master; file “esempio.com.db”; };
L’importanza del nome della zona nella voce zone “nomedellazona” {....} nel file named.conf per i file di zona: @ (valore di default) $ ORIGIN (valore di default) nomi non assoluti (non finiscono con un punto!!!) Dopo il nome della zona si può anche inserire la classe della zona che di solito è IN e viene spesso ommesso Esempio: zone “esempio.com” IN {type master; file “esempio.com.db”; }; Configurazione DNS > Nameserver > Linux > named.conf > zone

26 Altre opzioni per zone:
allow-query allow-transfer allow-update file masters notify zone-statistics Configurazione DNS > Nameserver > Linux > named.conf > zone

27 named.conf per solo cache
/* file di configurazione per solo cache */ acl "reteaz" { /28; /8;}; options {directory "/var/named"; pid-file "named.pid"; allow-query {“reteaz"; };}; zone "." {type hint; file "root.hint"; }; zone " in-addr.arpa" { type master; file "localhost.rev"; notify no;}; acl: con nome di singolo host, singoli indirizzi IP oppure una rete. Predefiniti: none, any, localhost, localnets options ha molti parametri (più avanti) allow-notify (Specifies which hosts are allowed to notify slaves of a zone change in addition to the zone masters), allow-query, allow-transfer (Specifies which hosts are allowed to receive zone transfers from the server), allow-update (which hosts are allowed to submit Dynamic DNS updates for master zones) and blackhole (Specifies a list of addresses that the server will not accept queries from or use to resolve a query) all use address match lists pid-file The pathname of the file the server writes its process ID in. If not specified, the default is /var/run/named.pid. The pid-file is used by programs that want to send signals to the running nameserver. DNS Notify is a mechanism that allows master nameservers to notify their slave servers of changes to a zone's data. In response to a NOTIFY from a master server, the slave will check to see that its version of the zone is the current version and, if not, initiate a transfer. DNS Notify is fully documented in RFC See also the description of the zone option also-notify, see Section For more information about notify, see Section Configurazione DNS > Nameserver > Linux > named.conf > cache

28 named.conf per assoluto
/* Server assoluto è simile al cache, ma aggiunge delle zone */ options {directory "/var/named"; pid-file "named.pid"; allow-query {any;}; recursion no;}; recursion If yes, and a DNS query requests recursion, then the server will attempt to do all the work required to answer the query. If recursion is off and the server does not already know the answer, it will return a referral response. The default is yes. Note that setting recursion no; does not prevent clients from getting data from the server's cache; it only prevents new data from being cached as an effect of client queries. Caching may still occur as an effect the server's internal operation, such as NOTIFY address lookups. Configurazione DNS > Nameserver > Linux > named.conf > assoluto

29 zone "." { type hint; file "root.hint"; };
zone " in-addr.arpa" { type master; file "localhost.rev"; notify no;}; zone "localhost" { file "localhost.db"; }; Configurazione DNS > Nameserver > Linux > named.conf > assoluto

30 zone "alei.it" {type master; file “alei.it.db";
/*zona associazione laureati in economia informatica per cui è il server assoluto primario*/ zone "alei.it" {type master; file “alei.it.db"; allow-transfer { ; ;};}; /*zona associazione laureati in economia ambientale per cui è un server assoluto secondario*/ zone "aleam.it" {type slave; file “aleam.it.bk"; masters { ;};}; /* zona inversa per alei.it*/ zone “ in-addr.arpa" {type master; file “alei.it.rev"; notify no;}; Configurazione DNS > Nameserver > Linux > named.conf > assoluto

31 Altre sezioni in named.conf
controls: usato per definire canali di controllo per rndc (più avanti). key: definisce chiavi da usare per autenticazione e autorizzazione trusted-keys: definisce chiavi per DNSSEC logging: specifica di cosa il server tiene traccia (logging) e dove memorizza queste informazioni. Una sola volta per named.conf Configurazione DNS > Nameserver > Linux > named.conf > altro

32 server: opzioni di configurazione per singoli server (esempio più avanti con aggiornamento)
include “nomefile” permette di includere informazioni sensibili (per esempio chiavi) contenuti in file separati con accesso ristretto (percorso assoluto) view: definisce delle viste (diverse a secondo del server o indirizzi IP: sicurezza) Configurazione DNS > Nameserver > Linux > named.conf > altro

33 Configurazione DNS > Nameserver > Linux > File di zona
I file di zona root.hint file con le definizioni dei root nameserver file con le definizioni locali (localhost.db) Costruiamo insieme alei.it.db file per risoluzione diretta alei.it.rev (localhost.rev è analogo) file per risoluzione inversa (reverse) aleam.it.bk è ottenuto tramite zone-transfer Configurazione DNS > Nameserver > Linux > File di zona

34 var/named/root.hint file con le definizioni dei root nameserver
scaricare dalla rete: ftp://ftp.rs.internic.net/domain/named.root ftp://ftp.nic.it/pub/DNS/named.root qualche volta chiamato named.root o db.root Configurazione DNS > Nameserver > Linux > File di zona > root

35 ; formerly NS.INTERNIC.NET ;
IN NS A.ROOT-SERVERS.NET. A.ROOT-SERVERS.NET A ; ; formerly NS1.ISI.EDU ; NS B.ROOT-SERVERS.NET. B.ROOT-SERVERS.NET A ; ; formerly C.PSI.NET ; NS C.ROOT-SERVERS.NET. C.ROOT-SERVERS.NET A ; ; formerly TERP.UMD.EDU ; NS D.ROOT-SERVERS.NET. D.ROOT-SERVERS.NET A ; ; formerly NS.NASA.GOV ; NS E.ROOT-SERVERS.NET. E.ROOT-SERVERS.NET A ; ; formerly NS.ISC.ORG ; NS F.ROOT- Configurazione DNS > Nameserver > Linux > File di zona > root

36 var/named/alei.it.db alei.it. 86400 IN SOA alei.it. master.alei.it (
; numero di serie ; refresh per slave 6 ore anche 6H 3600 ; retry 10 min anche 10M ; expire slave 1000 ore anche 41D o 6W 900 ) ; min neg caching (max 3 ore) Ogni zona ha esattamente un record soa: indica che i dati sono assoluti per la zona Il nome di dominio in cima è proprietario di questo SOA Valori in SOA: nome del nameserver assoluto; amministratore, numero di serie da incrementare dopo ogni cambiamento, parametri per il tempo alei.it: name server sorgente primario per i dati numero di serie della copia orginaria della zona conservato nei zone-transfer. Incrementato quando viene aggiornato il file primario assoluto; confronto per server secondario per vedere corrispondenza tra dati nel secondario e dati nel primario. refresh: tempo che trascorre prima che il secondario deve fare un aggiornamento della zona retry: tempo che deve passare prima di ritentare in caso di fallito refresh expire: tempo di validità assoluta massima dei dati trasferiti. Dopo questo tempo i dati non sono più assoluti. 900: TTL. In risposta ad una query di un resolver si prende come TTL max (900, TTL del RR). Quindi è il minimo tempo di vita in una risposta. Non vale per zone-transfer Configurazione DNS > Nameserver > Linux > File di zona > alei.it

37 alei.it. 43200 IN NS ns.tecweb.unich.it.
alei.it IN NS ns.alei.aruba.com. IN NS ns.free.ac.be. services IN NS s.alei.it. services IN NS b2b.bald.biz. I record NS indicano il nome (non indirizzo IP) dei diversi nameserver assoluti della zona (uno primario e almeno uno secondario, disolocati,...) non va mai riferito ad un RR di tipo CNAME notate le ‘omissioni’ in riga 2, 3 e 4; nomi assoluti e relativi (services è una sottozona) services (services.alei.it) è una sottozona di alei.it con un proprio nameserver assoluto su s.alei.it. e b2b.bald.biz. Configurazione DNS > Nameserver > Linux > File di zona > alei.it

38 ns.tecweb.unich.it.IN A ns.alei.aruba.com. IN A ns.free.ac.be. IN A s.alei.it. IN A b2b.bald.biz. IN A Configurazione DNS > Nameserver > Linux > File di zona > alei.it

39 www 43200 IN CNAME fabio.alei.it. ftp IN CNAME ftp.alei.it.
pop IN CNAME mail.alei.it smpt IN CNAME mail.alei.it @ IN MX 0 mail.alei.it. 50 rescue.alei.it. 10 bruno.alei.it. Configurazione DNS > Nameserver > Linux > File di zona > alei.it

40 localhost IN A 127.0.0.1 mail IN A 172.18.9.7 ftp IN A 172.18.9.22
rescue IN A bruno IN A fabio IN A claudia IN A marianna IN A stefano IN A s.alei.it. IN A quest’ultimo è un ‘glue’RR perché il server che cerchiamo sta nel sottodominio di alei.it Configurazione DNS > Nameserver > Linux > File di zona > alei.it

41 Configurazione DNS > Nameserver > Linux > File di zona
scorciatoie $ORIGIN alei.it. $TTL 86400; 24 ore default TTL per RR @ IN SOA alei.it. master.alei.it ( ; numero di serie 21600 ; refresh 6 ore 3600 ; retry 10 min ; expire 1000 ore 900 ) ; negative caching ; max 3 ore NS ns.tecweb.unich.it. Origin TTL default quando è omesso nelle RR @ indica “questo dominio”, come indicato nel file named.conf riferito a questo file "Start of Authority“: gli RR seguenti contengono dati assoluti sul dominio citato Refresh: il tempo in secondi che trascorre prima che i server secondari devono aggiornarsi Retry: il tempo che intercorre tra un tentativo di aggiornamento fallito ed un nuovo tentativo Expire: la validità dei dati nel server secondario TTL: time to live, quanto tempo i dati del file sono ancora validi. Configurazione DNS > Nameserver > Linux > File di zona

42 Configurazione DNS > Nameserver > Linux > File di zona
$GENERATE è una direttiva per la generazione automatica di insiemi di RR (A, CNAME, NS e PTR) che differiscono tra loro soltanto per un numero progressivo $TTL 3H $ORIGIN alei.it. $GENERATE 10-30/2 PC$ CNAME PC$.membri equivale a inserire in un file di zona: PC10.alei.it IN CNAME PC10.membri.alei.it. PC12.alei.it IN CNAME PC12.membri.alei.it. ... PC30.alei.it IN CNAME PC30.membri.alei.it. Configurazione DNS > Nameserver > Linux > File di zona

43 /var/named/localhost.rev $TTL 86400 ; $ORIGIN 0.0.127.IN-ADDR.ARPA.
@ IN SOA localhost. root.localhost. ( ; Serial 3h ; Refresh 15 ; Retry 1w ; Expire 3h ) ; Minimum IN NS localhost. 1 IN PTR localhost. Configurazione DNS > Nameserver > Linux > File di zona > localhost.rev

44 var/named/alei.it.rev $TTL 1d $ORIGIN in-addr.arpa. @ IN SAO alei.it. master.alei.it ( ) alei.it IN NS ns.tecweb.unich.it. alei.it IN NS ns.alei.aruba.com. IN NS ns.free.ac.be. 21 IN PTR ftp.alei.it. 7 IN PTR mail.alei.it. 22 IN PTR ftp.alei.it. 1 IN PTR bruno.alei.it. 2 IN PTR fabio.alei.it. 3 IN PTR claudia.alei.it. 4 IN PTR marianna.alei.it. 5 IN PTR stefano.alei.it. Configurazione DNS > Nameserver > Linux > File di zona > alei.it.rev

45 Configurazione DNS > Nameserver > Linux > Aggiornamento
Distinguere: aggiornamento named.conf: amministratore aggiornamento file di zona assoluto primario: manuale dinamico: allow-update aggiornamento file di zona assoluto secondario: notify; allow-notify, zone-transfer: axfer e ixfer aggiornamento della cache: TTL Configurazione DNS > Nameserver > Linux > Aggiornamento

46 Configurazione DNS > Nameserver > Linux > Aggiornamento
Aggiornare primario Master zonefile: manuale (amministratore di zona), numero seriale Aggiornamento dinamico (default: disattivato) zone “alei.it” {type master; file “alei.it.db”; allow-update { ;};}; Configurazione DNS > Nameserver > Linux > Aggiornamento

47 Configurazione DNS > Nameserver > Linux > Aggiornamento
Notify (RFC 1996) è un meccanismo che permette ad un nameserver primario di dare un avviso ai nameserver secondari (NS oppure also-notify) dei cambiamenti apportati ai file di zona. Il secondario verficherà il numero di serie: se diverso inizia il trasferimento. options { notify yes_or_no | explicit; }; explicit: spedito solo ai server in also-notify no, nessuna notifica viene spedita Possibile metterlo anche nella parte di zone Configurazione DNS > Nameserver > Linux > Aggiornamento

48 Configurazione DNS > Nameserver > Linux > Aggiornamento
Transaction SIGnatures (TSIG) per la comunicazione sicura tra server, usando delle chiavi: zone transfer, notify, messaggi di query recursive, dynamic update (non solo in base a indirizzo IP, ma anche con una chiave). key host1-host2. {algorithm hmac-md5; secret "La/E5CjG9O+os1jq0a2jdA==";}; /* da inserire nel named.conf di host1 e host2 */ server {keys {host1-host2.;};}; /* nel named.conf di host1 con indirizzo IP dell’host2 e analogo per il contrario */ allow-update {key host1-host2. ;}; /* uso di chiavi oltre indirizzi IP in affermazioni di tipo ‘allow-qualcosa’ Configurazione DNS > Nameserver > Linux > Aggiornamento

49 Meccanismo dell’aggiornamento dinamico
RFC 2136: aggiungere, modificare, cancellare RR o insiemi di RR nel file assoluto primario Cambiamenti registrati in file alei.it.db.jnl Server periodicamente (15’) scarica (dump) il contenuto completo della zona aggiornata sul file di zona Server che riparte rilegge file .jnl e incorpora tutti gli aggiornamenti posteriori all’ultimo dump Cambiamenti da trasferimenti incrementali di zona in ingresso trattati nello stesso modo Non aggiornare manualmente! Configurazione DNS > Nameserver > Linux > Aggiornamento

50 Configurazione DNS > Nameserver > Linux > Aggiornamento
           Attenzione non cambiare manualmente /etc/named.conf o i file di zona se si usa Bind Configuration Tool: ogni cambiamento manuale verrà sovrascritto la volta successiva che viene usato Bind Configuration Tool Configurazione DNS > Nameserver > Linux > Aggiornamento

51 Aggiornare secondario
Slave nameserver: aggiornamento periodico dal master: zone-transfer Options {min-refresh-time, max-refresh-time, min-retry-time, max-retry-time} QTYPE = AXFR (Full zone transfer) QTYPE = * Incremental Zone Transfer (IXFR – RFC 1995) Formato Messaggi DNS  +These options control the server's behavior on refreshing a zone (querying for SOA changes) or retrying failed transfers. Usually the SOA values for the zone are used, but these values are set by the master, giving slave server administrators little control over their contents. These options allow the administrator to set a minimum and maximum refresh and retry time either per-zone, per-view or globally. These options are valid for slave and stub zones, and clamp the SOA refresh and retry times to the specified values. Configurazione DNS > Nameserver > Linux > Aggiornamento

52 Configurazione DNS > Nameserver > Linux > Aggiornamento
BIND prevede Incremental Zone Transfers (IXFR): il server secondario scarica solo le parti aggiornate della zona sul server primario. Disponibile solo quando si usa l’aggiornamento dinamico per cambiare record nei file di zona assoluti primari. Il trasferimento di zona standard (AXFR) prevede un trasferimento della zona intera tra primario e secondario, anche per cambiamenti / aggiornamenti minimi. Questo può richiedere molte risorse. Configurazione DNS > Nameserver > Linux > Aggiornamento

53 Limitare i trasferimenti di zona
Restrizioni sul zone-transfer (per primario e secondario), tutto o singola zona options {allow-transfer { ;};}; zone “alei.it” {type master; file “alei.it.db”; allow-transfer { ; };}; zone “aleam.it” {type slave; file “aleam.it.bk”; masters { ;}; allow-transfer {none;};}; Configurazione DNS > Nameserver > Linux > Aggiornamento

54 2.2.1.4. Controllo della configurazione
named-checkconf [-t directory] [filename] controlla la sintassi di named.conf named-checkzone [-dq] [-c class] zone [filename] controlla sintassi e consistenza di un file di zona assoluto primario Man rndc Comunica con il name server su connessione TCP spedendo commandi autenticati con firme digitali. Configurazione DNS > Nameserver > Linux > Controllo

55 Configurazione DNS > Nameserver > Linux > Controllo
rndc, remote name daemon control permette all’amministratore del sistema di controllare le operazioni di un nameserver controls {inet allow { localhost; }; keys { rndc_key; };}; key rndc_key { algorithm "hmac-md5"; secret "c3Ryb25nIGVub3VnaCBmb3IgYSBtYW4gYnV0IG1hZGUgZm9yIGEgd29tYW4K";}; Configurazione DNS > Nameserver > Linux > Controllo

56 Configurazione DNS > Nameserver > Linux > Avvio DNS
Avviare DNS in Linux Per avviare DNS /etc/rc.d/init.d/named start Per riavviare DNS /etc/rc.d/init.d/named restart Per fermare DNS /etc/rc.d/init.d/named stop Per far partire DNS al boot di Linux Aggiungere il commando per avviare DNS a /etc/rc.d/rc.local Man named Sta nelle macchine in aula Rc.local: this script will be executed *after* all the other init scripts. You can put your own initialization stuff in here if you don’t want to do the full Sys V style init stuff. Presente nel file: Touch /var/lock/subsys/local Configurazione DNS > Nameserver > Linux > Avvio DNS

57 Configurazione DNS > Nameserver > Linux > Processo
Kill con DNS in Linux kill SIGHUP Il server legge named.conf e ricarica i dati SIGTERM Il server pulisce tutto e si ferma SIGINT Il server pulisce tutto e si ferma Da approfondire cosa significa Configurazione DNS > Nameserver > Linux > Processo

58 Configurazione DNS > Nameserver > Linux > Interrogazione
Controllo DNS Strumenti per la diagnostica di DNS: nslookup (interrogazione interattiva e non) dig (domain information groper) host ping Configurazione DNS > Nameserver > Linux > Interrogazione

59 Query per tutti i record del dominio nic.it
Dig è incluso nella distribuzione di BIND non è interattivo; si utilizza da linea di comando permette di fare interrogazioni complesse ed a qualsiasi nameserver è dotato di aiuto in linea dig -h dig dns.iit.cnr.it dig iit.cnr.it mx dig -x cnr.it foo.it axfr cnr.it +nssearch Query per tutti i record del dominio nic.it dig nic.it ; <<>> DiG 8.3 <<>> nic.it ;; res options: init recurs defnam dnsrch ;; got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 4 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0 ;; QUERY SECTION: ;; nic.it, type = A, class = IN ;; AUTHORITY SECTION: nic.it D IN SOA dns.nic.it. hostmaster.nic.it. ( ; serial 1D ; refresh 30M ; retry 1W ; expiry 1D ) ; minimum ;; Total query time: 1 msec ;; FROM: mail.nic.it to SERVER: default ;; WHEN: Tue Nov 11 16:32: ;; MSG SIZE sent: 24 rcvd: 75 Configurazione DNS > Nameserver > Linux > Interrogazione > dig

60 dig nic.it any ; <<>> DiG <<>> nic.it any ;; global options: printcmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 6280 ;; flags: qr rd ra; QUERY: 1, ANSWER: 4, AUTHORITY: 4, ADDITIONAL: 4 ;; QUESTION SECTION: ;nic.it IN ANY ;; ANSWER SECTION: nic.it IN NS itgeo.mix-it.net. nic.it IN NS nameserver.cnr.it. nic.it IN NS dns.nic.it. nic.it IN NS dns2.nic.it. Configurazione DNS > Nameserver > Linux > Interrogazione > dig

61 ;; AUTHORITY SECTION: nic.it IN NS itgeo.mix-it.net. nic.it IN NS nameserver.cnr.it. nic.it IN NS dns.nic.it. nic.it IN NS dns2.nic.it. ;; ADDITIONAL SECTION: dns.nic.it IN A dns.nic.it IN AAAA :760:600:1::5 itgeo.mix-it.net IN A nameserver.cnr.it IN A ;; Query time: 41 msec ;; SERVER: #53( ) ;; WHEN: Thu Apr 29 16:16: ;; MSG SIZE rcvd: 252 Esempio dnswalk -F ba.cnr.it. Checking ba.cnr.it. Getting zone transfer of ba.cnr.it. from dns.ba.cnr.it...done. SOA=dns.ba.cnr.it contact=postmaster.dns.ba.cnr.it WARN: netrider.ba.cnr.it A : no PTR record WARN: mailhost.ba.cnr.it CNAME bigarea.ba.cnr.it: unknown host WARN: embnet.ba.cnr.it CNAME embnet.area.ba.cnr.it: CNAME (to area.area.ba.cnr.it) WARN: ftp.ba.cnr.it CNAME ftp.area.ba.cnr.it: CNAME (to area.area.ba.cnr.it) 0 failures, 6 warnings, 0 errors. Configurazione DNS > Nameserver > Linux > Interrogazione > dig

62 dig @dns.nic.it nic.it any
; <<>> DiG <<>> any ;; global options: printcmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 17425 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 7, AUTHORITY: 0, ADDITIONAL: 6 ;; QUESTION SECTION: ;nic.it IN ANY ;; ANSWER SECTION: nic.it IN SOA dns.nic.it. hostmaster.nic.it nic.it IN NS dns.nic.it. nic.it IN NS dns2.nic.it. nic.it IN NS itgeo.mix-it.net. nic.it IN NS nameserver.cnr.it. nic.it IN MX relay.nic.it. nic.it IN PTR P\$NIC.A\$GARR.C\$IT.X400. Configurazione DNS > Nameserver > Linux > Interrogazione > dig

63 ;; ADDITIONAL SECTION:
dns.nic.it IN A dns.nic.it IN AAAA :760:600:1::5 dns2.nic.it IN A itgeo.mix-it.net IN A nameserver.cnr.it IN A relay.nic.it IN A ;; Query time: 5 msec ;; SERVER: #53(dns.nic.it) ;; WHEN: Thu Apr 29 16:23: ;; MSG SIZE rcvd: 333 Configurazione DNS > Nameserver > Linux > Interrogazione > dig

64 L’installazione del Name Server 2.2.2. Windows 2000
Istallazione DNS: Pannello di Controllo > Agguingi/Rimuovi Programmi > Aggiungi/Rimuovi Componenti Windows > Servizi Network >Domain Name System Configurazione DNS > Nameserver > Windows > Installazione

65

66 Configurazione DNS > Nameserver > Windows > Caratteristiche
architettura Multi-master (aggiornamenti su qualsiasi DNS server, non necessariamente sul primario) nel caso di integrazione con Active Directory replica dei dati mediante Active Directory service supporto di Dynamic DNS (DDNS: RFC2136) supporto di zone transfer incrementale (IXFR: RFA1995) permessi di accesso per ogni oggetto gestito dal DNS Configurazione DNS > Nameserver > Windows > Caratteristiche

67 Configurazione DNS > Nameserver > Windows > Configurazione
Creare un server (forward, inverse) Sempre con RR Scegliere primario, secondario o Active Directory Aggiornamento dinamico sicuro e monitoraggio Configurazione DNS > Nameserver > Windows > Configurazione

68 Configurazione iniziale
Configurazione DNS > Nameserver > Windows > Configurazione iniziale

69 Configurazione DNS > Nameserver > Windows > Creazione zona
Creazione della zona Configurazione DNS > Nameserver > Windows > Creazione zona

70 Configurazione DNS > Nameserver > Windows > Creazione zona

71 Configurazione DNS > Nameserver > Windows > Creazione zona

72 Configurazione DNS > Nameserver > Windows > Creazione zona

73 Configurazione DNS > Nameserver > Windows > Creazione zona

74 Configurazione DNS > Nameserver > Windows > Aggiunta host
Aggiunta di un host Configurazione DNS > Nameserver > Windows > Aggiunta host

75 Configurazione DNS > Nameserver > Windows > Aggiunta host

76 Configurazione DNS > Nameserver > Windows > Proprietà
Proprietà server Configurazione DNS > Nameserver > Windows > Proprietà

77 Configurazione DNS > Nameserver > Windows > Proprietà

78 Configurazione DNS > Nameserver > Windows > Proprietà

79 Monitorare il Nameserver

80 3. DHCP e Dynamic Update DNS

81 Dynamic Host Configuration Protocol - RFC 2131
Protocollo TCP/IP client-server. Consente la configurazione dinamica tramite lease degli indirizzi IP host. Server DHCP gestisce in modo centralizzato gli indirizzi IP utilizzati nella rete. Lease. periodo di tempo durante il quale un client DHCP può utilizzare una configurazione di indirizzo IP assegnata dinamicamente su richiesta durante il processo di avvio in rete. Libro p. 313: L’amministratore di rete può configurare DHCP in modo che un dato terminale riceva un indirizzo IP persistente, cioè, ogni volta che il teminale si collega alla rete gli viene asseganato lo stesso indirizzo IP. Ma molte organizzazioni e ISP residenziali non possiedono indirizzi IP per tutti i loro terminali. In questo caso, viene spesso usato DHCP per assegnare a ognuno dei terminali ch esi connettono un indirizzo IP temporaneo; 324ss.

82 DHCP: come funziona Client: DHCP discover message (datagram UDP porta 67) in broadcast ( ) con indirizzo sorgente ( ) Server DHCP: DHCP offer message Client: sceglie fra le offerte, messaggio di richiesta DHCP Server: messaggio ACK DHCP Client: uso della configurazione con l’indirizzo IP temporaneo assegnato con possibilità di rinnovo Offer message: (indicativo di transazione del messaggio di scoperta ricevuto, indirizzo IP proposto per il client, maschera di rete, tempo di affitto dell’indirizzo IP, quantità di tempo per cui è valido l’indirizzo IP) Figura 4.27

83 DHCP: pro e contra +: Comodità -: mobilità  mobile IP

84 Dynamic Update DNS != Zone transfer o refreshing automatico (server secondario) RFC 2136 UPDATE: aggiunta o eliminazione dinamica RR / insiemi di RR dal file di zona assoluto primario attraverso messaggi DNS update (modifica messaggi DNS semplici): request & reply

85 Appendice: configurazione standard named.conf
options { directory "/var/named"; notify no; allow-transfer { none; }; listen-on { ; }; }; logging { channel named-default { syslog local1; severity info; }; category default { named-default; }; category lame-servers { null; }; }; zone "." { type hint; file "named.ca"; }; zone " in-addr.arpa"{ type master; file "named.local"; }; zone " in-addr.arpa"{ type master; file "reverse.zone"; }; zone "yourDomain.net"{ type master; file "foward.zone"; };

86 Appendice: configurazione standard zona forward
$TTL 1d $ORIGIN IN SOA ns1.yourDomain.net. root.yourDomain.net. ( 86400 3600 864000 IN NS IN NS ns2.yourDomain.net. ns1 IN A ns2 IN A ; ;============================================================== ; ; Comment out if you don't have Mail Exchangers IN MX 0 IN MX 10 mx02.yourDomain.net. mx01 IN A mx02 IN A ; ;=============================================================== ;

87 ; Comment out if you don't have Web Servers @. IN. A. 10. 10. 10
; Comment out if you don't have Web IN A www IN A ; ; Other addrerss on your network requireing name resolution server1 IN A server2 IN A printer1 IN A microwave1 IN A ; ;=============================================================== ; ; CNAME Section ; mail IN CNAME mx01.yourDomain.net. smtp IN CNAME mx02.yourDomain.net. ; The FTP & WWW servers are ths same machine ftp IN CNAME ; ;===============================================================

88 Appendice: configurazione standard zona reverse
$TTL 1d $ORIGIN IN SOA ns1.yourDomain.net. root.yourDomain.net. ( 86400 3600 864000 86400 ) IN NS ns1.yourDomain.net. IN NS ns2.yourDomain.net. ; ;=============================================================== ; ; Pointer Records -- Point to records you have in ; your forward zone file. ; 10 IN PTR ns1.yourDomain.net. 11 IN PTR ns2.yourDomain.net. 12 IN PTR mx01.yourDomain.net. 13 IN PTR mx02.yourDomain.net. 14 IN PTR 15 IN PTR server1.yourDomain.net. 16 IN PTR server2.yourDomain.net. 17 IN PTR printer1.yourDomain.net. 18 IN PTR microwave1.yourDomain.net. ; ;===============================================================

89 Appendice: options options { [ version version_string; ]
[ directory path_name; ] [ named-xfer path_name; ] [ tkey-domain domainname; ] [ tkey-dhkey key_name key_tag; ] [ dump-file path_name; ] [ memstatistics-file path_name; ] [ pid-file path_name; ] [ statistics-file path_name; ]

90 [ zone-statistics yes_or_no; ]
[ auth-nxdomain yes_or_no; ] [ deallocate-on-exit yes_or_no; ] [ dialup dialup_option; ] [ fake-iquery yes_or_no; ] [ fetch-glue yes_or_no; ] [ has-old-clients yes_or_no; ] [ host-statistics yes_or_no; ] [ minimal-responses yes_or_no; ] [ multiple-cnames yes_or_no; ] [ notify yes_or_no | explicit; ]

91 [ recursion yes_or_no; ]
[ rfc2308-type1 yes_or_no; ] [ use-id-pool yes_or_no; ] [ maintain-ixfr-base yes_or_no; ] [ forward ( only | first ); ] [ forwarders { ip_addr [port ip_port] ; [ ip_addr [port ip_port] ; ... ] }; ] [ check-names ( master | slave | response )( warn | fail | ignore ); ] [ allow-notify { address_match_list }; ] [ allow-query { address_match_list }; ] [ allow-transfer { address_match_list }; ] [ allow-recursion { address_match_list }; ]

92 [ allow-v6-synthesis { address_match_list }; ]
[ blackhole { address_match_list }; ] [ listen-on [ port ip_port ] { address_match_list }; ] [ listen-on-v6 [ port ip_port ] { address_match_list }; ] [ query-source [ address ( ip_addr | * ) ] [ port ( ip_port | * ) ]; ] [ query-source-v6 [ address ( ip_addr | * ) ] [ port ( ip_port | * ) ]; ] [ max-transfer-time-in number; ] [ max-transfer-time-out number; ] [ max-transfer-idle-in number; ] [ max-transfer-idle-out number; ]

93 [ tcp-clients number; ]
[ recursive-clients number; ] [ serial-query-rate number; ] [ serial-queries number; ] [ transfer-format ( one-answer | many-answers ); ] [ transfers-in number; ] [ transfers-out number; ] [ transfers-per-ns number; ] [ transfer-source (ip4_addr | *) [port ip_port] ; ] [ transfer-source-v6 (ip6_addr | *) [port ip_port] ; ] [ notify-source (ip4_addr | *) [port ip_port] ; ] [ notify-source-v6 (ip6_addr | *) [port ip_port] ; ]

94 [ also-notify { ip_addr [port ip_port] ; [ ip_addr [port ip_port] ;
[ max-ixfr-log-size number; ] [ coresize size_spec ; ] [ datasize size_spec ; ] [ files size_spec ; ] [ stacksize size_spec ; ] [ cleaning-interval number; ] [ heartbeat-interval number; ] [ interface-interval number; ] [ statistics-interval number; ] [ topology { address_match_list }; ]


Scaricare ppt "Reti di calcolatori e sicurezza"

Presentazioni simili


Annunci Google