Trojan手动搭建详解
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Trojan手动搭建详解相关的知识,希望对你有一定的参考价值。
参考技术A 安装acme.sh需要的依赖。执行如下命令使用nano打开nginx配置文件,删除其中server块,并添加对/etc/nginx/sites-enabled/文件夹的索引。
如果遇到 setenforce: SELinux is disabled错误,说明selinux已经被彻底的关闭了
重新开启selinux,请按下面步骤:
必须重启linux
Nginx启动命令和Trojan一样,就不过多解释了
当从Let’s Encrypt获得证书时,Let’s Encrypt会验证证书中域名的控制权。一般采用HTTP-01或DNS-01方式来验证,详情参考官方文档 验证方式 。本文使用HTTP-01方式验证,若需要使用DNS-01方式验证,参考acme.sh官方文档 How to use DNS API 。
第一条命令新建一个文件夹/etc/letsencrypt/live用于存放证书。第二条命令将证书文件夹所有者改为acme,使得用户acme有权限写入证书。
本文使用acme.sh的http方式申请证书,http方式需要在网站根目录下放置一个文件来验证域名所有权,故需要acme.sh和nginx均对webroot目录有权限,故将运行Nginx的worker进程加入certusers组,下文再将webroot目录附加给certusers组即可。
在不同的Linux发新版本中,nginx可能使用不同的用户运行worker process,可能为www-data,nginx,nobody中的一个,故需要自己运行下述命令查找nginx: worker process所属用户:
上述命令输出第二行第一列即为nginx: worker process所属用户,然后根据实际情况,运行下面三个命令之一:
运行下面两条命令,第一条命令新建一个文件夹/var/www/acme-challenge用于给 acme.sh 存放域名验证文件。第二条命令将证书文件夹所有者改为acme,使得用户acme有权限写入文件,同时当验证的时候Nginx可以读取该文件。
分别执行如下命令,注意看是否报错。第一条命令切换到用户acme。第二条命令安装acme.sh。第三条命令退出当前用户。第四条命令再次切换到用户acme。注意到这里两次切换用户的操作不能省略,因为安装完acme.sh之后要重新登录当前用户,否则无法识别出acme.sh命令。
执行如下命令(注意域名<tdom.ml>改为你自己的域名),等待一会儿。
看到下图的提示表示证书申请成功。
执行如下命令(注意域名<tdom.ml>改为你自己的域名),第一条命令使用acme.sh将证书安装到certfiles目录,这样acme.sh更新证书的时候会自动将新的证书安装到这里。第二条命令是配置acme.sh自动更新和自动更新证书,这样配置完Trojan之后一般不用管服务器。
最后还要允许组内用户访问证书。可通过如下命令实现。第一条命令将证书文件夹所在用户组改为certusers。第二条命令是赋予证书文件夹组内用户读取权限。运行这两条命令之后用户trojan就有权限读取证书了。第三条命令退出用户acme,因为证书已经安装完成。
分别执行如下四个命令,注意看是否报错。第一个命令是安装Trojan,安装完成一般会提示版本号注意看是否是最新版本。第二个命令是将Trojan配置文件的所有者修改为用户trojan,由于使用sudo安装的Trojan,该配置文件默认是属于root用户的,而我们需要使用用户trojan运行Trojan,不修改所有者会导致启动Trojan遇到权限问题。第三个命令备份Trojan配置文件,以防万一。第四个命令是使用nano修改配置文件。
第四个命令执行完之后屏幕会显示Trojan的配置文件,定位到password、cert和key并修改。密码按自己喜好,cert和key分别改为/etc/letsencrypt/live/certificate.crt和/etc/letsencrypt/live/private.key。编辑完成配置文件之后按屏幕下方快捷键提示(O和X即:Ctrl+O和Ctrl+X)保存并退出nano。修改之后的config文件如图所示。另外,如果有IPv6地址,将local_addr的0.0.0.0改为::才可以使用。
执行如下命令,打开trojan.service文件,并将用户修改为trojan。
添加用户效果如图所示,注意等号旁边没有空格。
然后重新加载配置文件。
执行如下命令,赋予Trojan监听1024以下端口的能力,使得Trojan可以监听到443端口。这是由于我们使用非root用户启动Trojan,但是Linux默认不允许非root用户启动的进程监听1024以下的端口,除非为每一个二进制文件显式声明。
Trojan启动、查看状态命令分别如下,第一条是启动Trojan,第二条是查看Trojan运行状态。启动之后再查看一下状态,Trojan显示active (running)即表示正常启动了。如果出现fatal: config.json(n): invalid code sequence错误,那么是你的配置文件第n行有错误,请检查。如果启动失败,还可以用journalctl -f -u trojan查看systemd的日志。
虽然开机自启一般用不着,除非vultr机房停电,但是反正也没什么代价,弄一下吧。
到这里服务器就配置完成了。此时你可以在浏览器里面访问你的网站看是否能够访问,如果你的网站可以访问了,那么就一切正常啦。
另外,基于以上考虑到的可能的恶意探测,可以验证一下以下情况是否正常。
当acme.sh重新安装证书之后,需要通知Trojan重新加载证书。最简单的方案是每三个月登录服务器重启Trojan,但是不够完美,毕竟重启的时候会导致服务中断。其实Trojan有实现 reload certificate and private key 功能,只需要在证书更新后给Trojan发送 SIGUSR1 消息即可。Trojan收到 SIGUSR1 消息后便会自动加载新的证书和密钥文件,这样就不用重启Trojan了。手动给Trojan发送 SIGUSR1 消息的命令是 sudo -u trojan killall -s SIGUSR1 trojan ,但是这样也不够完美,也得每三个月登录服务器运行一次该命令。其实我们可以给用户 trojan 添加定时任务,使其每个月运行一次该命令即可。实现如下。
首先,编辑用户 trojan 的crontab文件
在文件末尾添加一行如下,该行表示每个月1号的时候运行命令killall -s SIGUSR1 trojan,由于是使用用户trojan运行的,故不需要在前面加sudo -u trojan。
最后查看crontab是否生效。
trojan.dl.vb.ctf怎样查杀?
trojan.dl.vb.ctf怎样彻底杀掉,中毒现象是word、excel文件打开缓慢,等到打开也只是打开程序,文件出不来。病毒文件名是iexplore.exe路径c:\winnt和qq.exe路径c:\winnt\system32,电脑从未装过qq程序。
请高手帮帮忙
诺顿10杀不掉也查不出来,瑞星可杀查,有没有专杀工具,或手动清除方法
以上是关于Trojan手动搭建详解的主要内容,如果未能解决你的问题,请参考以下文章