如图所示是我的配置,但是这方法会拒绝掉我所有的443请求,请问大神,我应该如何配置才能让端口开放给绑定了servername的域名访问并且拒绝掉IP和其他域名恶意解析?
访问443端口时,先使用证书建立连接再传输server_name,也就是没法通过匹配server_name选择某个server
此时将使用default_server的证书建立连接,而你没有在default_server配置证书,所以都访问不了了
可以在default_server里添加一样的证书配置,或者将证书的配置项提到http上
能加个QQ指导下么?如果我在这里配置证书的话,假如我有多个servername,应该如何配置?
@WionJohn: 下面三种方法都可以达到目的
一、在http下配置证书,证书使用多域名证书或者泛域名证书,这样不同的网站域名都可以使用同一张证书了
二、不同的servername监听不同的IP,监听改为192.168.1.2:443这样,记住default_server也需要配置同样的证书
三、使用TLS协议的SNI扩展,具体参考下面的文章
http://www.ttlsa.com/web/multiple-https-host-nginx-with-a-ip-configuration/
你再新建一个文件,然后加上自己的server_name就行了呀!它会优先匹配有server_name的,然后才来到这个default_server的。
我是这样写的 不行呀
你看看