iptables INPUT使用实例说明

这篇文章写很好,主要用于网络与ip的访问。

https://www.cnblogs.com/cangqinglang/p/12199777.html

额外补充:

iptables只是一些过滤规则而已,并不是将端口 kill 掉,相当在程序打开的端口 和 客户端(也可能是本机)连接之间增加了一个过滤器(防火墙),符合规则的就通过,不符合的就关闭

全局DROP规则

iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP

这个步骤是把所有不符合自己配置的规则ACCEPT的连接全部DROP掉

 drop和reject的区别

1.REJECT动作会返回一个拒绝(终止)数据包(TCP FIN或UDP-ICMP-PORT-UNREACHABLE),明确的拒绝对方的连接动作。

2、DROP动作只是简单的直接丢弃数据,并不反馈任何回应。需要Client等待超时,Client容易发现自己被防火墙所阻挡。

参考:https://www.cnblogs.com/jishitang/p/13654207.html

看起来,似乎是更推荐reject而不是drop

### 关于 iptables 使用教程和配置指南 #### 安装 iptables 对于基于 Debian 的系统,如 Ubuntu,可以通过简单的命令来安装 `iptables`。在终端中执行如下命令可以完成安装过程[^3]: ```bash sudo apt-get install iptables ``` #### 配置基础规则 一旦安装完毕,就可以开始配置基本的防火墙规则。通常情况下,默认策略被设定为拒绝所有传入连接而允许所有的传出连接是一个安全的选择。 设置默认链政策: ```bash sudo iptables -P INPUT DROP sudo iptables -P FORWARD DROP sudo iptables -P OUTPUT ACCEPT ``` 为了确保服务器能够响应已经建立的连接以及相关的数据包,应该添加以下规则: ```bash sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT ``` 开放特定端口的服务访问权限也是常见的需求之一。比如SSH服务通常是必需保持开启状态以便远程管理: ```bash sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT ``` #### 编译自定义版本 如果想要获取最新的特性或是更灵活地控制软件行为,则可以选择自行编译最新版的 `iptables` 。这涉及到下载源码、解压并按照官方文档指示逐步操作的过程[^2]。 #### 持久化存储规则 为了让所作更改能够在重启之后仍然有效,在某些发行版上可能还需要额外步骤来保存当前规则集。例如,在Ubuntu环境下可利用 `iptables-persistent` 包实现这一点[^4]: 安装持久化支持工具: ```bash sudo apt-get install iptables-persistent ``` 保存现有规则至指定位置: ```bash sudo netfilter-persistent save ``` 加载之前保存过的规则: ```bash sudo netfilter-persistent reload ``` #### 进阶技巧与最佳实践 当熟悉了上述基本概念后,可以根据实际应用场景深入研究更多高级话题,像多层嵌套子网间的流量转发、日志记录异常尝试等复杂场景下的应用实例;同时也要注意定期审查现有的防护措施是否合理高效,并及时更新以应对新出现的安全威胁。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值