Linux系统下如何添加防火墙规则(添加白名单)?

Linux系统下如何添加防火墙规则(添加白名单)?,第1张

内容来源重庆思庄论坛:

防火墙的作用:

可以通过设置ip白名单/黑名单的方式限制外部ip的访问或者限制访问内部某个端口;

添加防火墙过滤规则步骤如下

1、查看现有防火墙过滤规则:

iptables -nvL --line-number

2、添加防火墙过滤规则(设置白名单):

1)添加白名单

iptables -I INPUT 3 -s 196.168.133.5 -p tcp --dport 1521 -j ACCEPT

命令详解:

-I:添加规则的参数  

INPUT:表示外部主机访问内部资源

3:表示添加到第三行(可以任意修改)

-s:指定作为源地址匹配,这里不能指定主机名称,必须是IP;

-p: 用于匹配协议的(这里的协议通常有3种,TCP/UDP/ICMP)

--dport: 用于匹配端口号

-j: 用于匹配处理方式:

常用的ACTION:

DROP:悄悄丢弃

一般我们多用DROP来隐藏我们的身份,以及隐藏我们的链表

REJECT:明示拒绝

ACCEPT:接受

2)查看添加结果

iptables -nvL --line-number

在linux系统中安装yum install iptables-services

然后 vi /etc/sysconfig/iptables

# Generated by iptables-save v1.4.7 on Sun Aug 28 12:14:02 2016

*filter

:INPUT ACCEPT [0:0]

:FORWARD ACCEPT [0:0]

:OUTPUT ACCEPT [0:0]

#这里开始增加白名单服务器ip(请删除当前服务器的ip地址)

-N whitelist

-A whitelist -s 8.8.8.8 -j ACCEPT

-A whitelist -s x.x.x.x -j ACCEPT

#这些 ACCEPT 端口号,公网内网都可访问

-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT #允许接受本机请求之后的返回数据 RELATED,是为FTP设置的

-A INPUT -p icmp -j ACCEPT

-A INPUT -i lo -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 13020 -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 1000:8000 -j ACCEPT #开放1000到8000之间的所有端口

#下面是 whitelist 端口号,仅限 服务器之间 通过内网 访问

-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j whitelist

-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j whitelist

-A INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j whitelist

-A INPUT -m state --state NEW -m tcp -p tcp --dport 25 -j whitelist

#为白名单ip开放的端口,结束

-A INPUT -j REJECT --reject-with icmp-host-prohibited

-A FORWARD -j REJECT --reject-with icmp-host-prohibited COMMIT

登录后复制

解释:

添加防火墙过滤规则步骤如下

1、查看现有防火墙过滤规则:

iptables -nvL --line-number

登录后复制

2、添加防火墙过滤规则(设置白名单):

1)添加白名单

登录后复制

iptables -I INPUT 3 -s 136.6.231.163 -p tcp --dport 1521 -j ACCEPT

登录后复制

命令详解:

-I:添加规则的参数

INPUT:表示外部主机访问内部资源

登录后复制

规则链:

*

1)INPUT——进来的数据包应用此规则链中的策略

2)OUTPUT——外出的数据包应用此规则链中的策略

3)FORWARD——转发数据包时应用此规则链中的策略

4)PREROUTING——对数据包作路由选择前应用此链中的规则 (记住!所有的数据包进来的时侯都先由这个链处理)

5)POSTROUTING——对数据包作路由选择后应用此链中的规则(所有的数据包出来的时侯都先由这个链处理)

3:表示添加到第三行(可以任意修改)

-s:指定作为源地址匹配,这里不能指定主机名称,必须是IP;

-p: 用于匹配协议的(这里的协议通常有3种,TCP/UDP/ICMP)

--dport: 用于匹配端口号

-j: 用于匹配处理方式:

常用的ACTION:

登录后复制

DROP:悄悄丢弃,一般我们多用DROP来隐藏我们的身份,以及隐藏我们的链表

REJECT:明示拒绝

ACCEPT:接受

2)查看添加结果

iptables -nvL --line-number

登录后复制

然后重启防火墙即可生效

重启防火墙的命令:service iptables restart

此时,防火墙规则只是保存在内存中,重启后就会失效。

使用以下命令将防火墙配置保存起来;

保存到配置中:service iptables save (该命令会将防火墙规则保存在/etc/sysconfig/iptables文件中。)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11952054.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存