Universit`a degli Studi di Parma

Transcript

Universit`a degli Studi di Parma
Università degli Studi di Parma
Information and Communication Technology Base
Esercitazione di laboratorio
ultima revisione in data 13 aprile 2003
esercitazione del 5 maggio 2003
Questa esercitazione ha lo scopo di mettere in pratica le nozioni teoriche
di networking acquisite nel corso attraverso l’utilizzo di applicazioni specifiche
che consentano di eseguire analisi e configurazione dei parametri di setup della
connessione di rete della macchina sia in ambiente di rete Windows NT che
remotamente da un server Linux.
autore: Amos Tibaldi [email protected]
1
Accesso al server Linux
Si procede ora con l’esecuzione locale di un applicativo grafico che consente
attraverso lo stack TCP/IP di rete di effettuare un login sicuro su un server
remoto avendo come punto “terminale” l’interfaccia grafica presentata all’utente
dal “terminal emulator” Tera Term Pro.
• dal desktop di Windows NT Workstation selezionare Avvio → Programmi
→ Tera Term PRO → Tera Term PRO
• verrà subito presentata una form di dialogo intitolata “New Connection”
contenente dei campi in cui inserire dei parametri per instaurare una
connessione con il server
• inserire il “Fully Qualified Domain Name” FQDN del server (darkstar.cedi.unipr.it)
nel campo “Host”
• nella sezione di selezione a radio button selezionare la modalità di connessione “Secure Shell SSH”; si osservi come questo cambi la porta di
connessione predefinita dalla 23 del servizio telnet alla 22 del servizio
SSH
• il client richiede a questo punto se si vuole inserire l’impronta dell’host
nell’elenco degli host conosciuti: selezionare a desiderio
• premere il tasto “OK” e nella nuova form di autenticazione inserire nei
campi “Username” il valore “onestudent” e in “Password” il valore “reX4Xst”;
confermare quindi premendo “OK”
1
2
ATTIVAZIONE DEL PROMPT DEI COMANDI LOCALE
2
• i server restituiscono in genere un messaggio di benvenuto contenente le
funzionalità offerte ed alcune informazioni sintetizzanti la modalità di connessione effettuata; in questo caso viene visualizzata una statistica relativa
all’ultima connessione
• si rende in genere necessaria al fine di impartire istruzioni comando al
server l’interazione con l’utente attraverso il “prompt” dei comandi, generalmente nella forma NomeUtente@nomeServerHost/direttorio>
• prima buona regola (da non applicare in questo caso in quanto la singola
identità utente è condivisa da tutti i partecipanti all’esercitazione) è quella
di modificare la password con il comando Unix “passwd” che richiede
all’utente una identificazione e poi la nuova password eventualmente con
inserimento multiplo (si tenga conto che la password deve essere composta
da almeno sei caratteri)
• per disconnettersi non usare il comando “exit” ma dalla finestra grafica
del client selezionare File → Disconnect
• è possibile effettuare nuove connessioni con il client selezionando dallo stesso menu l’entry “New Connection” attivabile anche dalla shortcut <Alt>
ed <n>
Quando si è connessi ad un server remoto, questi garantisce l’esecuzione dei
comandi sottoposti con i diritti attribuiti all’utente la cui identità è associata
alla connessione di terminale; per individuare l’identità attribuitavi dalla connessione eseguire il comando “whoami”. Il server risponde con lo username
utilizzato per effettuare il login da terminale.
Per ogni comando od applicazione un sistema fornisce delle “pagine di manuale” o “manpages” che vengono generalmente installate sul sistema stesso con
l’installazione dell’applicativo e sono consultabili attraverso l’invio del comando
“man <nomecomando>” (es. “man ls”)
2
Attivazione del prompt dei comandi locale
Questa sezione prevede l’attivazione sull’host locale di un interprete di comandi
che analogamente a quanto avviene per l’interprete remoto al quale ci si è loggati
tramite terminale, interpreterà da linea di comando le istruzioni presentate dopo
ogni pressione del tasto <Invio>.
Per lanciare l’interprete partendo dal desktop di Windows, premere il tasto
di avvio sulla barra in basso a sinistra e attivare in sequenza → Programmi →
Prompt dei Comandi.
Comparirà un interprete dei comandi che consente di interagire in maniera
analoga all’interprete remoto; tale interprete visualizza automaticamente nel
prompt dei comandi la posizione corrente nella gerarchia di direttori di memorizzazione dei file di Windows; i comandi principali che è possibile utilizzare
con questo interprete sono:
3
IL FILESYSTEM
3
• comandi di listing dei file: “dir”, “dir /p”, “dir /w”
• editing testuale di file: “edit ciao.txt”
• rimozione di file “del <nomefile>”
• cambiamento del direttorio corrente “cd <nuovodirettorio>”
• rimozione del direttorio “rmdir <direttorio>”
• stampa di un file di testo “type <nomefile>”
Scopo del prompt di esecuzione locale è quello di appaiare ove possibile ai comandi di elevata complessità sottoposti al server remoto degli analoghi comandi
in esecuzione locale e confrontarne i risultati.
3
Il FileSystem
3.1
File e Direttori
La gerarchia delle informazioni memorizzate sui dispositivi di stoccaggio di massa su un sistema è organizzaza ad albero ed i direttori che contengono ogni singolo archivio o file possono essere annidati gli uni negli altri. I direttori in realtà
sono essi stessi dei file speciali e contengono a loro volta file od altri direttori,
i quali nei sistemi Unixi sono associati ad un numero “inode” che astrae dalla
rappresentazione logica e gerarchica della distribuzione dello stoccaggio dell’informazione e si avvicina alla rappresentazione a blocchi effettivamente utilizzata
dal sistema operativo per interfacciarsi con il disco rigido.
Essendovi loggati sul sistema server attraverso un terminale e con una shell
di login necessariamente la locazione iniziale da cui è possibile inviare comandi
è un ramo della gerarchia di direttori denominato “$HOME” (ed identificata dal
simbolo rapido “˜”) assegnato all’utente in fase di creazione della sua identità sul
sistema (in realtà per l’esercitazione il direttorio è comune e nella terminologia
Windows viene indicata come “cartella condivisa”).
3.1.1
Esercizio di presa di praticità
Si ricordi di utilizzare le pagine di manuale attraverso il comando man il più
frequentemente possibile e perlomeno qualora sorgesse qualsiati tipo di dubbio relativo al proseguimento dell’esercitazione. Procedere con l’esecuzione dei
seguenti punti:
• visualizzare il proprio direttorio con il comando unix “pwd” (“print working
directory”) che presenta nel formato direttorio Unix la vostra locazione
associata all’invio di un comando
• creare un file per mezzo del comando “touch” con la sintassi “touch
<nomefile>”
3
IL FILESYSTEM
4
• rimuovere il file creato per mezzo del comando rm di sintassi “rm <nomefile>”
(remove)
• creare un ulteriore direttorio contenuto nel direttorio corrente com il comando mkdir di sintassi “mkdir <nomedirettorio>”
• copiare il file appena creato nel nuovo direttorio con il comando “cp” di
sintassi “cp <nomefile> <nomedirettorio>” (copy)
• portarsi nel nuovo direttorio creato con il comando “cd <nomedirettorio>”
(change directory)
• verificare la nuova posizione nel FileSystem con il comando “pwd”
• visualizzare il contenuto del direttorio con il comando “ls” (list)
• identificare il tipo di file con il comando “file <nomefile>”
• visualizzare il contenuto del file con il comando “cat <nomefile>”
• tornare al direttorio a monte con il comando “cd ..”
• creare un altro direttorio e spostare il file nel direttorio precedente in
quello nuovo con il comando “mv <nomedirettorio> / <nomefile>
<nomenuovodirettorio>”
• essendo ora vuoto il primo direttorio creato è possibile rimuoverlo attraverso l’esecuzione del comando “rmdir <nomedirettorio>”
• portarsi nella propria home con il comando “cd ˜”
• creare una gerarchia di direttori annidati con il comando “md” a cui
viene fornito uno switch addizionale per creare anche i direttori progenitori
(parents) in caso non esistessero “mkdir -p primo/secondo/terzo”
• entrare nel primo e di seguito nel secondo direttorio con due comandi “cd”
• effettuare uno spostamento relativo per giungere al terzo direttorio con il
comando “cd ../../primo/secondo/terzo” (il simbolo “..” identifica il
direttorio progenitore di quello corrente mentre il simbolo “.” identifica il
direttorio corrente)
• portarsi nella propria home con uno spostamento assoluto riferito alla
radice della gerarchia del FileSystem (identificata da “/”) con il comando
“cd /direttorio1/direttorio2/homeutenteX”
3
IL FILESYSTEM
3.2
5
Espansioni di shell
La shell sul sistema server remoto che esegue i comandi inviati da terminale con
interfaccia grafica è un “interprete” con il compito di interpretare i comandi
secondo una sequenza prestabilita di fasi di interpretazione; una di queste fasi
è la shell expansion, con la quale l’interprete di shell espande dei caratteri speciali o metacaratteri (“*” identificante più caratteri qualsiasi in una sequenza di
lunghezza arbitraria, e “?” identificante un singolo carattere qualsiasi) in tutti i
nome file che verificano il match con il pattern contenente il metacarattere e procede all’esecuzione del comando come se fosse stato impartito originariamente
con tutte le espansioni da linea di comando.
Ad esempio per un direttorio contenente i file marte, venere e nettuno, il
comando “ls *e” viene espanso dall’interprete shell sul sistema remoto nel comando “ls marte venere”, mentre il comando “ls ?e” produce un’uscita vuota
in quanto non vi sono nomi di file che combaciano con il pattern avente un solo
carattere seguito da un carattere “e”.
I pattern per la shell expansion si basano sulle espressioni regolari o “regular
expressions” e sono soggetti a complicate regole che consentono tuttavia l’agevole invio di comandi dalla sintassi semplificata che in realtà svolgono operazioni
di managing avanzate ad esempio sull’insieme di file.
Nelle espressioni regolari le parentesi quadre “[ ]” possono contenere range di
caratteri o set di caratteri che combaciano nel pattern con un singolo carattere
nel nomefile per l’espansione: [abc]d identifica l’insieme {ad, bd, cd} mentre
l’espansione di [a-d] identifica un range di caratteri che verificano il match con
un singolo carattere, per cui l’insieme di positività è {a, b, c, d}.
Si provino comandi di listing con shell expansion (es. “ls a*”, “ls cia[ou]*”, ecc . . . )
3.3
Univocità e simbolismo
Le singole entry nel FileSystem Unix possono in realtà fare riferimento allo
stesso inode come avviene per esempio con un “hard link” in cui nella gerarchia
dei direttori due differenti nomi simbolici identificano un singolo archivio o file.
Le entry possono anche essere dei riferimenti od alias ad altre entry effettive
nel FileSystem come avviene con i “soft link” o link simbolici in cui il contenuto
di un file che è etichettato da un flag speciale identificante la sua natura è
trattato differentemente dal sistema operativo stesso che redirige operazioni di
apertura, chiusura, lettura e scrittura dall’entry simbolica all’entry realmente
descritta (come accade con i file di estensione .pif nei sistemi Windows).
Ciò che accade in genere è che un secondo link simbolico non può fare riferimento ad un altro link simbolico all’entry effettiva, pena l’invalidità dell’operazione da effettuarsi sul file, in quanto il sistema operativo andrà a leggere in
realtà un file di tipo link e non del tipo desiderato.
Le specifice di portabilità Portable Operating System Interface POSIX definiscono aspetti ai quali i sistemi operativi si devono attenere per essere conformi
allo standard.
4
COMANDI UNIX DI UTILITÀ GENERALE
6
• creare un file con il comando “touch effettivo” e testare la creazione di
un link simbolico con il comando Unix “ln -s effettivo linksimbolico”
• visualizzare con lo switch -l del comando di listing gli attributi dei file
presenti e verificare che effettivamente il link simbolico punta al file effettivo; si osservi come la visualizzazione in fase di listaggio adotta diverse
convenzioni di notazione per etichettare differentemente link simbolici e
file ordinari
• la visualizzazione invece è implicita o mascherata per gli “hard-link” in
quanto solamente in seconda colonna con il listing esteso è possibile identificare che un file ha in realtà più link di tipo hard al proprio inode
• provare la creazione di un “hard-link” con il comando “ln effettivo miohardlink”
• visualizzare gli attributi del file e dell’“hard-link” con il comando “ls -l
effettivo miohardlink”
3.4
Attributi di archivio
Ogni entry nel FileSystem ha una classe di attributi per diversi insiemi di utenti
(l’utente proprietario del file, il gruppo a cui è associato il file e ogni altro utente)
settabili con il comando Unix “chmod”.
• provare a rendere visibile a tutti un file con il comando “chmod o+r
nomefile” che fa in modo che gli altri utenti (others) abbiano diritti
in lettura (read) sul file in oggetto; si noti che con il listing esteso i
parametri flag dei diritti identificano al posto di un trattino “-” l’attributo
di leggibilità “r” per il file in questione
• provare “chmod ugo+x nomefile”
• provare “chmod g-r nomefile”
4
Comandi Unix di utilità generale
Seguono comandi di varia natura utilizzati nei sistemi operativi Unix-like:
• “date” visualizza la data corrente
• “time <nomecomando>” esegue il comando <nomecomando> e riporta alla fine le statistiche di tempo di esecuzione del comando stesso in
termini di utilizzo di cpu e di carico del sistema esprimendosi in secondi
ed in percentuale
• “who” visualizza l’insieme degli utenti che attualmente hanno associato ad
essi stessi shell di esecuzione e quindi sono considerati loggati sul sistema
4
COMANDI UNIX DI UTILITÀ GENERALE
7
• “ps [-elf ]” visualizza statistiche sui processi in esecuzione sul sistema
• “top” visualizza una classifica dei processi maggiormente richiedenti risorse
al sistema
• “free” visualizza statistiche relative alla quantità di memoria volatile
inutilizzata sul sistema
• “du” visualizza statistiche relative alla quantità e percentuale di risorse
di memorizzazione di masssa utilizzate sul sistema
• “|” è la pipe che consente la redirezione dell’esecuzione di un processo oppure di un “built-in command” della shell in ingresso ad un altro comando
per ulteriore elaborazione (es. “ls | sort”, “ls /bin | wc -l”)
• “find” consente di scandire la gerarchia del FileSystem in cerca di un’entry
corrispondente a regole ben precise relative al nome (es. “find | -name
bash -print”)
• il completamento automatico si effettua premendo il tasto <Tab> e permette di ridurre la quantità di caratteri battuti a tastiera in corrispondenza di match per le quali il comando “complete” è stato istruito ad
espandere; questo consente di impartire comandi a velocità elevata ma
anche di completare differentemente ed in più tempi nomi di file passati
a comandi specifici proseguendo differenzialmente il completamento del
nome dove il complete si trova indeciso
• avendo a disposizione nella directory i file magnifico, master ed usando il
comando “ls m<Tab>” come prima cosa complete espanderà il comando ad “ls ma” e solo in seguito ad ulteriori pressioni del tasto <Tab>
visualizzerà le alternative tra cui scegliere, per cui dovendo listare il file
magnifico sarà sufficiente premere ulteriormente il tasto <Tab> dopo aver
digitato il carattere “g” (“ls mag<Tab>”) per avere a disposizione il comando completato automaticamente (“ls magnifico”) e dover solamente
premere il tasto <Invio> per indicare che il comando è pronto per essere
sottoposto all’interprete dei comandi
• la redirezione dell’input e dell’output di un comando sottoposto per esecuzione ad interprete può avvenire non solamente attraverso la pipe “|” di
ridirezione che sfrutta meccanismi di comunicazione interprocesso ma anche attraverso i caratteri di redirezione per l’ingresso “<” e di redirezione
per l’uscita “>” che consentono IO da ed a file
• “sort < nonordinato.txt > ordinato.txt” è un comando che consente
al comando di ordinamento interno all’interprete di prendere un file di
testo in ingresso e dopo averlo ordinato invece di produrre in uscita il risultato su visualizzazione di output standard su terminale, di memorizzare il
risultato nel file dal nome ordinato.txt
5
NETWORKING
8
• posponendo il carattere “&” ad un comando inviato dal terminale all’interprete in esecuzione sul server remoto attiva la modalità di esecuzione in background del processo (es. “ls &”) dimodoché la shell sia
immediatamente disponibile
• è possibile inviare un segnale di sospensione ad un programma in esecuzione con la pressione contemporanea dei tasti <Ctrl> e <z>, dopodiché
il processo cosı̀ sospeso può essere riattivato ma in modalità background
con il comando “bg”
• è possibile visualizzare la lista di processi (programmi in esecuzione) che
l’interprete ha generato con il comando Unix “jobs”
• comandi in esecuzione in background possono essere riattivati con il comando “fg %<numero job>”, nel qual caso il prompt non rimarrà più
disponibile all’utente
5
Networking
5.1
Funzionamento di un Internet Service Daemon
Nei sistemi operativi Unix-like che funzionano da server Internet per un qualsiasi
tipo di servizio, una applicazione appropriata per ogni richiesta IP ricevuta
ad una certa porta è avviata, dipendentemente dal contenuto di alcuni file di
configurazione del sistema.
Il file /etc/services descrive il tipo e l’identificativo delle porte associate ad
un particolare servizio, ed il file /etc/inetd.conf contiene le regole di attivazione
che indirizzano il funzionamento dell’activation server “inetd”.
Ogni programma di networking ottiene informazioni dal file dei servizi con
chiamate alle routine C “getservent”, “getservbyname”, “getservbyport”,
. . . e la presenza di una entry non significa necessariamente che il servizio sia
effettivamente in esecuzione sul server.
• provare a stampare i due file “cat /etc/services”, “cat /etc/inetd.conf ”
• individuare il servizio denominato “www-http” ed effettuare un telnet a
questo servizio sul server web del dominio “Computer Engineering” dell’Università degli Studi di Parma con il comando “telnet www.ce.unipr.it
www-http”
• provare ad identificare la presenza di un eventuale server web “Apache”
sulla macchina sulla quale si è loggati in remoto con il comando “ps -auwx
| grep httpd”
5.2
Applicazioni di utilità orientate al Networking
1. traceroute o tracert
5
NETWORKING
9
• collezziona informazioni sulla “route” dei pacchetti IP tra nodo sorgente e destinazione attraverso l’invio di pacchetti chiamati “probes”
• trova il percorso approssimato variando il Time To Live TTL del
datagram IP e colleziona le informazioni restituite dai pacchetti ICMP
“destination unreachable” ritornati dai vari routers sulla strada del
probe
• sintassi dell’uscita: <hop> <logical router name> <its IP address>
<roundtrip time m[s]>
• provare a tracciare la route all’host www.tep.pr.it con il comando
“traceroute www.tep.pr.it”
• provare nell’interprete dei comandi locale l’equivalente comando “tracert”,
prima senza argomenti (per visualizzare la sintassi) e poi con argomento un nome di host, di modo da testare il percorso che un datagram IP intraprende non avendo come partenza l’host remoto sul
quale ci si è loggati da terminale ma bensı̀ l’host locale (“tracert
www.winmx.com”)
• osservare che il sistema di risoluzione dei nodi identifica per la maggior parte dei router oltre al loro indirizzo IP anche il nome logico
pienamente qualificato
2. icmpinfo
• eseguire in remoto il comando “icmpinfo -vvv” che consente di monitorare i datagram di tipo ICMP e di visualizzarne il corrispondente
payload esadecimale
• notare che un’interpretazione ad alto livello del tipo di pacchetto è
resa disponibile con la prima riga di dump sintetico che è anche quella
visualizzata quando non viene attivato lo switch “-vvv”
3. ping
• consente al nodo locale di testare il cammino di comunicazione con
un host remoto
• riporta se il nodo remoto è attivo
• anche nomi di dominio possono essere utilizzati e vengono risolti
automaticamente con il dns
• riporta il roundtrip time del pacchetto, la percentuale dei pacchetti
smarriti ed altre statistiche
• è possibile dedurre le condizioni della rete e del link
• se il nodo interpellato è nella stessa subnet il corrispondente indirizzo
MAC è inserito nella cache arp, altrimenti viene inserito l’indirizzo
del gateway (router)
• provare ad effettuare il ping dal server remoto su un host nel dominio
unipr.it con il comando “ping aida.ce.unipr.it”
5
NETWORKING
10
• interrompere l’esecuzione del ping con la pressione della combinazione
di tast <Ctrl> e <c> (invio di un segnale di interruzione al processo)
• analizzare la pagina di manuale con il comando “man ping”
• provare il comando “ping -v doncarlos.ce.unipr.it”
• eseguire un ping broadcast a tutti gli host della subnet corrente con
il comando “ping -b <indirizzo IP della subnet>.255”
• eseguire il comando “ping” sull’host locale per vedere una pagina di
manuale e la sintassi
• eseguire il comando “ping aida.ce.unipr.it”
4. pathping
• mescola le feature di ping e tracert
• eseguire sul prompt dei comandi locale il comando “pathping” senza
argomenti per visualizzare la sintassi
• eseguire sul prompt dei comandi locale il comando “pathping 160.78.28.1”
ed analizzare l’output
• si osservi come le statistiche siano formattate adeguatamente
• provare il comando “pathping www.winmx.com” ed analizzare i
punti di passaggio attraverso i router sulla route verso tale host
5. whois
• client per il “whois” directory service database mantenuto dal Regional Internet Registries RIR
• provare dal server remoto ad effettuare un’interrogazione per il dominio 160.78.0.0 attraverso l’esecuzione del comando “whois 160.78.0.0”
• osservare come la presentazione dei risultati mostri i contenuti del
record dell’organizzazione, l’identificazione del nome di rete, del tipo
di assegnamento, dei vari name server, delle persone a cui fare riferimento per il dominio, del range di indirizzi IP per il dominio
• dal server remoto provare ad analizzare l’entry nel database per il
dominio unipr.it con il comando “whois unipr.it”
• osservare come in questo caso il superdominio sia riportato come un
tipo di dominio x400 e la strutturazione gerarchica dei record presentati, dei quali uno essere esattamente identico al record di dominio
presentato nell’interpellazione precedente
6. ifconfig o ipconfig
• configura i parametri residenti a livello kernel dell’interfaccia di rete
• senza argomenti visualizza lo stato delle interfacce di rete correntemente attive
5
NETWORKING
11
• con un singolo argomento visualizza lo stato di una singola interfaccia
di rete
• eseguire sul server remoto il comando “ifconfig -a” che provoca la
visualizzazione dei parametri per tutte le interfacce di rete, anche per
quelle disattivate o “down”
• osservare ed analizzare tutti i parametri di configurazione dell’interfaccia
• nel prompt dei comandi locale eseguire il comando “ipconfig” senza
argomenti per vedere la configurazione IP di Windows
• osservare i parametri come il suffisso DNS, l’indirizzo IP, la subnet
mask ed il gateway predefinito associati all’interfaccia di rete locale
• eseguire dal prompt locale il comando “ipconfig /all” che visualizza
tutti i parametri di configurazione dell’interfaccia di rete
7. tcpdump
• effettua l’analisi ed il dump su file o su standard output di terminale dei pacchetti letti dalla scheda di rete che transitano sul mezzo
trasmissivo al quale il computer è connesso
• eseguire in remoto il comando “tcpdump -i eth0” che visualizza
un’analisi sintetica ed interpretativa anche a livello di protocollo dei
pacchetti analizzati o “sniffati”
• tcpdump può essere utilizzato anche componendo il suo comportamento di funzionalità con un filtro attivo di selezione dei pacchetti
da “dumpare”
• eseguire il comando “tcpdump -vvv port 520” per vedere il dump
con relativa interpretazione sintetica della comunicazione tra router
che avviene con protocolli RIP
• eseguire il comando “tcpdump -xX -vvv port 520” per analizzare su tabelle esadecimali il dump di porzioni delle routing tables
scambiate tra i vari routers
8. tethereal
• effettua l’analisi e la presentazione di pacchetti sniffati su rete in una
maniera molto più complessa di tcpdump, in quanto opera a livello
di protocollo e consente di interpretare fino all’ultimo campo definito
nel protocollo visivamente e in una struttura gerarchica
• consente anche in alcuni casi di analizzare il payload dei pacchetti
qualora potesse avere anche qualche minimo significato per l’utente
umano
• eseguire sul server remoto il comando “tethereal” per analizzare
sommariamente i pacchetti sniffati dall’interfaccia di rete
5
NETWORKING
12
• osservare che i pacchetti possono essere di varia natura (richieste di
risoluzione ARP, richieste di risoluzione DNS, pacchetti di risposta
web, ecc . . .
• tethereal può operare in modalità di filtering, in particolare selezionando il protocollo desiderato
• lanciare in remoto il comando “tethereal tcp” per vedere una sintesi
dei pacchetti IP che contengono informazioni formattate secondo il
protocollo TCP
• osservare che in questo caso nell’interpretazione, oltre che al significato del messaggio IP vengono anche posti tra parentesi quadre i
vari flag innalzati nei vari pacchetti corrispondenti ai vari stati della
connessione TCP (es [SYN, ACK, PSH, ...])
• provare a catturare singole sessioni TCP, ad esempio mettendosi d’accordo in gruppi, gli uni per organizzare una sessione telnet, gli altri
per “dumparla” con il comando “tethereal tcp”
• tethereal prevede una modalità verbose in cui il grado di dettaglio
nell’interpretazione e presentazione del traffico analizzato raggiunge i
livelli estremi compatibilmente con le capacità interpretative fornite
al pacchetto, sfruttando una visualizzazione ad albero gerarchico dei
dati
• provare questa modalità di esecuzione con il comando “tethereal -V
tcp”
• analizzare con l’esercitatore nel dettaglio i pacchetti presentati ed in
particolare analizzare singole classi di pacchetti, come ad esempio
una sessione telnet http
• osservare come i byte dedicati a contenere i flag siano esposti in
una maniera chiara ed intuitiva, comprensiva di dichiarazione del
significato del flag stesso
9. nslookup
• permette di interrogare i name server DNS di Internet interattivamente
• utilizzato per la traduzione da nome di dominio o FQDN ad indirizzo
IP o viceversa
• le applicazioni usano le chiamate a sistema operativo del linguaggio C
come get host by name() per ottenere la risoluzione dei nomi host,
come anche l’esecuzione dei comandi nslookup
• eseguire l’analisi della pagina di manuale in remoto sul server attraverso il comando “man nslookup”
• analizzare l’insieme dei sottocomandi accettati
5
NETWORKING
13
• eseguire il comando “nslookup” per entrare in modalità interattiva;
come prima cosa viene presentato il server risolutore DNS di default
per il dominio nel quale la vostra macchina è inserito
• eseguire il comando “> www.ce.unipr.it” per avere la risposta presentata direttamente a terminale nel formato del server che ha fornito
informazioni sull’host ed anche informazioni relative all’host stesso
come il nome, l’indirizzo IP e gli eventuali alias
• eseguire il comando “> exit” per uscire dalla modalità di interrogazione interattiva dei nameserver
• eseguire il comando “nslookup www.ce.unipr.it” per interrogare direttamente i server DNS con un nome host; successivamente
dal prompt di nslookup “>” cambiare il tipo di “query” dell’interrogazione a quella di Mail eXchanger (“set querytype=mx”) ed
effettuare una richiesta per un host del tipo “acme.com”
• si osservi come in questo caso vengano forniti indirizzi dei server mail
per il dominio per il quale si è effettuata la richiesta
10. host
• analizza e visualizza nome ed informazioni relative all’host specificato
a linea di comando o relative all’host corrente
• eseguire in remoto il comando “host -a www.ce.unipr.it” per visualizzare tutte le informazioni relative al server web del dominio
ce.unipr.it
11. dig
• evoluto comando di interrogazione DNS verso i server
• Domain Information Groper
• sintassi: “dig @server name type” oppure “dig @server domain
query-type query-class”
• anche in questo caso le query possono essere di tipo mail exchanger
MX
• gli RR resource record ritornati sono opportunamente formattati
• in una risposta CNAME identifica gli alias, NS un name server, A un
indirizzo
• il flag “aa” identifica una risposta “authorative” da un server e non
da una cache utilizzata in genere per “load-balancing” e dotata di
TTL per implementare una politica di “aging”
• il formato della risposta è del tipo: <nome dominio> <TTL> <tipo
di codice> <campo dati>
• eseguire in remoto il comando “dig www.ce.unipr.it” ed analizzare
con l’esercitatore i campi risultanti
5
NETWORKING
14
• eseguire il comando “dig @ns.adnc.com FreeSoft.org mx” ed
analizzare il risultato fornito dal name server con l’esercitatore
• eseguire il comando “dig a.root-servers-net” per interpellare uno
dei root DNS server di Internet
• provare ad incrementare la “snarf length” di “tcpdump” con lo
switch “-sXXXX” (si osservi che una richiesta ricorsiva per una risoluzione
DNS è identificata da una “+”) e provare ad analizzare il dump dei
pacchetti DNS (eventualmente in gruppi di coppie organizzati) con
il comando “tcpdump -s512 -i eth0 udp port domain”
• eseguire in remoto il comando “dig” privo di argomenti per interpellare i DNS server che sono autorevoli per la radice (root “.”) di
Internet
12. finger
• programma di retrieving di informazioni utente su sistemi locali ma
anche su sistemi remoti
• sistemi remoti rispondono se un servizio finger richiesto dal daemon
inetd è in esecuzione
• sistemi con le NIS rispondono per tutti gli utenti di cui sono a
conoscenza
• campi visualizzati: nome di login, presenza di posta non letta, login
da host remoto, file caratteristici dell’utente (.plan, .project, .pgpkey,
.forward)
• senza argomenti visualizza se consentito le statistiche degli utenti
connessi
• effettuare in remoto il comando “finger [email protected]”
• eseguire in remoto il comando “finger” senza argomenti per visualizzare statistice di connessione di tutti gli utenti attualmente connessi
• eseguire dal prompt dei comandi dell’host locale il comando finger
nella stessa maniera con l’istruzione “finger [email protected]”
13. dnsquery
• interroga DNS name server utilizzando un resolver
• effettuare in remoto il comando “dnsquery www.ce.unipr.it”
• osservare come i risultati siano del tutto simili a quelli di “dig” o
“host”
14. nmap
• utility per analizzare le porte di accesso ed i servizi offerti come server
da un sistema connesso ad Internet
• eseguire da terminale remoto il comando “nmap www.ce.unipr.it”
5
NETWORKING
15
• analizzare lo stato delle porte offerte dal server ed il tipo di servizio
15. telnet
• interfaccia utente al protocollo TELNET (porta telnet 23/tcp)
• in esecuzione senza parametri entra nella modalità di prompt interattivo
• eseguire sul server remoto il comando “telnet” e dal prompt “telnet>”
digitare il comando “help” lanciandone l’esecuzione con la pressione
del tasto <Invio> per avere una lista dei comandi disponibili
• eseguire il comando “quit” per uscire dalla sessione telnet
• eseguire sul server remoto il comando “telnet www.ce.unipr.it 80”
oppure il comando “telnet www.ce.unipr.it http” per connettersi
in telnet al server web del dominio ce.unipr.it
• eseguire il comando “get index.html” per ricevere formattato in
linguaggio ipertestuale un qualsiasi tipo di risposta
• eseguire il comando “lsof -iTCP” prima e dopo che la sessione telnet
sia stata inizializzata, come anche il comando “netstat” dopo che la
sessione telnet sia stata visualizzata per vedere lo stato ed i parametri
della connessione ESTABLISHED con l’host doncarlos.ce.unipr.it
16. mail
• client di posta che utilizza il protocollo SMTP
• eseguire sul server nemoto il comando “echo ciaociaociao | mail
-s soggetto [email protected] -” per inviare un messaggio ad
un indirizzo di posta elettronica (il dash “-” indica al mail sender
agent di prendere da standard input (in questo caso da pipe) i dati
del messaggio
• analizzare gli scambi di messaggi e le risposte numeriche che il server
di posta restituisce al client
• analizzare lo stato dei servizi del server mail.ce.unipr.it con il
comando “nmap mail.ce.unipr.it” ed osservare come la porta tcp
25 sia aperta ed accettante comunicazioni per il protocollo smtp
• effettuare sul server remoto l’esecuzione del comando “telnet mail.ce.unipr.it
25” per aprire una sessione telnet verso il server smtp
– eseguire il comando “help” per vedere la lista dei comandi disponibili presso il server
– eseguire il comando smtp “helo boo” per identificare con il nome
boo l’host che si connette
– eseguire il comando “mail from: [email protected]” per indicare il
mittente del messaggio mail, quindi “rcpt to: [email protected]”
per indicare il destinatario e dunque il comando “data”
5
NETWORKING
16
– inserire le linee del messaggio separate dalla pressione del tasto
<Invio> e terminare la sezione dei dati con l’inserimento di una
sola linea contenente un punto “.” all’inizio della stessa
– impartire il comando “reset” ed infine “quit” per interrompere
la connessione
17. netstat
• consente di visualizzare lo stato delle connessioni TCP, delle tavole
di routing, le statistiche delle interfaccie, le membership multicast
• lo switch “-a” consente di visualizzare lo stato delle socket sorgente e
destinazione, “-r” per visualizzare le routing tables del kernel, “-g”
per visualizzare le informazioni relative alle appartenenze ai gruppi
multicast e “-i” per selezionare l’interfaccia di rete desiderata
• dal server remoto eseguire il comando “netstat -r”
• analizzare con l’esercitatore la tavola di routing del kernel, tenendo
presente che il flag “U” identifica una route attiva ed operazionale,
che il flag “G” indica che il pacchetto deve attraversare almeno un
router, il flag “H” che la route è verso un host specifico e non una
network e che il flag “D” identifica una route creata dinamicamente
• eseguire in remoto il comando “netstat -g”, “netstat -i” e “netstat”
ed analizzare i risultati
• per visualizzare tutte le connessioni socket Internet, sia quelle in
asccolto che non, eseguire in remoto il comando “netstat -a”
• eseguire dal prompt dei comandi locale il comando “netstat -?” per
prendere visione della pagina di manuale e “netstat” senza argomenti per visualizzare le statistiche delle connessioni
18. nbtstat
• visualizza le statistiche del protocollo TCP/IP delle connessioni correnti usando il protocollo NBT NetBIOS over TCP/IP
• eseguire dal prompt dei comandi locale il comando “nbtstat” senza
argomenti per accedere alla pagine di manuale
• eseguire in locale il comando “nbtstat -A 160.78.28.1” ed il comando “nbtstat -A <IP locale>” per visualizzare la tabella dei
nomi NetBIOS con i gruppi associati alla interfaccia di rete locale
19. route
• permette di mostrare o manipolare la tabella di routing IP
• eseguire in remoto “cat /proc/net/route”, quindi “route -v” ed
analizzare i risultati con l’esercitatore
5
NETWORKING
17
• eseguire in locale “route” senza argomenti per visualizzare la pagina
di manuale del comando e quindi il comando “route PRINT” per
visualizzare la tavola di routing per l’interfaccia di rete locale
20. arp
• permette di manipolare la cache ARP di sistema
• le entry rimangono per due minuti, ad eccezione di quella del gateway
che per ovvi motivi viene reinserita di frequente
• possono essere presenti delle entry statiche
• eseguire in remoto il comando “arp” e comparare il risultato con il
risultato del comando “arp -v” realizzato dopo aver effettuato un
ping broadcast
• eseguire in remoto il comando “arp -a” ed analizzare i risulati con
l’esercitatore; comparare quindi i risultati con quelli del comando
“arp -v”
• eseguire il comando “arp <nomehost>” con un host precedentemente presente nella tabella ed osservare che la restituzione dell’entry
singola
• eseguire in remoto il comando “cat /proc/net/arp”
• organizzando con dei gruppi di lavoro eseguire in remoto il comando “tethereal -V arp” mentre qualcuno effettua un ping su indirizzi IP della stessa subnet; analizzare nel dettaglio i risultati con
l’esercitatore
• eseguire da prompt dei comandi locale il comando “arp” senza argomenti per accedere alla pagina di manuale
• eseguire in locale il comando “arp -a” per visualizzare la tabella arp
21. iptables
• tool per il packet filtering a livello amministratore
• eseguire in remoto il comando “iptables -L INPUT” ed analizzare
l’output con l’esercitatore
22. ngrep
• tool che fornisce a network layer le funzionalità del comando “grep”
di GNU
• effettua pattern matching di espressioni regolari nel payload dei pacchetti
• lo switch “-x” consente di “dumpare” sia in esadecimale che in ASCII
se possibile
• permette di effettuare il match in una maniera protocol-dependent
5
NETWORKING
18
• eseguire in remoto il comando “ngrep -x login tcp” mentre qualcuno cerca di effettuare un telnet sul server per analizzare come venga presentato il payload del pacchetto che rende verificato il match
con l’espressione regolare
23. ttcp
• verifica le performance TCP e UDP tra due host
• qualcuno effettui il logginh su un altro server ed esegua il comando
“ttcp -r”
• altri effettuino l’esecuzione in remoto del comando “ttcp -t <IP
del server>” e quindi si analizzi con l’esercitatore il risultato del
performance-test
24. ifstatus
• script linux per testare lo stato delle interfacce di rete
• eseguire in remoto il comando “ifstatus eth0” ed analizzare l’output
con l’esercitatore
25. network
• script linux per testare lo stato delle interfacce di rete
• eseguire con diritti di amministratore o anche senza il comando “/etc/init.d/network
status” ed analizzare il risultato con l’esercitatore
26. ipmaddr
• visualizza il MAC address dell’interfaccia di rete locale
• eseguire in remoto il comando “ipmaddr” ed analizzare il risultato
con l’esercitatore
27. hostname
• visualizza o configura il nome dell’host su cui l’utente è loggato
• eseguire in remoto il comando “hostname” e verificare che effettivamente il nome ritornato sia quello dell’host a cui ci si è connessi in
principio
28. domainname
• visualizza o configura il nome di dominio NIS/YP del sistema
• eseguire in remoto il comando “domainname”
29. dnsdomainname
• visualizza il nome del DNS domain a cui l’host fa riferimento
• eseguire in remoto il comando “dnsdomainname”
5
NETWORKING
19
30. plipconfig
• configura lo stato del Parallel Line Internet Protocol PLIP link tra
due computer, realizzato punto a punto attraverso un cavo parallelo
per PC
• eseguire in remoto il comando “man plipconfig”
31. slattach
• attacca una interfaccia di rete logica del kernel ad un collegamento
di dispositivo seriale
• usato per connessioni seriali punto a punto ad altri computer
• modulo kernel richiesto “slip”
• assegna una telephony TTY line ad una interfaccia di rete
• eseguire in remoto il comando “slattach” per visualizzare il formato
di utilizzo
• eseguire in remoto il comando “slattach /dev/tty20” ed analizzare
l’output con l’esercitatore
• effettuare il detach con il comando “ifconfig <interfaccia> down”
oppure “ifdown <interfaccia>”
32. mii-tool
• visualizza e modifica lo stato dell’unità Media-Independent Interface
• eseguire in remoto il comando “mii-tool -v” ed analizzare l’output
con l’esercitatore
• eseguire in remoto il comando “mii-diag” ed analizzare l’output con
l’esercitatore
33. iptunnel
• metodo per collegare ed effettuare il routing verso un altro indirizzo
IP presente in una altra rete differente
• richiede i moduli kernel ip gre, ipip
• eseguire in remoto il comando “iptunnel add tunnel1 mode grep
remote 160.78.28.2 local <localIP>”
• eseguire in remoto il comando “iptunnel add tunnel2 mode ipip
remote <remoteIP>”
• eseguire in remoto il comando “iptunnel” per visualizzare lo stato
dei tunnel correntemente attivi
• associare un tunnel ad un indirizzo IP con il comando “ifconfig
tunl0 160.78.23.14”
34. getlist
5
NETWORKING
20
• software appartenente al pacchetto “inn” che consente di visualizzare
la lista dei canali attivi con il “Network News Transport Protocol
NNTP” sulla porta 119 tcp ed udp
• il formato della risposta è del tipo: <nome gruppo> <id primo
articolo> <id ultimo articolo> <permesso di posting attivato o meno>
• effettuare in remoto il comando “getlist -h bbs.ee.ntu.edu.tw” ed
analizzare la lista dei gruppi per il server delle news indicato come
argomento
• analizzare la route verso il server sopramenzionato con il comando in
remoto “traceroute bbs.ee.ntu.edu.tw” con l’aiuto dell’esercitatore
• utilizzare in remoto uno script NNTP “client reader”:
#!/usr/local/bin/perl -w
use News::NNTPClient;
$c = new News::NNTPClient(‘‘blob.linuxfr.org’’);
($first, $last) = ($c->group(‘‘fr.soc.travail.independant’’));
#‘‘free.it.discussioni.gps’’));
for (; $first <= $last; $first++) {
print $c->article($first);
}
__END__
Host
Group
bbs.ee.ntu.edu.tw
ntu.ee.bbs.imagineering
• effettuare una lettura telnet delle news con il comando remoto “telnet
blob.linuxfr.org nntp”
– come primo sottocomando eseguire “help” e premere <Invio>
– analizzare i comandi presentati ed effettuare il comando “list
active” per visualizzare i gruppi attivi
– eseguire il comando “group linux.kernel” per cambiare di gruppo
– eseguire il comando “article 1” per selezionare come articolo
corrente l’articolo numero uno
– provare il comando “post” per verificare se è possibile aggiungere
ulteriori articoli
– eseguire il comando “article” privo di argomenti per vedere
l’articolo corrente
– eseguire il comando “next” per avanzare di uno l’articolo corrente
– eseguire i comandi “head <articleID>” opprure “body <articleID>”
oppure “stat <articleID>” per vedere le relative parti dell’articolo
5
NETWORKING
21
– eseguire il comando “xover 3” per ottenere informazioni dall’overview database relative a quell’articolo
– eseguire infine il comando “quit” per disconnettersi dal server
35. smbclient
• Server Message Block SMB protocol chiamato anche Common Internet File System CIFS
• smb è un servizio attivo sulla porta 139 tcp identificata dal nome di
servizio netbios-ssn
• nel dominio NT LAB GESTIONALE è presente un server NT denominato olimpo.cedi.unipr.it che fornisce servizi condivisi
• effettuare da remoto l’analisi degli host master relativi ad un determinato workgroup visualizzati dall’esecuzione dal server linux remoto
di smbclient -L olimpo.cedi.unipr.it, fornendo un <Invio> alla
richiesta di password rinunciando ad un’autenticazione di login per
poter comunque visualizzare la risposta del server
• analizzare da gestione risorse → risorse di rete → Olimpo e si aprirà
una cartella con i servizi forniti
• creare una cartella sul desktop con un nome caratteristico, selezionarla
e cliccare su questa con il tasto destro del mouse
• selezionare il tasto “proprietà” e di seguito la tab “condivisione”
e rendere condivisa a tutti la cartella e creare nuove cartelle o file
caratteristici in questa
• eseguire in remoto il comando “smbclient -L nomehost cartella condivisa”
dopo che sia stata condivisa una qualche cartella su un qualche host
• fornire un semplice <Invio> alla richiesta della password ed analizzare come i servizi resi condivisi dall’host (servizo spazio disco,
stampa, ...) siano identificati in un formato comune
• eseguire in remoto il comando “smbclient //<nomeserverhost>
/ <nomeservizio>” e fornire una password vuota
– eseguire il comando “help” per visualizzare l’insieme dei comandi disponibili
– eseguire il comando “ls” per visualizzare i file presenti nel servizio
spazio disco
– eseguire il comando “help get” per avere informazioni sulla
sintassi di utilizzo del comando get
– eseguire il comando “help recurse” per avere informazioni sulla
sintassi di utilizzo del comando recurse
– eseguire il comando “recurse” per attivare la ricorsione con le
directory
6
ATTIVAZIONE DI UNA NIC CON SISTEMI OPERATIVI UNIX-LIKE22
– eseguire il comando “prompt” per disattivare il prompting su
mget e mput con pattern matching; eseguire il comando “mget
*” per ottenere il download verso l’host locale dei file presenti
nella cartella del server samba
36. ntop: eseguire in remoto il comando “ntop -W 3000” e visualizzare
l’output grafico con un browser
6
Attivazione di una NIC con sistemi operativi
Unix-like
Se l’interfaccia di rete non è già attivata e corretamente configurata, una configurazione si rende necessaria; accertarsi con i comandi presentati in precedenza
che l’operazione di configurazione non solo non sia superflua, ma si renda addirittura dannosa in quanto possa intaccare erroneamente la corretta configurazione
della scheda rendendola inutilizzabile.
Per attivare un’interfaccia di rete bisogna innanzitutto fare in modo che un
driver venga attivato dal sistema operativo in esecuzione per pilotare il modello
di scheda disponibile sull’elaboratore.
Dopodiché si procede alla configurazione dell’interfaccia di rete con il comando:
ifconfig eth0 160.78.23.75 netmask 255.255.255.0
"interfaccia" "IP"
"maschera di rete"
a questo punto l’esecuzione di “route -v” produce solamente la visualizzazione della route per la subnet o LAN implicita nel comando ifconfig
stesso.
Se si effettua ora un ping broadcast mediante il comando “ping -b 160.78.23.255”
in un sistema operativo come FreeBSD 5.0 che implementa automaticamente
il protocollo di routing RIP per il discovery automatico di nuove route verso
gli host si possono osservare con “route -v” tutte le nuove entry nella routing
table del kernel in formato MAC address verso ogni singolo nodo individuato e
per il quale il sistema operativo ha appreso l’indirizzo hardware della scheda. La
descrizione a flag di queste entry prevede necessariamente la natura host (H) ed
un parametro addizionale di decadenza temporale della route stessa viene reso
evidente in quanto questa è stata appresa dinamicamente da RIP ed è possibile
che abbia solamente una natura temporanea.
In assenza di RIP la tabella di routing rimarrebbe invariata e si potrebbero
osservare solamente nuove entry nella tabella arp del kernel (visualizzate con il
comando “arp -v”).
Il secondo passo da effettuare è l’inserimento nella tabella di route delle
entry:
route add -net 160.78.23.0 netmask 255.255.255.0 gw 160.78.23.254
"comando" "pattern IP destinazione" "maschera di rete" "gateway o nodo di passaggio"
7
ULTERIORI COMANDI UNIX PER IL NETWORKING
23
route add default gw 160.78.23.254 netmask 0.0.0.0
"alias per -net 0.0.0.0" "gateway" "maschera di rete"
per avere la possibilità di effettuare il ping su ogni host di Internet attraverso
il gateway (termine a volte usato anche come una astrazione a layer OSI 7 per
indicare un punto di passaggio verso altre LAN, WAN o subnet invece che
come semplice sinonimo di router operante a layer OSI 3; elaboratori con più
interfacce di rete correttamente ed opportunamente configurate possono svolgere
il ruolo di router o gateway purché la banda di forwarding si mantenga al di
sopra di livelli considerati accettabili).
Questo tipo di configurazione laboriosa che prevede la conoscenza di numerosi parametri tecnici di connessione in genere viene sostituita se le funzionalità della LAN lo consentono grazie ad un server host opportuno, dall’esecuzione sull’elaboratore con la scheda da configurare di un client per il Dynamic
Host Configuration Protocol DHCP.
Solitamente questa pratica prevede il retrieving ad ogni avvio del sistema
da parte del client dal server DHCP nella LAN a cui l’elaboratore è connesso di
un insieme di parametri denominati nella terminologia corrente come “lease”.
Il server conosce il MAC address della scheda NIC che deve essere registrata
presso di sé per garantire gli opportuni diritti di accesso alla rete, e quando
il client si attiva procede alla ricerca di un server tramite messaggi broadcast
sulla porta UDP 68 mentre le risposte del server sono restituite alla porta 67
nella forma (la lease): valori di indirizzo IP, netmask (maschera di rete), router
usato come punto di passaggio per le comunicazioni esterne ed infine DNS name
server da utilizzare, che potrebbe anche essere quello autorevole per il dominio
della LAN.
7
Ulteriori comandi Unix per il Networking
Discutere con l’esercitatore dei seguenti comandi:
tripwire monitoring del FileSystem come Network Intrusion Detection System oppure Auditing
lsof listare file aperti anche nel dominio Internet (es. “lsof -iTCP -iUDP”)
netperf e netserver misurare la capacità di una connessione
snmpwalk e snmpget ottenere informazioni tramite il Simple Network Management Protocol
bing misurare la bandwidth tra due nodi di rete
pcap Packet Capture library interfaccia in pcap.h di alto livello verso sitemi di
packet capture
ntop visualizzatore grafico dell’utilizzo di rete (es. “ntop -W 3000”)
ethereal GUI per effettuare il browsing del traffico Internet graficamente
8
CONFIGURAZIONE GRAFICA DELL’INTERFACCIA DI RETE CON WINDOWS24
mrtg Multi Router Traffic Grapher per monitorare il carico di traffico sui link
di rete generando pagine HTML
iptraf IP LAN packet, load, node, error monitor basato sulle librerie di visualizzazione grafica a terminale ncurses
ipchains vecchio tool per l’amministrazione del filtering di pacchetti IP
8
Configurazione Grafica dell’Interfaccia di Rete
con Windows
Windows mette a disposizione applicazioni con interfaccia grafica per monitorare
lo stato dell’interfaccia di rete Ethernet o di connessioni dialup direttamente
dal desktop con l’icona “risorse di rete” come link o dal pannello di controllo
(accessibile anche dal link “risorse del computer”.
Tali punti di accesso rapido sono presenti anche nei “pull-down menu” ricorrenti quando le operazioni di accesso ai file si rendono necessarie.
Richiamare il browser di cartelle explorer con la pressione contemporanea
della combinazione di tasti <tasto finestra> ed <e> e da questo eseguire il
collegamento “risorse di rete”. Navigare in “tutta la rete” esplorando attraverso la visualizzazione gerarchica ed intuitiva della topologia di rete Microsoft la
distribuzione di cartelle precedentemente condivise dagli altri utenti dell’esercitazione del laboratorio.
Dal “pannello di controllo” è possibile accedere ad un link all’applicazione
denominata “opzioni internet” in cui numerosi parametri di connessione alla
rete sono disponibili per configurazioni di varia natura.
Da “pannello di controllo” attivare il collegamento “rete” che richiama l’applicazione grafica di analisi delle configurazioni di interfacce per l’accesso alle
reti dal computer corrente. Analizzare la sezione identificazione, servizi, protocolli e schede di rete. Scegliere “la scheda di rete” ed analizzarne le proprietà;
dal tab “generale” selezionare il protocollo TCP/IP e osservare come le proprietà visualizzate sul server remoto siano in effetti agevolmente rintracciabili e
modificabili dall’interfaccia.
Statistiche sul funzionamento della rete sono disponibili con la selezione del
tab “rete” nel “task manager”, a sua volta richiamabile con la pressione del tasto
destro nella barra di Windows e con la selezione dell’opzione “task manager”.
Le configurazioni per i sistemi client con sistemi operativi Windows in esecuzione possono essere configurati su parametri introdotti da questa interfaccia grafica al fine di consentire un corretto utilizzo dell’interfaccia di rete del
computer.
8.1
Windows Management Instruction Core WMI
Il Windows Management Instrumentation Core WMI CORE 1.5 per Windows
95/98/NT4.0 consente attraverso un linguaggio interpretato ad oggetti di eseguire script per effettuare configurazioni arbitrarie su sistemi Windows; nel
8
CONFIGURAZIONE GRAFICA DELL’INTERFACCIA DI RETE CON WINDOWS25
seguito di questa esercitazione verrà utilizzata una versione evaluation che consentirà di effettuare esperimenti sulla configurazione dell’interfaccia di rete locale
al fine di integrare quanto visto nel corso dell’esercitazione con la possibilità di
utilizzare un tool per l’automazione delle modifiche di settaggio.
Con l’aiuto dell’esercitatore digitare (o alternativamente scaricare dalle directory condivise che vi saranno indicate) gli script per:
• configurare un indirizzo IP statico e IP di gateway di default ad assumere
determinati valori
• determinare l’indirizzo IP di ogni interfaccia di rete abilitata
• abilitare il client DHCP ad ottenere l’indirizzo IP
• elencare le proprietà di configurazione dell’adattatore di rete (due differenti versioni)
• enumerare i protocolli di rete supportati dal sistema operativo in esecuzione sul computer
• effettuare il ping attraverso la classe Win32 PingStatus
• rinnovare la DHCP lease del computer
• ottenere SNMP MIB-II Interface Table Information RFC 1213
• ottenere SNMP MIB-II System Group Information
• ottenere SNMP MIB-II TCP e UDP porte di ascolto e connessioni da un
nodo amministrato con il protocollo SNMP
• restituire il valori dei dati di configurazione IP
• cambiare la priorità di un processo in esecuzione
• monitorare la lista delle thread con relativo stato per ogni processo in
esecuzione
autore: Amos Tibaldi [email protected]