我个人觉得以后的网络将只有 ipv6 啦,不知道能不能见到啊,应该快了。既然如此何不提前体验一下呢。没有 ipv4 的网络环境,我能飞么?根据以往的经验,些许网站不支持纯 ipv6 访问,比如大名顶顶的 GitHub,真是 amazing。所以,我把宝藏都放在了 gitlab 上,谁让人家支持 ipv6 呢、
Certbot
fuser -k 80/tcp;certbot certonly --standalone --keep --register-unsafely-without-email --agree-tos -d none.blue
TrojanInIPv6
{
"run_type": "server",
"local_addr": "::",
"local_port": 443,
"remote_addr": "127.0.0.1",
"remote_port": 80,
"password": "!@#$%^&*()",
"log_level": 1,
"ssl": {
"cert": "/etc/letsencrypt/live/z.huhu.blue/fullchain.pem",
"key": "/etc/letsencrypt/live/z.huhu.blue/privkey.pem",
"key_password": "",
"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:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384",
"cipher_tls13": "TLS_AES_128_GCM_SHA256:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_256_GCM_SHA384",
"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,
"reuse_port": false,
"fast_open": false,
"fast_open_qlen": 20
}
}
- 所有操作都在Ubuntu 20.04上演示, 我爱❤Ubuntu
- 为什么不用一键安装脚本呢?low没必要不安全不放心不想
我真的有 ipv6 地址
如果你没有 ipv6 地址,而是想用通过 cloudflare 的服务让只有 ipv4 地址的你能使用 ipv6-only 的 vps,那我建议你放弃,因为那丫做没有体现 ipv6 真正的价值,其速度也显然不会有 mkcp 快。
如果是想在纯 ipv6 的 vps 上搭建 v2ray
如果是想要搭建 v2ray 在 ipv6-only 的 vps 上,我建议直接上 mkcp 协议,启明星辰搞不到你的,放心。其他的协议尿性真的不适合,裤裆里放屁呢。因为的大脚趾一直在 说 mkp 比 trojan 的 tcp 快快快。
检测 ipv6 地址
curl -6 https://none.blue
root 进入 vps
在Windows上我推荐moboxterm、windows-terminal、或者terminus 在macos上推荐termius或者自带的termial 其他的中文语言终端不推荐.基本上都是乐色,繁体中文的软件也不要用。
下载一些软件
git clone https://gitlab.com/nonedotblue/trojan.gfw.caddy2.git /srv/trojan.gfw.caddy2/
cp /srv/trojan.gfw.caddy2/{joker,v2ctl,trojan,caddy} /usr/bin/
chmod +x /usr/bin/{joker,v2ctl,trojan,caddy}
申请证书
为安全起见我还是不教授怎样使用自签证书了,而是使用 let's encryption,但是非常不好意思,常用的 snap 法安装的 certbot 或者寄生在 GitHub 上的 acme.sh 都没法在纯 ipv6-only 的 vps 上使用,这里只能用 apt 安装的方法使用,并且只能用 dns 的方式验证域名所属。似乎没有证书也能跑,但还是算了吧
sudo apt-get install certbot -y
自定义 DNS 面板,添加一条 AAAA 记录解析,域名指向自己的 ipv6 地址,如图,可能没图展示
certbot certonly --standalone --keep --register-unsafely-without-email --agree-tos -d <your domain>
配置文件
成功申请的证书、私钥会放在
/etc/letsencrypt/live/<your-domain>/fullchain.pem
/etc/letsencrypt/live/<your-domain>/privkey.pem
那么配置文件就这样,
run_type = "server"
# 将0.0.0.0改成::就支持ipv6了
local_addr = "::"
local_port = 443
remote_addr = "::1"
remote_port = 80
# 密码设置成自己想要的就是trojan的连接密码
password = ["!@#$%^&*()"]
log_level = 1
[ssl]
# 换成自己的域名
cert = "/etc/letsencrypt/live/<your-domain>/fullchain.pem"
# 换成自己的域名
key = "/etc/letsencrypt/live/<your-domain>/privkey.pem"
key_password = ""
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:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384"
cipher_tls13 = "TLS_AES_128_GCM_SHA256:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_256_GCM_SHA384"
prefer_server_cipher = true
alpn = ["http/1.1"]
reuse_session = true
session_ticket = false
session_timeout = 600.0
plain_http_response = ""
curves = ""
dhparam = ""
# caddy2不支持
# [ssl.alpn_port_override]
# h2 = 81
[tcp]
prefer_ipv4 = false
no_delay = true
keep_alive = true
reuse_port = false
fast_open = false
fast_open_qlen = 20.0
# [mysql]
# enabled = false
# server_addr = "127.0.0.1"
# server_port = 3306.0
# database = "trojan"
# username = "trojan"
# password = ""
# key = ""
# cert = ""
# ca = ""
防止只会复制粘贴的人看到这篇文字,也是我个人的习惯,所有的配置文件 我会用 toml 来写,请自行转换成所需类型,比如这里 trojan 的 json 格式 提醒: vscode 有个转换插件,下载如下;
启动 run
预先测试,就可以用客户端连接了,ctrl+c
停止测试
mkdir /etc/trojan
nano /etc/trojan/serve.json
trojan --config /etc/trojan/serve.json
后台运行,只要 VPS 不关机不重启就会一直运行一直有效
joker trojan --config /etc/trojan/serve.json