查找 Apache 使用的 IP 和 PORT

查找 Apache 使用的 IP 和 PORT

如何找到 Apache Web 服务器正在监控的 IP:PORT?有一些网络命令,但它们显示正在使用的 TCP 端口。该机器有多个网络接口,并且Listen中的部分httpd.conf已注释。因此,默认使用其中之一,但我不知道将哪一个设置为默认。

例如,以下命令仅显示端口号

root@cluster:~# netstat -pat | grep httpd
tcp        0      0 *:ulistproc     *:*      LISTEN      3940/httpd
tcp        0      0 *:https         *:*      LISTEN      3940/httpd

另外,我希望正确的端口号应该是 80 而不是 3940!

有想法找到那个吗?

答案1

最后一列是进程(进程号/进程名称)而不是端口。该端口位于第四列,在您的情况下,它显示两个打开的端口 ulistproc 和 https。两个端口都在地址“*”上打开,这意味着您计算机上的所有地址(这是大多数守护程序的正常默认值,有一个配置可以限制它)。如果您想要实际的端口号,请使用“netstat -pant”来阻止其进行符号转换。

答案2

以 root 身份输入

netstat -pat | grep httpd

(或grep apache取决于您的发行版)

答案3

nmap localhost

cat httpd.conf | grep port

答案4

除了使用 netstat 之外,您还可以用来lsof列出打开的文件(流、套接字、块文件等)。

root@host: lsof -i -n -P |grep httpd
COMMAND  PID  USER   FD   TYPE DEVICE  SIZE/OFF   NODE  NAME
httpd    4291 root   3u   IPv4 124715  0t0        TCP   *:80 (LISTEN)

lsof (8) - 列出打开的文件

-i = 显示 IPv4/6 文件
-n = 不解析主机名(即显示 IP)
-P 显示端口号而不是友好名称(即 80 而不是 HTTP)。

相关内容