设为首页
收藏本站
切换到宽版
门户
Portal
社区
BBS
站长
开发
运维
资源
游戏
产品
登录
立即注册
随客社区
»
社区
›
交流大厅
›
运维联盟
›
🔥 iptables 完整入门与实战技巧:Linux 防火墙配置详解 ...
返回列表
发布新帖
查看:
69
|
回复:
1
🔥 iptables 完整入门与实战技巧:Linux 防火墙配置详解
lin
lin
当前离线
UID
5
星火
贡献
奖金
发表于 2025-4-21 10:51:58
|
查看全部
|
阅读模式
这里或许是互联网从业者的最后一片净土,随客社区期待您的加入!
您需要
登录
才可以下载或查看,没有账号?
立即注册
×
本帖最后由 lin 于 2025-4-21 10:56 编辑
在 Linux 运维中,
iptables
是最常用的防火墙工具之一。尽管许多系统现在默认使用
firewalld
,但
iptables
依然在很多生产环境中扮演着重要角色。它轻量、强大、可控性强,非常适合对网络安全有更高掌控需求的用户。
本文将带你从入门到实战,全面掌握 iptables 的使用。
📌 一、什么是 iptables?
iptables 是 Linux 内核自带的包过滤系统,用于控制进出服务器的数据包。通过配置规则,它可以:
拒绝恶意访问
限制端口访问
防止暴力破解
实现简单的 NAT 或转发
📌 二、iptables 基础概念
概念
说明
链(Chain)
包含一组规则,例如:INPUT、OUTPUT、FORWARD
表(Table)
iptables 的规则按用途分类:filter、nat、mangle
规则(Rule)
针对某个条件采取的动作(如允许、拒绝)
动作(Target)
ACCEPT、DROP、REJECT、LOG 等
常用的链:
INPUT:处理进入本机的数据包
OUTPUT:处理由本机发出的数据包
FORWARD:处理转发的数据包(非本机)
📌 三、iptables 常用命令
1. 查看所有规则
sudo iptables -L -n -v
复制代码
参数解释:
-L:列出规则
-n:不解析域名/IP,提高速度
-v:显示详细信息(包括命中次数)
2. 允许端口访问(如 80 或 8000)
sudo iptables -I INPUT -p tcp --dport 80 -j ACCEPT
复制代码
sudo iptables -I INPUT -p tcp --dport 8000 -j ACCEPT
复制代码
3. 拒绝某个 IP 访问
sudo iptables -I INPUT -s 192.168.1.100 -j DROP
复制代码
4. 屏蔽 ping(ICMP 请求)
sudo iptables -A INPUT -p icmp --icmp-type echo-request -j DROP
复制代码
5. 允许本地回环访问(必须保留)
sudo iptables -A INPUT -i lo -j ACCEPT
复制代码
📌 四、默认策略设置
将默认策略设为拒绝所有,然后逐条放通所需服务:
sudo iptables -P INPUT DROP
复制代码
sudo iptables -P FORWARD DROP
复制代码
sudo iptables -P OUTPUT ACCEPT
复制代码
然后你再允许常用服务(如 22、80、443):
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT
复制代码
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
复制代码
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT
复制代码
📌 五、保存与恢复规则(重要!)
保存规则(CentOS):
sudo service iptables save
复制代码
或:
sudo /usr/libexec/iptables/iptables.init save
复制代码
恢复规则:
sudo iptables-restore < /etc/sysconfig/iptables
复制代码
📌 六、清空所有规则(危险操作)
sudo iptables -F
复制代码
清空所有链并设置默认为 ACCEPT(不推荐用于线上):
sudo iptables -F
复制代码
sudo iptables -P INPUT ACCEPT
复制代码
sudo iptables -P FORWARD ACCEPT
复制代码
sudo iptables -P OUTPUT ACCEPT
复制代码
📌 七、iptables 配置示例(安全模板)
# 清空已有规则
iptables -F
iptables -X
# 设置默认策略
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT
# 允许回环接口
iptables -A INPUT -i lo -j ACCEPT
# 允许已建立的连接
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# 允许 SSH、HTTP、HTTPS
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -j ACCEPT
复制代码
📌 八、iptables 与 firewalld 对比
功能
iptables
firewalld(现代)
配置方式
命令手动写规则
使用区域/服务概念,更高级抽象
易用性
略复杂
相对简单,适合新手
灵活性
高,精细控制
中等,适合常规用途
适合场景
老系统、需要精确控制的场景
云服务器、容器环境、桌面系统
✅ 总结
iptables 是一把双刃剑,用得好可以帮你把网络安全控制得非常细致;用得不好也可能导致自己连不上服务器。
建议:
配置前一定备份当前规则;
实验时保留 SSH 端口,避免锁死自己;
推荐将规则写成脚本或保存为文件,方便恢复。
如果你对 iptables 更深层的功能(如 NAT、端口转发、限速等)感兴趣,可以告诉我,我可以出一篇 “iptables 高级用法” 的专题内容。也可以结合你具体的业务场景,帮你量身写防火墙策略!
回复
举报
zeus
zeus
当前离线
UID
6
星火
贡献
奖金
发表于 2025-4-21 16:08:46
|
查看全部
总有人会把自己的ssh端口屏蔽掉嘛。。。
回复
举报
返回列表
发布新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖后跳转到最后一页
快速入口
社区门户
社区首页
随客云计算
重要文档
社区规则
官方公告
关于我们
团队介绍
产品合集
联系我们
532352
028-67879779
tech@isuike.com
Copyright © 2001-2025
Suike Tech
All Rights Reserved.
随客交流社区 (备案号:
津ICP备19010126号
)
|
Processed in 0.121427 second(s), 10 queries , Gzip On, MemCached On.
关灯
在本版发帖
返回顶部
快速回复
返回顶部
返回列表