Articles of sni

nginx,多个域名,ssl支持没有SNI的客户端

我想要支持SSL的客户端,缺乏SNI的支持(IE / FF / Safari的赢得XP,Android <2.2和其他)。 我select的解决scheme是让nginx在单独的端口上监听每个证书。 问题是:有没有其他的方法来解决这个问题,还是我做得很好?

Apache SNI namevhosts总是路由到第一个VirtualHost条目

无论服务器名称/ ServerAlias字段中的SNI匹配如何,Apache似乎都将所有https请求路由到第一个<VirtualHost *:443> 。 Apache是​​用SNI构build的 服务器版本:Apache / 2.2.22(Ubuntu) 服务器内置:Mar 8 2013 15:53:13 OpenSSL 1.0.1 2012年3月14日 error.log报告: Init: Name-based SSL virtual hosts only work for clients with TLS server name indication support (RFC 4366) 这表明SNI正在按照http://wiki.apache.org/httpd/NameBasedSSLVHostsWithSNI (你怎么知道你的Apache构build是否支持SNI?) 当使用HTTPS请求时, SSL_TLS_SNI似乎被正确设置(通过phpinfo()validation) 组态: <IfModule mod_ssl.c> # If you add NameVirtualHost *:443 here, you will also have to change # the […]

多个SSL在同一个IP上的问题,但只在select的客户端

我知道在同一个IP上有很多关于多个SSL的post,但我保证我没有打死一匹死马。 我的问题很清楚。 首先,有一点背景… 我们的组织有几个电子商务网站。 所有这些站点都运行在相同的IP上,使用SNI作为基于名称的虚拟主机。 在大多数情况下,这是很好的工作。 但是,在某些浏览器(ie7 / ie8,但仅在某些原因的select机器上),我们得到报告,用户看到域名与SSL证书不匹配。 事实certificate,他们正在按照字母顺序看到第一个SSL主机的SSL证书,因为Apache首先parsingIP地址,然后抓住它认为合适的虚拟主机文件。 我做了一些SSL协议的实验,发现如果我这样设置(ssl.conf): SSLProtocol TLSv1 然后,我只是得到一个没有find任何在IE中的https域。 如果我在ports.conf中设置SSLStrictSNIVHostCheck SSLStrictSNIVHostCheck打开 然后我会得到在有问题的浏览器中被拒绝的权限。 问题很明显,IE不支持或不使用TLSv1协议或SNI,这两者都是需要的。 所以我的问题是… 是否有一个configuration更改,我可以支持IE浏览器,也许根据不同的协议,或者是我唯一的select使用单独的IP为每个虚拟主机需要SSL? 在此先感谢=)

Jenkins报告使用带有SNI的虚拟主机的Apache的反向代理设置不正确

我正在build立一个Jenkins服务器,在Apache后面的Tomcat下运行。 我使用的是使用SNI的SSL虚拟主机,因此我可以通过https://jenkins.example.com访问它,并在http://www.example.com上提供其他内容。 我已经启动并运行了,但是当我点击“pipe理Jenkins”时,它告诉我看来您的反向代理设置已经损坏 。 请注意,我正在使用自签名SSL证书,而jenkins.example.com不是默认的虚拟主机。 相关的apacheconfiguration如下所示: <VirtualHost *:80> ServerName jenkins.example.com Redirect / https://jenkins.example.com/ </VirtualHost> <VirtualHost *:443> ServerName jenkins.example.com SSLEngine on SSLCertificateFile /etc/ssl/certs/jenkins.example.com.crt SSLCertificateKeyFile /etc/ssl/private/jenkins.example.com.key <Location /> AuthType Digest AuthName "Jenkins" AuthUserFile "/etc/htpasswords" Require valid-user </Location> ProxyRequests Off ProxyPreserveHost On <Proxy http://localhost:8080*> Order deny,allow Allow from all </Proxy> ProxyPass / http://localhost:8080/ ProxyPassReverse / http://localhost:8080/ ProxyPassReverse / […]

IIS 8 – 默认SSL站点中断SNI

我们在使用IIS 8的Windows Server 2012 R2上testingSNI的情况如下。下面列出的域名和IP地址是假的,仅供举例 。 WEB SITE NAME IP ADDRESS Host Name/Header (SNI) Certificate Domain ============================================================================== x.domain.com 10.10.0.1 x.domain.com x.domain.com y.domain.com 10.10.0.1 y.domain.com y.domain.com 当只有“x.domain.com”和“y.domain.com”使用SNI和自己的证书在同一IP地址上configuration时,两个站点在所有浏览器上都能正常工作,但是当您select任一站点时,IIS将显示会显示一条消息,指出“没有默认的SSL站点已经创build。为了支持没有SNIfunction的浏览器,build议创build一个默认的SSL站点”。 如果我创build了一个默认的SSL站点(使用HTTPS但是没有主机名/ SNI的IP地址相同的站点),则会在同一IP地址上的其他SNI站点上打开证书。 如果我添加如下的默认SSL网站 WEB SITE NAME IP ADDRESS Host Name/Header (SNI) Certificate Domain ============================================================================== somedomain.com 10.10.0.1 NULL somedomain.com 一旦存在(与使用什么证书无关),该IP地址上的其他SNI域就会生成证书错误,因为IIS显然会向用户提供缺省SSL站点的证书,而不是为站点指定的证书IIS。 任何人都可以请阐明如何在IIS中正确configuration默认SSL站点?

