1
0
Fork 0
mirror of https://github.com/Ysurac/openmptcprouter-feeds.git synced 2025-02-12 18:41:51 +00:00

Close v2ray ports when redirection removed in firewall page

This commit is contained in:
Ycarus (Yannick Chabanois) 2021-04-08 08:41:46 +02:00
parent 8fd58258c9
commit 647351586f

View file

@ -1011,6 +1011,7 @@ _vps_firewall_close_port() {
[ -n "$vpsfwlist" ] && {
echo "$vpsfwlist" | while read -r line; do
[ -n "$line" ] && {
type=$(echo $line | awk '{print $1}' | tr -d "\n")
proto=$(echo $line | awk '{print $4}' | tr -d "\n")
src_dport=$(echo $line | awk '{print $5}' | tr -d "\n")
source_port=$(echo $line | awk '{print $6}' | tr -d "\n")
@ -1024,12 +1025,17 @@ _vps_firewall_close_port() {
settings='{"name" : "router '$src_dport'","port" : "'$src_dport'","proto" : "'$proto'","fwtype" : "DNAT"}'
fi
_set_json "shorewallclose" "$settings"
[ "$type" = "ACCEPT" ] && {
settings='{"name" : "router '$src_dport'","port" : "'$src_dport'","proto" : "'$proto'"}'
_set_json "v2rayunredirect" "$settings"
}
}
done
}
[ -n "$vpsfw6list" ] && {
echo "$vpsfw6list" | while read -r line; do
[ -n "$line" ] && {
type=$(echo $line | awk '{print $1}' | tr -d "\n")
proto=$(echo $line | awk '{print $4}' | tr -d "\n")
src_dport=$(echo $line | awk '{print $5}' | tr -d "\n")
source_port=$(echo $line | awk '{print $6}' | tr -d "\n")
@ -1043,6 +1049,10 @@ _vps_firewall_close_port() {
settings='{"name" : "router '$src_dport'","port" : "'$src_dport'","proto" : "'$proto'","fwtype" : "DNAT","ipproto" : "ipv6"}'
fi
_set_json "shorewallclose" "$settings"
[ "$type" = "ACCEPT" ] && {
settings='{"name" : "router '$src_dport'","port" : "'$src_dport'","proto" : "'$proto'"}'
_set_json "v2rayunredirect" "$settings"
}
}
done
}
@ -1088,9 +1098,15 @@ _set_vps_firewall() {
settings='{"name" : "redirect router"}'
fw_list=$(_set_json "shorewalllist" "$settings")
vpsfwlist=$(echo $fw_list | jsonfilter -q -e '@.list[*]' | sed '/^[[:space:]]*$/d')
settings='{"name" : "open router"}'
fw_list=$(_set_json "shorewalllist" "$settings")
vpsfwlist="$vpsfwlist\n$(echo $fw_list | jsonfilter -q -e '@.list[*]' | sed '/^[[:space:]]*$/d')"
settings='{"name" : "redirect router","ipproto" : "ipv6"}'
fw6_list=$(_set_json "shorewalllist" "$settings")
vpsfw6list=$(echo $fw6_list | jsonfilter -q -e '@.list[*]' | sed '/^[[:space:]]*$/d')
settings='{"name" : "open router","ipproto" : "ipv6"}'
fw6_list=$(_set_json "shorewalllist" "$settings")
vpsfw6list="$vpsfw6list\n$(echo $fw6_list | jsonfilter -q -e '@.list[*]' | sed '/^[[:space:]]*$/d')"
config_load firewall
config_foreach _vps_firewall_redirect_port redirect
config_foreach _vps_firewall_redirect_port rule