Nginx 使用sni进行反代, 已经通过sni判断
  Syo3we9IQNao 2023年12月23日 12 0


  1. 代理服务器, 配置proxy_pass 写入sni
server {
    listen       80;
    listen       443 ssl;
    server_name  ~^([\w-]+)\.aaa\.cn$;
    
    set $sub_name $1;
    set $proxy_sub_name $1.bbb.cn;

    ssl_certificate     /certs/aaa.cn.crt;
    ssl_certificate_key /certs/aaa.cn.key;
    ssl_stapling on;
    ssl_stapling_verify on;
    ssl_trusted_certificate /certs/aaa.cn.crt;

    location / {
        proxy_pass                       https://43.12.80.34:443$request_uri;
        proxy_read_timeout               300s;
	      proxy_ssl_name $proxy_sub_name;
        proxy_ssl_server_name on;
        proxy_ssl_protocols  TLSv1 TLSv1.1 TLSv1.2;
        proxy_ssl_session_reuse off;
     }
   }
  1. $ssl_server_name 获取sni, 如何判断进行响应
server {
        listen       443 ssl;
        location / {
          	set $backend_url "";    

            if ($ssl_server_name = "test1.aaa.cn") {
                set $backend_url   http://172.17.0.1:10000/;
            }
            if ($ssl_server_name = "test2.aaa.cn") {
                set $backend_url   http://172.17.0.1:9830/;
            }
            if ($ssl_server_name = "test3.aaa.cn") {
                set $backend_url    http://172.17.0.1:9820/;
            }
            if ($ssl_server_name = "test4.aaa.cn") {
                set $backend_url     http://172.17.0.1:9810/;
            }
            proxy_pass $backend_url$request_uri;
        }
    }


【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

上一篇: 吓人的linux命令 下一篇: ​物理服务器
  1. 分享:
最后一次编辑于 2023年12月23日 0

暂无评论

推荐阅读
  kqNbZfXd3HPf   2023年11月02日   33   0   0 服务端代理服务器sed
Syo3we9IQNao
最新推荐 更多