1. `iptables`:这是最常用的Linux防火墙工具,用于配置内核级的网络包过滤规则。
查看当前规则:`iptables L` 清除所有规则:`iptables F` 添加规则:例如,允许所有来自特定IP地址的SSH连接:`iptables A INPUT p tcp dport 22 s 192.168.1.100 j ACCEPT` 删除规则:`iptables D INPUT p tcp dport 22 s 192.168.1.100 j ACCEPT`
2. `firewalld`:这是较新的防火墙工具,提供更直观的界面和更灵活的配置选项。
查看当前规则:`firewallcmd listall` 添加规则:例如,允许所有来自特定IP地址的SSH连接:`firewallcmd zone=public addrichrule='rule family=ipv4 source address=192.168.1.100 port protocol=tcp port=22 accept'` 删除规则:`firewallcmd zone=public removerichrule='rule family=ipv4 source address=192.168.1.100 port protocol=tcp port=22 accept'`
3. `ufw`:这是Uncomplicated Firewall的缩写,是一个基于iptables的简单防火墙工具。
启用防火墙:`sudo ufw enable` 禁用防火墙:`sudo ufw disable` 允许所有来自特定IP地址的SSH连接:`sudo ufw allow from 192.168.1.100 to any port 22` 删除规则:`sudo ufw delete allow from 192.168.1.100 to any port 22`
这些只是常用的Linux防火墙命令,具体的配置和使用方法可能会根据你的具体需求和环境有所不同。在配置防火墙时,请务必仔细阅读相关文档,并确保你的配置是正确的,以避免对系统造成不必要的风险。
Linux防火墙命令概述
Linux防火墙是保障系统安全的重要工具,它能够控制进出系统的网络流量,防止未经授权的访问和网络攻击。在Linux系统中,常用的防火墙命令包括iptables和firewalld。本文将详细介绍这些命令的用法和功能。
iptables命令详解
iptables是基于内核的防火墙工具,它通过规则链(chains)和表(tables)来工作。以下是iptables的一些常用命令和选项:
基本命令格式
iptables [-t 表名] {-A|{-I} 链名 [规则号] } 规则
常用选项
-A:向链中添加规则
-I:向链中插入规则
-D:从链中删除规则
-R:替换链中的规则
-L:列出链中的规则
-F:清空链中的所有规则
-X:删除链
常用链
INPUT:处理进入本机的数据包
OUTPUT:处理从本机发出的数据包
FORWARD:处理转发的数据包
常用动作
ACCEPT:允许数据包通过
DROP:丢弃数据包
LOG:记录日志
示例
以下是一个iptables规则的示例,该规则允许来自192.168.1.0/24网段的TCP 80端口的数据包通过:
iptables -A INPUT -s 192.168.1.0/24 -p tcp --dport 80 -j ACCEPT
firewalld命令详解
firewalld是Linux系统中另一种常用的防火墙工具,它提供了更高级的配置和管理功能。以下是firewalld的一些常用命令和选项:
基本命令格式
firewall-cmd [--permanent] [--zone=zone_name] --{add|remove|list} [service|port|rule|zone] [参数]
常用选项
add:添加规则
remove:删除规则
list:列出规则
permanent:使规则永久生效
zone:指定区域
常用命令
firewall-cmd --list-all:列出所有规则
firewall-cmd --add-service=http:允许HTTP服务
firewall-cmd --remove-service=http:禁止HTTP服务
iptables与firewalld的区别
iptables和firewalld都是Linux系统中的防火墙工具,但它们之间存在一些区别:
配置方式
iptables通过命令行进行配置,而firewalld提供了图形界面和命令行两种配置方式。
功能丰富度
iptables功能更为丰富,支持更复杂的规则和策略,而firewalld则更注重易用性和用户体验。
适用场景
iptables适用于需要高度定制和复杂策略的场景,而firewalld适用于大多数用户和普通场景。