Mirella paglialunga, e reti-camente-snv e le scuole delle reti
Linux e le reti – 2
description
Transcript of Linux e le reti – 2
Linux e le reti – 2Linux e le reti – 2
Tiziano Ragazzi
Testare la tua NICTestare la tua NIC
In ambiente linux il comandoifconfigsenza parametri dà tutte le interfacce di rete attive
ifconfig –a dà tutte le interfacce comprese quelle inattive
Ad esempio: esito per interfacce wifi inattiva
wlan0 Link encap:Ethernet HWaddr 00:06:25:09:6A:D7 BROADCAST MULTICAST MTU:1500 Metric:1 RX packets:2924 errors:0
dropped:0 overruns:0 frame:0 TX packets:2287 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:100 RX bytes:180948 (176.7 Kb) bytes:166377 (162.4 Kb) Interrupt:10 Memory:c88b5000 c88b6000
Esito per interfaccia wifi attiva:
wlan0 Link encap:Ethernet HWaddr 00:06:25:09:6A:D7 inet addr:216.10.119.243 Bcast:216.10.119.255 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX
packets:2924 errors:0 dropped:0 overruns:0 frame:0 TX packets:2295 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:100 RX bytes:180948 (176.7 Kb) TX bytes:166521 (162.6 Kb) Interrupt:10 Memory:c88b5000-c88b6000
Ottenere il MACOttenere il MAC
In ambiente Linuxifconfig –a (o semplicemente ifconfig)
In ambiente Winipconfig /all
EthtoolEthtool
Usiamo ethtool per un’analisi più approfondita Esempio:
ethtool eth0 Settings for eth0:
Supported ports: [ TP MII ] Supported link modes: 10baseT/Half 10baseT/Full 100baseT/Half 100baseT/Full Supports auto-negotiation: Yes Advertised link modes: 10baseT/Half 10baseT/Full 100baseT/Half
100baseT/Full Advertised auto-negotiation: No Speed: 100Mb/s Duplex: Full Port: MII PHYAD: 1 Transceiver: internal Auto-negotiation: off Supports Wake-on: g Wake-on: g Current message level: 0x00000007 (7) Link detected: yes
ethtool –S eth0 fornisce molte più informazioni. Un “error rate” > 0.5% è sintomo di una errata configurazione della scheda o di un eccessivo utilizzo della banda disponibile
Visualizzare la tabella arpVisualizzare la tabella arp
Il comando arp col parametro -a mostra la tabella arp con i mac address delle connessioniarp -a bigboypix (192.168.1.1) at 00:09:E8:9C:FD:AB [ether] on wlan0 ? (192.168.1.101) at 00:06:25:09:6A:D7
NetstatNetstat
Netstat è un comando di grande utilità che permette di visualizzare molte informazioni relative a connessioni di rete, tabelle di routing e statistiche sulle interfacce
Ad esempio per ottenere informazioni sulle interfacce, possiamo usarenetstat -i Kernel Interface table Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg eth0 1500 0 18976655 2 0 0 21343152 142 0 3 BMRU eth1 1500 0 855154 0 0 0 15196620 0 0 0 BMRU lo 16436 0 1784272 0 0 0 1784272 0 0 0 LRU
NetstatNetstat
Per ottenere informazioni sulle connessioni UDPnetstat –nuapActive Internet connections (servers and established)Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name udp 0 0 127.0.0.1:161 0.0.0.0:* 5052/snmpd udp 0 0 0.0.0.0:443 0.0.0.0:* 3731/openvpn
Per ottenere informazioni sulle connessioni TCPnetstat –ntapActive Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:993 0.0.0.0:* LISTEN 5097/dovecot
tcp 0 0 0.0.0.0:995 0.0.0.0:* LISTEN 5097/dovecot
tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN 3829/mysqld
tcp 0 0 0.0.0.0:110 0.0.0.0:* LISTEN 5097/dovecot
tcp 0 0 0.0.0.0:143 0.0.0.0:* LISTEN 5097/dovecot
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 12928/apache2
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 3937/exim4
tcp 0 0 172.16.1.36:25 0.0.0.0:* LISTEN 3937/exim4
tcp6 0 0 :::21 :::* LISTEN 5115/proftpd: (acce
tcp6 0 0 :::22 :::* LISTEN 5067/sshd
tcp6 0 52 ::ffff:194.116.10.21:22 ::ffff:151.48.90.2:2554 ESTABLISHED25602/0
Testare le connessioni con pingTestare le connessioni con ping
Il comando ping invia pacchetti icmp di tipo 0 (echo-request) e resta in attesa di una risposta (pong) di tipo icmp 3 (echo-reply)
Esempio:risposta corretta dell’interfaccia “pingata”ping 192.168.1.101 PING 192.168.1.101 (192.168.1.101) from 192.168.1.100 : 56(84) bytes of data. 64 bytes from 192.168.1.101: icmp_seq=1 ttl=128 time=3.95 ms 64 bytes from 192.168.1.101: icmp_seq=2 ttl=128 time=7.07 ms 64 bytes from 192.168.1.101: icmp_seq=3 ttl=128 time=4.46 ms 64 bytes from 192.168.1.101: icmp_seq=4 ttl=128 time=4.31 ms --- 192.168.1.101 ping statistics --- 4 packets transmitted, 4 received, 0% loss, time 3026ms rtt min/avg/max/mdev = 3.950/4.948/7.072/1.242 ms
Testare le connessioni con pingTestare le connessioni con ping
Una risposta del tipo “Destination Host Unreachable” può essere dovuta ai seguenti motivi Se si sta pingando un host connesso alla stessa subnet
L’host potrebbe essere spento o disconnesso Il cavo potrebbe non essere funzionante o di tipologia
sbagliata. Ricordiamo che esistono 2 tipi di cavi “diretti” e “incrociati”.
In caso di connessione wireless , l’SSID o il protocollo e/o chiave crittografica sbagliato.
Se si sta pingando un host connesso a una rete remota L’host è stato configurato per non rispondere al ping Un firewall o un router lungo il “network path” sta
bloccando il traffico ICMP. C’è un routing sbagliato. Controllare le rotte e le subnet
masks sia sull’host sorgente che su quello destinazione e tutte le rotte dei router attraversati. Si può usare il comando traceroute per controllare gli host attraversati.
L’ip dell’host sorgente e quello destinazione non appartengono alla stassa subnet e non vi sono tra questi dei router di collegamento tra le subnet.
Testare un servizio con telnetTestare un servizio con telnet
Conoscendo indirizzo ip e porta di ascolto di un servizio è possibile instaurare una comunicazione facendo uso dei comandi tipici del servizio contattato
La sintassi generale è:telnet server porta
Inviare una mail usando telnetInviare una mail usando telnet
telnet smtp.vega.it 25Trying 100.99.198.97...Connected to vega.it.Escape character is '^]'.220 vega.it ESMTP Sendmail 8.12.9 ready at Sun, 01 Sep 2003 00:00:00 +0200 (CEST)
helo vega.it250 vega.it Hello <Nome del proprio pc> [<IP del proprio pc>], pleased to meet you
help214-2.0.0 This is sendmail version 8.12.9214-2.0.0 Topics:214-2.0.0 HELO EHLO MAIL RCPT DATA214-2.0.0 RSET NOOP QUIT HELP VRFY214-2.0.0 EXPN VERB ETRN DSN AUTH214-2.0.0 STARTTLS214-2.0.0 For more info use "HELP <topic>".214-2.0.0 To report bugs in the implementation send email to214-2.0.0 [email protected].
mail from: [email protected] 2.1.0 <[email protected]>... Sender ok
rcpt to: [email protected] 2.1.5 <[email protected]>... Recipient ok
data354 Enter mail, end with "." on a line by itself
subject: Importante!Ci vediamo stasera?. 250 2.0.0 <codice del messaggio> Message accepted for delivery
quit221 2.0.0 vega.it closing connectionConnection closed by foreign host.
Controllo del dnsControllo del dns Se il server risulta raggiungibile mediante l'indicazione
del solo indirizzo IP allora siamo di fronte ad un problema di DNS :
Possono essere sbagliati i riferimenti ai DNS server nella configurazione di rete dell'host che manifesta il malfunzionamento;
Può esserci un problema sui DNS server o possono non essere raggiungibili.
Se possibile, chiedere ad un collaboratore di connettersi al server da una diversa locazione:
Se la connessione ha successo allora il problema si trova lato client;
Se la connessione fallisce allora il problema è legato alla rete o si trova lato server.
Controllo del dnsControllo del dns Supponiamo di voler connetterci ad un host per usufruire di un
servizio di rete (Web, mail, FTP, telnet, ...), usando il protocollo TCP/IP e riferendolo mediante il suo nome nel DNS.Per esempio, connettendoci ad una Uniform Resource Locator (URL) di un Web server (per esempio http://www.unibo.it), nel caso di malfunzionamento, potremmo ottenere due tipi di messaggio di errore che ci possono dare informazioni diverse:
Se otteniamo un messaggio del tipo Errore 404, pagina non trovata vuol dire che la rete funziona correttamente, ma vi possono essere eventualmente problemi sul server.
Se otteniamo un messaggio di errore del tipo il server non esiste o non posso trovare il server allora siamo di fronte ad un possibile problema di rete.
Uso di nslookupUso di nslookup
Nslookup (Name Server Lookup) è uno strumento presente in tutti i sistemi operativi che utilizzano il protocollo TCP/IP (Gnu/Linux, Unix, MAC OS X, Windows).Nslookup consente di effettuare delle query (richieste) ad un server DNS per la risoluzione di indirizzi IP o Hostname, per poter ottenere da un dominio il relativo indirizzo IP o nome host e viceversa. Si può utilizzare in due modi: interattivo e non interattivo.
Il portscanner nmapIl portscanner nmap
Nel film Matrix Reloaded Trinity usa Nmap per penetrare nel sistema della centrale elettrica, tramite la forzatura dei servizi SSH.
Nmap è nato come scanner di rete ed è diventato un tool molto ricco, utilizzabile sia allo scopo di prevenire attacchi che di effettuarli.
Nmap è scritto per sistemi Linux ed è possibile utilizzarlo sia da linea di comando, sia tramite interfaccia grafica. Attuelmente ne esiste anche una versione per windows
Il portscanner nmapIl portscanner nmap
Sintassi:nmap -[tipi di scan] -[opzioni] <host o segmenti di rete>
Uso classiconmap -A -v www.ipsiacastigliano.it
Opzioni comuni -A Opzione di scan aggressive) -vv Aumenta la quantita` di informazioni -sS Lancia un SYN scan invisibile -p Port range -P0 Considera tutti gli hosts on line - salta fase scoperta -sP Ping Scan -O Abilita l’individuazione del sistema operativo
Il portscanner nmapIl portscanner nmap
nmap -sT -PI 172.16.1.0/24
Starting Nmap 4.20 ( http://insecure.org ) at 2008-01-31 19:36 CETInteresting ports on 172.16.1.1:Not shown: 1685 closed portsPORT STATE SERVICE22/tcp open ssh80/tcp open http139/tcp open netbios-ssn #samba445/tcp open microsoft-ds #samba 3128/tcp open squid-http #proxy squid4662/tcp filtered edonkey #servizio filtrato dal firewall4672/tcp filtered rfa #servizio filtrato dal firewall6346/tcp filtered gnutella #servizio filtrato dal firewall6347/tcp filtered gnutella2 #servizio filtrato dal firewall6699/tcp filtered napster #servizio filtrato dal firewall8080/tcp open http-proxy10000/tcp open snet-sensor-mgmt #webminMAC Address: 00:19:D1:2D:5A:D9 (Unknown)
Il portscanner nmapIl portscanner nmap
nmap -sT -sR -sV -I -O -PI -PT -vv 172.16.1.1-30 > result.txt…..Host 172.16.1.24 appears to be up ... good.Interesting ports on 172.16.1.24:Not shown: 1693 closed portsPORT STATE SERVICE VERSION80/tcp open http HP PhotoSmart 8450 printer http config (Virata embedded httpd 6_0_1)9100/tcp open jetdirect 9101/tcp open jetdirect
9102/tcp open jetdirect MAC Address: 00:1C:C4:74:2E:B6 (Unknown)….
..molto bene ha scoperto anche la stampante. Avrete a disposizione un universo di informazioni
TcpdumpTcpdump tcpdump è un tool comune per il debug delle reti di computer
the funziona sotto riga di comando. Consente all'utente di intercettare e visualizzare TCP/IP e altri pacchetti che vengono trasmessi o ricevuti attraverso una rete al quale il computer è collegato. per il debugging di applicazioni scritte che utilizzano la rete
per le comunicazioni; per il debugging della configurazione di rete in sé,
determinando se tutti gli instradamenti necessari sono o non sono avvenuti correttamente, consentendo all'utente di isolare successivamente il sorgente del problema
per intercettare e visualizzare le comunicazioni di un altro utente o il computer. Alcuni protocolli, come telnet e HTTP, trasmettono informazioni non cifrate attraverso la rete. Un utente con controllo di un router o gateway attraverso il quale passa il traffico non cifrato di altri computer può usare tcpdump per vedere login ID, password, gli URL e i contenuti dei siti web che sono stati visitati, o qualsiasi altra informazione.
TcpdumpTcpdump Sintassi:
tcpdump [opzioni] [espressioni] Opzioni principali:
-a Permette di convertire indirizzi broadcast e ip in nomi -c Esce dopo aver ricevuto un tot di pacchetti (es. c100) -e Stampa il mac address in ogni pacchetto catturata -F Permette di fornire i filtri da un file -i Definisce l'interfaccia di rete. (es. -i eth0 o -i lo) -n Non converte l'indirizzo ip in nome -p L’interfaccia locale non viene settata in modalità promiscua -r Utilizza il file specificato come input per i dati da filtrare -s Indica la quantità in bytes di un pacchetto catturato -v Verbose (incrementa il numero di informazioni)
Esempi d’uso: analisi del traffico icmp sull’interfaccia eth0tcpdump –i eth0 –n icmp