不安装iptables服务,规则从开机自启动文件rc.local中加载实现

一般情况下加载iptables服务,是按照安装iptables-service服务来实现,并在/etc/sysconfig/iptables配置文件中添加规则,再启动iptables.service服务来实现。如果要求不安装iptables服务,那怎么来实现iptables规则呢?

下面就实际演示从操作系统开机自启动文件rc.local中来加载iptables规则

首先检查rc.local 文件信息,查询到开机自启动文件/etc/rc.local是做了一个软链接到/etc/rc.d/rc.local

进入/etc/rc.d 目录下可以查询到rc.local文件

 文件中 最后一条 touch  /var/lock/subsys/local 说明如果是启用了开机自启动文件会在/var/local/subsys目录下创建一个local文件,本系统未采用

查询现有系统iptables规则,无规则信息

 检查iptables服务未开启,并且开机未启动

创建一个临时目录/root/iptables-sh

创建一个临时文件iptables.sh

添加如下内容

#!/bin/sh

iptables -A INPUT -s 192.168.137.24/32 -p tcp -m tcp --dport 22 -j ACCEPT
iptables -A INPUT -p tcp -m tcp  --dport 22 -j DROP

说明:test6服务器地址为192.168.137.23,test7 服务器地址为192.168.137.24,本次规则只允许test7可以ssh访问test6,其它地址均不能访问。

配置完成后查询iptables.sh脚本

 并且给文件添加可执行权限 

将执行脚本的命令追加到开机自启动文件后

echo "sh /root/iptables-sh/iptables.sh" >> rc.local 

重启test6服务器

 

重启后检查iptables规则,发现iptable没有生效

 原因是rc.local 文件没有执行权限

给/etc/rc.d/rc.local 文件添加权限

 

再次重启 

 

 重启完成后检查iptables规则已经生效

 从别的服务器上可以ping通,但登录不了

 只有配置文件中192.168.137.24服务器可以登录

 证明开机启动后从rc.local中加载执行了iptables.sh 脚本,进而通过iptables命令添加规则,从而实现了不启用iptables服务方式来实现规则添加。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值