前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >试试这款针对JAVA应用的开源防火墙!

试试这款针对JAVA应用的开源防火墙!

作者头像
程序猿DD
发布2021-12-06 10:08:16
3K1
发布2021-12-06 10:08:16
举报
文章被收录于专栏:程序猿DD

大家好,我是TJ

一个励志推荐10000款开源项目与工具的程序员

很多小伙伴问TJ君,现在开源项目看的越来越多也用的越来越多,还真有点担心!

担心什么?自然是代码项目中有意无意的被别人加入了各种后台访问代码。

这万一一不小心泄露了自己的重要信息可怎么办?

要TJ君说呢,首先肯定是装各种各样的防火墙进行防御,但是市面上的一般防火墙也不是万能的,所以今天TJ君要给大家介绍一个开源的、针对JAVA程序的防火墙项目:

ja-netfilter

如何添加

首先下载ja-netfilter jar包,地址在文末。

根据自己的实际路径按如下要求添加参数:

-javaagent:/absolute/path/to/ja-netfilter.jar

然后编辑自己的janf_config.txt文件,jar包会自动按照如下优先顺序进行搜索匹配:

  • 作为-javaagent的参数传递 ,例如: -javaagent:/absolute/path/to/ja-netfilter.jar=/home/neo/downloads/janf_config.txt
  • 环境变量中的文件路径: JANF_CONFIG
  • java启动属性中的文件路径: janf.config.,例如: java -Djanf.config="/home/neo/downloads/janf_config.txt"
  • 有些应用程序支持JVM选项文件,可以将其添加为JVM选项文件的一行,例如: -Djanf.config="/home/neo/downloads/janf_config.txt"
  • 文件路径与ja-netfilter.jar位于同一目录中,无需额外配置(TJ君建议用这个,最简单方便
  • 主目录中的文件路径,例如: .janf_config.txt. eg: /home/neo/.janf_config.txt
  • 主目录中名为.config的子目录中的文件路径,例如: /home/neo/.config/janf_config.txt
  • 主目录中名为.local/etc的子目录中的文件路径,例如: /home/neo/.local/ect/janf_config.txt
  • 名为/usr/local/etc目录中的文件路径,例如: /usr/local/etc/janf_config.txt
  • 目录中的文件路径,例如: /etc. eg: /etc/janf_config.txt

然后运行应用程序就可以了。

配置文件参数

小伙伴肯定要问了,那这个janf_config.txt文件,应该怎么编辑呢,其实不难,总的说明如下:

代码语言:javascript
复制
[ABC]
# for the specified plugin called "ABC"

[URL]
EQUAL,https://someurl

[DNS]
EQUAL,somedomain

# EQUAL       Use `equals` to compare
# EQUAL_IC    Use `equals` to compare, ignore case
# KEYWORD     Use `contains` to compare
# KEYWORD_IC  Use `contains` to compare, ignore case
# PREFIX      Use `startsWith` to compare
# PREFIX_IC   Use `startsWith` to compare, ignore case
# SUFFIX      Use `endsWith` to compare
# SUFFIX_IC   Use `endsWith` to compare, ignore case
# REGEXP      Use regular expressions to match

还不明白?举个例子,如果我们想阻断市面上常见的DBEaver激活验证,可以这样写:

代码语言:javascript
复制
[URL]
PREFIX,https://dbeaver.com/lmp/checkLicense

是不是一下子就醍醐灌顶、茅厕顿开看明白了呢?

调试

默认情况下,ja-netfilter不会输出调试日志,如果有这个需要的话,可以添加环境变量JANF_DEBUG=1开始启用,也可以添加系统属性-Djanf.debug=1启用。

总结

最后提一点,这款项目是基于javaagent编写的,所以基于java的程序都能够适用,项目作者也表示欢迎各位程序员小伙伴进行二次开发,让它变成更加有趣的插件,所以小伙伴还在等什么,赶紧来试一试这款防火墙吧!

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-12-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 程序猿DD 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 如何添加
  • 配置文件参数
  • 调试
  • 总结
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档