尽管端口已关闭,nmap 仍显示打开端口

尽管端口已关闭,nmap 仍显示打开端口

我刚刚为我的 iptables 设置了 DROP 策略:

-P INPUT DROP
-P FORWARD DROP
-P OUTPUT DROP
-N fail2ban-ssh
-A INPUT -p tcp -m multiport --dports 22 -j fail2ban-ssh
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 443 -j ACCEPT
-A FORWARD -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -m limit --limit 1/sec -j ACCEPT
-A FORWARD -p udp -m limit --limit 1/sec -j ACCEPT
-A FORWARD -p icmp -m icmp --icmp-type 8 -m limit --limit 1/sec -j ACCEPT
-A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A OUTPUT -o lo -j ACCEPT
-A OUTPUT -p icmp -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 22 -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 80 -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 443 -j ACCEPT
-A OUTPUT -p udp -m udp --dport 123 -j ACCEPT
-A fail2ban-ssh -s 115.231.222.176/32 -j REJECT --reject-with icmp-port-unreachable
-A fail2ban-ssh -j RETURN

但是当我运行 nmap 时,许多端口仍然打开:

PORT      STATE SERVICE
1/tcp     open  tcpmux
22/tcp    open  ssh
25/tcp    open  smtp
79/tcp    open  finger
80/tcp    open  http
111/tcp   open  rpcbind
119/tcp   open  nntp
143/tcp   open  imap
443/tcp   open  https
1080/tcp  open  socks
1524/tcp  open  ingreslock
2000/tcp  open  cisco-sccp
6667/tcp  open  irc
12345/tcp open  netbus
31337/tcp open  Elite
32771/tcp open  sometimes-rpc5
32772/tcp open  sometimes-rpc7
32773/tcp open  sometimes-rpc9
32774/tcp open  sometimes-rpc11

知道原因吗?这是否代表安全漏洞?

答案1

Iptables 通过将数据包与 Iptables 的规则集进行匹配来对传入或传出的数据包进行操作。它与端口是否打开无关。

如果ssh通过以下规则阻止了流量iptables

-A INPUT -i eth0 -p tcp --dport 22 -j DROP

那么当一个数据包到达时,目的地为端口 22 的数据包将被内核丢弃,但您的计算机实际上可能正在监听端口 22,因为SSH守护进程正在端口 22 上运行。

要关闭端口,您需要停止监听该端口的服务。例如,要关闭端口 22,请执行以下操作:

sudo service ssh stop

答案2

同样的事情也发生在我身上,尝试将您的计算机设置在与相关服务器相同的网段上,通过路由器进行端口扫描可能会给您一些错误的结果。

nmap -v -A yourIP如果从其他网段运行 nmap ( ),未打开的端口将显示并带有询问 ( ?):

2000/tcp open   cisco-sccp

相关内容