前言
作为一名 Linux 系统管理员,对于服务器的安全性一直都是我们最为关注的问题。而防火墙则是保障服务器安全的重要手段之一。CentOS 7 作为一款广泛应用的 Linux 操作系统,其内置的防火墙 iptables 也备受关注。本文将详细介绍 CentOS 7 防火墙命令,帮助读者更好地了解和使用 iptables 。
1. 基本概念
iptables 是 Linux 操作系统中一个常用的防火墙软件,它可以检查和过滤网络数据包,从而保障网络的安全性。iptables 具有以下几个重要的概念:
- 规则 (rule):iptables 中最基本的单位,用于描述如何处理网络数据包。
- 表 (table):iptables 中的数据结构,用于存储规则。
- 链 (chain):每个表都包含多个链,每个链都包含多条规则。
- 包过滤 (packet filtering):iptables 根据规则来过滤网络数据包。
- 状态跟踪 (stateful inspection):iptables 可以根据数据包的状态来判断是否允许通过防火墙。
2. 常用命令
下面介绍一些常用的 iptables 命令:
2.1 iptables -L
该命令用于列出当前 iptables 中的规则。可以通过指定参数 -v 和 -n 来输出详细信息和 IP 地址而非域名。
示例:
```
iptables -L -v -n
2.2 iptables -A
该命令用于向指定的链中添加一条规则。其中 -A 表示添加规则,-p 表示指定协议,-s 表示源 IP 地址,-d 表示目标 IP 地址,--dport 表示目标端口号。
iptables -A INPUT -p tcp -s 192.168.1.1 -d 192.168.1.2 --dport 80 -j ACCEPT
2.3 iptables -D
该命令用于删除指定链中的一条规则。其中 -D 表示删除规则,-p、-s、-d、--dport 等参数与 -A 命令相同。
iptables -D INPUT -p tcp -s 192.168.1.1 -d 192.168.1.2 --dport 80 -j ACCEPT
2.4 iptables -P
该命令用于设置指定链的默认策略。其中 -P 表示设置默认策略,ACCEPT 表示允许通过,DROP 表示拒绝通过。
iptables -P INPUT DROP
2.5 iptables -F
该命令用于清空指定链中的所有规则。其中 -F 表示清空规则。
iptables -F INPUT
3. 实战案例
下面通过一个实战案例来演示如何使用 iptables。
假设我们的服务器 IP 地址为 192.168.1.2,需要开放 SSH 和 HTTP 服务。我们需要禁止来自 192.168.1.3 的访问。
我们需要清空默认规则:
iptables -F
我们需要设置默认策略:
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT
接下来,我们添加允许 SSH 和 HTTP 服务的规则:
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
我们添加禁止来自 192.168.1.3 的访问的规则:
iptables -A INPUT -s 192.168.1.3 -j DROP
4. 总结
本文介绍了 CentOS 7 防火墙命令,包括基本概念、常用命令和实战案例。通过学习本文,读者可以更好地了解和使用 iptables,从而保障服务器的安全性。
为您分享
Ubuntu 中有一款非常实用的工具,叫做 screen。它可以让我们在终端中创建多个窗口,并且可以在多个窗口之间切换,非常方便。如果您还不熟悉 screen,可以尝试使用一下。