如何使用gost搭建HTTPS代理:修订间差异
来自md5.pw
更多语言
更多操作
小无编辑摘要 |
小无编辑摘要 |
||
| (未显示同一用户的3个中间版本) | |||
| 第68行: | 第68行: | ||
</syntaxhighlight>需要设置好域名并进行保存 | </syntaxhighlight>需要设置好域名并进行保存 | ||
执行命令<syntaxhighlight>openssl genrsa -out ca.key.pem 4096 | 执行以下命令<syntaxhighlight>openssl genrsa -out ca.key.pem 4096 | ||
openssl req -new -x509 -nodes -days 5475 -sha256 -key ca.key.pem -out ca.cert.pem -subj "/O=gost/CN=gost ca" | openssl req -new -x509 -nodes -days 5475 -sha256 -key ca.key.pem -out ca.cert.pem -subj "/O=gost/CN=gost ca" | ||
openssl genrsa -out server.key.pem 4096 | openssl genrsa -out server.key.pem 4096 | ||
openssl req -new -key server.key.pem -out server.csr.pem -config server.cert.conf | openssl req -new -key server.key.pem -out server.csr.pem -config server.cert.conf | ||
openssl x509 -req -CA ca.cert.pem -CAkey ca.key.pem -CAcreateserial -in server.csr.pem -out server.cert.pem -days 5475 -sha256 -extfile server.cert.conf -extensions v3_ca</syntaxhighlight> | openssl x509 -req -CA ca.cert.pem -CAkey ca.key.pem -CAcreateserial -in server.csr.pem -out server.cert.pem -days 5475 -sha256 -extfile server.cert.conf -extensions v3_ca</syntaxhighlight>查看证书信息<syntaxhighlight>openssl x509 -in ca.cert.pem -text -noout</syntaxhighlight> | ||
=== 4. 配置gost === | === 4. 配置gost === | ||
<syntaxhighlight> | <syntaxhighlight> | ||
cd /main/gost | cd /main/gost | ||
</syntaxhighlight>新建一个<code>gost.json</code>并进行配置<syntaxhighlight lang="json" line="1"> | </syntaxhighlight>新建一个<code>gost.json</code>并进行配置, 可以参考[https://gost.run/ 官网]的教程<syntaxhighlight lang="json" line="1"> | ||
{ | { | ||
"services": [ | "services": [ | ||
| 第115行: | 第112行: | ||
任何系统想用就必须装上'''CA证书''', 也就是上面提到的<code>ca.cert.pem</code> | 任何系统想用就必须装上'''CA证书''', 也就是上面提到的<code>ca.cert.pem</code> | ||
'''Windows:''' | '''Windows安装证书:''' | ||
<code>ca.cert.pem</code>改为<code>.der</code>后缀, 双击安装, 到本地计算机, 将证书放入下列存储 (受信任的根证书颁发机构) | |||
'''Linux安装证书:'''<syntaxhighlight> | |||
mkdir -p /usr/local/share/ca-certificates | |||
cp ca.cert.pem /usr/local/share/ca-certificates/ | |||
chmod 0644 /usr/local/share/ca-certificates/ca.cert.pem | |||
update-ca-certificates | |||
</syntaxhighlight> | |||
'''Windows使用:''' | |||
[[File:如何使用gost搭建HTTPS代理-1.png|frameless|421x421px]] | [[File:如何使用gost搭建HTTPS代理-1.png|frameless|421x421px]] | ||
'''Linux:''' <syntaxhighlight> | '''Linux使用:''' <syntaxhighlight> | ||
export https_proxy="https://你的域名:56000" | export https_proxy="https://你的域名:56000" | ||
</syntaxhighlight>'''其他系统设置可能不支持HTTPS代理, 仅有HTTP代理''' | </syntaxhighlight>'''其他系统设置可能不支持HTTPS代理, 仅有HTTP代理''' | ||
2026年2月18日 (三) 12:42的最新版本
有时候, 我们访问受限, 无法下载到代理工具 (比如:Xray); 或不想过多的配置或下载代理客户端, 只是临时用一下代理而已, 传统的HTTP代理又不安全, 容易被识别出来, 有没有一个服务端能够支持客户端使用HTTPS代理?
有, 那就是gost, 而且它的速度不比Xray的vless+reality+xtls-rprx-vision的差
1. 准备
主要使用3.0版本
wget https://github.com/go-gost/gost/releases/download/v3.2.6/gost_3.2.6_linux_amd64.tar.gz
tar -xzf gost_3.2.6_linux_amd64.tar.gz
mv gost /usr/local/bin/
chmod u+x /usr/local/bin/gost
rm gost_3.2.6_linux_amd64.tar.gz可以自行更换版本, 也可以使用Github上的安装脚本
2. 配置service
新建一个gost.service并进行配置
[Unit]
Description=gost
After=network.target network-online.target
[Service]
Type=simple
StandardError=journal
ExecStart="/usr/local/bin/gost"
ExecReload=/bin/kill -HUP $MAINPID
Restart=on-failure
RestartSec=1s
[Install]
WantedBy=multi-user.target我们保存在/main/gost/为例, 建立一个软链接以方便备份与配置
ln -f /main/gost/gost.service /etc/systemd/system/添加到开机启动中
systemctl daemon-reload
systemctl enable gost.service3. 配置证书
你可以选择使用自签证书或正式证书, 若使用正式证书且不配置代理账号密码会导致主机变为肉鸡, 若使用自签证书会有更好的安全性, 前提是你的自签证书没有被泄露, 这里仅展示自签证书的配置方法
mkdir /main/gost/cert
cd /main/gost/cert新建一个server.cert.conf并进行配置
[req]
default_bits = 4096
default_md = sha256
distinguished_name = req_distinguished_name
req_extensions = req_ext
x509_extensions = v3_ca
prompt = no
[req_distinguished_name]
O = gost
CN = gost cert
[req_ext]
subjectAltName = @alt_names
[v3_ca]
subjectAltName = @alt_names
basicConstraints = CA:FALSE
keyUsage = digitalSignature, keyEncipherment
extendedKeyUsage = serverAuth, clientAuth
[alt_names]
DNS.1 = 你的域名
DNS.2 = 你的第二个域名需要设置好域名并进行保存 执行以下命令
openssl genrsa -out ca.key.pem 4096
openssl req -new -x509 -nodes -days 5475 -sha256 -key ca.key.pem -out ca.cert.pem -subj "/O=gost/CN=gost ca"
openssl genrsa -out server.key.pem 4096
openssl req -new -key server.key.pem -out server.csr.pem -config server.cert.conf
openssl x509 -req -CA ca.cert.pem -CAkey ca.key.pem -CAcreateserial -in server.csr.pem -out server.cert.pem -days 5475 -sha256 -extfile server.cert.conf -extensions v3_ca查看证书信息
openssl x509 -in ca.cert.pem -text -noout4. 配置gost
cd /main/gost新建一个gost.json并进行配置, 可以参考官网的教程
{
"services": [
{
"name": "https-proxy",
"addr": ":56000",
"handler": {
"type": "http",
"metadata": {
"knock": "你的域名",
"probeResist": "web:test-ipv6.com:80"
}
},
"listener": {
"type": "tls"
}
}
],
"tls": {
"certFile": "/main/gost/cert/server.cert.pem",
"keyFile": "/main/gost/cert/server.key.pem"
}
}
对原配置文件进行链接
ln -f /main/gost/gost.json /etc/gost/重启服务
systemctl restart gost.service
systemctl status gost.service5. 客户端使用
任何系统想用就必须装上CA证书, 也就是上面提到的ca.cert.pem
Windows安装证书:
ca.cert.pem改为.der后缀, 双击安装, 到本地计算机, 将证书放入下列存储 (受信任的根证书颁发机构)
Linux安装证书:
mkdir -p /usr/local/share/ca-certificates
cp ca.cert.pem /usr/local/share/ca-certificates/
chmod 0644 /usr/local/share/ca-certificates/ca.cert.pem
update-ca-certificatesWindows使用:
Linux使用:
export https_proxy="https://你的域名:56000"其他系统设置可能不支持HTTPS代理, 仅有HTTP代理