Xray-examples/VLESS-GRPC
xqzr 059bdf1a97
Update README.md
2024-01-29 20:51:27 +08:00
..
Caddyfile Update Caddyfile 2023-02-04 12:22:07 -05:00
README.ENG.md Add IPv6 Listen 2023-11-02 21:51:12 +08:00
README.md Update README.md 2024-01-29 20:51:27 +08:00
client.json add `permit_without_stream` 2023-11-02 21:34:39 +08:00
server.json UDS 2022-07-16 21:44:17 +08:00

README.md

VLESS-GRPC

ENGLISH

原理图 (Caddy)

Xray client <--- gRPC(TLS) ---> Caddy2 <--- gRPC(cleartext) ---> Xray server

Nginx

同时,您也可以选择使用 Nginx。示例配置片段如下部分来自 @xqzr

server {
	listen 443 ssl http2;
	listen [::]:443 ssl http2;
	server_name example.com;

	index index.html;
	root /var/www/html;

	ssl_certificate /path/to/example.cer;
	ssl_certificate_key /path/to/example.key;
	ssl_protocols TLSv1.2 TLSv1.3;
	ssl_ciphers 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;
	
	client_header_timeout 1w;
        keepalive_timeout 30m;
	# 在 location 后填写 /你的 ServiceName
	location /你的 ServiceName {
		if ($content_type !~ "application/grpc") {
			return 404;
		}
		client_max_body_size 0;
		client_body_buffer_size 512k;
		grpc_set_header X-Real-IP $remote_addr;
		client_body_timeout 1w;
		grpc_read_timeout 1w;
		grpc_send_timeout 1w;
		grpc_pass unix:/dev/shm/Xray-VLESS-gRPC.socket;
	}
}