当然,以下是一些具体的案例,展示了如何使用上述方法来确认监听特定端口的服务。
案例一:使用 lsof
命令确认服务
假设你运行了 netstat
命令并发现端口 3306 正在监听,但你不确定是哪个服务。
-
使用
lsof
命令:sudo lsof -i :3306
输出可能如下:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME mysqld 1234 mysql 29u IPv4 12345 0t0 TCP *:mysql (LISTEN)
从这个输出中,你可以看到进程 ID(PID)是 1234,进程名称是
mysqld
,这意味着 MySQL 服务正在监听端口 3306。
案例二:使用 ps
命令确认服务
假设你已经知道 PID 是 1234,你想获取更多关于这个进程的信息。
-
使用
ps
命令:ps -ef | grep 1234
输出可能如下:
mysql 1234 1 0 09:00 ? 00:00:00 /usr/sbin/mysqld --defaults-file=/etc/mysql/my.cnf root 5678 5677 0 09:01 pts/0 00:00:00 grep --color=auto 1234
从这个输出中,你可以确认进程 1234 是 MySQL 服务的一部分。
案例三:查看服务配置文件确认服务
假设你想确认 Apache 服务监听的端口。
-
查看 Apache 配置文件:
cat /etc/apache2/ports.conf
输出可能如下:
Listen 80 <IfModule ssl_module> Listen 443 </IfModule>
从这个输出中,你可以看到 Apache 服务监听端口 80 和 443。
案例四:使用 systemctl
或 service
命令确认服务
假设你想确认 Nginx 服务的状态和监听端口。
-
使用
systemctl
命令:systemctl status nginx
输出可能如下:
● nginx.service - A high performance web server and a reverse proxy server Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2023-04-01 09:00:00 UTC; 1h 30min ago Main PID: 2345 (nginx) CGroup: /systemd/system/nginx.service ├─2345 nginx: master process /usr/sbin/nginx -g daemon on; master_process on; └─2346 nginx: worker process
从这个输出中,你可以看到 Nginx 服务正在运行,并且主进程 ID(PID)是 2345。
通过这些案例,你应该能够更好地理解如何确认监听特定端口的服务。
标签:1234,00,服务,端口,netstat,nginx,我该,监听 From: https://blog.csdn.net/weixin_46483815/article/details/142318724