如何使用CSF添加自定义iptables规则

发布时间 - 2019-03-21 00:00:00    点击率:

CSF(configserver firewall)是一种基于iptables的防火墙,为实现iptables规则提供了更简单的方法。有时我们需要添加一些特定的规则(例如,CSF未涵盖的IPtables规则)来添加CSF。如果我们直接从shell使用iptables命令添加这些规则,它们将在下次CSF重启时被删除。

在Linux上安装了CSF防火墙之后,本篇文章将介绍如何使用CSF添加自定义iptables规则。

CSF提供在CSF规则设置之前或之后执行的前脚本和后脚本。例如,如果想打开3306端口(默认mysql)到特定的IP,可以在脚本前或脚本后添加以下规则

csfpre.sh:在csf配置iptables之前运行外部命令

csfpost.sh:在csf配置iptables之后运行外部命令

在CSF规则之前

创建一个文件/etc/csf/csfpre.sh并添加iptables规则,希望在csf应用自己的规则之前执行这些规则。

iptables -I INPUT -s1.2.3.4-p tcp -m state --state NEW -m tcp --dport3306-j ACCEPT

在CSF规则之后

创建一个文件/etc/csf/csfpost.sh并添加iptables规则,希望在csf将自己的规则添加到防火墙之后应用这些规则。

iptables -I INPUT -s1.2.3.4-p tcp -m state --state NEW -m tcp --dport3306-j ACCEPT

重启CSF

要重新启动csf,只需输入下面的命令并查看结果。CSF产生大量的输出,因此可能无法在一个脚本中看到整个输出,因此还可以添加更多命令来查看页面结果。

# csf -r | more

见下面输出的一些部分

...
...
Deleting chain `LOCALOUTPUT'
Deleting chain `LOGDROPIN'
Deleting chain `LOGDROPOUT'Running /etc/csf/csfpre.shDROP  tcp opt -- in * out *  0.0.0.0/0  -> 0.0.0.0/0  tcp dpt:67
DROP  udp opt -- in * out *  0.0.0.0/0  -> 0.0.0.0/0  udp dpt:67
...
...
...
ACCEPT  tcp opt -- in * out !lo  0.0.0.0/0  -> 8.8.8.8  tcp dpt:53
LOCALOUTPUT  all opt -- in * out !lo  0.0.0.0/0  -> 0.0.0.0/0
LOCALINPUT  all opt -- in !lo out *  0.0.0.0/0  -> 0.0.0.0/0
LOCALOUTPUT  all opt    in * out !lo  ::/0  -> ::/0
LOCALINPUT  all opt    in !lo out *  ::/0  -> ::/0Running /etc/csf/csfpost.sh

本篇文章到这里就已经全部结束了,更多其他精彩内容可以关注PHP中文网的linux教程视频栏目!


# 自己的  # 重启  # 创建一个  # 是一种  # 还可以  # 将在  # 只需  # 中文网  # 自定义  # 重新启动 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 如何在IIS中配置站点IP、端口及主机头?  Laravel如何实现图片防盗链功能_Laravel中间件验证Referer来源请求【方案】  简历在线制作网站免费版,如何创建个人简历?  Laravel的.env文件有什么用_Laravel环境变量配置与管理详解  如何选择PHP开源工具快速搭建网站?  Laravel如何自定义错误页面(404, 500)?(代码示例)  胶州企业网站制作公司,青岛石头网络科技有限公司怎么样?  深圳网站制作的公司有哪些,dido官方网站?  中国移动官方网站首页入口 中国移动官网网页登录  网站制作企业,网站的banner和导航栏是指什么?  网站制作报价单模板图片,小松挖机官方网站报价?  简历没回改:利用AI润色让你的文字更专业  Windows驱动无法加载错误解决方法_驱动签名验证失败处理步骤  公司网站制作需要多少钱,找人做公司网站需要多少钱?  如何用5美元大硬盘VPS安全高效搭建个人网站?  Python3.6正式版新特性预览  Laravel如何使用Eloquent进行子查询  html5如何设置样式_HTML5样式设置方法与CSS应用技巧【教程】  怎么用AI帮你设计一套个性化的手机App图标?  Laravel与Inertia.js怎么结合_使用Laravel和Inertia构建现代单页应用  如何用wdcp快速搭建高效网站?  详解免费开源的.NET多类型文件解压缩组件SharpZipLib(.NET组件介绍之七)  Laravel Blade组件怎么用_Laravel可复用视图组件的创建与使用  VIVO手机上del键无效OnKeyListener不响应的原因及解决方法  如何做网站制作流程,*游戏网站怎么搭建?  Python制作简易注册登录系统  利用python获取某年中每个月的第一天和最后一天  如何在腾讯云服务器快速搭建个人网站?  bootstrap日历插件datetimepicker使用方法  Laravel怎么实现验证码(Captcha)功能  绝密ChatGPT指令:手把手教你生成HR无法拒绝的求职信  猎豹浏览器开发者工具怎么打开 猎豹浏览器F12调试工具使用【前端必备】  Laravel怎么实现一对多关联查询_Laravel Eloquent模型关系定义与预加载【实战】  如何用好域名打造高点击率的自主建站?  Laravel控制器是什么_Laravel MVC架构中Controller的作用与实践  大学网站设计制作软件有哪些,如何将网站制作成自己app?  宙斯浏览器怎么屏蔽图片浏览 节省手机流量使用设置方法  Python数据仓库与ETL构建实战_Airflow调度流程详解  HTML透明颜色代码在Angular里怎么设置_Angular透明颜色使用指南【详解】  如何在不使用负向后查找的情况下匹配特定条件前的换行符  Laravel如何操作JSON类型的数据库字段?(Eloquent示例)  制作网站软件推荐手机版,如何制作属于自己的手机网站app应用?  网站设计制作书签怎么做,怎样将网页添加到书签/主页书签/桌面?  Laravel怎么在Controller之外的地方验证数据  Laravel如何实现邮箱地址验证功能_Laravel邮件验证流程与配置  zabbix利用python脚本发送报警邮件的方法  如何用美橙互联一键搭建多站合一网站?  IOS倒计时设置UIButton标题title的抖动问题  如何快速打造个性化非模板自助建站?  Laravel如何生成API文档?(Swagger/OpenAPI教程)