记录一些简单的linux运维命令
1、背景
有时间工作中会用到一些linux命令,对于常用的可能自己记得,对于不常用的容易忘,因此将部分操作命令在文章中记录下,防止下次需要使用又要再次寻找。
2、运维命令
1、查看端口 - natstat-ntlp
netstat -ntlp 是一个在类 Unix 操作系统(如 Linux 和 macOS)中用于显示网络连接状态的命令。
-n:显示数字地址和端口,而不是尝试查找名称。
-t:显示 TCP 连接。
-l:显示监听套接字(即正在监听的端口)。
-p:显示与每个连接关联的进程ID和程序名称。
当你在终端运行 netstat -ntlp 命令时,你会看到类似下面的输出:
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:22 0.0.0.0:* LISTEN 1234/sshd tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN 5678/mysqld ...
每一行代表一个正在监听的 TCP 连接。列中包含的信息包括协议类型(例如,TCP),接收和发送队列的大小,本地和远程地址以及端口,连接状态,以及与该连接相关联的进程 ID 和程序名。
请注意,你需要具有足够的权限才能运行这个命令并查看所有细节,通常这需要 root 或者使用 sudo。如果你在没有超级用户权限的情况下运行此命令,你可能只能看到你自己的进程信息。
2、查看端口 - lsof :i
运行 lsof -i :9000 这个命令会显示出所有在本地机器上使用了端口 9000 的网络连接和监听情况。这通常被用来排查端口冲突,确认哪个应用程序正在占用某个端口,或者在调试网络服务时检查端口状态。
lsof -i :9000 命令的输出将类似于以下格式:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME nodejs 12345 user1 4u IPv4 0xdeadbeef 0t0 TCP localhost:9000 (LISTEN) curl 67890 user2 3u IPv4 0xcafebabec0de 0t0 TCP localhost:51210->localhost:9000 (ESTABLISHED)
在这个例子中:
- COMMAND 列显示正在使用端口的应用程序名称。
- PID 列显示应用程序的进程ID。
- USER 列显示拥有该进程的用户名。
- FD 列显示文件描述符。
- TYPE 列显示文件或套接字的类型,在这里通常是 IPv4 或 IPv6。
- DEVICE 列显示设备信息。
- SIZE/OFF 列对网络连接通常显示为0。
- NODE 列显示节点号,对网络连接不重要。
- NAME 列显示具体的网络连接信息,包括本地和远程地址以及端口号。
如果端口 9000 正在被使用,那么你会看到至少有一行输出显示有进程正在监听该端口。如果端口未被任何进程使用,那么你将不会看到任何输出,或者只会看到类似 “No such file or directory” 的错误信息,这意味着没有任何进程正在使用该端口。
3、防火墙中限制只有某个ip才能访问某个端口
vim /etc/firewalld/zones/public.xml
# 重新加载 firewall-cmd --reload # 查看 firewall-cmd --list-all
以上配置限制8080端口只有127.10.20.30这个ip才可以访问。
