我正在扫描使用iptables的服务器,该服务器应该具有一个非常简单的防火墙:默认情况下,除RELATED
和ESTABLISHED
数据包外,所有内容都被丢弃。NEW
允许的唯一数据包类型是端口22和80上的TCP数据包,仅此而已(该服务器上没有HTTPS)。
正如我预期的那样,在前2048个端口上执行nmap的结果使22和80处于打开状态。但是,一些端口显示为“已过滤”。
我的问题是:为什么端口21、25和1863显示为“已过滤”,而2043其他端口却未显示为已过滤?
我预计只会看到22和80为“开放”。
如果将21,25和1863视为“已过滤”是正常的,那么为什么所有其他端口也不也都显示为“已过滤”!
这是nmap输出:
# 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
我真的不明白为什么我有2043个封闭端口:
Not shown: 2043 closed ports
而不是2046关闭的端口。
这是在服务器上启动的lsof:
# 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)
(请注意,Java / Tomcat正在侦听端口8009,但防火墙拒绝了该端口)
nmap
正在执行的操作,则应该使用root privs,SYN scan(-sS
)和进行扫描--packet-trace
。还花几分钟阅读手册页,您会惊讶那里的宝石是什么