From 77b18dc2feab3e7c917abfe12ff47719c8b349ab Mon Sep 17 00:00:00 2001 From: ProxySU Date: Thu, 23 Apr 2020 09:27:49 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0Trojan=E4=B8=80=E9=94=AE?= =?UTF-8?q?=E5=AE=89=E8=A3=853?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ProxySU/MainWindow.xaml.cs | 86 ++++++++++++++++-- ProxySU/ProxySU.csproj | 2 +- ProxySU/TrojanResultClientInfoWindow.xaml | 15 ++- ProxySU/TrojanResultClientInfoWindow.xaml.cs | 67 ++++++-------- ProxySU/bin/Release/ProxySU.exe | Bin 112128 -> 126976 bytes ProxySU/bin/Release/Release.zip | Bin 473825 -> 480233 bytes .../WebSocketTLSWeb_server_config.caddyfile | 4 +- .../trojan_caddy_config.caddyfile | 7 ++ .../TemplateConfg/trojan_client_config.json | 31 +++++++ .../TemplateConfg/trojan_nginx_config.nginx | 11 +++ .../TemplateConfg/trojan_server_config.json | 42 +++++++++ 11 files changed, 216 insertions(+), 49 deletions(-) create mode 100644 ProxySU/bin/Release/TemplateConfg/trojan_caddy_config.caddyfile create mode 100644 ProxySU/bin/Release/TemplateConfg/trojan_client_config.json create mode 100644 ProxySU/bin/Release/TemplateConfg/trojan_nginx_config.nginx create mode 100644 ProxySU/bin/Release/TemplateConfg/trojan_server_config.json diff --git a/ProxySU/MainWindow.xaml.cs b/ProxySU/MainWindow.xaml.cs index 8a381f3..8c3a05c 100644 --- a/ProxySU/MainWindow.xaml.cs +++ b/ProxySU/MainWindow.xaml.cs @@ -628,11 +628,46 @@ namespace ProxySU //MessageBox.Show(client.RunCommand(@"lsof -n -P -i :80 | grep LISTEN").Result); if (String.IsNullOrEmpty(client.RunCommand(@"lsof -n -P -i :80 | grep LISTEN").Result) == false || String.IsNullOrEmpty(client.RunCommand(@"lsof -n -P -i :443 | grep LISTEN").Result) == false) { - MessageBox.Show("80/443端口之一,或全部被占用,请先用系统工具中的“释放80/443端口”工具,释放出,再重新安装"); - currentStatus = "端口被占用,安装失败......"; + //MessageBox.Show("80/443端口之一,或全部被占用,请先用系统工具中的“释放80/443端口”工具,释放出,再重新安装"); + MessageBoxResult dialogResult = MessageBox.Show("80/443端口之一,或全部被占用,将强制停止占用80/443端口的程序?", "Stop application", MessageBoxButton.YesNo); + if (dialogResult == MessageBoxResult.No) + { + currentStatus = "端口被占用,安装失败......"; + textBlockName.Dispatcher.BeginInvoke(updateAction, textBlockName, progressBar, currentStatus); + Thread.Sleep(1000); + return; + } + + currentStatus = "正在释放80/443端口......"; textBlockName.Dispatcher.BeginInvoke(updateAction, textBlockName, progressBar, currentStatus); Thread.Sleep(1000); - return; + + string cmdTestPort = @"lsof -n -P -i :443 | grep LISTEN"; + string cmdResult = client.RunCommand(cmdTestPort).Result; + //MessageBox.Show(cmdTestPort); + if (String.IsNullOrEmpty(cmdResult) == false) + { + //MessageBox.Show(cmdResult); + string[] cmdResultArry443 = cmdResult.Split(' '); + //MessageBox.Show(cmdResultArry443[3]); + client.RunCommand($"systemctl stop {cmdResultArry443[0]}"); + client.RunCommand($"systemctl disable {cmdResultArry443[0]}"); + client.RunCommand($"kill -9 {cmdResultArry443[3]}"); + } + + cmdTestPort = @"lsof -n -P -i :80 | grep LISTEN"; + cmdResult = client.RunCommand(cmdTestPort).Result; + if (String.IsNullOrEmpty(cmdResult) == false) + { + string[] cmdResultArry80 = cmdResult.Split(' '); + client.RunCommand($"systemctl stop {cmdResultArry80[0]}"); + client.RunCommand($"systemctl disable {cmdResultArry80[0]}"); + client.RunCommand($"kill -9 {cmdResultArry80[3]}"); + } + currentStatus = "80/443端口释放完毕!"; + textBlockName.Dispatcher.BeginInvoke(updateAction, textBlockName, progressBar, currentStatus); + Thread.Sleep(1000); + } } currentStatus = "符合安装要求,布署中......"; @@ -1148,6 +1183,7 @@ namespace ProxySU { return; } + ConnectionInfo testconnect = GenerateConnectionInfo(); try { @@ -1178,7 +1214,7 @@ namespace ProxySU client.RunCommand($"systemctl disable {cmdResultArry80[0]}"); client.RunCommand($"kill -9 {cmdResultArry80[3]}"); } - MessageBox.Show("执行完毕!"); + MessageBox.Show("释放完毕!"); client.Disconnect(); } } @@ -1472,11 +1508,45 @@ namespace ProxySU //MessageBox.Show(client.RunCommand(@"lsof -n -P -i :80 | grep LISTEN").Result); if (String.IsNullOrEmpty(client.RunCommand(@"lsof -n -P -i :80 | grep LISTEN").Result) == false || String.IsNullOrEmpty(client.RunCommand(@"lsof -n -P -i :443 | grep LISTEN").Result) == false) { - MessageBox.Show("80/443端口之一,或全部被占用,请先用系统工具中的“释放80/443端口”工具,释放出,再重新安装"); - currentStatus = "端口被占用,安装失败......"; + MessageBoxResult dialogResult = MessageBox.Show("80/443端口之一,或全部被占用,将强制停止占用80/443端口的程序?", "Stop application", MessageBoxButton.YesNo); + if (dialogResult == MessageBoxResult.No) + { + currentStatus = "端口被占用,安装失败......"; + textBlockName.Dispatcher.BeginInvoke(updateAction, textBlockName, progressBar, currentStatus); + Thread.Sleep(1000); + return; + } + + currentStatus = "正在释放80/443端口......"; textBlockName.Dispatcher.BeginInvoke(updateAction, textBlockName, progressBar, currentStatus); Thread.Sleep(1000); - return; + + string cmdTestPort = @"lsof -n -P -i :443 | grep LISTEN"; + string cmdResult = client.RunCommand(cmdTestPort).Result; + //MessageBox.Show(cmdTestPort); + if (String.IsNullOrEmpty(cmdResult) == false) + { + //MessageBox.Show(cmdResult); + string[] cmdResultArry443 = cmdResult.Split(' '); + //MessageBox.Show(cmdResultArry443[3]); + client.RunCommand($"systemctl stop {cmdResultArry443[0]}"); + client.RunCommand($"systemctl disable {cmdResultArry443[0]}"); + client.RunCommand($"kill -9 {cmdResultArry443[3]}"); + } + + cmdTestPort = @"lsof -n -P -i :80 | grep LISTEN"; + cmdResult = client.RunCommand(cmdTestPort).Result; + if (String.IsNullOrEmpty(cmdResult) == false) + { + string[] cmdResultArry80 = cmdResult.Split(' '); + client.RunCommand($"systemctl stop {cmdResultArry80[0]}"); + client.RunCommand($"systemctl disable {cmdResultArry80[0]}"); + client.RunCommand($"kill -9 {cmdResultArry80[3]}"); + } + currentStatus = "80/443端口释放完毕!"; + textBlockName.Dispatcher.BeginInvoke(updateAction, textBlockName, progressBar, currentStatus); + Thread.Sleep(1000); + } } currentStatus = "符合安装要求,布署中......"; @@ -1509,7 +1579,7 @@ namespace ProxySU client.RunCommand("curl -o /tmp/trojan-quickstart.sh https://raw.githubusercontent.com/trojan-gfw/trojan-quickstart/master/trojan-quickstart.sh"); client.RunCommand("yes | bash /tmp/trojan-quickstart.sh"); - //client.RunCommand("bash /tmp/go.sh -f"); + string installResult = client.RunCommand("find / -name trojan").Result.ToString(); if (!installResult.Contains("/usr/local/bin/trojan")) diff --git a/ProxySU/ProxySU.csproj b/ProxySU/ProxySU.csproj index 9ad6c79..357b256 100644 --- a/ProxySU/ProxySU.csproj +++ b/ProxySU/ProxySU.csproj @@ -167,6 +167,6 @@ del "$(TargetDir)*.xml" del "$(TargetDir)*.pdb" del "$(TargetDir)*.zip" -"D:\Program Files\7-Zip\7z.exe" a $(TargetDir)Release.zip $(TargetDir) -xr!config +"D:\Program Files\7-Zip\7z.exe" a $(TargetDir)Release.zip $(TargetDir) -xr!*config \ No newline at end of file diff --git a/ProxySU/TrojanResultClientInfoWindow.xaml b/ProxySU/TrojanResultClientInfoWindow.xaml index eb1fe82..ec3867c 100644 --- a/ProxySU/TrojanResultClientInfoWindow.xaml +++ b/ProxySU/TrojanResultClientInfoWindow.xaml @@ -42,7 +42,20 @@ - + + + + + + + + + + + + + + diff --git a/ProxySU/TrojanResultClientInfoWindow.xaml.cs b/ProxySU/TrojanResultClientInfoWindow.xaml.cs index 3d7fb7d..67f991b 100644 --- a/ProxySU/TrojanResultClientInfoWindow.xaml.cs +++ b/ProxySU/TrojanResultClientInfoWindow.xaml.cs @@ -54,15 +54,16 @@ namespace ProxySU num++; } CheckDir(@"trojan_config\" + saveFileFolder); + string trojanUrl = $"trojan://{TextBoxTrojanServerPassword.Text}@{TextBoxTrojanServerHost.Text}:{TextBoxTrojanServerPort.Text}#{TextBoxTrojanServerHost.Text}"; //MessageBox.Show(v2rayNjsonObject.ToString()); - // string vmessUrl = "vmess://" + ToBase64Encode(v2rayNjsonObject.ToString()); - //TextBoxvVmessUrl.Text = vmessUrl; - //using (StreamWriter sw = new StreamWriter($"trojan_config\\{saveFileFolder}\\url.txt")) - //{ - // sw.WriteLine(vmessUrl); + //string trojanUrl = "trojan://" + ToBase64Encode(v2rayNjsonObject.ToString()); + TextBoxTrojanUrl.Text = trojanUrl; + using (StreamWriter sw = new StreamWriter($"trojan_config\\{saveFileFolder}\\url.txt")) + { + sw.WriteLine(trojanUrl); - //} - //CreateQRCode(vmessUrl); + } + CreateQRCode(trojanUrl); //移动Trojan官方程序配置文件到相应目录 if (File.Exists(@"trojan_config\config.json")) @@ -78,46 +79,38 @@ namespace ProxySU sw.WriteLine("Trojan官方网站:https://trojan-gfw.github.io/trojan/"); sw.WriteLine("Trojan官方程序下载地址:https://github.com/trojan-gfw/trojan/releases"); sw.WriteLine("下载相应版本,Windows选择Trojan-x.xx-win.zip,解压后提取trojan.exe。与config.json放在同一目录,运行trojan.exe即可。"); - //sw.WriteLine("-----------------------------------------"); - //sw.WriteLine("QR.bmp"); - //sw.WriteLine("此文件为v2rayN、v2rayNG(Android)、Shadowrocket(ios)扫码导入节点"); - //sw.WriteLine("v2rayN下载网址:https://github.com/2dust/v2rayN/releases"); - //sw.WriteLine("v2rayNG(Android)下载网址:https://github.com/2dust/v2rayNG/releases"); - //sw.WriteLine("v2rayNG(Android)在Google Play下载网址:https://play.google.com/store/apps/details?id=com.v2ray.ang"); - //sw.WriteLine("Shadowrocket(ios)下载,需要使用国外区的AppleID。请自行谷歌方法。"); + sw.WriteLine("-----------------------------------------\n"); + sw.WriteLine("QR.bmp"); + sw.WriteLine("此文件为Trojan-QT5 (windows)、Shadowrocket(ios)扫码导入节点"); + sw.WriteLine("Trojan-QT5 (windows)下载网址:https://github.com/TheWanderingCoel/Trojan-Qt5/releases"); + sw.WriteLine("Shadowrocket(ios)下载,需要使用国外区的AppleID。请自行谷歌方法。"); - //sw.WriteLine("-----------------------------------------"); - //sw.WriteLine("url.txt"); - //sw.WriteLine("此文件为v2rayN、v2rayNG(Android)、Shadowrocket(ios)复制粘贴导入节点的vmess网址"); - //sw.WriteLine("-----------------------------------------\n"); + sw.WriteLine("-----------------------------------------\n"); + sw.WriteLine("url.txt"); + sw.WriteLine("此文件为Trojan-QT5 (windows)、Shadowrocket(ios)复制粘贴导入节点的网址"); + sw.WriteLine("-----------------------------------------\n"); sw.WriteLine("服务器通用连接配置参数"); sw.WriteLine($"地址(address):{TextBoxTrojanServerHost.Text}"); sw.WriteLine($"端口(Port):{TextBoxTrojanServerPort.Text}"); sw.WriteLine($"密钥:{TextBoxTrojanServerPassword.Text}"); - //sw.WriteLine($"额外ID:{TextBoxUUIDextra.Text}"); - //sw.WriteLine($"加密方式:{TextBoxEncryption.Text}"); - //sw.WriteLine($"传输协议:{TextBoxTransmission.Text}"); - //sw.WriteLine($"伪装类型:{TextBoxCamouflageType.Text}"); - //sw.WriteLine($"是否使用TLS:{TextBoxTLS.Text}"); - //sw.WriteLine($"host:{TextBoxHostAddress.Text}"); - //sw.WriteLine($"路径(Path):{TextBoxPath.Text}"); - //sw.WriteLine($"QUIC密钥:{TextBoxQuicKey.Text}"); + } } //生成base64 - private string ToBase64Encode(string text) - { - if (String.IsNullOrEmpty(text)) - { - return text; - } + //private string ToBase64Encode(string text) + //{ + // if (String.IsNullOrEmpty(text)) + // { + // return text; + // } + + // byte[] textBytes = Encoding.UTF8.GetBytes(text); + // return Convert.ToBase64String(textBytes); + //} - byte[] textBytes = Encoding.UTF8.GetBytes(text); - return Convert.ToBase64String(textBytes); - } //生成QRcoder图片 private void CreateQRCode(string varBase64) { @@ -128,10 +121,10 @@ namespace ProxySU Bitmap qrCodeImage = qrCode.GetGraphic(20); IntPtr myImagePtr = qrCodeImage.GetHbitmap(); BitmapSource imgsource = System.Windows.Interop.Imaging.CreateBitmapSourceFromHBitmap(myImagePtr, IntPtr.Zero, Int32Rect.Empty, BitmapSizeOptions.FromEmptyOptions()); - //ImageShareQRcode.Source = imgsource; + ImageTrojanShareQRurl.Source = imgsource; //DeleteObject(myImagePtr); qrCodeImage.Save($"trojan_config\\{saveFileFolder}\\QR.bmp"); - //ImageShareQRcode.Source = @"config\v2rayN.bmp"; + } //判断目录是否存在,不存在则创建 private static bool CheckDir(string folder) diff --git a/ProxySU/bin/Release/ProxySU.exe b/ProxySU/bin/Release/ProxySU.exe index 23952f7be5c8c3144b0a77e5c247b206c874861d..e5543e12a3c13d36d03775995b5c93aa854fe8ce 100644 GIT binary patch delta 25463 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 delta 16033 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 diff --git a/ProxySU/bin/Release/Release.zip b/ProxySU/bin/Release/Release.zip index 169ab9da7c2add22c4e0cbb5d08644004e255af0..e5ec49fd629c88d5c2d7383402bb46201e16e7d1 100644 GIT binary patch delta 35955 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 -J>eI`!l-IzTto<(uGwA?g-h;MxA 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 UfQO@mF@s-uH4LV~6@gd(0}!tp#{d8T delta 29746 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 diff --git a/ProxySU/bin/Release/TemplateConfg/WebSocketTLSWeb_server_config.caddyfile b/ProxySU/bin/Release/TemplateConfg/WebSocketTLSWeb_server_config.caddyfile index 9ba684f..fbb8bc6 100644 --- a/ProxySU/bin/Release/TemplateConfg/WebSocketTLSWeb_server_config.caddyfile +++ b/ProxySU/bin/Release/TemplateConfg/WebSocketTLSWeb_server_config.caddyfile @@ -1,6 +1,6 @@ ##domain## { - log stdout - errors stderr + log stdout + errors stderr root /var/www tls off ##sites## diff --git a/ProxySU/bin/Release/TemplateConfg/trojan_caddy_config.caddyfile b/ProxySU/bin/Release/TemplateConfg/trojan_caddy_config.caddyfile new file mode 100644 index 0000000..a477583 --- /dev/null +++ b/ProxySU/bin/Release/TemplateConfg/trojan_caddy_config.caddyfile @@ -0,0 +1,7 @@ +##domain## { + log stdout + errors stderr + root /var/www + tls off + ##sites## +} \ No newline at end of file diff --git a/ProxySU/bin/Release/TemplateConfg/trojan_client_config.json b/ProxySU/bin/Release/TemplateConfg/trojan_client_config.json new file mode 100644 index 0000000..6d98767 --- /dev/null +++ b/ProxySU/bin/Release/TemplateConfg/trojan_client_config.json @@ -0,0 +1,31 @@ +{ + "run_type": "client", + "local_addr": "127.0.0.1", + "local_port": 1080, + "remote_addr": null, + "remote_port": 443, + "password": [ + "" + ], + "log_level": 1, + "ssl": { + "verify": true, + "verify_hostname": true, + "cert": "", + "cipher": "ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-RSA-AES128-SHA:ECDHE-RSA-AES256-SHA:RSA-AES128-GCM-SHA256:RSA-AES256-GCM-SHA384:RSA-AES128-SHA:RSA-AES256-SHA:RSA-3DES-EDE-SHA", + "sni": "", + "alpn": [ + "h2", + "http/1.1" + ], + "reuse_session": true, + "session_ticket": false, + "curves": "" + }, + "tcp": { + "no_delay": true, + "keep_alive": true, + "fast_open": false, + "fast_open_qlen": 20 + } +} diff --git a/ProxySU/bin/Release/TemplateConfg/trojan_nginx_config.nginx b/ProxySU/bin/Release/TemplateConfg/trojan_nginx_config.nginx new file mode 100644 index 0000000..f594ced --- /dev/null +++ b/ProxySU/bin/Release/TemplateConfg/trojan_nginx_config.nginx @@ -0,0 +1,11 @@ +server { + listen 80; + listen [::]:80; + server_name ##domain##; + root /var/www/html; + index index.html index.htm; + location / { + proxy_pass ##sites##; + try_files $uri $uri/ =404; + } +} diff --git a/ProxySU/bin/Release/TemplateConfg/trojan_server_config.json b/ProxySU/bin/Release/TemplateConfg/trojan_server_config.json new file mode 100644 index 0000000..fa0735c --- /dev/null +++ b/ProxySU/bin/Release/TemplateConfg/trojan_server_config.json @@ -0,0 +1,42 @@ +{ + "run_type": "server", + "local_addr": "0.0.0.0", + "local_port": 443, + "remote_addr": "127.0.0.1", + "remote_port": 80, + "password": [ + "" + ], + "log_level": 1, + "ssl": { + "cert": "/usr/local/etc/trojan/trojan_ssl.crt", + "key": "/usr/local/etc/trojan/trojan_ssl.key", + "key_password": "", + "cipher": "ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256", + "prefer_server_cipher": true, + "alpn": [ + "http/1.1" + ], + "reuse_session": true, + "session_ticket": false, + "session_timeout": 600, + "plain_http_response": "", + "curves": "", + "dhparam": "" + }, + "tcp": { + "prefer_ipv4": false, + "no_delay": true, + "keep_alive": true, + "fast_open": false, + "fast_open_qlen": 20 + }, + "mysql": { + "enabled": false, + "server_addr": "127.0.0.1", + "server_port": 3306, + "database": "trojan", + "username": "trojan", + "password": "" + } +}