查看服务器和端口配置
查看服务器和端口通常涉及使用不同的命令行工具。以下是几种常见的方法:,,### 1. 使用netstat
,netstat
是一个强大的网络统计工具,可以显示当前系统的网络连接、路由表、接口统计、伪装连接等信息。,,``bash,sudo netstat -tuln,
`,,解释:,-
-t: 显示TCP连接。,-
-u: 显示UDP连接。,-
-l: 显示监听的端口。,-
-n: 不将IP地址转换为名称。,,### 2. 使用
ss,
ss是
netstat的替代品,功能更强大且更快。,,
`bash,sudo ss -tuln,
`,,### 3. 使用
telnet或
nc,
telnet和
nc是常用的命令行工具来测试端口是否开放。,,#### 使用
telnet,
`bash,telnet example.com 80,
`,,如果端口开放,你会看到类似以下的消息:,
`,Trying example.com...,Connected to example.com.,Escape character is '^]'.,
`,,#### 使用
nc,
`bash,nc example.com 80,
`,,如果端口开放,你会看到类似以下的消息:,
`,Connection to example.com port 80 [tcp/http] succeeded!,
`,,### 4. 使用
nmap,
nmap是一个广泛使用的网络扫描工具,可以用来检查目标主机上的服务和端口状态。,,
`bash,sudo nmap example.com,
`,,解释:,-
example.com: 目标主机的域名或 IP 地址。,-
port 80`: 指定要扫描的端口。,,通过这些方法,你可以轻松地查看服务器和端口的状态,以便进行进一步的网络诊断或配置。
在日常运维工作中,了解服务器和端口的配置和状态是非常重要的,以下是一些常用的命令和方法,帮助你快速查看服务器和端口的状态。
1. 查看系统中运行的服务(使用netstat
命令)
netstat
是一个强大的网络统计工具,可以显示系统的网络连接、路由表、接口统计、伪装连接以及多播成员。
sudo netstat -tuln
-t
表示显示TCP连接。
-u
表示显示UDP连接。
-l
表示显示监听的端口。
-n
表示不进行域名解析,直接显示IP地址。
示例输出
Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 12345/nginx tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 6789/sshd udp 0 0 0.0.0.0:68 0.0.0.0:* LISTEN 12345/dhcpd
在这个例子中,nginx
和sshd
是正在运行的服务,它们分别绑定到 80 和 22 端口上。
2. 查看服务的状态(使用service
或systemctl
命令)
service
命令用于管理系统服务,而systemctl
命令则提供了更现代和灵活的方式来管理服务。
使用 `service` 命令
sudo service <service_name> status
sudo service nginx status
使用 `systemctl` 命令
sudo systemctl status <service_name>
sudo systemctl status nginx
示例输出
● nginx.service - A high-performance web server and a reverse proxy Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2023-04-01 12:34:56 CST; 1 day ago Docs: http://nginx.org/en/docs/ Main PID: 12345 (nginx) Tasks: 12 (limit: 4915) CGroup: /system.slice/nginx.service └─12345 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
在这个例子中,nginx
服务正在运行,并且有 12 个子进程。
3. 查看端口是否被占用(使用lsof
命令)
lsof
命令可以列出当前系统上的所有打开文件,包括端口。
sudo lsof -i :<port_number>
sudo lsof -i :80
示例输出
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME nginx 12345 nginx 14u IPv4 123456 0t0 TCP *:http (LISTEN)
在这个例子中,nginx
进程已经占用了 80 端口。
通过这些命令,你可以轻松地查看服务器和端口的状态,从而更好地管理和维护你的服务器。
扫描二维码推送至手机访问。
声明:本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。