Joã*_*iel 4 linux firewall iptables ping
我已经通过iptables以下方式打开了 443 端口:
pkts bytes target prot opt in out source destination
45 2428 ACCEPT all -- lo * 0.0.0.0/0 0.0.0.0/0
6 1009 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:80
141 10788 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:22
0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:80
0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:443
7 1140 ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
6 360 DROP all -- * * 0.0.0.0/0 0.0.0.0/0
Run Code Online (Sandbox Code Playgroud)
它正在侦听netstat -a指示:
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 *:6311 *:* LISTEN
tcp 0 0 *:ssh *:* LISTEN
tcp 0 0 gauss:ssh ommited ESTABLISHED
tcp 0 0 gauss:ssh ommited ESTABLISHED
tcp6 0 0 localhost:8005 [::]:* LISTEN
tcp6 0 0 [::]:8009 [::]:* LISTEN
tcp6 0 0 [::]:www [::]:* LISTEN
tcp6 0 0 [::]:ssh [::]:* LISTEN
tcp6 0 0 [::]:https [::]:* LISTEN
udp 0 0 *:mdns *:*
udp 0 0 *:52703 *:*
udp6 0 0 [::]:42168 [::]:*
udp6 0 0 [::]:mdns [::]:*
Run Code Online (Sandbox Code Playgroud)
但是我无法 ping 端口 443:
PING 443 (0.0.1.187) 56(124) bytes of data.
^C
--- 443 ping statistics ---
7 packets transmitted, 0 received, 100% packet loss, time 6006ms
Run Code Online (Sandbox Code Playgroud)
这是怎么回事?
Cho*_*er3 29
ping 实用程序执行它应该做的事情,使用 ICMP 访问 ping 接口,您不能只用它 ping 任何您喜欢的端口。我确信有一百万种方法可以做到这一点,但大多数人只是使用“telnet IP 端口”,即“telnet 1.2.3.4 25”来测试连接。
PING 443 (0.0.1.187) 56(124) 字节数据。
请注意,上面的 IP 地址是从数字 443 (1 x 256 1 + 187 x 256 0 = 443) 解释的。
ICMP(其中ping的一部分)是它自己的协议,位于 IP 之上。UDP/IP、TCP/IP 和 ICMP/IP。ICMP 协议中不涉及端口,因此命令行上没有端口号选项。
有一些 TCP ping 应用程序将通过 TCP 执行类似的功能,您可能需要查看这些应用程序。TCP 端口或服务的手动检查通常使用telnet或nc(netcat) 完成。
尝试使用 NMap 进行端口 ping。
nmap -p 443 10.4.0.197
Starting Nmap 5.61TEST1 ( http://nmap.org ) at 2011-12-13 13:19 Pacific Standard Time
Nmap scan report for somecomputer (10.4.0.197)
Host is up (0.00s latency).
PORT STATE SERVICE
443/tcp closed https
Nmap done: 1 IP address (1 host up) scanned in 0.64 seconds
Run Code Online (Sandbox Code Playgroud)
您是否考虑过不能使用ICMP来测试与 TCP/IP 端口的连接性?
使用 telnet 或 nmap 之类的工具来测试端口的打开或关闭状态。下面是一个使用 Telnet 测试 VMware 连接性的示例。这是有关使用 nmap 进行端口扫描的一些信息。