我最近将我的rails应用程序从使用HTTP请求迁移到HTTPS。 我的应用程序URL如下所示: https : //testmate.persistent.co.in 我已经在nginx.conf文件中模拟了所有必需的configuration 我的nginx.conf文件如下所示: # start the http module where we config http access. http { … server { listen 443; ssl on; ssl_certificate certificate.pem; ssl_certificate_key server.key; ssl_protocols SSLv3; 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_redirect off; proxy_max_temp_file_size 0; proxy_set_header X-Forwarded-Ssl on; # doc root root /var/www/TestMate/current/public/; passenger_enabled on; […]
我的networking服务器托pipe网站的几个子域(vhosts),比如说sub1.example.com和sub2.example.com。 这些虚拟主机之间唯一的区别就是文档。 其他的东西都在虚拟主机之间共享。 现在我想为HTTPS做同样的事情,但当然ssl +虚拟主机是棘手的。 好的是我的SSL证书对我的完整域有效。 因此,我不需要指定每个虚拟主机证书。 我唯一想指定的每个虚拟主机是文档根目录。 FAQ说: 基于名称的虚拟主机是一种非常stream行的识别不同虚拟主机的方法。 它允许您为许多不同的站点使用相同的IP地址和相同的端口号。 当人们转而使用SSL时,假设可以使用相同的方法在同一台服务器上拥有许多不同的SSL虚拟主机,这似乎是自然而然的。 这是可能的,但只有使用2.2.12或更高版本的Web服务器,使用0.9.8j或更高版本的OpenSSL构build时才是可能的。 这是因为它需要一个只添加了最新版本的SSL规范的特性,称为服务器名称指示(SNI)。 我使用Apache 2.2.20和openssl 1.0.0e附带的Ubuntu 11.10,所以我认为我应该很好。 但是,我不能得到它的工作。 我已经启用了default和default-ssl网站。 如果我添加一个虚拟主机,就像我为HTTP所做的那样: <VirtualHost *:443> ServerName sub1.example.com DocumentRoot /var/www/sub1 </VirtualHost> 然后尝试重新启动Apache,我得到: [Thu Mar 01 23:55:15 2012] [warn] 默认 VirtualHost在端口443上重叠,第一个优先级Action'start'失败。
我看了一些例子,但我真的不知道为什么ssl不会工作。 我的情况: 首先,我有一个与乘客的轨道应用程序,正常的应用程序与Nginx的工作,在那里没有问题。 我想在一些path上添加ssl支持(例如/ admin或/ config)。 我已经自签名我的证书,因为这个url将被android应用程序用来向服务器发送数据安全,这是我需要SSL支持的唯一原因。 从我所理解的是,我应该在nginx上启用HTTP和HTTPS,并让rails应用程序决定是否使用HTTP或HTTPS(纠正我,如果我错了)。 那么我的nginxconfiguration应该如何在同一个IP /地址上同时允许HTTPS和HTTP呢? 我用下面的命令来生成我的证书: openssl req –new -x509 –keyout private/cakey.pem –out cacert.pem openssl req –new –out newcert/webserver-cert/pem –keyout private/webserver-key.pem echo '01' > serial touch index.txt openssl ca –cert cacert.pem –keyfile private/cakey.pem –out certs/webserver-cert.pem –in newcerts/webserver-cert.pem 现在我不知道这是否是正确的做法,任何帮助也将是受欢迎的:) 谢谢! UPDATE 这是我当前的configuration,当我使用https时出现以下错误:“SSL连接错误” root@event-backend:/opt# cat /opt/nginx/conf/nginx.conf worker_processes 1; error_log logs/error.log info; #pid […]
我pipe理托pipe公司的服务器。 Apache设置为侦听端口80和443. HTTP(端口80)通信正常工作。 我也可以使用端口22的ftp和telnet。问题 – 当我尝试使用https连接时,我找不到服务器。 所以我打开tcptrack,我可以看到我的https请求进入端口21,这是不是正在聆听。 域名被分配给分配给分配给服务器的专用IP的公共IP。 这是我已经安装的第三台服务器,其他两台都没问题。 只有这一个RedHat服务器有这个问题。 任何帮助,将不胜感激。 lsmod | grep ip_tables ip_tables 55329 2 iptable_filter,iptable_mangle x_tables 50377 3 ip_tables,ipt_REJECT,xt_tcpudp iptables -L Chain INPUT (policy ACCEPT) target prot opt source destination Chain FORWARD (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination
我正在寻找如何在使用https时在IIS内强制确切的主机名匹配。 例如,我希望“ https://works.mysite.com/resource ”正常,但是“ https://noworks.mysite.com/resource ”返回404(假设它们都parsing为相同的IP)。 IIUC,去“ https://noworks.mysite.com/resource ”时IIS的默认行为是获取证书警告,如果用户按下继续,用户可以访问该URL。 我可以通过生成一个* .mysite.com SSL证书来实现这一点,然后在IIS的绑定中指定主机名,但是在开头没有*时,主机名字段被禁用并且空白。 我在这里错过简单的东西吗?
我正在运行2008r2,并安装了IIS 7以及必要的WebDAV发布angular色/function。 我可以通过映射networking驱动器,提供凭据,然后连接,在我的局域网内部进行连接。 在我家外面的局域网之外,我不能做同样的事情。 奇怪的是,如果我去: https://domain_ip 在浏览器中,系统会提示input我的凭据,并看到我的文件列表。 为什么这不能远程工作? 我有一种感觉,我错过了一个非常小的东西; 但是因为这是我第一次这样做,我不知道那会是什么。
我已经安装了HTTP-Enforcer Chrome扩展。 现在,如果我打开一个terminal并键入ping google.com我看到: $ ping google.com PING google.com.home (67.215.65.132) 56(84) bytes of data. 64 bytes from kcherenkov.github.com.home (67.215.65.132): icmp_req=1 ttl=51 time=293 ms kcherenkov是创作该扩展的github用户。 我应该担心Chrome扩展会影响terminal的networkingstream量吗? 我也应该关心这个设置的任何隐私问题吗? /etc/resolv.conf : # Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8) # DO NOT EDIT THIS FILE BY HAND — YOUR CHANGES WILL BE OVERWRITTEN nameserver 127.0.0.1 search […]
我有RhodeCode与使用它附带的贴纸服务工具使用http … 我正在努力寻找一个“简单”的解决scheme,使其在HTTPS上运行。 很多讨论是关于使用Apache在unix上做到这一点。 没有很多关于如何在IIS上完成的信息。 我正在看贴纸服务器,它似乎能够使用HTTPS服务,但不能完全解决如何得到这个去。 然而,真正的目标只是以最简单的方式通过HTTPS服务RhodeCode(所有自包含将是辉煌的)。
我使用以下configuration来负载平衡https连接,使用haproxy 1.4.8。 SSL卸载是由Apache完成的。 listen ssl_to_waf 192.168.101.54:443 mode tcp balance roundrobin option ssl-hello-chk server wafA 192.168.101.61:444 check listen ssl_from_waf 192.168.101.61:445 balance roundrobin option forwardfor server webA 192.168.101.46:80 check 对于HTTP请求这很好,请求分发到我的Apache服务器就好了。 但是对于HTTPS请求,我丢失了“forwardfor”信息。 我需要保存客户端IP地址。 如何使用HAproxy在多个SSL服务器之间进行负载均衡,使这些服务器知道客户端的IP地址?
我正在尝试ssl_bump server_first Squid指令,但我不明白它是如何工作的。 据我所知,ssl_bump指令有三种工作模式: 无:HTTPSstream量不被拦截,客户端直接与远程服务器连接,鱿鱼只转发stream量。 客户端:客户端通过SSL连接到Squid(所以在第一次连接时,用户必须接受Squid的SSL证书),Squid连接到服务器,自动接受SSL证书。 (还是有select只接受一些证书,拒绝其他人?) 服务器优先:Squid连接到服务器,它接受SSL证书,然后…? 鱿鱼文件说: 首先build立与服务器的安全连接,然后使用模拟的服务器证书与客户端build立安全连接。 “模仿服务器证书”是什么意思? 鱿鱼产生假证书复制(?)从远程服务器接收到的? 我尝试设置ssl_bump server_first Squid,但是每次连接到HTTPS站点时,浏览器都会警告证书是不匹配的,如果检查证书,我会看到在Squid安装期间创build的证书始终是相同的。 ..我没有看到任何与“客户第一”行为的差异,然后… 我知道SSL截取不是一个安全的程序,但我正在推出这个function,因为我可能会被迫使用它… 先谢谢你。