我有GitLab的nginx设置在127.0.0.1:8088听。 然后我有一个系统nginx(通过Ubuntu上的apt-get安装)作为反向代理与HTTPS设置: upstream gitlab { server localhost:8088 fail_timeout=0; } server { listen 80; server_name gitlab.myhost.com; return 301 https://$server_name$request_uri; } # let gitlab deal with the redirection server { listen 443 ssl; server_name gitlab.myhost.com; ssl_certificate /srv/www/gitlab.myhost.com.unified.crt; ssl_certificate_key /srv/www/gitlab.myhost.com.key; location / { proxy_read_timeout 300; proxy_connect_timeout 300; proxy_redirect off; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; […]
我想要做什么:现在我正在使用一个自签名的SSL证书,这很好。 但是我想用正式的lets encrypt来代替它们。 我有什么(自签名证书):这是我现在有ssl的重要设置(local.ini)的输出: [daemons] ; enable SSL support by uncommenting the following line and supply the PEM's below. ; the default ssl port CouchDB listens on is 6984 httpsd = {couch_httpd, start_link, [https]} [ssl] cert_file = /etc/couchdb/certs/server.crt // these are my self made certificates key_file = /etc/couchdb/certs/server.key // these are my self made certificates […]
我了解ssl握手stream程,但是我面临一个逻辑问题。 当用户select证书时,我需要根据应用程序对其进行validation,以了解其可靠性并与任何系统用户匹配。 但是,如果没有,我必须允许用户再次要求select另一个。 也许用户在他们的机器上安装了多个证书,并错误地select了错误的证书。 在我的实际情况下,要select另一个证书,用户必须closures浏览器并再次打开,但它会给用户带来负面的体验,我想改进它。 该解决scheme为每个请求都进行握手,因此它允许用户select另一个请求。 但是怎么做呢? 我发现的最相关的问题是https://security.stackexchange.com/questions/56623/avoiding-ssl-handshake-for-each-call 。 完整的握手是客户端和服务器彼此不认识时所做的(他们以前没有谈过,或者很久以前)。 在完整握手中,证书被发送,并且发生非对称密码(RSA,Diffie-Hellman …)。 缩略握手是客户端和服务器互相记住的内容; 更准确地说,他们记得在先前的完整握手中build立的algorithm和密钥,并同意重用它们(从技术上讲,它们重用“主密钥”并从中获得新的encryption密钥)。 我可以释放任何cookie,closures选项卡,并禁用保持活动,第二次握手不会打开证书提示。 它使用的是之前select的,而对于Chrome而言,Firefox没有“记住我的决定”的选项。 边缘,歌剧,边缘等相同的发生是否是一个标准? 我想,它可以由服务器端来控制,请求一个新的SSL握手。 我做了一些干预,试图自己解决,但没有成功 在客户端 : 清除所有的数据,甚至历史。 在另一个子域中打开Cookie 在服务器端 : 发送“连接:closures”标题 禁用保持活动 closures浏览器是唯一有效的新的SSL握手,但它会促进不良的用户体验。 那么,如果我正在清理浏览器中的所有数据,closures连接,删除所有活动的数据,并且仍然使用第二个请求中select的第一个证书,直到closures浏览器(终止所有进程),出现错误,或者与浏览器(全部)或与服务器。 如果我的应用程序使用SSL对用户进行身份validation,则不能在不closures浏览器的情况下使用多个login名,这是不对的,应该有重新协商此身份validation的方法。
有没有人有幸使用SSLconfigurationPassenger和nginx? 我花了好几个小时的时间试图让这个configuration能够正常工作,在网上使用了很less的资源,而且我不能在Rails控制器中显示任何转发的头文件。 例如,使用以下(及其多个变体)的conf文件: server { listen 3000; server_name .example.com; root /Users/website/public; passenger_enabled on; rails_env development; } server { listen 3443; root /Users/website/public; rails_env development; passenger_enabled on; ssl on; #ssl_verify_client on; ssl_certificate /Users/website/ssl/server.crt; ssl_certificate_key /Users/website/ssl/server.key; #ssl_client_certificate /Users/website/ssl/CA.crt; ssl_session_timeout 5m; ssl_protocols SSLv3 TLSv1; ssl_ciphers ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:-LOW:-SSLv2:-EXP; proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X_FORWARDED_PROTO https; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; […]
我一直在寻找,或者我找不到任何东西,或者我找不到任何有效的东西…所以我就在这里。 我怎样才能设置关于Mongrel的SSL / HTTPS? 提前致谢!
使用证书的SSL客户端authentication – 这是一个复杂的话题,我认为我已经学会了足够的东西,使其更加复杂。 这是我的基本理解:公钥和私钥由证书颁发机构生成。 这些信息可以保存在“证书”中,然后由客户端使用来进行authentication。 为什么有可能没有私钥的证书? 我知道,如果从Windows证书商店导出证书,您可以导出它没有私钥。 没有使用私钥的证书如何? 我一直以为你需要这两个,如果你要转移到另一台电脑/设备使用。 如果公钥和CA已经知道,是否可以随时请求私钥?
更新我切换到使用1024位的密钥,我改变了SSLCipherSuite在我的ssl.conf文件。 SSLCipherSuite RC4 + RSA:+高:+中:+低:+ SSLv2:+ EXP 嘿, 我已经设置了Apache使用SSL自签名证书。 通过https(KeepAlive on),我可以每秒获得超过3000个请求。 但是,使用https(KeepAliveclosures),我只能得到每秒13个请求。 我知道应该有一些开销,但这看起来不正常。 任何人都可以build议我可以去debugging这个。 这里是https: Server Software: Apache/2.2.3 Server Hostname: 127.0.0.1 Server Port: 443 SSL/TLS Protocol: TLSv1/SSLv3,DHE-RSA-AES256-SHA,4096,256 Document Path: /hello.html Document Length: 29 bytes Concurrency Level: 5 Time taken for tests: 30.49425 seconds Complete requests: 411 Failed requests: 0 Write errors: 0 Total transferred: 119601 […]
所以我已经看过了我可以find的每个示例configuration,但是每次尝试查看需要ssl的页面时,我都会在redirect循环中结束。 我运行nginx / 0.8.53和乘客3.0.2。 这里是sslconfiguration server { listen 443 default ssl; server_name <redacted>.com www.<redacted>.com; root /home/app/<redacted>/public; passenger_enabled on; rails_env production; ssl_certificate /home/app/ssl/<redacted>.com.pem; ssl_certificate_key /home/app/ssl/<redacted>.key; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X_FORWARDED_PROTO https; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; proxy_set_header X-Url-Scheme $scheme; proxy_redirect off; proxy_max_temp_file_size 0; location /blog { rewrite ^/blog(/.*)?$ http://blog.<redacted>.com/$1 permanent; } location ~* \.(js|css|jpg|jpeg|gif|png)$ { […]
我们有一个产品(托pipe的PHP应用程序),我们将提供SSL证书给人们以及一些托pipe。 我们完全控制了设置用户虚拟主机configuration,文档根等等的主机环境。 我们正在考虑多域名证书,这将允许我们将许多域绑定到一个证书,这将最终为用户节省相当多的钱。 根据我的理解,当从证书中添加/删除一个域时,旧域名需要被撤销,新域名被创build – 这是否正确? 其他地方的任何地方都有一些类似的API? 这里的这个地方似乎提到他们的共享主机,并与单ips处理。 任何人有任何经验? http://www.comodo.com/business-security/digital-certificates/multi-domain-ssl.php
我有兴趣在某个Linux VPS上以某种方式安装SSTP VPN服务器,但据我所知,只有内置于Windows Server的服务器可用。 这是正确的还是我没有find一个?