試試這款針對(duì)JAVA應(yīng)用的開源防火墻!
大家好,我是TJ
一個(gè)勵(lì)志推薦10000款開源項(xiàng)目與工具的程序員

很多小伙伴問TJ君,現(xiàn)在開源項(xiàng)目看的越來越多也用的越來越多,還真有點(diǎn)擔(dān)心!
擔(dān)心什么?自然是代碼項(xiàng)目中有意無意的被別人加入了各種后臺(tái)訪問代碼。
這萬一一不小心泄露了自己的重要信息可怎么辦?
要TJ君說呢,首先肯定是裝各種各樣的防火墻進(jìn)行防御,但是市面上的一般防火墻也不是萬能的,所以今天TJ君要給大家介紹一個(gè)開源的、針對(duì)JAVA程序的防火墻項(xiàng)目:
ja-netfilter
如何添加
首先下載ja-netfilter jar包,地址在文末。
根據(jù)自己的實(shí)際路徑按如下要求添加參數(shù):
-javaagent:/absolute/path/to/ja-netfilter.jar
然后編輯自己的janf_config.txt文件,jar包會(huì)自動(dòng)按照如下優(yōu)先順序進(jìn)行搜索匹配:
作為-javaagent的參數(shù)傳遞 ,例如: -javaagent:/absolute/path/to/ja-netfilter.jar=/home/neo/downloads/janf_config.txt
環(huán)境變量中的文件路徑: JANF_CONFIG
java啟動(dòng)屬性中的文件路徑: janf.config.,例如: java -Djanf.config="/home/neo/downloads/janf_config.txt"
有些應(yīng)用程序支持JVM選項(xiàng)文件,可以將其添加為JVM選項(xiàng)文件的一行,例如: -Djanf.config="/home/neo/downloads/janf_config.txt"
文件路徑與ja-netfilter.jar位于同一目錄中,無需額外配置(TJ君建議用這個(gè),最簡(jiǎn)單方便)
主目錄中的文件路徑,例如: .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
然后運(yùn)行應(yīng)用程序就可以了。
配置文件參數(shù)
小伙伴肯定要問了,那這個(gè)janf_config.txt文件,應(yīng)該怎么編輯呢,其實(shí)不難,總的說明如下:
[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
還不明白?舉個(gè)例子,如果我們想阻斷市面上常見的DBEaver激活驗(yàn)證,可以這樣寫:
[URL]
PREFIX,https://dbeaver.com/lmp/checkLicense
是不是一下子就醍醐灌頂、茅廁頓開看明白了呢?
調(diào)試
默認(rèn)情況下,ja-netfilter不會(huì)輸出調(diào)試日志,如果有這個(gè)需要的話,可以添加環(huán)境變量JANF_DEBUG=1開始啟用,也可以添加系統(tǒng)屬性-Djanf.debug=1啟用。
總結(jié)
最后提一點(diǎn),這款項(xiàng)目是基于javaagent編寫的,所以基于java的程序都能夠適用,項(xiàng)目作者也表示歡迎各位程序員小伙伴進(jìn)行二次開發(fā),讓它變成更加有趣的插件,所以小伙伴還在等什么,趕緊來試一試這款防火墻吧!開源地址如下:
點(diǎn)擊下方卡片,關(guān)注公眾號(hào)“TJ君”
回復(fù)“netfilter”,獲取倉(cāng)庫(kù)地址
關(guān)注我,每天了解一個(gè)牛x、好用、有趣的東東
往期推薦
?
