Ubuntu 16.04 云服务器如何使用 iptables 防火墙
iptables 是 Linux 系统上一个非常强大的防火墙工具,它可以配置规则来控制网络流量,从而保护云服务器不受未授权访问和各种网络攻击,在 Ubuntu 16.04 上,默认的防火墙工具可能是 UFW (Uncomplicated Firewall),但许多管理员更喜欢使用 iptables 因为它提供了更细粒度的控制。
安装 iptables
在开始之前,确保你的 Ubuntu 16.04 服务器已经安装了 iptables,如果没有安装,可以通过以下命令进行安装:
sudo apt-get update sudo apt-get install iptables
基本的 iptables 概念
iptables 使用“表”、“链”和“规则”来定义防火墙的行为,一个表可以包含多个链,链又由多个规则组成,常见的表有 filter(用于过滤数据包)、nat(用于网络地址转换)和 mangle(用于特殊的数据包修改)。
查看当前规则
要查看当前的 iptables 规则,可以使用以下命令:
sudo iptables -L
清空所有规则
在你开始设置自己的规则之前,可能需要清空所有现有的规则,这可以通过以下命令完成:
sudo iptables -F
设置默认策略
通常,你会想要设置一个默认的策略,比如拒绝所有的入站连接,只允许出站连接,这可以通过以下命令实现:
sudo iptables -P INPUT DROP sudo iptables -P FORWARD DROP sudo iptables -P OUTPUT ACCEPT
允许特定的连接
接下来,你需要添加规则来允许特定的连接,如果你想要允许 SSH 连接,你可以添加以下规则:
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT
保存 iptables 规则
Ubuntu 16.04 并不会自动保存你对 iptables 的更改,因此重启后规则会丢失,为了永久保存规则,你需要安装 iptables-persistent:
sudo apt-get install iptables-persistent
安装完成后,当你下次重启服务器时,iptables 的规则将会自动加载。
测试防火墙规则
不要忘记测试你的防火墙规则以确保它们按预期工作,你可以尝试从另一台机器连接到服务器上的服务,或者尝试阻止某些流量并观察效果。
相关问题与解答
Q1: 如果我在 Ubuntu 16.04 上安装了 UFW,我还需要单独安装和使用 iptables 吗?
A1: 不需要,UFW 是基于 iptables 的一个封装,它提供了一个更简单易用的界面,如果你已经习惯了 UFW,可以继续使用它,如果你需要更复杂的规则或更细粒度的控制,直接使用 iptables 是一个好选择。
Q2: 我设置了 iptables 规则,但重启后它们没有生效,这是为什么?
A2: Ubuntu 16.04 不会自动保存 iptables 规则,你需要安装 iptables-persistent 包来保存规则,安装后,iptables 的规则将在系统重启时自动加载。
原创文章,作者:K-seo,如若转载,请注明出处:https://www.kdun.cn/ask/282924.html