#Youtube
https://youtu.be/vGrzRFCFyoE
#安装必要组件
apt install -y curl sudo
#安装sing-box
bash <(curl -fsSL https://sing-box.app/deb-install.sh)
#卸载sing-box
systemctl disable --now sing-box && rm -f /usr/local/bin/sing-box /root/sing-box_config.json /etc/systemd/system/sing-box.service
#重启并查看服务状态
systemctl restart sing-box && systemctl status sing-box
#启用sing-box服务(视频中可能漏掉了这一步,如果上一步出错了,就操作下这一步)
systemctl enable sing-box
#配置文件路径
/etc/sing-box/config.json
#安装acme
apt install socat cron -y && curl https://get.acme.sh | sh && ln -s /root/.acme.sh/acme.sh /usr/local/bin/acme.sh && ln -s /root/.acme.sh/acme.sh /usr/local/bin/acme.sh
#切换CA
acme.sh --set-default-ca --server letsencrypt
#申请证书
acme.sh --issue -d re.5677788.xyz -d na.5677788.xyz -d hy.5677788.xyz --standalone
#安装证书
acme.sh --install-cert -d re.5677788.xyz --ecc \ --key-file /etc/ssl/private/private.key \ --fullchain-file /etc/ssl/private/fullchain.cer
#naive配置文件
{ "inbounds": [ { "type": "naive", "listen": "::", "listen_port": 443, "users": [ { "username": "", "password": "" } ], "tls": { "enabled": true, "certificate_path": "/etc/ssl/private/fullchain.cer", "key_path": "/etc/ssl/private/private.key" } } ], "outbounds": [ { "type": "direct" } ] }
#naive core下载地址
https://github.com/klzgrad/naiveproxy/releases
#naive核心保存目录
\your-path-to-v2rayN\bin\naiveproxy
#naive-v2rayN配置文件
{ "listen": "socks://127.0.0.1:1080", "proxy": "https://user:[email protected]" }
#reality配置文件
{ "inbounds": [ { "type": "vless", "listen": "::", "listen_port": 443, "users": [ { "uuid": "", // 执行 sing-box generate uuid 生成 "flow": "xtls-rprx-vision" } ], "tls": { "enabled": true, "server_name": "", // 不支持 * 通配符 "reality": { "enabled": true, "handshake": { "server": "", // 要求网站支持 TLS 1.3、X25519 与 H2,域名非跳转用 "server_port": 443 }, "private_key": "", // 执行 sing-box generate reality-keypair 生成 "short_id": [ // 0 到 f,长度为 2 的倍数,长度上限为 16,可留空,或执行 sing-box generate rand 8 --hex 生成 "" ] } } } ], "outbounds": [ { "type": "direct" } ] }
#reality (偷自己)配置文件
{ "inbounds": [ { "type": "vless", "listen": "::", "listen_port": 443, "users": [ { "uuid": "", // 执行 sing-box generate uuid 生成 "flow": "xtls-rprx-vision" } ], "tls": { "enabled": true, "server_name": "yourdomain.com", // 与 Nginx 配置中的 server_name 一致 "reality": { "enabled": true, "handshake": { "server": "127.0.0.1", "server_port": 8001 }, "private_key": "", // 执行 sing-box generate reality-keypair 生成 "short_id": [ // 0 到 f,长度为 2 的倍数,长度上限为 16,可留空,或执行 sing-box generate rand 8 --hex 生成 "" ] } } } ], "outbounds": [ { "type": "direct" } ] }
#安装nginx
apt install -y nginx
#重启nginx
systemctl daemon-reload && systemctl enable nginx.service
#nginx配置文件路径
/etc/nginx/
#nginx配置文件
user root; worker_processes auto; error_log /var/log/nginx/error.log notice; pid /var/run/nginx.pid; events { worker_connections 1024; } http { log_format main '[$time_local] $proxy_protocol_addr "$http_referer" "$http_user_agent"'; access_log /var/log/nginx/access.log main; map $http_upgrade $connection_upgrade { default upgrade; "" close; } map $proxy_protocol_addr $proxy_forwarded_elem { ~^[0-9.]+$ "for=$proxy_protocol_addr"; ~^[0-9A-Fa-f:.]+$ "for=\"[$proxy_protocol_addr]\""; default "for=unknown"; } map $http_forwarded $proxy_add_forwarded { "~^(,[ \\t]*)*([!#$%&'*+.^_`|~0-9A-Za-z-]+=([!#$%&'*+.^_`|~0-9A-Za-z-]+|\"([\\t \\x21\\x23-\\x5B\\x5D-\\x7E\\x80-\\xFF]|\\\\[\\t \\x21-\\x7E\\x80-\\xFF])*\"))?(;([!#$%&'*+.^_`|~0-9A-Za-z-]+=([!#$%&'*+.^_`|~0-9A-Za-z-]+|\"([\\t \\x21\\x23-\\x5B\\x5D-\\x7E\\x80-\\xFF]|\\\\[\\t \\x21-\\x7E\\x80-\\xFF])*\"))?)*([ \\t]*,([ \\t]*([!#$%&'*+.^_`|~0-9A-Za-z-]+=([!#$%&'*+.^_`|~0-9A-Za-z-]+|\"([\\t \\x21\\x23-\\x5B\\x5D-\\x7E\\x80-\\xFF]|\\\\[\\t \\x21-\\x7E\\x80-\\xFF])*\"))?(;([!#$%&'*+.^_`|~0-9A-Za-z-]+=([!#$%&'*+.^_`|~0-9A-Za-z-]+|\"([\\t \\x21\\x23-\\x5B\\x5D-\\x7E\\x80-\\xFF]|\\\\[\\t \\x21-\\x7E\\x80-\\xFF])*\"))?)*)?)*$" "$http_forwarded, $proxy_forwarded_elem"; default "$proxy_forwarded_elem"; } server { listen 80; listen [::]:80; return 301 https://$host$request_uri; } server { listen 127.0.0.1:8001 ssl http2; set_real_ip_from 127.0.0.1; real_ip_header proxy_protocol; # 填 SSL 证书中包含的域名,建议将域名指向服务端的 IP,多个域名以空格分隔 server_name yourdomain.com; ssl_certificate /etc/ssl/private/fullchain.cer; ssl_certificate_key /etc/ssl/private/private.key; ssl_protocols TLSv1.2 TLSv1.3; ssl_ciphers TLS13_AES_128_GCM_SHA256:TLS13_AES_256_GCM_SHA384:TLS13_CHACHA20_POLY1305_SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305; ssl_prefer_server_ciphers on; ssl_stapling on; ssl_stapling_verify on; resolver 1.1.1.1 valid=60s; resolver_timeout 2s; # 反向代理配置由 https://www.digitalocean.com/community/tools/nginx 生成 location / { sub_filter $proxy_host $host; sub_filter_once off; set $website www.lovelive-anime.jp; proxy_pass https://$website; resolver 1.1.1.1; proxy_set_header Host $proxy_host; proxy_http_version 1.1; proxy_cache_bypass $http_upgrade; proxy_ssl_server_name on; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection $connection_upgrade; proxy_set_header X-Real-IP $proxy_protocol_addr; proxy_set_header Forwarded $proxy_add_forwarded; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Host $host; proxy_set_header X-Forwarded-Port $server_port; proxy_connect_timeout 60s; proxy_send_timeout 60s; proxy_read_timeout 60s; } } }
#检查nginx配置文件
nginx -t
#重启并查看nginx状态
systemctl restart nginx && systemctl status nginx
#hysteria2配置文件
{ "inbounds": [ { "type": "hysteria2", "listen": "::", "listen_port": 443, "up_mbps": 100, "down_mbps": 20, "users": [ { "password": "" } ], "tls": { "enabled": true, "alpn": [ "h3" ], "certificate_path": "/etc/ssl/private/fullchain.cer", "key_path": "/etc/ssl/private/private.key" } } ], "outbounds": [ { "type": "direct" } ] }
#其他sing-box服务管理
启用 systemctl enable sing-box
禁用 systemctl disable sing-box
启动 systemctl start sing-box
停止 systemctl stop sing-box
重启 systemctl restart sing-box
状态 systemctl status sing-box
强行停止 systemctl kill sing-box
重新启动 sudo systemctl restart sing-box
查看日志 journalctl -u sing-box –output cat -e
实时日志 journalctl -u sing-box –output cat -f