当浏览器不支持SNI时会发生什么情况

一个看似简单的问题,但仍然有效。 当不支持SNI的浏览器尝试访问configuration为通过SNI强制SSL的站点时,会发生什么情况? 谢谢

让Nginx通过HTTPS拒绝未知的服务器名称

我有一个使用SNI的Nginx实例来从一个IP服务多个HTTPS域。 这个设置唯一的问题是Nginx在请求服务器的裸IP的IP地址或者没有对应的HTTPS服务器块的那个IP地址列出的域时,Nginx响应第一个(作为默认)域。 在这种情况下,我宁愿简单地返回一个标准的403禁止 – 我会设置一个默认的服务器块来做到这一点,但我不能看到解决客户端证书不匹配的警告。 (如何c | C)我configurationNginx拒绝对这样的未知/未定义的域的请求,而不需要指定一个特定的ssl证书,这将打乱浏览器? (也就是说,我需要Nginx拒绝这个请求,然后用一个“坏”证书来破坏客户端 – 从客户端的POV开始,这应该与根本没有定义HTTPS服务器块的情况相同)。

为什么apache httpd告诉我,我的基于名称的虚拟主机仅适用于支持SNI的浏览器(RFC 4366)

为什么Apache在我的日志中给我这个错误信息? 这是一个误报吗? [warn] Init: Name-based SSL virtual hosts only work for clients with TLS server name indication support (RFC 4366) 我最近从Centos 5.7升级到6.3,并由此升级到更新的httpd版本。 我一直使我的SSL虚拟主机configuration如下。 在共享相同证书的所有域(主要是/总是通配证书)共享相同的IP的情况下。 但是从来没有得到这个错误信息(或者我有,也许我没有看到足够的日志?)从我所学到的这应该工作没有SNI(服务器名称指示) 这里是我的httpd.conf文件的相关部分。 没有这个VirtualHost,我不会收到错误信息。 NameVirtualHost 10.101.0.135:443 <VirtualHost 10.101.0.135:443> ServerName sub1.domain.com SSLEngine on SSLProtocol -all +SSLv3 +TLSv1 SSLCipherSuite ALL:!aNull:!EDH:!DH:!ADH:!eNull:!LOW:!EXP:RC4+RSA+SHA1:+HIGH:+MEDIUM SSLCertificateFile /opt/RootLive/etc/ssl/ssl.crt/wild.fareoffice.com.crt SSLCertificateKeyFile /opt/RootLive/etc/ssl/ssl.key/wild.fareoffice.com.key SSLCertificateChainFile /opt/RootLive/etc/ssl/ca/geotrust-ca.pem </VirtualHost> <VirtualHost 10.101.0.135:443> ServerName sub2.domain.com SSLEngine on SSLProtocol […]

在Windows Server 2012 R2上使用SNI无法正常工作

我试图让我的网站与Windows Server 2012 R2上的单独的证书一起运行。 如果这不可能? 在最后一个添加的网站www.c1get.net上,我从第一个站点获得证书,并发出警告。 更新 SSL Certificate bindings: ————————- IP:port : 0.0.0.0:443 Certificate Hash : fabae896e032f9ba08b389d8c9ecd33908fabe31 Application ID : {4dc3e181-e14b-4a21-b022-59fc669b0914} Certificate Store Name : My Verify Client Certificate Revocation : Enabled Verify Revocation Using Cached Client Certificate Only : Disabled Usage Check : Enabled Revocation Freshness Time : 0 URL Retrieval Timeout : […]

HAProxy与SNI和不同的SSL设置

我有两个网站HAProxy,其中一个公共和一个私人。 www.mysite.com private.mysite.com Atm,我使用haproxy这样的: frontend mysite_https bind *.443 ssl crt /etc/mycert.pem ca-file /etc/myca.pem verify optional no-sslv3 mode http acl domain_www hdr_beg(host) -i www. acl domain_private hdr_beg(host) -i private. acl path_ghost path_beg /ghost/ acl clientcert ssl_c_used redirect location https://www.example.com if path_ghost !clientcert redirect location https://www.example.com if !domain_www !clientcert use_backend bknd_private if domain_private use_backend bknd_www if domain_www […]