iptables firewalld

yum install iptables-services.x86_64           安装iptables服务

systemctl status iptables.service                查看iptables服务的状态 默认为关闭

 systemctl status firewalld                        查看firealld状态




systemctl stop firewalld                           关闭防火墙
systemctl disable firewalld                       关闭防火墙的开机自动启动功能
systemctl mask firewalld                          冻结防火墙
systemctl start iptables.service                 开启iptables服务
[ sytemctl enable iptables                        打开iptables服务的开机自动启动功能

systemctl status iptables.service              再次查看iptables服务的状态并确认已经启动



ll /etc/sysconfig/iptables                         
cat /etc/sysconfig/iptables
# sample configuration for iptables service
# you can edit this manually or use system-config-firewall
# please do not ask us to add additional ports/services to this default configuration
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT
[root@localhost etc]# iptables -F                                      刷新
[root@localhost etc]# service iptables save                        保存当前策略

iptables: Saving firewall rules to /etc/sysconfig/iptables:[  OK  ]


iptables -t filter -nL

iptables -t nat -nL
iptables -A INPUT -j REJECT                                           添加默认拒绝命令                                       

iptables -I INPUT 1 -i lo -j ACCEPT                                   插入允许命令在第一行





iptables -I INPUT 3 -p tcp --dport 80 -j ACCEPT                插入允许命令在第三行  (端口为80  协议为TCP)
iptables -D INPUT 3                                                      删除第三行的命令
iptables -N WESTOS                                                      创建WESTOS
iptables -E WESTOS redhat                                              将WESTOS 更名为redgat

iptables -X redhat                                                              删除redhat



 

网络转换  来源为172.25.254.212   to 到 172.25.254.112

iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to-source 172.25.254.212

iptables -t nat -A PREROUTING -i eth0 -j DNAT --to-dest 172.25.254.112


 firewalld 


























 

systemctl stop iptables.service    关闭iptable服务

systemctl disable iptables.service      关闭iptable开机自动启动功能

[root@localhost Desktop]# systemctl mask iptables.service       冻结iptables服务
ln -s '/dev/null' '/etc/systemd/system/iptables.service'               

[root@localhost Desktop]# systemctl unmask firewalld                 解除冻结firewall
rm '/etc/systemd/system/firewalld.service'                                        
[root@localhost Desktop]# systemctl start firewalld                       启动firwall
[root@localhost Desktop]# systemctl enable firewalld                     开启开机自动启动功能
ln -s '/usr/lib/systemd/system/firewalld.service' '/etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service'          
ln -s '/usr/lib/systemd/system/firewalld.service' '/etc/systemd/system/basic.target.wants/firewalld.service'



firewall-cmd --get-default-zone                                          查看默认域
firewall-cmd --set-default-zone=trusted                              设置默认域为trusted
firewall-cmd --get-default-zone                                          查看


firewall-cmd --list-all                                                          查看当前信息



firewall-cmd --set-default-zone=block                             设置默认域为block
vim /etc/firewalld/zones/public.xml                                  修改publc配置文件 可通过修改配置文件更改内容



firewall-cmd --reload                                                        重新加载
firewall-cmd --permanent --add-port=8080/tcp                     --permanent 永久性  添加端口8080 tcp协议
 systemctl restart firewalld.service                                       端口类的添加与删除 必须重启服务


firewall-cmd --permanent --remove-port=8080/tcp                    删除8080端口 
firewall-cmd --permanent --add-service=ssh                         添加ssh服务
firewall-cmd --permanent --remove-service=ssh                    删除ssh服务




firewall-cmd --permanent --add-source=172.25.254.12                                    添加来源172.25.254.12

firewall-cmd --reload


firewall-cmd --permanent --add-source=172.25.254.12 --zone=trusted                        永久添加172.25.254.12




firewall-cmd --permanent --remove-interface=eth1 --zone=trusted   

                           
firewall-cmd --permanent --add-interface=eth1 --zone=trusted
systemctl restart firewall.service
firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 1 -s 172.25.254.12/24 -p tcp --dport 80 -j REJET
firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 0 ! -s 172.25.254.212 -p tcp --dport 22 -j ACCEPT
firewall-cmd --direct --get-all-rules
ipv4 filter INPUT 0 '!' -s 172.25.254.212 -p tcp --dport 22 -j ACCEPT

伪装

firewall-cmd --permanent --add-masquerade


firewall-cmd --permanent --direct --remove-rule ipv4 filter INPUT 0 ! -s 172.25.254.212 -p tcp --dport 22 -j ACCEPT
firewall-cmd --zone=public --add-forward-port=port=22:proto=tcp:toport=22:toaddr=172.25.254.112



 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
iptablesfirewalld 都是 Linux 系统中的防火墙软件,它们的主要区别如下: 1. 配置文件位置不同:iptables 的配置文件在 /etc/sysconfig/iptables 中,而 firewalld 的配置文件在 /usr/lib/firewalld/ 和 /etc/firewalld/ 中的各种 XML 文件中。 2. 配置方式不同:iptables 仅能通过命令行进行配置,而 firewalld 提供了图形接口,类似于 Windows 防火墙的操作方式。 3. 工作原理不同:iptables 是基于内核的防火墙,它通过在内核中设置规则来过滤网络流量;而 firewalld 是基于用户空间的防火墙,它使用 D-Bus 与内核通信,并通过内核中的 netfilter 过滤网络流量。 下面是一个使用 iptables 配置防火墙的例子: ```shell # 清空所有规则 iptables -F # 设置默认策略 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 连接 iptables -A INPUT -p tcp --dport 22 -j ACCEPT # 允许 HTTP 和 HTTPS 连接 iptables -A INPUT -p tcp --dport 80 -j ACCEPT iptables -A INPUT -p tcp --dport 443 -j ACCEPT # 其他规则 iptables -A INPUT -j DROP ``` 下面是一个使用 firewalld 配置防火墙的例子: ```shell # 启动 firewalld systemctl start firewalld # 查看状态 systemctl status firewalld # 开启 SSH 连接 firewall-cmd --zone=public --add-service=ssh --permanent # 开启 HTTP 和 HTTPS 连接 firewall-cmd --zone=public --add-service=http --permanent firewall-cmd --zone=public --add-service=https --permanent # 其他规则 firewall-cmd --zone=public --remove-port=8080/tcp --permanent # 重新加载配置 firewall-cmd --reload ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值