核心功能:Linux 早期用于查看、配置网络接口(如网卡、本地回环)的 IP 地址、子网掩码、MAC 地址等信息的命令。
注意:目前主流 Linux 发行版(如 Ubuntu 20.04+、CentOS 7+)已逐渐用ip命令替代ifconfig,需安装net-tools包才能使用(如apt install net-tools或yum install net-tools)。
常用用法:
ifconfig:查看所有激活的网络接口配置。ifconfig <接口名>:查看指定接口(如eth0、ens33、lo)的配置。ifconfig <接口名> <IP地址> netmask <子网掩码>:临时配置接口 IP(重启网络或系统后失效)。ifconfig <接口名> up/down:激活 / 禁用指定网络接口。示例:
ifconfig # 查看所有激活的网络接口ifconfig ens33 192.168.1.100 netmask 255.255.255.0 # 临时给网卡ens33配置IP为192.168.1.100,子网掩码255.255.255.0ifconfig ens33 up/down # 启用/禁用网卡ens33核心功能:ip address(缩写:ip a)是Linux 内核推荐的新一代网络配置命令,功能比ifconfig更强大,支持查看 / 配置 IP、路由、ARP 等网络参数,是目前的主流工具。
常用用法:
ip a:查看所有网络接口的详细配置(包括激活 / 未激活的接口、IP、MAC、子网掩码等)。ip a add <IP地址>/<子网掩码位数> dev <接口名>:给指定接口添加 IP(临时生效)。ip a del <IP地址>/<子网掩码位数> dev <接口名>:删除指定接口的 IP。ip link set <接口名> up/down:激活 / 禁用指定接口。示例:
# (1)查看网卡 & IP 地址ip addr # 查看所有网络接口配置(最常用)ip a # 简写# 输出核心信息:网卡名(eth0/ens33)、IPv4/IPv6、MAC 地址、网卡状态(UP 启用 / DOWN 禁用)# (2)启用 / 禁用网卡ip link set ens33 up # 激活网卡接口ens33ip link set eth0 down # 禁用网卡# 查看路由表ip routeip r # 简写ip route add default via 192.168.1.1 # 临时添加默认网关ip route del default # 删除默认网关# 临时修改 IP(重启失效)ip a add 192.168.1.101/24 dev ens33 # 给ens33添加IP 192.168.1.101/24(24代表子网掩码255.255.255.0)ip addr add 192.168.1.100/24 dev eth0ip addr del 192.168.1.100/24 dev eth0arp(Address Resolution Protocol)命令用于查看和管理本地 ARP 缓存表,该表记录了 IP 地址与 MAC 地址的对应关系(用于局域网内通信)。
常用选项:
-a:显示所有主机的 ARP 缓存条目(默认解析主机名)-n:以数字形式显示 IP 地址(不解析主机名)-d IP地址:删除指定 IP 的 ARP 缓存条目-s IP地址 MAC地址:手动添加静态 ARP 映射(IP 与 MAC 绑定)示例:
arp -a/arp -n #查看 ARP 缓存表sudo arp -d 192.168.1.1 #删除 IP 为`192.168.1.1`的 ARP 记录sudo arp -s 192.168.1.100 00:1a:2b:3c:4d:5e #绑定 IP`192.168.1.100`与 MAC`00:1a:2b:3c:4d:5e`核心功能:通过发送 ICMP(互联网控制消息协议)回声请求包,检测本地主机与目标主机 / IP 之间的网络连通性、延迟及丢包率。注意:部分服务器会禁用 ICMP 协议,导致 ping 请求超时,但不代表网络完全不可用(可能只是 ping 被屏蔽)。
常用参数:
-c <次数>:指定发送 ping 包的数量(默认无限发送,Ctrl+C 终止)。-i <间隔>:指定发送 ping 包的时间间隔(单位:秒,默认 1 秒)。-s <大小>:指定 ping 包的数据包大小(单位:字节,默认 56 字节)。-W 超时秒数:设置响应超时,超时直接判定不通示例:
ping www.baidu.com # 持续ping百度,测试外网连通ping -c 3 www.baidu.com #测试与百度服务器的连通性,发送3个包ping -i 2 -c 5 192.168.1.1 #测试与本地网关192.168.1.1的连通性,间隔2秒发送1个包ping -i 0.5 192.168.1.100 # 快速高频ping测试ping -W 2 114.114.114 # 超时2秒无响应则断开核心功能:查看数据包从本机到目标地址,经过的所有路由节点,排查卡顿、丢包、路由绕行问题,预设数据包大小是40Bytes,用户可另行设置。
实操示例:
traceroute www.baidu.com # 追踪外网访问路由节点核心功能:mtr 结合 ping+traceroute,排查精度更高,它能够实时显示数据包在网络中的传输路径,并提供详细的统计信息,是网络管理员和开发人员排查网络问题的利器。
语法:
❝mtr [选项] 目标主机
选项:
-c <次数>:指定发送 ping 包的数量。安装mtr:
# Debian/Ubuntu 系统sudo apt-get install mtr# CentOS/RHEL 系统sudo yum install mtr# Fedora 系统sudo dnf install mtr# Arch Linux 系统sudo pacman -S mtr# macOS 使用 Homebrew 安装brew install mtr示例:
mtr www.baidu.com # 精准检测全程丢包与延迟# 执行后会显示一个实时更新的界面,包含以下信息:# 跳数(Hop)、主机名或IP地址、丢包率(Loss%)、最近延迟(Last)、平均延迟(Avg)、最佳延迟(Best)、最差延迟(Wrst)、标准差(StDev)mtr -r -c 10 google.com > mtr_report.txt # 生成报告模式(适合脚本调用),发送10个ping包到google.com,然后将结果保存到mtr_report.txt文件中。mtr -s 100 -i 0.5 example.com # 设置每个ping包大小为100字节,间隔时间为0.5秒。mtr -z example.com # 同时显示AS(自治系统)编号,有助于识别网络归属。route 命令用于查看和配置 Linux 系统的 IP 路由表,可添加、删除静态路由,指定数据包的转发路径。常用选项:
-n:以数字形式显示 IP 地址和端口(不解析主机名)add:添加路由规则del:删除路由规则-net:指定目标为网络(而非单个主机)gw:指定网关(下一跳 IP)dev:指定通过哪个网络接口(如 eth0、ens33)转发示例:
route -n #查看当前路由表sudo route add -net 192.168.10.0/24 gw 10.0.0.1 #添加到目标网络`192.168.10.0/24`的路由,网关为`10.0.0.1`sudo route del -net 192.168.10.0/24 #删除到`192.168.10.0/24`的路由sudo route add default gw 10.0.0.254 #添加默认路由(所有未知网络的数据包通过网关`10.0.0.254`转发)核心功能:查看系统的网络连接状态、监听端口、进程与端口的对应关系等,常用于排查 “端口被占用” 问题。
注意:与ifconfig类似,netstat属于net-tools包,主流系统已逐渐用ss命令替代,但netstat仍被广泛使用。
最常用参数组合:netstat -tulnp
-t:显示 TCP 连接-u:显示 UDP 连接-l:显示监听状态的端口(如服务端开放的端口)-n:以数字形式显示 IP 和端口(不解析域名和服务名)-p:显示连接对应的进程 PID 和名称(需 root 权限)-a:显示所有连接(包括监听和非监听状态)-r:显示路由表(类似route -n)示例:
sudo netstat -tulnp # 查看所有正在监听的TCP/UDP端口及对应进程(最常用)netstat -tl #查看所有监听的 TCP 端口netstat -nupl # 查看所有UDP监听端口netstat -rn #查看系统路由表netstat -an | grep tcp # 查看与远程主机的TCP连接状态netstat -tlnp | grep 80 #查看某个端口(如 80)的占用情况功能:ss(Socket Statistics)是用于查看系统套接字信息的命令,能显示当前系统的网络连接状态,比传统的 netstat 命令更高效。
常用选项:
-t:显示 TCP 连接-u:显示 UDP 连接-l:显示监听状态的套接字-n:以数字形式显示 IP 地址和端口,不进行域名解析-p:显示连接对应的进程信息(需要 root 权限)-a:显示所有连接(包括监听和非监听状态)示例:
ss -s # 统计整机网络连接总数ss -t #查看所有 TCP 连接ss -tl #查看所有监听状态的 TCP 端口sudo ss -up #查看所有 UDP 连接及对应的进程核心功能:List Open Files 的缩写,用于查看进程打开的文件、端口、目录、设备,是排查「端口占用、文件被占用、进程关联资源」的核心命令。
常用场景:
常用参数:
实用示例:
lsof # 查看所有打开的文件lsof -i :80 # 查看80端口被哪个进程占用lsof -i tcp # 查看所有TCP连接相关进程lsof /var/log/messages # 查看哪个进程正在使用该文件lsof -p 1234 # 查看PID=1234的进程打开的所有文件lsof -u root # 查看root用户打开的所有文件lsof -t -i :80 | xargs kill -9 # 直接杀死占用80端口的进程lsof | grep deleted # 查找被删除但仍被进程占用的文件核心功能:查询域名对应的 IP 地址(正向解析)或 IP 对应的域名(反向解析),用于排查 DNS 解析问题(如 “域名无法访问” 时,先确认 DNS 是否能解析出正确 IP)。
注意:部分系统已用dig命令替代nslookup,但nslookup语法更简单,适合快速查询。
常用用法:
nslookup <域名>:查询域名的 A 记录(IPv4 地址)。nslookup <IP地址>:反向查询 IP 对应的域名。nslookup -type=<记录类型> <域名>:查询指定类型的 DNS 记录(如 MX 邮件记录、CNAME 别名记录)。示例:
# 查询www.baidu.com的IPv4地址nslookup www.baidu.com# 输出说明:# Server: 192.168.1.1(系统DNS服务器IP)# Address: 192.168.1.1#53(DNS端口53)# Name: www.baidu.com(目标域名)# Addresses: 180.101.49.11、180.101.49.12(解析到的IP)# 反向查询IP 180.101.49.12对应的域名nslookup 180.101.49.12# 查询qq.com的MX邮件记录(用于接收邮件的服务器)nslookup -type=MX qq.com# 指定DNS服务器解析(排查系统DNS故障)nslookup www.baidu.com 114.114.114.114 # 使用114公共DNS解析nslookup www.baidu.com 8.8.8.8 # 使用谷歌公共DNS解析# 解析特定记录类型(进阶)nslookup -type=A www.baidu.com # 解析IPv4地址(A记录)nslookup -type=AAAA www.baidu.com # 解析IPv6地址(AAAA记录)nslookup -type=MX qq.com # 解析邮件服务器(MX记录)核心功能:dig(Domain Information Groper)比 nslookup 更强大,输出解析全过程详情(包括 DNS 查询包、响应包、TTL 值、权威服务器等),适合深度排查复杂 DNS 问题。
基本语法:dig [选项] 域名 [类型]
常用选项:
dig 域名(默认查询 A 记录,即域名对应的 IPv4 地址)-t 类型:指定查询的 DNS 记录类型(如 A、AAAA、MX、NS、TXT 等)@DNS服务器:指定使用的 DNS 服务器(如@8.8.8.8使用 Google DNS)+short:简化输出,只显示关键结果-x IP地址:反向查询,根据 IP 地址查对应的域名示例:
# 1. 完整解析:输出所有详情(推荐排查时使用)dig www.baidu.com# 输出关键部分说明:# ;; ->>HEADER< QUERY, status: NOERROR(解析成功)# ;; ANSWER SECTION: 解析结果(IP地址、TTL值)# ;; AUTHORITY SECTION: 权威DNS服务器(负责该域名解析的服务器)# ;; ADDITIONAL SECTION: 额外信息(权威服务器IP)# 2. 简化输出:只显示解析IP(快速查看结果)dig +short www.baidu.com# 输出:180.101.49.11 180.101.49.12# 3. 指定DNS服务器解析(对比测试)dig @114.114.114.114 www.baidu.com +shortdig @8.8.8.8 www.baidu.com +short# 4. 反向解析(IP查域名)dig -x 180.101.49.11 +short# 5. 解析MX记录(邮件服务排查)dig -t MX qq.com +short核心功能:语法极简,专注于快速输出解析结果,适合脚本自动化或快速验证。
语法:
❝host [选项] [参数]
选项 :
实操示例:
host www.baidu.com # 基础解析(IPv4+IPv6)host www.baidu.com 114.114.114.114 # 指定DNS解析host -t MX qq.com # 解析MX记录host -x 192.168.1.1 # 反向解析IP核心功能:本地配置文件,手动绑定「IP 地址 + 域名」,解析优先级高于 DNS 服务器(系统会先读取 hosts 文件,再查询 DNS)。
适用场景:
配置方法:
# 1. 编辑hosts文件(需root权限)vim /etc/hosts# 2. 添加映射规则(格式:IP地址 域名 可选备注)192.168.1.200 test-web.local # 本地测试服务器127.0.0.1 ad.example.com # 屏蔽广告域名180.101.49.11 www.baidu.com # 手动绑定百度IP# 3. 保存退出后立即生效(无需重启服务)核心功能:指定系统默认使用的 DNS 服务器 IP,配置后即时生效,但重启网络服务或系统后会被覆盖(永久配置需修改网卡配置文件)。
配置方法:
# 1. 编辑配置文件vim /etc/resolv.conf# 2. 添加DNS服务器(nameserver后接DNSIP,可配置多个,优先级从高到低)nameserver 114.114.114.114 # 国内公共DNSnameserver 8.8.8.8 # 谷歌公共DNSnameserver 223.5.5.5 # 阿里公共DNS# 3. 保存后立即生效,测试解析ping www.baidu.com核心功能:通过 HTTP、HTTPS、FTP、SFTP 等多种协议发送 / 接收数据,常用于测试 API 接口、下载文件、模拟 HTTP 请求等,是开发和运维的常用工具。
常用参数:
-X <方法>:指定 HTTP 请求方法(如 GET、POST、PUT、DELETE,默认 GET)。-d <数据>:发送 POST 请求的数据(如表单数据、JSON 字符串)。-H <头部>:指定 HTTP 请求头(如Content-Type: application/json)。-O:下载文件并保留远程文件名(默认只打印内容到终端),文件下载到当前目录(文件名与原文件一致)。-L:自动跟随 HTTP 重定向(如访问短链接时跳转)。示例:
# 发送GET请求,查看百度首页内容(打印到终端)curl www.baidu.com# 下载文件并保留原名(如下载nginx安装包)curl -O http://nginx.org/download/nginx-1.24.0.tar.gz# 仅查看响应头(测试服务是否正常)curl -I www.baidu.com# 输出关键信息:HTTP/1.1 200 OK(状态码,200=正常)# 发送POST请求,提交JSON数据curl -X POST -H "Content-Type: application/json" -d '{"name":"linux","version":"5.15"}' http://api.example.com/test# 忽略HTTPS证书报错curl --insecure https://self-signed.example.com核心功能:专注于从网络(HTTP、HTTPS、FTP)下载文件,支持断点续传、后台下载、批量下载等,适合在无图形界面的服务器上使用。
常用参数:
-O <文件名>:指定下载后的文件名(默认使用远程文件名)。-c:断点续传(如果下载中断,再次执行可继续下载)。-b:后台下载(下载过程在后台运行,输出日志到wget-log)。-P <目录>:指定下载文件的保存目录。-i <文件>:从文件中读取多个 URL,批量下载。示例:
# 1. 基础下载:直接下载到当前目录wget /home/download http://nginx.org/download/nginx-1.24.0.tar.gz# 2. 指定保存文件名和目录# 下载nginx安装包,保存到/home/download目录wget -P /home/download http://nginx.org/download/nginx-1.24.0.tar.gz wget -O centos7.iso -P /tmp/download/ https://mirrors.aliyun.com/centos/7/isos/x86_64/CentOS-7-x86_64-Minimal-2009.iso# 3. 断点续传之前未下载完的文件(大文件中断后恢复)wget -c /home/download http://nginx.org/download/nginx-1.24.0.tar.gz# 4. 忽略HTTPS证书报错wget --no-check-certificate https://self-signed.example.com/file.zip# 5. 后台下载(查看日志:cat wget-log)wget -b /home/download http://nginx.org/download/nginx-1.24.0.tar.gz# 后台下载文件,日志保存到my-log.txtwget -b -o my-log.txt http://nginx.org/download/nginx-1.24.0.tar.gz# 6. 批量下载(创建links.txt,每行一个链接)wget -i links.txt核心功能:通过 SSH 协议在本地主机与远程主机之间复制文件 / 目录,数据传输过程加密,比传统的rcp更安全,,无需额外安装服务(Linux 默认自带),是跨服务器传文件的首选工具。
适用场景:服务器之间文件同步、本地与服务器文件互传(替代 FTP,无需开放额外端口)。
常用参数:
语法格式:
1.本地文件 -> 远程主机(上传文件)
❝scp <本地文件路径> <远程用户>@<远程IP>:<远程保存路径>
2.远程文件 -> 本地主机(下载文件)
❝scp <远程用户>@<远程IP>:<远程文件路径> <本地保存路径>
3.复制目录(需加-r参数递归复制)
❝scp -r <本地目录> <远程用户>@<远程IP>:<远程保存路径>
示例:
# 1.上传文件# 上传单个文件到远程服务器scp /tmp/local.txt root@192.168.1.100:/opt/# 说明:将本地/tmp/local.txt上传到192.168.1.100服务器的/opt目录# 上传文件夹到远程服务器(加-r)scp -r /tmp/data root@192.168.1.100:/backup/# 2.下载文件# 从远程服务器下载文件到本地scp root@192.168.1.100:/opt/remote.txt /tmp/# 下载远程文件夹到本地(加-r)scp -r root@192.168.1.100:/backup/data /tmp/# 指定远程服务器SSH端口非默认(如2222)scp -P 2222 /tmp/local.txt root@192.168.1.100:/opt/# 保留文件权限并安静上传scp -rpq /tmp/data root@192.168.1.100:/backup/核心功能:比 scp 更高效,支持增量同步(只传输修改的文件 / 部分),减少网络带宽占用,适合定期备份、大文件同步。
语法:
❝rsync [选项] 源文件 目标文件
常用参数:
实操示例:
# 本地文件夹同步到远程服务器(上传)rsync -avz /tmp/data root@192.168.1.100:/backup/# 远程服务器文件夹同步到本地(下砸)rsync -avz root@192.168.1.100:/backup/data /tmp/# 增量同步+断点续传+删除多余文件rsync -avzP --delete /tmp/data root@192.168.1.100:/backup/核心功能:早期用于通过 TCP 协议远程登录服务器(如 Telnet 服务的 23 端口),现在更多用于测试目标主机的某个端口是否开放(替代 ping 检测 “端口级连通性”)。
注意:Telnet 传输数据不加密,安全性低,远程登录已被 SSH 替代;需安装telnet包才能使用。
常用用法:
telnet <远程IP> <端口>:测试目标 IP 的指定端口是否开放(如测试 Web 服务 80 端口、MySQL 3306 端口)。示例:
# 测试192.168.1.200的80端口是否开放(Web服务)telnet 192.168.1.200 80# 测试百度的443端口(HTTPS服务)telnet www.baidu.com 443核心功能:通过 SSH(Secure Shell)协议远程登录 Linux/Unix 服务器,数据传输全程加密,替代了不安全的 Telnet,是远程管理服务器的标准工具。
基本语法:
ssh <远程用户>@<远程IP/域名> -p <端口># 说明:默认端口为22,若远程服务器修改了SSH端口,需用-p指定常用参数与进阶用法:
-p <端口>:指定 SSH 服务的端口(默认 22)。-i <密钥文件>:使用 SSH 密钥对登录(免密码登录,比密码更安全,常用于脚本自动化)。ssh <远程用户>@<远程IP> <命令>:在远程服务器上执行单条命令,不进入交互模式。示例:
# 用root用户登录IP为192.168.1.200的服务器(默认22端口)ssh root@192.168.1.200# 用user用户登录域名server.example.com,SSH端口为2222ssh user@server.example.com -p 2222# 在远程服务器上执行“ls /home”命令,结果返回本地ssh root@192.168.1.200 "ls /home"# 用密钥文件id_rsa登录远程服务器(免密码)ssh -i ~/.ssh/id_rsa user@192.168.1.200其配置命令为firewall-cmd,firewall-cmd 是 firewalld 动态防火墙的命令行工具,支持动态更新规则(无需重启服务),常用于 CentOS、RHEL 等系统。
核心特点:动态防火墙管理,支持网络区域(zone)、服务管理,配置后无需重启服务,直接重载生效。
常用选项:
--state:查看 firewalld 服务状态--list-all:显示默认区域的所有规则(包括开放的端口、服务等)--add-port=端口/协议:临时开放指定端口(如80/tcp)--permanent:将规则设置为永久生效(需--reload后生效)--reload:重新加载规则,使永久配置生效--zone=区域名:指定规则应用的区域(默认 public)--remove-port=端口/协议:关闭指定端口示例:
# 1. 查看防火墙状态(running=运行中,dead=未运行)systemctl status firewalld# 2. 启动/停止/重启防火墙systemctl start firewalld # 启动systemctl stop firewalld # 停止(临时关闭,重启失效)systemctl restart firewalld # 重启# 3. 设置开机自启/关闭自启systemctl enable firewalld # 开机自启systemctl disable firewalld # 关闭自启# 4. 查看已放行的端口和服务firewall-cmd --list-all # 查看默认区域所有配置firewall-cmd --list-ports # 只查看放行的端口firewall-cmd --list-services # 只查看放行的服务(如ssh、http)# 5. 放行端口(永久生效,需重载)firewall-cmd --add-port=80/tcp --permanent # 永久放行80端口(TCP协议)firewall-cmd --add-port=3306/tcp --permanent # 放行MySQL端口firewall-cmd --add-port=1000-2000/tcp --permanent # 放行端口范围firewall-cmd --permanent --add-port=443/tcp # 永久放行443端口(https)sudo firewall-cmd --add-port=8080/tcp --permanent && sudo firewall-cmd --reload #永久开放`8080/tcp`并生效# 6. 放行服务(按服务名,无需记端口)firewall-cmd --add-service=http --permanent # 放行HTTP服务(80端口)firewall-cmd --add-service=ssh --permanent # 放行SSH服务(22端口)# 7. 移除已放行的端口/服务firewall-cmd --remove-port=80/tcp --permanentfirewall-cmd --remove-service=http --permanent# 8. 重载防火墙规则(永久配置生效必须执行)firewall-cmd --reload# 9. 临时放行端口(重启防火墙失效,用于测试)firewall-cmd --add-port=8080/tcp核心特点:基于规则链(INPUT/OUTPUT/FORWARD),配置灵活,适用于所有 Linux 发行版,但配置后需保存才能永久生效。
语法:
❝iptables【-t表名】管理选项【链名】条件匹配-j执行动作
iptables [-t table] COMMAND [chain] CRETIRIA -j ACTION
选项:
选 项 功 能-A 添加防火墙规则-D 删除防火墙规则-I 插入防火墙规则-F 清空防火墙规则-L 列出添加防火墙规则-R 替换防火墙规则-Z 清空防火墙数据表统计信息-P 设置链默认规则参数:
参 数 功 能-p 匹配协议,! 表示取反-s 匹配源地址-d 匹配目标地址-i 匹配入站网卡接口-o 匹配出站网卡接口--sport 匹配源端口--dport 匹配目标端口--src-range 匹配源地址范围--dst-range 匹配目标地址范围--limit 四配数据表速率--mac-source 匹配源MAC地址--sports 匹配源端口--dports 匹配目标端口--stste 匹配状态(INVALID、ESTABLISHED、NEW、RELATED)--string 匹配应用层字串动作:
触发动作 功 能ACCEPT 允许数据包通过DROP 丢弃数据包REJECT 拒绝数据包通过LOG 将数据包信息记录 syslog 曰志DNAT 目标地址转换SNAT 源地址转换MASQUERADE 地址欺骗REDIRECT 重定向四表五链:
默认四个规则表
默认的五种规则链:
命令解析 :
iptables -t filter -A INPUT -s 192.168.184.20 -p tcp -- dport 22 -j DROP常用命令:
# 1. 查看防火墙规则(-n:数字显示IP/端口,-L:列出规则)iptables -L -niptables -t filter -L -n # 查看filter表(默认表)规则# 2. 放行端口(允许外部访问本机端口)iptables -A INPUT -p tcp --dport 80 -j ACCEPT # 放行80端口(TCP)iptables -A INPUT -p udp --dport 53 -j ACCEPT # 放行53端口(UDP,DNS)iptables -A INPUT -p tcp --dport 22 -j ACCEPT # 放行SSH端口# 3. 放行特定IP访问(仅允许192.168.1.0/24网段访问80端口)iptables -A INPUT -s 192.168.1.0/24 -p tcp --dport 80 -j ACCEPT# 4. 拒绝访问(拦截特定IP或端口)iptables -A INPUT -p tcp --dport 3389 -j REJECT # 拒绝3389端口访问iptables -A INPUT -s 10.0.0.100 -j DROP # 直接丢弃10.0.0.100的所有请求# 5. 清空所有规则(谨慎操作!)iptables -F# 6. 保存规则(永久生效,不同系统保存方式不同)# CentOS/RHELservice iptables save# Ubuntu/Debianiptables-save > /etc/iptables/rules.v4# 7. 恢复规则(重启后加载)iptables-restore /iptables/rules.v4ufw(Uncomplicated Firewall)是基于 iptables 的简化防火墙工具,语法简单,适合初学者,常用于 Ubuntu、Debian 等系统。
常用选项:
enable:启用 ufw 防火墙disable:禁用 ufw 防火墙status:查看防火墙状态及规则allow 端口/服务:允许指定端口或服务的流量(如ssh、80/tcp)deny 端口/服务:拒绝指定端口或服务的流量delete 规则:删除已添加的规则示例:
sudo ufw enable#启用防火墙sudo ufw allow ssh` 或 `sudo ufw allow 22/tcp #允许 SSH 连接(默认 22/tcp)sudo ufw deny from 192.168.1.5 #拒绝来自`192.168.1.5`的所有流量sudo ufw status numbered #查看当前规则(带编号,方便删除)sudo ufw delete 3 #删除编号为 3 的规则