在ubuntu中使用nginx和trojan-go搭建网络代理服务

前期准备工作

关闭防火墙

ufw disable

更新索引和相关依赖

apt update

创建/var/www/html目录存放index.html网页文件

mkdir -p /var/www/html

创建/etc/trojan-go目录存放config.json配置文件

mkdir -p /etc/trojan-go

签发证书

安装acme.sh,将my@example.com替换为你自己的邮件

wget -O -  https://get.acme.sh | sh -s email=my@example.com

安装socat,使用acme.sh申请证书必须安装它

apt install -y socat

申请证书,将example.com替换为你自己的域名,并保证80端口没有被占用

~/.acme.sh/acme.sh --issue -d example.com --standalone

安装证书,将example.com替换为你自己的域名,将server.keyserver.crt文件安装在/etc/trojan-go目录中

~/.acme.sh/acme.sh --install-cert -d example.com --key-file /etc/trojan-go/server.key --fullchain-file /etc/trojan-go/server.crt

升级acme.sh

~/.acme.sh/acme.sh --upgrade --auto-upgrade

搭建网站

安装nginx搭建网站伪装trojan-go程序

apt install -y nginx

编辑页面文件,在/var/www/html目录下创建index.html页面文件

nano /var/www/html/index.html

/var/www/html/index.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>网站建设中</title>
</head>
<body>
    <p>网站建设中</p>
</body>
</html>

搭建网络代理

下载trojan-go压缩包到你的服务器

wget https://github.com/p4gefau1t/trojan-go/releases/download/v0.10.6/trojan-go-linux-amd64.zip

解压trojan-go-linux-amd64.zip压缩包到trojan-go目录中

unzip -d trojan-go trojan-go-linux-amd64.zip

拷贝trojan-go执行文件到/usr/bin/目录中

cp trojan-go/trojan-go /usr/bin/trojan-go

/etc/trojan-go目录下创建config.json配置文件,将配置文件中的password替换为你自己的密码,将配置文件中的example.com替换为你自己的域名

nano /etc/trojan-go/config.json

/etc/trojan-go/config.json

{
    "run_type": "server",
    "local_addr": "0.0.0.0",
    "local_port": 443,
    "remote_addr": "127.0.0.1",
    "remote_port": 80,
    "password": [
        "password"
    ],
    "ssl": {
        "cert": "/etc/trojan-go/server.crt",
        "key": "/etc/trojan-go/server.key",
        "sni": "example.com"
    }
}

/etc/trojan-go目录下分别给server.keyserver.crt文件授予权限,否则在trojan-go启动时没有权限会报错

chmod 777 /etc/trojan-go/server.key /etc/trojan-go/server.crt

通过config.json配置文件启动trojan-go程序,到这里你已经可以体验冲浪的快乐了

trojan-go -config /etc/trojan-go/config.json

开机启动服务

制作trojan-go.service服务是为了开机自动启动程序

nano /etc/systemd/system/trojan-go.service

/etc/systemd/system/trojan-go.service

[Unit]
Description=Trojan-Go
After=network.target nss-lookup.target

[Service]
Type=simple
User=root
ExecStart=/usr/bin/trojan-go -config /etc/trojan-go/config.json
Restart=on-failure
RestartSec=10s
LimitNOFILE=infinity

[Install]
WantedBy=multi-user.target

开机启动服务的相关操作

启动服务

systemctl start trojan-go.service

重启服务

systemctl restart trojan-go.service

停止服务

systemctl stop trojan-go.service

查看服务

systemctl status trojan-go.service

激活服务

systemctl enable trojan-go.service

禁用服务

systemctl disable trojan-go.service
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 又费脑子又费手 推荐喜欢折腾的朋友 系统 CentOS 7,防火墙关闭 安装依赖 安装acme.sh需要的依赖。 ...
    lokamir阅读 18,864评论 4 2
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,369评论 19 139
  • 2016年10月12日 安装 1.安装hugo hugo是一个快速的静态网站引擎,使用Go语言开发,可以用Mark...
    麦子时光_新浪阅读 3,573评论 0 0
  • 下面,就给大家介绍这些CentOS常用命令。 一:使用CentOS常用命令查看cpu more/proc/cpui...
    guiwuzhe阅读 7,346评论 1 25
  • 前言 最近脑子一抽,想用ghost搭建一个博客。本来以为,直接把东西往服务器上一扔就行了。没想到还要搞什么Linu...
    旭旭乐阅读 5,151评论 0 3