首页 注册 登录
V2EX = way to explore V2EX 是一个关于分享和探索的地方
现在注册 已注册用户请 登录
NGINX NGINX Trac 3rd Party Modules Security Advisories CHANGES OpenResty ngx_lua Tengine 在线学习资源 NGINX 开发从入门到精通 NGINX Modules ngx_echo
V2EX NGINX

NGINX 求助 禁止访问 https://ip 后,前端机器 proxy 502

ab · 2022 年 4 月 6 日 · 3083 次点击
这是一个创建于 1377 天前的主题,其中的信息可能已经有所发展或是发生改变。
为关闭 ip 直接访问,我们在后端机器的 nginx 添加配置

原配置:
server {
listen 80 default_server;
listen 443 ssl http2 default_server;
server_name _;
ssl_certificate cert/empty.crt; #自签假证
ssl_certificate_key cert/empty.key; #自签假证
return 444;
}


新配置:
server {
listen 80 default_server;
listen 443 ssl http2 default_server;
server_name _;
ssl_reject_handshake on; # nginx 1.19 新参数
return 444;
}


改了新配置以后,前端反代某个已在后端绑定的域名时,80 端口可以正常请求到,但 443 全部 502 ,请老哥们赐教了
(追記) (追記ここまで)
14 条回复 2022年04月07日 07:51:29 +08:00
ZE3kr
1
ZE3kr 2022 年 4 月 6 日 via iPhone
看 errorlog
Judoon
2
Judoon 2022 年 4 月 6 日 ❤️ 1
前端反代 443 时向后端也是 443 访问吗?那目测直接握手拒绝了,建立连接时没有带 SNI 信息吧?
ab
3
ab
OP
2022 年 4 月 6 日
@Judoon 是的,直接反代 403

proxy_cache off;
proxy_redirect off;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;
proxy_set_header Referer $http_referer;
proxy_set_header X-Real-IP $remote_addr;
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;
ab
4
ab
OP
2022 年 4 月 6 日
@Judoon 是的,直接反代 443
Judoon
5
Judoon 2022 年 4 月 6 日
(追記) (追記ここまで)
GBdG6clg2Jy17ua5
6
GBdG6clg2Jy17ua5 2022 年 4 月 6 日
将 80,443 配置成两个 server 块。443 类似你原来的配置。
cnrting
7
cnrting 2022 年 4 月 6 日 via iPhone
ssl_reject_handshake on; 没用过这参数,可是看字面意思返回 502 难道不是正常反应吗
ab
8
ab
OP
2022 年 4 月 6 日 ❤️ 1
5 楼正解
非常谢谢 @Judoon

@angryfish
@cnrting

ssl_reject_handshake on;这个参数是没有绑定域名的访问拒绝握手。前端需要向后端发送 SNI 信息

添加以下两行解决
proxy_ssl_server_name on;
proxy_ssl_name $host;
Silently
9
Silently 2022 年 4 月 6 日 via iPhone
@ab 如果有多个 location 块的话 是需要每个都添加么 还是单 /这个块添加
Silently
10
Silently 2022 年 4 月 6 日 via iPhone
@Silently 我看说明是可以直接添加到 server 块上
ab
11
ab
OP
2022 年 4 月 6 日 via iPhone
我是加在 server 段,只用来禁用非绑定的域名
ab
12
ab
OP
2022 年 4 月 6 日 via iPhone
Silently
13
Silently 2022 年 4 月 6 日 via iPhone
@ab 用上了 谢谢
yxnwh
14
yxnwh 2022 年 4 月 7 日
多谢,mark 一记,之前也遇到了类似问题
(追記) (追記ここまで)
关于 · 帮助文档 · 自助推广系统 · 博客 · API · FAQ · Solana · 5406 人在线 最高记录 6679 · Select Language 创意工作者们的社区 World is powered by solitude VERSION: 3.9.8.5 · 27ms · UTC 01:22 · PVG 09:22 · LAX 17:22 · JFK 20:22
♥ Do have faith in what you're doing.

AltStyle によって変換されたページ (->オリジナル) /