From d91e6fb667522063abfa49ebf59379e5e8b726ab Mon Sep 17 00:00:00 2001 From: ProxySU Date: Mon, 17 Aug 2020 15:23:08 +0800 Subject: [PATCH] =?UTF-8?q?V2Ray,Trojan\Trojan-Go,Naiveproxy=E5=AE=89?= =?UTF-8?q?=E8=A3=85=E4=BC=98=E5=8C=96=EF=BC=8C=E5=85=A8=E9=9D=A2=E9=80=82?= =?UTF-8?q?=E9=85=8DCaddy2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ProxySU/MainWindow.xaml | 8 +- ProxySU/MainWindow.xaml.cs | 226 ++++++++++-------- ProxySU/Properties/AssemblyInfo.cs | 6 +- ProxySU/bin/Beta/Beta.zip | Bin 494690 -> 494968 bytes .../Naiveproxy_server_config.caddyfile | 14 -- TemplateConfg/Naiveproxy_server_config.json | 69 +++++- 6 files changed, 194 insertions(+), 129 deletions(-) delete mode 100644 TemplateConfg/Naiveproxy_server_config.caddyfile diff --git a/ProxySU/MainWindow.xaml b/ProxySU/MainWindow.xaml index 0f01282..12f723e 100644 --- a/ProxySU/MainWindow.xaml +++ b/ProxySU/MainWindow.xaml @@ -196,8 +196,8 @@ - - + + @@ -208,7 +208,7 @@ - + @@ -410,7 +410,7 @@ - + diff --git a/ProxySU/MainWindow.xaml.cs b/ProxySU/MainWindow.xaml.cs index f21e911..d0194d7 100644 --- a/ProxySU/MainWindow.xaml.cs +++ b/ProxySU/MainWindow.xaml.cs @@ -37,7 +37,7 @@ namespace ProxySU public static string[] ReceiveConfigurationParameters { get; set; } //ReceiveConfigurationParameters[0]----模板类型 //ReceiveConfigurationParameters[1]----服务端口 - //ReceiveConfigurationParameters[2]----uuid + //ReceiveConfigurationParameters[2]----uuid/naive'password //ReceiveConfigurationParameters[3]----path/naive'user //ReceiveConfigurationParameters[4]----domain //ReceiveConfigurationParameters[5]----伪装类型 @@ -332,6 +332,7 @@ namespace ProxySU WindowTemplateConfiguration windowTemplateConfiguration = new WindowTemplateConfiguration(); windowTemplateConfiguration.ShowDialog(); } + //传送V2Ray模板参数,启动V2Ray安装进程 private void Button_Login_Click(object sender, RoutedEventArgs e) @@ -450,6 +451,7 @@ namespace ProxySU //task.Start(); } + //登录远程主机布署V2ray程序 private void StartSetUpV2ray(ConnectionInfo connectionInfo,TextBlock textBlockName, ProgressBar progressBar, string serverConfig,string clientConfig,string upLoadPath) { @@ -1133,6 +1135,7 @@ namespace ProxySU thread.SetApartmentState(ApartmentState.STA); thread.Start(); } + //升级V2ray主程序 private void UpdateV2ray(ConnectionInfo connectionInfo, TextBlock textBlockName, ProgressBar progressBar) { @@ -3217,7 +3220,7 @@ namespace ProxySU TextBoxNaiveUser.Text = RandomUserName(); } - //NaiveProxy一键安装开始 + //NaiveProxy一键安装开始传递参数 private void ButtonNavieSetUp_Click(object sender, RoutedEventArgs e) { if (string.IsNullOrEmpty(TextBoxNaiveHostDomain.Text) == true) @@ -3225,8 +3228,7 @@ namespace ProxySU MessageBox.Show("域名不能为空!"); return; } - ReceiveConfigurationParameters[4] = TextBoxNaiveHostDomain.Text; - + ConnectionInfo connectionInfo = GenerateConnectionInfo(); if (connectionInfo == null) { @@ -3235,7 +3237,7 @@ namespace ProxySU } string serverConfig = "TemplateConfg\\Naiveproxy_server_config.json"; //服务端配置文件 string clientConfig = "TemplateConfg\\Naiveproxy_client_config.json"; //生成的客户端配置文件 - string upLoadPath = "/etc/caddy/Caddyfile"; //Caddy服务端文件位置 + string upLoadPath = "/etc/caddy/config.json"; //Caddy服务端文件位置 //传递参数 ReceiveConfigurationParameters[4] = TextBoxNaiveHostDomain.Text;//传递域名 @@ -3316,16 +3318,14 @@ namespace ProxySU return; } //检测是否安装有NaiveProxy - currentStatus = "检测系统是否已经安装NaiveProxy......"; + currentStatus = "检测系统是否已经安装Caddy......"; textBlockName.Dispatcher.BeginInvoke(updateAction, textBlockName, progressBar, currentStatus); Thread.Sleep(1000); - //string cmdTestTrojanInstalled = @"find / -name trojan"; - string resultCmdTestTrojanInstalled = client.RunCommand(@"find / -name naive").Result; - - if (resultCmdTestTrojanInstalled.Contains("/usr/local/bin/naive") == true) + string resultCmdTestTrojanInstalled = client.RunCommand(@"find / -name caddy").Result; + if (resultCmdTestTrojanInstalled.Contains("/usr/bin/caddy") == true) { - MessageBoxResult messageBoxResult = MessageBox.Show("远程主机已安装NaiveProxy,是否强制重新安装?", "", MessageBoxButton.YesNo, MessageBoxImage.Question); + MessageBoxResult messageBoxResult = MessageBox.Show("远程主机已安装Caddy,但不确定是否支持forward proxy,是否强制重新安装?", "", MessageBoxButton.YesNo, MessageBoxImage.Question); if (messageBoxResult == MessageBoxResult.No) { currentStatus = "安装取消,退出"; @@ -3334,6 +3334,13 @@ namespace ProxySU client.Disconnect(); return; } + else + { + currentStatus = "正在卸载Caddy"; + textBlockName.Dispatcher.BeginInvoke(updateAction, textBlockName, progressBar, currentStatus); + Thread.Sleep(1000); + //卸载Caddy代码 + } } //检测远程主机系统环境是否符合要求 @@ -3342,11 +3349,6 @@ namespace ProxySU Thread.Sleep(1000); string resultCmd = client.RunCommand("uname -m").Result; - //var result = client.RunCommand("cat /root/test.ver"); - //string[] linuxKernelVerStr = resultCmd.Split('-'); - - //bool detectResult = DetectKernelVersion(linuxKernelVerStr[0]); - if (resultCmd.Contains("x86_64") == false) { MessageBox.Show($"请在x86_64系统中安装NaiveProxy"); @@ -3355,17 +3357,18 @@ namespace ProxySU Thread.Sleep(1000); } - //检测系统是否支持yum 或 apt-get或zypper,且支持Systemd + //检测系统是否支持dnf\yum 或 apt或zypper,且支持Systemd //如果不存在组件,则命令结果为空,string.IsNullOrEmpty值为真, - bool getApt = String.IsNullOrEmpty(client.RunCommand("command -v apt-get").Result); + bool getApt = String.IsNullOrEmpty(client.RunCommand("command -v apt").Result); + bool getDnf = String.IsNullOrEmpty(client.RunCommand("command -v dnf").Result); bool getYum = String.IsNullOrEmpty(client.RunCommand("command -v yum").Result); bool getZypper = String.IsNullOrEmpty(client.RunCommand("command -v zypper").Result); bool getSystemd = String.IsNullOrEmpty(client.RunCommand("command -v systemctl").Result); bool getGetenforce = String.IsNullOrEmpty(client.RunCommand("command -v getenforce").Result); - //没有安装apt-get,也没有安装yum,也没有安装zypper,或者没有安装systemd的,不满足安装条件 - //也就是apt-get ,yum, zypper必须安装其中之一,且必须安装Systemd的系统才能安装。 - if ((getApt && getYum && getZypper) || getSystemd) + //没有安装apt,也没有安装dnf\yum,也没有安装zypper,或者没有安装systemd的,不满足安装条件 + //也就是apt,dnf\yum, zypper必须安装其中之一,且必须安装Systemd的系统才能安装。 + if ((getApt && getDnf && getYum && getZypper) || getSystemd) { MessageBox.Show($"系统缺乏必要的安装组件如:apt-get||yum||zypper||Syetemd,主机系统推荐使用:CentOS 7/8,Debian 8/9/10,Ubuntu 16.04及以上版本"); currentStatus = "系统环境不满足要求,安装失败!!"; @@ -3378,10 +3381,8 @@ namespace ProxySU if (getGetenforce == false) { string testSELinux = client.RunCommand("getenforce").Result; - //MessageBox.Show(testSELinux); if (testSELinux.Contains("Enforcing") == true) { - //MessageBox.Show("Enforcing"); client.RunCommand("setenforce 0");//不重启改为Permissive模式 client.RunCommand("sed -i 's/SELINUX=enforcing/SELINUX=permissive/' /etc/selinux/config");//重启也工作在Permissive模式下 } @@ -3390,18 +3391,18 @@ namespace ProxySU //安装所需软件 if (getApt == false) { - client.RunCommand("apt-get -qq update"); - client.RunCommand("apt-get -y -qq install curl libnss3 xz-utils lsof"); + client.RunCommand("apt -qq update"); + client.RunCommand("apt -y -qq install curl libnss3 xz-utils lsof unzip"); } if (getYum == false) { client.RunCommand("yum -q makecache"); - client.RunCommand("yum -y -q install curl nss xz lsof"); + client.RunCommand("yum -y -q install curl nss xz lsof unzip"); } if (getZypper == false) { client.RunCommand("zypper ref"); - client.RunCommand("zypper -y install curl nss xz lsof"); + client.RunCommand("zypper -y install curl nss xz lsof unzip"); } currentStatus = "正在检测域名是否解析到当前VPS的IP上......"; @@ -3410,11 +3411,8 @@ namespace ProxySU string nativeIp = client.RunCommand("curl -4 ip.sb").Result.ToString(); - //MessageBox.Show(nativeIp); string testDomainCmd = "ping " + ReceiveConfigurationParameters[4] + " -c 1 | grep -oE -m1 \"([0-9]{1,3}\\.){3}[0-9]{1,3}\""; - //MessageBox.Show(testDomainCmd); string resultTestDomainCmd = client.RunCommand(testDomainCmd).Result.ToString(); - //MessageBox.Show(resultTestDomainCmd); if (String.Equals(nativeIp, resultTestDomainCmd) == true) { currentStatus = "解析正确!"; @@ -3453,12 +3451,9 @@ namespace ProxySU 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]}"); @@ -3476,38 +3471,12 @@ namespace ProxySU currentStatus = "80/443端口释放完毕!"; textBlockName.Dispatcher.BeginInvoke(updateAction, textBlockName, progressBar, currentStatus); Thread.Sleep(1000); - } currentStatus = "符合安装要求,布署中......"; textBlockName.Dispatcher.BeginInvoke(updateAction, textBlockName, progressBar, currentStatus); Thread.Sleep(1000); - //下载安装脚本安装 - - client.RunCommand("curl -o /tmp/naive-quickstart.sh https://raw.githubusercontent.com/proxysu/shellscript/master/naive-quickstart.sh"); - client.RunCommand("yes | bash /tmp/naive-quickstart.sh"); - - string installResult = client.RunCommand("find / -name naive").Result.ToString(); - - if (!installResult.Contains("/usr/local/bin/naive")) - { - MessageBox.Show("安装NaiveProxy失败(脚本运行出错!"); - client.Disconnect(); - currentStatus = "安装NaiveProxy失败(脚本运行出错!"; - textBlockName.Dispatcher.BeginInvoke(updateAction, textBlockName, progressBar, currentStatus); - client.Disconnect(); - return; - } - - - //上传配置文件 - currentStatus = "NaiveProxy程序安装完毕......"; - textBlockName.Dispatcher.BeginInvoke(updateAction, textBlockName, progressBar, currentStatus); - Thread.Sleep(1000); - - - //打开防火墙端口 string openFireWallPort = "443";//ReceiveConfigurationParameters[1]; if (String.IsNullOrEmpty(client.RunCommand("command -v firewall-cmd").Result) == false) @@ -3541,72 +3510,118 @@ namespace ProxySU } } - currentStatus = "正在启动NaiveProxy......"; - textBlockName.Dispatcher.BeginInvoke(updateAction, textBlockName, progressBar, currentStatus); - Thread.Sleep(1000); - //启动V2ray服务 - client.RunCommand("systemctl restart naive"); - - currentStatus = "NaivePrxoy启动成功!"; - textBlockName.Dispatcher.BeginInvoke(updateAction, textBlockName, progressBar, currentStatus); - Thread.Sleep(1000); - - currentStatus = "正在安装Caddy"; textBlockName.Dispatcher.BeginInvoke(updateAction, textBlockName, progressBar, currentStatus); Thread.Sleep(1000); - client.RunCommand("curl https://getcaddy.com -o getcaddy"); - client.RunCommand("bash getcaddy personal hook.service,http.forwardproxy"); - client.RunCommand("mkdir -p /etc/caddy"); - client.RunCommand("mkdir -p /var/www"); + //安装Caddy + //为假则表示系统有相应的组件。 + if (getApt == false) + { + client.RunCommand(@"echo ""deb [trusted=yes] https://apt.fury.io/caddy/ /"" | tee -a /etc/apt/sources.list.d/caddy-fury.list"); + client.RunCommand("apt install -y apt-transport-https"); + client.RunCommand("apt -qq update"); + client.RunCommand("apt -y -qq install caddy"); + } + else if (getDnf == false) + { + client.RunCommand(@"dnf install 'dnf-command(copr)' -y"); + client.RunCommand(@"dnf copr enable @caddy/caddy -y"); + //client.RunCommand("dnf -q makecache"); + client.RunCommand("dnf -y -q install caddy"); + } + else if (getYum == false) + { + client.RunCommand(@"yum install yum-plugin-copr -y"); + client.RunCommand(@"yum copr enable @caddy/caddy -y"); + //client.RunCommand("yum -q makecache"); + client.RunCommand("yum -y -q install caddy"); + } + //else if (getZypper == false) + //{ + // client.RunCommand("zypper ref"); + // client.RunCommand("zypper -y install curl"); + //} + string installResult = client.RunCommand("find / -name caddy").Result.ToString(); + + if (!installResult.Contains("/usr/bin/caddy")) + { + MessageBox.Show("安装Caddy失败!"); + + currentStatus = "安装Caddy失败!退出"; + textBlockName.Dispatcher.BeginInvoke(updateAction, textBlockName, progressBar, currentStatus); + client.Disconnect(); + return; + } + else + { + currentStatus = "Caddy安装成功!"; + textBlockName.Dispatcher.BeginInvoke(updateAction, textBlockName, progressBar, currentStatus); + Thread.Sleep(1000); + client.RunCommand("systemctl enable caddy"); + } + + //使用带插件的Caddy替换 + currentStatus = "正在为NaiveProxy升级服务端!"; + textBlockName.Dispatcher.BeginInvoke(updateAction, textBlockName, progressBar, currentStatus); + Thread.Sleep(1000); + + client.RunCommand(@"curl -o /tmp/caddy.zip https://raw.githubusercontent.com/proxysu/Resources/master/Caddy2/caddy20200816.zip"); + client.RunCommand(@"unzip /tmp/caddy.zip"); //解压到当前目录 ~/ + client.RunCommand(@"chmod +x caddy"); + client.RunCommand(@"systemctl stop caddy;rm -f /usr/bin/caddy"); + client.RunCommand(@"cp ./caddy /usr/bin/"); currentStatus = "上传Caddy配置文件......"; textBlockName.Dispatcher.BeginInvoke(updateAction, textBlockName, progressBar, currentStatus); Thread.Sleep(1000); - string caddyConfig = "TemplateConfg\\Naiveproxy_server_config.caddyfile"; - upLoadPath = "/etc/caddy/Caddyfile"; - UploadConfig(connectionInfo, caddyConfig, upLoadPath); - - //设置Caddyfile文件中的tls 邮箱 - string email = $"user@{ReceiveConfigurationParameters[4]}"; - - //设置域名 - string sshCmd = $"sed -i 's/##domain##/{ReceiveConfigurationParameters[4]}/' {upLoadPath}"; - client.RunCommand(sshCmd); - //MessageBox.Show(sshCmd); - - //设置TLS邮箱 - sshCmd = $"sed -i 's/off/{email}/' {upLoadPath}"; - client.RunCommand(sshCmd); - //设置用户名密码 - sshCmd = $"sed -i 's/##basicauth##/basicauth {ReceiveConfigurationParameters[3]} {ReceiveConfigurationParameters[2]}/' {upLoadPath}"; - client.RunCommand(sshCmd); - //设置伪装网站 - if (String.IsNullOrEmpty(ReceiveConfigurationParameters[7]) == false) + //生成服务端配置 + + //string email = $"user@{ReceiveConfigurationParameters[4]}";//生成Caddyfile文件中的tls 邮箱 + string caddyConfig = "TemplateConfg\\Naiveproxy_server_config.json"; + using (StreamReader reader = File.OpenText(caddyConfig)) { - sshCmd = $"sed -i 's/##sites##/proxy \\/ {ReceiveConfigurationParameters[7]}/' {upLoadPath}"; - //MessageBox.Show(sshCmd); - client.RunCommand(sshCmd); + JObject serverJson = (JObject)JToken.ReadFrom(new JsonTextReader(reader)); + serverJson["apps"]["http"]["servers"]["srv0"]["routes"][0]["handle"][0]["auth_user"] = ReceiveConfigurationParameters[3];//----用户名 + serverJson["apps"]["http"]["servers"]["srv0"]["routes"][0]["handle"][0]["auth_pass"] = ReceiveConfigurationParameters[2]; //----密码 + + serverJson["apps"]["http"]["servers"]["srv0"]["routes"][1]["match"][0]["host"][0] = ReceiveConfigurationParameters[4]; //----域名 + + serverJson["apps"]["http"]["servers"]["srv0"]["tls_connection_policies"][0]["match"]["sni"][0] = ReceiveConfigurationParameters[4]; //----域名 + + serverJson["apps"]["tls"]["automation"]["policies"][0]["subjects"][0] = ReceiveConfigurationParameters[4]; //-----域名 + serverJson["apps"]["tls"]["automation"]["policies"][0]["issuer"]["email"] = $"user@{ReceiveConfigurationParameters[4]}"; //-----邮箱 + //保存配置文件 + using (StreamWriter sw = new StreamWriter(@"config.json")) + { + sw.Write(serverJson.ToString()); + } } - Thread.Sleep(2000); + upLoadPath = "/etc/caddy/config.json"; + UploadConfig(connectionInfo, @"config.json", upLoadPath); - //安装Caddy服务 - sshCmd = $"caddy -service install -agree -conf /etc/caddy/Caddyfile -email {email}"; - //MessageBox.Show(sshCmd); - client.RunCommand(sshCmd); + File.Delete(@"config.json"); - //启动Caddy服务 - client.RunCommand("caddy -service restart"); + client.RunCommand(@"sed -i 's/Caddyfile/config.json/' /lib/systemd/system/caddy.service"); + client.RunCommand("systemctl daemon-reload"); + client.RunCommand("systemctl restart caddy"); //启动Caddy服务 + ////设置伪装网站 + //if (String.IsNullOrEmpty(ReceiveConfigurationParameters[7]) == false) + //{ + // sshCmd = $"sed -i 's/##sites##/proxy \\/ {ReceiveConfigurationParameters[7]}/' {upLoadPath}"; + // //MessageBox.Show(sshCmd); + // client.RunCommand(sshCmd); + //} + //Thread.Sleep(2000); currentStatus = "正在优化网络参数......"; textBlockName.Dispatcher.BeginInvoke(updateAction, textBlockName, progressBar, currentStatus); Thread.Sleep(1000); //优化网络参数 - sshCmd = @"bash -c 'echo ""fs.file-max = 51200"" >> /etc/sysctl.conf'"; + string sshCmd = @"bash -c 'echo ""fs.file-max = 51200"" >> /etc/sysctl.conf'"; client.RunCommand(sshCmd); sshCmd = @"bash -c 'echo ""net.core.rmem_max = 67108864"" >> /etc/sysctl.conf'"; client.RunCommand(sshCmd); @@ -3651,7 +3666,6 @@ namespace ProxySU //测试BBR条件,若满足提示是否启用 var result = client.RunCommand("uname -r"); - //var result = client.RunCommand("cat /root/test.ver"); string[] linuxKernelVerStr = result.Result.Split('-'); bool detectResult = DetectKernelVersionBBR(linuxKernelVerStr[0]); diff --git a/ProxySU/Properties/AssemblyInfo.cs b/ProxySU/Properties/AssemblyInfo.cs index 93467fc..32375c0 100644 --- a/ProxySU/Properties/AssemblyInfo.cs +++ b/ProxySU/Properties/AssemblyInfo.cs @@ -8,7 +8,7 @@ using System.Windows; // 控制。更改这些特性值可修改 // 与程序集关联的信息。 [assembly: AssemblyTitle("ProxySU")] -[assembly: AssemblyDescription("V2ray,Trojan,NaiveProxy一键安装工具")] +[assembly: AssemblyDescription("V2ray,Trojan,NaiveProxy,Trojan-Go一键安装工具")] [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany("ProxySU")] [assembly: AssemblyProduct("ProxySU")] @@ -51,5 +51,5 @@ using System.Windows; // 可以指定所有值,也可以使用以下所示的 "*" 预置版本号和修订号 // 方法是按如下所示使用“*”: : // [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.7.3.0")] -[assembly: AssemblyFileVersion("1.7.3.0")] +[assembly: AssemblyVersion("1.8.0.0")] +[assembly: AssemblyFileVersion("1.8.0.0")] diff --git a/ProxySU/bin/Beta/Beta.zip b/ProxySU/bin/Beta/Beta.zip index 72f4ded542f57b75018919fcc707e73b258f2dd3..eb649a727ec56e3bb800ea5d52281b0a9b4bded4 100644 GIT binary patch delta 48445 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%0AyHG$_Va{7F(x@8TsoDHsJ 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ΠEobyGvWH3)i zF{-fr6b%cGv+x2-MF`rOT%q!5@ON#wNA4W%K#3In(I7MnBO?I|NqR9>R3a&n zMGwh-4`du^wy$P#mmnc&KLs1&rlf|55pBpuHt;=StgTyOX6}6a)Qs^JB79Fuo4H(E zwFcZi+XE*80vs|EUMnuWoiV*xf9aq~9_m0G<^pR7zMMYweP=-T!j=h2KaHjkY-OC^ zCtt231ZbBVcCDy%Rjz~{`C_GfoQ5KzMh@zY4sWCW*@!eiF7yr6j!^qdq&4v!>gESU znb6s5Xz&38KHfFXUc&-Zp+mgT8rP%%+Q=w+253qba-pmakPr|Ja3BUvz-M5)nv7i_ z)B9EDh@nHtlG$>nWCSvRLNKjK9v+Xas^cv;b-%Qqp`;pP953tXlJDgv&&plD$IN>k zn-;w))p?Hgf=2WWc&3mw?(?hZudw=5!vQxhjRvnwyH)F*HA?OsMCM}KbdwbG;g5Zx zPV|_+n95CBOhgri*N}akFvWm@yN9C<;T|;EaX8oX+?r6_QXNSB89xvtR!vn-aRiY+ zXhU5f5atMy8o=s;^v^^;Lu;p`$qO+a+a)HwW1L}y6PuCW08Huf!pg&plj zZZ4a)h-JZ)m`M`dZ)XY?RXgQgmT4B6>hRww=7&4>wQLRi3@64Q38CJVQ}b*RDV*TJ z*WlV3iBUxn_ouU^JT0NO`T zFA$0{&@h+~5D;(>+M0!prJ8_L;=g?a5_bo%qF{3-Ett8?L&EF-RZyrqz#O(YuJi-= z_YMyLHVPP2%7XkvOIi!|a0SBk0NdElME_&+p)KaGjg|+14T|&@6zc(?fo*9Q^Eds+ zmJQ0I8g%6WU?6$(HxKz~)}GaXVjfaa1``=8f+EQH{f6T<{7-@0st3<@*g)4|G3kZ{l_^- zPzFE_s`3XQVFNM^vy{QHh)2D7cvDc87l00GT<+iWdr+h!03Gx`0&HSuV3_~cM7s9B zOlZD>O%CM$ZSoG}@)ht2H<_&fg zuk;_TfZkwN|3fwYr7D!)s1s!XEGSJ09OFOL%5mL``Wqt;Bs;(iqdLt4wzH{IR6v}BJ~Bpq5RA0O+g&K;If9) z|Bb!_)vEnp6N0k-@)!zlrM)Sr{x5&5@y7cB0f?YA_5Z7m$oh=xA&l5OB&6Gan*8So zf`j<)iwpz=E5v{Hyf^3^2oS~|6;5oC1`qRpIeJr&lpnZkKJB-%WBmZMD4#OkN_tb! z&|jcP=ik6Pkf8Rz#zT*3{^H-Z{vQ(wf3V4{?q3r;P>er-0~@CA&F8=L|3+!H?*Fte zul~P{{&U<3rJvvZE$8;no0~TU=>>qxku`WT$qxX~p!^T8@)w9Td;=&A0Qhf1MEOa0 z&J`K7%)RZwlH31CS@6xL|NxAA|q@^CrPy2hInDQM^K zx$}R{5rddQz}@ygfMp062(kQYObjBm0ARdTy@_GAC&+movgya0yEg^>`AZvFztNAD zVEUi=9_|)I9}K2TXW!^I1zCrJ=>proG%m<55e>$6WdBTk z<1p~lPk(&#`lg_uFfgy_@ZUV%TOdy}el#lJCjK82lyI<#spEf`oQ4BXK{nw4YLpoA z)PFknO+ndz(RHW)M%huKr2dOyi2zd&E^pMTGXMdU>GXdy5tJPPp1J?x-xSpFmzQ$= zH&6H$Zdr{P*57cyI=p#*QxJC~m}YYOcMNPOj-dYndj0~j?*9f*K-f_LYU+Pc|58Pn Wcd&mi?KI$@Nbr})f(HQn>Hh&>S9JUU delta 48033 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 diff --git a/TemplateConfg/Naiveproxy_server_config.caddyfile b/TemplateConfg/Naiveproxy_server_config.caddyfile deleted file mode 100644 index 5ca9f57..0000000 --- a/TemplateConfg/Naiveproxy_server_config.caddyfile +++ /dev/null @@ -1,14 +0,0 @@ -##domain## { - log stdout - errors stderr - root /var/www - tls off - ##sites## - forwardproxy { - ##basicauth## - probe_resistance - hide_ip - hide_via - upstream http://127.0.0.1:8383 - } -} \ No newline at end of file diff --git a/TemplateConfg/Naiveproxy_server_config.json b/TemplateConfg/Naiveproxy_server_config.json index 7ce2ca0..a53b05d 100644 --- a/TemplateConfg/Naiveproxy_server_config.json +++ b/TemplateConfg/Naiveproxy_server_config.json @@ -1,4 +1,69 @@ { -"listen": "http://127.0.0.1:8383", -"padding": true + "apps": { + "http": { + "servers": { + "srv0": { + "listen": [ + ":443" + ], + "routes": [ + { + "handle": [ + { + "handler": "forward_proxy", + "hide_ip": true, + "hide_via": true, + "auth_user": "", + "auth_pass": "", + "probe_resistance": { + "domain": "" + } + } + ] + }, + { + "match": [ + { + "host": [ + "" + ] + } + ], + "handle": [ + { + "handler": "file_server", + "root": "/usr/share/caddy" + } + ], + "terminal": true + } + ], + "tls_connection_policies": [ + { + "match": { + "sni": [ + "" + ] + } + } + ] + } + } + }, + "tls": { + "automation": { + "policies": [ + { + "subjects": [ + "" + ], + "issuer": { + "email": "", + "module": "acme" + } + } + ] + } + } + } } \ No newline at end of file