centos 7 防火墙设置只对部分端口号限源

 概要

项目上线一段时候,安全测评整改的需要,需对特定一些端口进行限源。其他端口不做限制

iptables与firewalld的区别
1),firewalld可以动态修改单条规则,动态管理规则集,允许更新规则而不破坏现有会话和连接。而iptables,在修改了规则后必须得全部刷新才可以生效;
2),firewalld使用区域和服务而不是链式规则;
3),firewalld默认是拒绝的,需要设置以后才能放行。而iptables默认是允许的,需要拒绝的才去限制;
4),firewalld自身并不具备防火墙的功能,而是和iptables一样需要通过内核的netfilter来实现。也就是说,firewalld和iptables一样,它们的作用都用于维护规则,而真正使用规则干活的是内核的netfilter。只不过firewalld和iptables的结果以及使用方法不一样!
firewalld是iptables的一个封装,可以让你更容易地管理iptables规则。它并不是iptables的替代品,虽然iptables命令仍可用于firewalld,但建议firewalld时仅使用firewalld命令。

一、安装iptable

1.关闭默认的firewall防火墙

systemctl stop firewalld.service 关闭防火墙

systemctl disable firewalld.service 关闭开机启动

2.开启iptables


yum install iptables (根据centOS7的版本和内核,有些版本已经装过,可以跳过此命令)

yum install iptables-services

3.基本操作

查看防火墙状态

查看防火墙状态

service iptables status

停止防火墙

service iptables stop

启动防火墙

service iptables start

重启防火墙

service iptables restart

永久关闭防火墙

chkconfig iptables off

永久关闭后重启

chkconfig iptables on

开机自启

systemctl enable iptables.service

二、设置规则

表示清空所有默认规则。

iptables -F

设置指定IP访问指定端口8075

1、添加规则:禁止所有IP访问8075

iptables -I INPUT -p tcp --dport 8075 -j DROP

查看规则

iptables --line -nvL INPUT

添加规则:允许127.0.0.1访问8075

iptables -I INPUT -s 127.0.0.1 -p tcp --dport 8075 -j ACCEPT

规则已经添加,测试

telnet 具体ip 8075

保存规则

service iptables save

三、特定url限源

示例添加swagger-相关限制

iptables -I INPUT -p tcp -m string --string "swagger-" --algo bm -j DROP 
iptables -I INPUT -s 10.0.120.13 -p tcp -m string --string "swagger-" --algo bm -j ACCEPT 

查询数据库中的数据也可能包含"swagger-" 也会直接拦截,对数据库等存储也需要添加放行规则

开放源

iptables -I INPUT -s 某某ip -j ACCEPT

iptables 导入导出

导出
iptables-save > iptables_bak

导入
iptables-restore <  iptables_bak

其他命令参照

iptables 设置特定IP访问指定端口 - sky_cheng - 博客园

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值