Sto scansionando un server che dovrebbe avere un firewall piuttosto semplice usando iptables :per impostazione predefinita, tutto viene eliminato oltre a RELATED e ESTABLISHED pacchetti. L'unico tipo di NEW i pacchetti consentiti sono i pacchetti TCP sulle porte 22 e 80 e il gioco è fatto (nessun HTTPS su quel server).
Il risultato di nmap sulle prime 2048 le porte danno 22 e 80 aperte, come mi aspetto. Tuttavia, alcune porte appaiono come "filtrate".
La mia domanda è:perché le porte 21, 25 e 1863 appaiono come "filtrate" e le altre 2043 non appaiono come filtrate?
Mi aspettavo di vedere solo 22 e 80 come "aperti".
Se è normale vedere 21,25 e 1863 come "filtrati", allora perché anche tutte le altre porte non vengono visualizzate come "filtrate"!?
Ecco la nmap uscita:
# nmap -PN 94.xx.yy.zz -p1-2048
Starting Nmap 6.00 ( http://nmap.org ) at 2014-06-12 ...
Nmap scan report for ksXXXXXX.kimsufi.com (94.xx.yy.zz)
Host is up (0.0023s latency).
Not shown: 2043 closed ports
PORT     STATE    SERVICE
21/tcp   filtered ftp
22/tcp   open     ssh
25/tcp   filtered smtp
80/tcp   open     http
1863/tcp filtered msnp
Davvero non capisco perché ho 2043 porte chiuse:
Not shown: 2043 closed ports
e non 2046 porte chiuse.
Ecco un lsof lanciato sul server:
# lsof -i -n
COMMAND   PID USER   FD   TYPE   DEVICE SIZE NODE NAME
named    3789 bind   20u  IPv4     7802       TCP 127.0.0.1:domain (LISTEN)
named    3789 bind   21u  IPv4     7803       TCP 127.0.0.1:953 (LISTEN)
named    3789 bind  512u  IPv4     7801       UDP 127.0.0.1:domain 
sshd     3804 root    3u  IPv4     7830       TCP *:ssh (LISTEN)
sshd     5408 root    3r  IPv4 96926113       TCP 94.xx.yy.zz:ssh->aa.bb.cc.dd:37516 (ESTABLISHED)
sshd     5411    b    3u  IPv4 96926113       TCP 94.xx.yy.zz:ssh->aa.bb.cc.dd:37516 (ESTABLISHED)
java    16589    t   42u  IPv4 88842753       TCP *:http-alt (LISTEN)
java    16589    t   50u  IPv4 88842759       TCP *:8009 (LISTEN)
java    16589    t   51u  IPv4 88842762       TCP 127.0.0.1:8005 (LISTEN)
(nota che Java/Tomcat è in ascolto sulla porta 8009 ma quella porta è stata eliminata dal firewall)
Risposta accettata:
L'istruzione "Porta filtrata" di nmap differisce in base al metodo di scansione.
La scansione standard (TCP Scan se utente non privilegiato o Half-Open scan -sS se superutente) si basa sul protocollo TCP. (denominato hanshake a 3 vie)
-  Un client (tu) emette un SYN, se il server risponde SYN/ACK :significa che la porta è aperta ! 
-  Emetti un SYN, se il server risponde RST :significa che la porta è vicino ! 
- Emetti un SYN, se il server non risponde, o risponde con un errore ICMP:significa che la porta è filtrata . Probabilmente un IDS/firewall statefull blocca la tua richiesta)
Per capire qual è lo stato reale della porta, puoi:
- usa -sV o -A opzione (rilevamento della versione, ti aiuterà a determinare qual è lo stato di questa porta.
- usa –tcp-flags SYN,FIN per provare a bypassare il fw.
- utilizza altri tipi di scansione (http://nmap.org/book/man-port-scanning-techniques.html)
 L'eccellente "Nmap Network Discovery ”, scritto dal suo creatore Fyodor lo spiega molto bene.
 Cito
 filtered :Nmap non può determinare se la porta è aperta perché il filtraggio dei pacchetti
 impedisce alle sue sonde di raggiungere la porta. Il filtraggio
 potrebbe provenire da un dispositivo firewall dedicato, regole del router o software firewall basato su host
. Queste porte frustrano gli aggressori perché
 forniscono così poche informazioni. A volte rispondono con messaggi di errore ICMP
 come tipo 3 codice 13 (destinazione irraggiungibile:
 comunicazione amministrativamente vietata), ma sono molto più comuni filtri che semplicemente
 rilasciano sonde senza rispondere. Ciò costringe Nmap
 a riprovare più volte nel caso in cui il probe sia stato interrotto a causa di
 congestione della rete anziché per il filtraggio. Questo tipo di filtro rallenta
 la scansione si riduce notevolmente.
 open|filtered :
 Nmap mette le porte in questo stato quando non è in grado di
 determinare se una porta è aperta o filtrata. Ciò si verifica per i tipi di scansione
 in cui le porte aperte non danno risposta. La mancanza di risposta potrebbe
 significare anche che un filtro di pacchetto ha eliminato il probe o qualsiasi risposta che
 ha suscitato. Quindi Nmap non sa con certezza se la porta è aperta o 
 è filtrata. Le scansioni UDP, protocollo IP, FIN, NULL e Xmas
 classificano le porte in questo modo.
 closed|filtered :
 Questo stato viene utilizzato quando Nmap non è in grado di determinare
 se una porta è chiusa o filtrata. Viene utilizzato solo per l'ID IP
 Scansione inattiva discussa nella Sezione 5.10, «Scansione inattiva TCP (-sl)