linux系统防火墙

firewalld防火墙

一、防火墙的开启、关闭、禁用命令

(1)设置开机启用防火墙:systemctl enable firewalld

(2)设置开机禁用防火墙:systemctl disable firewalld

(3)启动防火墙:systemctl start firewalld

(4)关闭防火墙:systemctl stop firewalld 或 systemctl stop firewalld.service

(5)检查防火墙状态 systemctl status firewalld

二、使用firewall-cmd配置端口

(1)查看防火墙状态:firewall-cmd --state

(2)重新加载配置:firewall-cmd --reload

(3)查看开放的端口:firewall-cmd --list-ports

(4)开启防火墙端口:firewall-cmd --zone=public --add-port=9200/tcp --permanent

命令含义:
–zone #=作用域=pubic
–add-port=9200/tcp #添加端口,格式为:端口/通讯协议
–permanent #永久生效,没有此参数重启后失效
注意:添加端口后,必须用命令firewall-cmd --reload重新加载一遍才会生效
(5)关闭防火墙端口:firewall-cmd --zone=public --remove-port=9200/tcp --permanent

iptables防火墙

一、防火墙的开启、关闭、禁用命令

1、查看防火墙状态:service iptables status

2、停止防火墙:service iptables stop

3、启动防火墙:service iptables start

4、重启防火墙:service iptables restart

5、永久关闭防火墙:chkconfig iptables off

6、永久关闭后重启:chkconfig iptables on

二、使用iptables的常用命令

1.1 iptables -L

列出 iptables 规则,可以查看当前系统中的所有防火墙规则。

1.2 iptables -F

清空 iptables 规则,可以删除所有规则,从而重新开始配置。

1.3 iptables -P INPUT DROP

将 INPUT 链的默认策略设置为 DROP,拒绝所有的入站数据包。

1.4 iptables -A INPUT -s 192.168.1.0/24 -j ACCEPT

允许来自 192.168.1.0/24 网段的数据包进入系统。

1.5 iptables -A INPUT -p tcp --dport 22 -j ACCEPT

允许通过 SSH 连接进入系统,前提是 SSH 服务已经开启并监听在 22 端口上。

1.6 iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

允许已经建立的连接数据包通过防火墙。

1.7 iptables -A INPUT -i lo -j ACCEPT

允许本地回环接口的数据包通过防火墙。

1.8 iptables -A INPUT -j DROP

拒绝所有未匹配到规则的数据包进入系统。

1.9 iptables -I INPUT 1 -p tcp --dport 80 -j ACCEPT

在 INPUT 链的第一条规则之前插入一条允许 HTTP 流量的规则。

1.10 iptables-save

保存 iptables 规则,可以将当前配置的防火墙规则保存到一个文件中。

1.11 iptables-restore

还原 iptables 规则,可以从一个文件中加载之前保存的防火墙规则。

1.12 iptables -D

删除指定规则,可以根据规则的编号或者内容来删除已经存在的规则。例如:

1.13 iptables -D INPUT 2

删除 INPUT 链中的第二条规则。

1.14 iptables -D INPUT -s 192.168.1.0/24 -j ACCEPT

删除允许 192.168.1.0/24 网段的数据包进入系统的规则。

1.15 iptables -A FORWARD -i eth0 -o eth1 -j ACCEPT

允许从 eth0 接口到 eth1 接口的数据包转发,用于多网卡的情况。

1.16 iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o eth0 -j MASQUERADE

使用 NAT 技术将内部网络的 IP 地址转换成公网 IP 地址,从而实现对外访问。这个命令是在 nat 表中新增 POSTROUTING 规则,表示对从 192.168.1.0/24 网段发出的数据包,通过 eth0 接口发送出去时进行地址转换,使用 MASQUERADE 参数可以自动获取外部网络的 IP 地址。

1.17 iptables -A OUTPUT -d 192.168.1.10 -j DROP

拒绝系统向指定 IP 地址发送数据包,用于限制系统对某些地址的访问。

1.18 iptables -A INPUT -p tcp --dport 80 -m limit --limit 25/minute --limit-burst 100 -j ACCEPT

限制 HTTP 流量,每分钟最多接受 25 个数据包,最大缓冲 100 个数据包。

1.19 iptables -A INPUT -p icmp --icmp-type echo-request -m limit --limit 1/second -j ACCEPT

限制 ICMP 流量,每秒最多接受一个 echo-request 数据包。

1.20 iptables -A INPUT -p tcp --dport 80 -m connlimit --connlimit-above 10 -j REJECT

限制 HTTP 流量,最多允许 10 个并发连接,超过限制则拒绝连接。

1.21 iptables -A INPUT -p tcp --dport 22 -m recent --name ssh --set -j ACCEPT

使用 recent 模块记录 SSH 连接,设置为 SSH,如果连续多次连接失败,则拒绝连接。可以通过以下命令实现:

1.22 iptables -A INPUT -p tcp --dport 22 -m recent --name ssh --rcheck --seconds 60 --hitcount 3 -j DROP

检查 SSH 连接是否已经超过 3 次,如果在 60 秒内达到了 3 次,则拒绝连接。

1.23 iptables -A INPUT -m geoip --src-cc CN -j DROP

使用 geoip 模块限制国家/地区访问,只允许来自中国的数据包进入系统。

  • 23
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值