Articles of mod ssl

Apache和mod_ssl与多个远程CA一起用于客户端证书

生成客户端证书通过成为您自己的CA与Apache Web服务器是微不足道的工作,并有大量的文件如何实现这一点。 我的问题稍有不同。 我有几个客户想要拥有自己的PKI基础设施。 他们希望能够生成自己的客户端证书并撤消它们。 我们的networking服务器仍然负责授权他们访问我们的networking服务。 任何人都可以听到我可以看到的一些可能的解决scheme吗? 我看到Apache 2.3有一些SSLOCSP *相关的​​指令( http://httpd.apache.org/docs/2.3/mod/mod_ssl.html ),但我并不是完全兴奋使用Apache 2.3甚至更多,所以,它看起来像浏览器对SSLOCSP *有限制,我们正在处理那些不能接受的客户端。

502:proxy:传递请求主体失败

有时我通过https查看我的网站时遇到以下错误(在apache的error.log中): (502)Unknown error 502: proxy: pass request body failed to xxx.xxx.xxx.xxx:443 我不完全确定这是什么,为什么发生,这也不一致。 请求路由是: 浏览器 代理服务器(apache mod_proxy + mod_ssl) 负载平衡器(aws) Web服务器(Apache与mod_ssl) 代理服务器上的configuration如下: <VirtualHost *:443> ProxyRequests Off ProxyVia On ServerName www.xxx.co.uk ServerAlias xxx.co.uk <Directory proxy:*> Order deny,allow Allow from all </Directory> <Proxy *> AddDefaultCharset off Order deny,allow Allow from all </Proxy> ProxyPass / balancer://cluster:443/ lbmethod=byrequests ProxyPassReverse / […]

在x509下使用REMOTE_USER = SSL_CLIENT_S_DN_CN,在Apache中使用+ FakeBasicAuth。 可能吗?

嗨,我试图将软件纳入我们的内部网服务(BackupPc) 本软件使用环境variablesREMOTE_USER来获取用户名。 放置在具有客户端证书身份validation系统和FakeBasicAuth的Apache 2.2服务器下, REMOTE_USER将获得与FakeBasicAuth相同的值,其中包含证书的所有可分辨名称string。 我试图将REMOTE_USER的内容设置为SSL_CLIENT_S_DN_CN的内容,该内容与我的用户名和SSL_CLIENT_S_DN_CN的内容相匹配,但更短。 传递给CGI的这个环境variables不能被SetEnfIf和SetEnfIf改变。 还有一个mod_ssl指令, SSLUserName但Apache 2.2的官方文档说,它不会与FakeBasicAuth启用。 所以我想知道如果我错过了什么,或者有一个聪明的workarround在这个问题上。 我不能放弃FakeBasicAuth,因为这是我们在内部网的其余部分的authmodel,而且我不想修补应用程序的代码(我这样做是为了得到它的工作,但我想放弃修补的代码,赞成官方的)

Apache(mod_ssl)在请求时不提供SSL证书

休斯顿,我有一个问题。 我在一台机器上有一个Apache (httpd)实例,使用mod_ssl和openssl而mod_jk指向其他物理机器上的多个tomcat实例。 Apache是​​真的在这个盒子上运行的唯一的东西。 它被configuration为每个连接使用单独的进程来隔离它们,并设置为使用/dev/urandom启动和builtin连接。 处理请求是闪电般的。 我得到的问题是SSL握手的缓慢。 查看一个tcpdump ,有服务器从客户端接收字节的实例(假设这是尝试build立SSL连接),但Apache(mod_ssl)不响应。 客户端再次尝试〜3秒钟后,没有得到任何回应。 在实际发送证书之前,这可以重复几次。 握手成功后,工作顺利。 问题在于浏览器没有足够频繁的重试,用户很快得到响应,用户声称“系统缓慢”。 我需要弄清楚为什么Apache(或者mod_ssl)简单地忽略或者永远处理证书请求。 有任何想法吗? 提前致谢。

SSL通过非标准端口?

我在一台服务器上有两个不同的网站: a.com和b.com 。 如果我在ssl端口上使用命名的虚拟主机,IE将无法工作。 所以,我决定使用b.com SSL端口444。 但是,似乎所有的浏览器都会给出错误信息: Chrome: Error 107 ssl protocol error Firefox: Error code: ssl_error_rx_record_too_long Epiphany: SSL handshake failed 嗯..我不知道为什么,但我确实看到一些网站可以访问像https://example.com:1443 。 还是我错过了什么? ports.conf: NameVirtualHost *:80 Listen 80 <IfModule mod_ssl.c> # If you add NameVirtualHost *:443 here, you will also have to change # the VirtualHost statement in /etc/apache2/sites-available/default-ssl # to <VirtualHost *:443> # […]

一些url的Apache证书无效

我们在Apache安装中遇到一个相当奇怪的问题。 这里是一个简短的总结: 目前我正在用https和服务器证书设置Apache。 这是相当容易的,可以直接使用,就像预期的那样。 这是此设置的configuration: Listen 443 SSLEngine on SSLCertificateFile "/progs/apache/ssl/example-site.no.pem" SSLCertificateKeyFile "/progs/apache/ssl/example-site.no.key" SSLCACertificateFile "/progs/apache/ssl/ca/example_root.pem" SSLCADNRequestFile "/progs/apache/ssl/ca/example_intermediate.pem" SSLVerifyClient none SSLVerifyDepth 3 SSLOptions +StdEnvVars +ExportCertData RequestHeader set ssl-ClientCert-Subject-CN "%{SSL_CLIENT_S_DN}s" RewriteEngine On ProxyPreserveHost On ProxyRequests On SSLProxyEngine On … <LocationMatch /secureStuff/$> SSLVerifyClient require Order deny,allow Allow from All </LocationMatch> … <Proxy balancer://exBalancer> Header add Set-Cookie "EX_ROUTE=EB.%{BALANCER_WORKER_ROUTE}e; path=/" […]

Apache密码短语有时候工作

在我的一台服务器上,我观察到SSL密码有以下问题:有些证书没有要求input密码,有些则不断要求input密码。 我已经在全球build立起来了: SSLPassPhraseDialog exec:/path/to/passphrase 但是当我重新启动apache ,它要求我在几个使用相同通配符证书的域上使用密码。 任何想法可能导致这个? 检查我运行的密码 (openssl x509 -noout -modulus -in server.pem | openssl md5 ; openssl rsa -noout -modulus -in server.key | openssl md5) | uniq 我得到一个散列,这意味着他们匹配,密码相同 [Wed Mar 05 17:13:23 2014] [error] Init: Pass phrase incorrect [Wed Mar 05 17:13:23 2014] [error] SSL Library Error: 218529960 error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag [Wed […]

Apache SSL证书和基本身份validation组合 – 密码,如果没有证书

是否有可能,只有当用户没有安装客户端证书强制Apache要求密码? 我几乎可以肯定,这是可能的,但我无法在任何地方find任何确认。 是否有可能configurationApache的行为是这样的: 如果用户将有客户证书 – 阿帕奇将允许连接到网页没有任何问题或问题。 如果客户端的用户证书不可用,它将要求基本的身份validation – 所以它会要求密码? 如何configuration? 我从早上起就没有任何解决办法,甚至只是坚持下去。

如何解决Apache服务器反向代理断开的连接?

在通过https服务器通过Apache服务器反向代理将文件发布到Tomcat servlet时,我们突然看到一个间歇性的,但非常频繁的错误。 该错误似乎只在发布20 MB或更多(video)的文件时发生。 我们还没有看到2到5 MB(JPEG)的较小文件的问题。 在我们尝试过的五台服务器中,有两台发生错误。 在连接的服务器端,即使用Jersey创build的Tomcat servlet,我们得到: java.net.SocketException: Connection reset 作为反向代理的同一台计算机上的Apache服务器提供了以下错误消息: [Thu May 15 17:08:58 2014] [error] proxy: pass request body failed to 127.0.0.1:8080 (localhost) from 192.168.16.xx () 设置Apache服务器的日志级别来debugging和重现问题不会产生额外的信息 – 我们仍然得到相同的错误消息,没有任何关联的消息。 less一些,我们没有在Tomcat方面得到例外,但是检查传输的字节数量与Content-Length头部相比,并不是所有的东西都能完成。 第二种情况下,Apache Server中的错误与第一个“proxy:pass request body failed …”中的错误相同。 在一个服务器上的Apache服务器版本是2.2.15.29,另一个是在CentOS 6.2下运行的2.2.15.30。 反向代理规则是这样设置的: <IfModule mod_proxy.c> ProxyRequests Off # Case Manager Tomcat web service ProxyPass /casemanager […]

如何在不破坏客户端和服务器之间的https隧道的情况下configurationapache反向代理?

我configuration了Apache反向代理。 在该configuration中,可以在客户端到反向代理之间进行https连接,并再次向服务器反向代理。 但我希望HTTPS连接客户端之间的服务器像转发代理。 https连接不应该在反向代理中被破坏。 Https tunnel New Https tunnel <===============> <===================> 客户端———————– Apache反向代理———————– – – -服务器 以上解决scheme是不可取的 。 Https Tunnel <========================================> 客户端——————– Apache反向代理——————–服务器 以上解决scheme是可取的 如果在反向代理中不可能使用端到端的https隧道,那么如何才能确保ssl代理选项是安全的,即使是反向代理pipe理员(如果反向代理被攻陷)也不能解密中间人攻击的隧道或者不能做完了。