2023-09-29 12:58:47 +00:00
|
|
|
#!/bin/sh
|
|
|
|
|
|
|
|
if [ -z "$(uci -q get xray.main)" ]; then
|
|
|
|
touch /etc/config/xray
|
|
|
|
uci batch <<-EOF
|
|
|
|
set xray.main=xray
|
|
|
|
set xray.main.xray_file='/usr/bin/xray'
|
|
|
|
set xray.main.mem_percentage='0'
|
|
|
|
set xray.main.loglevel='error'
|
|
|
|
set xray.main.access_log='/dev/null'
|
|
|
|
set xray.main.error_log='/dev/null'
|
|
|
|
set xray.main.enabled='0'
|
|
|
|
set xray.main.outbounds='omrout'
|
|
|
|
set xray.main.inbounds='omr'
|
|
|
|
add_list xray.main.inbounds='omrtest'
|
|
|
|
set xray.main_dns=dns
|
|
|
|
set xray.main_dns.hosts='example.com|127.0.0.1'
|
|
|
|
set xray.main_dns.enabled='0'
|
|
|
|
set xray.main_policy=policy
|
|
|
|
set xray.main_policy.enabled='1'
|
|
|
|
set xray.main_policy.levels='policy_level_0'
|
|
|
|
set xray.policy_level_0=policy_level
|
|
|
|
set xray.policy_level_0.level='0'
|
|
|
|
set xray.policy_level_0.handshake='4'
|
|
|
|
set xray.policy_level_0.conn_idle='1200'
|
|
|
|
set xray.policy_level_0.uplink_only='0'
|
|
|
|
set xray.policy_level_0.downlink_only='0'
|
|
|
|
set xray.policy_level_0.buffer_size='512'
|
|
|
|
set xray.main_transparent_proxy=transparent_proxy
|
|
|
|
set xray.main_transparent_proxy.proxy_mode='default'
|
|
|
|
set xray.main_transparent_proxy.apnic_delegated_mirror='apnic'
|
|
|
|
set xray.main_transparent_proxy.gfwlist_mirror='github'
|
|
|
|
set xray.main_transparent_proxy.redirect_udp='0'
|
|
|
|
set xray.main_transparent_proxy.redirect_port='1897'
|
|
|
|
set xray.omrout=outbound
|
|
|
|
set xray.omrout.tag='omrout_tunnel'
|
|
|
|
set xray.omrout.protocol='vless'
|
|
|
|
set xray.omrout.s_vmess_address=''
|
2023-10-17 15:35:03 +00:00
|
|
|
set xray.omrout.s_vmess_port='65250'
|
2023-09-29 12:58:47 +00:00
|
|
|
set xray.omrout.s_vmess_user_id=''
|
|
|
|
set xray.omrout.s_vmess_user_security='none'
|
|
|
|
set xray.omrout.s_vmess_user_alter_id='0'
|
|
|
|
set xray.omrout.s_vless_address=''
|
2023-10-17 15:35:03 +00:00
|
|
|
set xray.omrout.s_vless_port='65248'
|
2023-09-29 12:58:47 +00:00
|
|
|
set xray.omrout.s_vless_user_id=''
|
|
|
|
set xray.omrout.s_vless_user_security='none'
|
|
|
|
set xray.omrout.s_vless_user_encryption='none'
|
|
|
|
set xray.omrout.s_vless_user_alter_id='0'
|
|
|
|
set xray.omrout.s_trojan_address=''
|
2023-10-17 15:35:03 +00:00
|
|
|
set xray.omrout.s_trojan_port='65249'
|
2023-09-29 12:58:47 +00:00
|
|
|
set xray.omrout.s_trojan_user_id=''
|
|
|
|
set xray.omrout.s_trojan_user_security='none'
|
|
|
|
set xray.omrout.s_trojan_user_encryption='none'
|
|
|
|
set xray.omrout.s_trojan_user_alter_id='0'
|
|
|
|
set xray.omrout.s_socks_address=''
|
2023-10-17 15:35:03 +00:00
|
|
|
set xray.omrout.s_socks_port='65251'
|
2023-09-29 12:58:47 +00:00
|
|
|
set xray.omrout.s_socks_user_id=''
|
|
|
|
set xray.omrout.s_socks_user_security='none'
|
|
|
|
set xray.omrout.s_socks_user_encryption='none'
|
|
|
|
set xray.omrout.s_socks_user_alter_id='0'
|
|
|
|
set xray.omrout.ss_network='tcp'
|
|
|
|
set xray.omrout.ss_security='tls'
|
|
|
|
set xray.omrout.ss_tls_allow_insecure='1'
|
|
|
|
set xray.omrout.ss_tls_disable_system_root='1'
|
|
|
|
set xray.omrout.ss_tls_cert_usage='verify'
|
|
|
|
set xray.omrout.ss_tls_cert_file='/etc/luci-uploads/client.crt'
|
|
|
|
set xray.omrout.ss_tls_key_file='/etc/luci-uploads/client.key'
|
|
|
|
set xray.omrout.s_shadowsocks_port='65252'
|
|
|
|
set xray.omrout.mux_concurrency='8'
|
2023-10-02 19:24:32 +00:00
|
|
|
set xray.omrout.ss_sockopt_mptcp='1'
|
2023-09-29 12:58:47 +00:00
|
|
|
set xray.omr=inbound
|
|
|
|
set xray.omr.tag='omrtunnel'
|
|
|
|
set xray.omr.listen='0.0.0.0'
|
|
|
|
set xray.omr.port='1897'
|
|
|
|
set xray.omr.protocol='dokodemo-door'
|
|
|
|
set xray.omr.s_dokodemo_door_network='tcp'
|
|
|
|
add_list xray.omr.s_dokodemo_door_network='udp'
|
|
|
|
set xray.omr.ss_sockopt_tproxy='redirect'
|
|
|
|
set xray.omr.ss_sockopt_tcp_fast_open='1'
|
|
|
|
set xray.omr.ss_sockopt_mptcp='1'
|
|
|
|
set xray.omr.s_dokodemo_door_follow_redirect='1'
|
|
|
|
set xray.omr6=inbound
|
|
|
|
set xray.omr6.tag='omrtunnel6'
|
|
|
|
set xray.omr6.listen='::'
|
|
|
|
set xray.omr6.port='1898'
|
|
|
|
set xray.omr6.protocol='dokodemo-door'
|
|
|
|
set xray.omr6.s_dokodemo_door_network='tcp'
|
|
|
|
add_list xray.omr6.s_dokodemo_door_network='udp'
|
|
|
|
set xray.omr6.ss_sockopt_tproxy='tproxy'
|
|
|
|
set xray.omr6.ss_sockopt_tcp_fast_open='1'
|
|
|
|
set xray.omr6.s_dokodemo_door_follow_redirect='1'
|
|
|
|
set xray.omrtest=inbound
|
|
|
|
set xray.omrtest.port='1111'
|
|
|
|
set xray.omrtest.protocol='socks'
|
|
|
|
set xray.omrtest.listen='127.0.0.1'
|
|
|
|
set xray.omrtest.s_socks_auth='noauth'
|
|
|
|
set xray.omrtest.s_socks_udp='1'
|
|
|
|
set xray.omrtest.s_socks_ip='127.0.0.1'
|
|
|
|
set xray.omrtest.s_socks_userlevel='0'
|
|
|
|
commit xray
|
|
|
|
EOF
|
|
|
|
fi
|
|
|
|
uci -q batch <<-EOF >/dev/null
|
|
|
|
set xray.omr.listen='0.0.0.0'
|
|
|
|
commit xray
|
|
|
|
EOF
|
|
|
|
|
|
|
|
if [ "$(uci -q get firewall.xray)" = "" ]; then
|
|
|
|
uci -q batch <<-EOF >/dev/null
|
|
|
|
set firewall.xray=include
|
|
|
|
set firewall.xray.path=/etc/firewall.xray-rules
|
|
|
|
set firewall.xray.reload=0
|
|
|
|
commit firewall
|
|
|
|
EOF
|
|
|
|
fi
|
|
|
|
if [ "$(uci -q get firewall.xray.path)" != "/etc/firewall.xray-rules" ]; then
|
|
|
|
uci -q batch <<-EOF >/dev/null
|
|
|
|
set firewall.xray.path=/etc/firewall.xray-rules
|
|
|
|
commit firewall
|
|
|
|
EOF
|
|
|
|
fi
|
|
|
|
|
|
|
|
if [ "$(uci -q get xray.main_reverse.bridges | grep omrbridge)" = "" ]; then
|
|
|
|
uci -q batch <<-EOF >/dev/null
|
|
|
|
set xray.main_reverse=reverse
|
|
|
|
set xray.main_reverse.enabled=1
|
|
|
|
set xray.main_reverse.bridges='omrbridge|omr.lan'
|
|
|
|
commit xray
|
|
|
|
EOF
|
|
|
|
fi
|
|
|
|
if [ "$(uci -q get xray.omrrouting)" = "" ]; then
|
|
|
|
uci -q batch <<-EOF >/dev/null
|
|
|
|
set xray.omrexit=outbound
|
|
|
|
set xray.omrexit.protocol='freedom'
|
|
|
|
set xray.omrexit.tag='out'
|
|
|
|
add_list xray.main.outbounds=omrexit
|
|
|
|
set xray.omrrouting=routing_rule
|
|
|
|
set xray.omrrouting.type='field'
|
|
|
|
set xray.omrrouting.inbound_tag='omrbridge'
|
|
|
|
set xray.omrrouting.outbound_tag='omrout_tunnel'
|
|
|
|
set xray.omrrouting.domain='full:omr.lan'
|
|
|
|
set xray.omrroutingo=routing_rule
|
|
|
|
set xray.omrroutingo.type='field'
|
|
|
|
set xray.omrroutingo.inbound_tag='omrbridge'
|
|
|
|
set xray.omrroutingo.outbound_tag='out'
|
|
|
|
set xray.main_routing=routing
|
|
|
|
set xray.main_routing.enabled=1
|
|
|
|
set xray.main_routing.rules='omrrouting'
|
|
|
|
add_list xray.main_routing.rules='omrroutingo'
|
|
|
|
commit xray
|
|
|
|
EOF
|
|
|
|
fi
|
|
|
|
|
|
|
|
if [ "$(uci -q get xray.main.error_log)" != "/dev/null" ]; then
|
|
|
|
uci -q batch <<-EOF >/dev/null
|
|
|
|
set xray.main.error_log='/dev/null'
|
|
|
|
commit xray
|
|
|
|
EOF
|
|
|
|
fi
|
|
|
|
#if [ "$(uci -q get xray.main.mem_percentage)" = "0" ]; then
|
|
|
|
# uci -q batch <<-EOF >/dev/null
|
|
|
|
# set xray.main.mem_percentage='80'
|
|
|
|
# commit xray
|
|
|
|
# EOF
|
|
|
|
#fi
|
|
|
|
if [ "$(uci -q get xray.policy_level_0.conn_idle)" = "2400" ]; then
|
|
|
|
uci -q batch <<-EOF >/dev/null
|
|
|
|
set xray.policy_level_0.conn_idle='1200'
|
|
|
|
commit xray
|
|
|
|
EOF
|
|
|
|
fi
|
|
|
|
|
2023-10-17 15:35:03 +00:00
|
|
|
if [ "$(uci -q get xray.omrout.s_vmess_port)" = "65230" ]; then
|
2023-09-29 12:58:47 +00:00
|
|
|
uci -q batch <<-EOF >/dev/null
|
2023-10-17 15:35:03 +00:00
|
|
|
set xray.omrout.s_vmess_port='65250'
|
2023-09-29 12:58:47 +00:00
|
|
|
commit xray
|
|
|
|
EOF
|
|
|
|
fi
|
|
|
|
|
|
|
|
if [ "$(uci -q get xray.omrout.s_trojan_port)" = "" ]; then
|
|
|
|
uci -q batch <<-EOF >/dev/null
|
|
|
|
set xray.omrout.s_trojan_address=''
|
2023-10-17 15:35:03 +00:00
|
|
|
set xray.omrout.s_trojan_port='65249'
|
2023-09-29 12:58:47 +00:00
|
|
|
set xray.omrout.s_trojan_user_id=''
|
|
|
|
set xray.omrout.s_trojan_user_security='none'
|
|
|
|
set xray.omrout.s_trojan_user_encryption='none'
|
|
|
|
set xray.omrout.s_trojan_user_alter_id='0'
|
|
|
|
commit xray
|
|
|
|
EOF
|
|
|
|
fi
|
|
|
|
if [ "$(uci -q get xray.omrout.s_socks_port)" = "" ]; then
|
|
|
|
uci -q batch <<-EOF >/dev/null
|
|
|
|
set xray.omrout.s_socks_address=''
|
2023-10-17 15:35:03 +00:00
|
|
|
set xray.omrout.s_socks_port='65251'
|
2023-09-29 12:58:47 +00:00
|
|
|
set xray.omrout.s_socks_user_id=''
|
|
|
|
set xray.omrout.s_socks_user_security='none'
|
|
|
|
set xray.omrout.s_socks_user_encryption='none'
|
|
|
|
set xray.omrout.s_socks_user_alter_id='0'
|
|
|
|
commit xray
|
|
|
|
EOF
|
|
|
|
fi
|
2023-10-17 15:35:03 +00:00
|
|
|
if [ "$(uci -q get xray.omrout.s_shadowsocks_port)" = "" ]; then
|
|
|
|
uci -q batch <<-EOF >/dev/null
|
|
|
|
set xray.omrout.s_shadowsocks_address=''
|
|
|
|
set xray.omrout.s_shadowsocks_port='65252'
|
|
|
|
commit xray
|
|
|
|
EOF
|
|
|
|
fi
|
|
|
|
if [ "$(uci -q get xray.omrout.s_vless_reality_port)" = "" ]; then
|
|
|
|
uci -q batch <<-EOF >/dev/null
|
|
|
|
set xray.omrout.s_vless_reality_address=''
|
|
|
|
set xray.omrout.s_vless_reality_port='443'
|
|
|
|
set xray.omrout.s_vless_reality_flow='xtls-rprx-vision'
|
|
|
|
set xray.omrout.s_vless_reality_user_id=''
|
|
|
|
set xray.omrout.s_vless_reality_user_security='none'
|
|
|
|
set xray.omrout.s_vless_reality_user_encryption='none'
|
|
|
|
set xray.omrout.s_vless_reality_user_alter_id='0'
|
|
|
|
commit xray
|
|
|
|
EOF
|
|
|
|
fi
|
2023-09-29 12:58:47 +00:00
|
|
|
|
2023-10-02 19:24:32 +00:00
|
|
|
if [ "$(uci -q get xray.omrout.ss_sockopt_mptcp)" = "" ]; then
|
|
|
|
uci -q batch <<-EOF >/dev/null
|
|
|
|
set xray.omrout.ss_sockopt_mptcp='1'
|
|
|
|
commit xray
|
|
|
|
EOF
|
|
|
|
fi
|
|
|
|
|
2023-09-29 12:58:47 +00:00
|
|
|
exit 0
|