48 lines
1.3 KiB
Python
48 lines
1.3 KiB
Python
from xray_manager.core.outbound import (
|
|
OutboundFactory,
|
|
OutboundSpec,
|
|
ShadowsocksOutbound,
|
|
)
|
|
from xray_manager.core.xray_config import XrayConfig
|
|
from xray_manager.core.xray_manager_config import XrayManagerConfig
|
|
|
|
inbound = {
|
|
"tag": "shadowsocks",
|
|
"xrm": True,
|
|
"listen": "0.0.0.0",
|
|
"port": 8443,
|
|
"protocol": "shadowsocks",
|
|
"settings": {
|
|
"method": "2022-blake3-aes-256-gcm",
|
|
"password": "Z8WtMeWzZVh1F6/5URGrs8vWdB3CLN5y7A9D1U0Q65E=",
|
|
"clients": [
|
|
{
|
|
"email": "test-fr1",
|
|
"password": "zV3qwuj5TUng+mBMfqdInp0ih7i9ykSIzUig3v5d1Bg=",
|
|
},
|
|
{
|
|
"email": "test2-us1",
|
|
"password": "ZNtMDJ5WuaGa2ko2jMbbZguddcMY2TTirsb9cNYHffw=",
|
|
},
|
|
],
|
|
"network": "tcp,udp",
|
|
},
|
|
}
|
|
|
|
if __name__ == "__main__":
|
|
DEV_CONFIG_PATH = "tests/mock_data/etc/xray-manager/config.json"
|
|
xray_manager_config = XrayManagerConfig(DEV_CONFIG_PATH)
|
|
|
|
target = "us1"
|
|
target_pretty_name = xray_manager_config.targets.get(target, {}).get(
|
|
"pretty_name", target
|
|
)
|
|
|
|
outbound = ShadowsocksOutbound.from_scratch(
|
|
target, target_pretty_name, "127.0.0.1", inbound
|
|
)
|
|
|
|
link = outbound.to_link()
|
|
o = ShadowsocksOutbound.from_link(xray_manager_config.targets, link)
|
|
print(o)
|