Articles of SSL

502错误的网关与Nginx的+阿帕奇+颠覆+ SSL(SVN的复制)

我在运行Apache + Subversion时出现了一个问题,在Nginx代理之后使用SSL,我希望有人可以得到答案。 我search谷歌几个小时寻找我的问题的答案,似乎无法弄清楚。 我看到的是“502(Bad Gateway)”错误,当试图使用颠覆移动或复制; 不过,结账和提交工作正常。 下面是有关的部分(我认为)的问题nginx和Apacheconfiguration文件: Nginx的 upstream subversion_hosts { server 127.0.0.1:80; } server { listen xxxx:80; server_name hostname; access_log /srv/log/nginx/http.access_log main; error_log /srv/log/nginx/http.error_log info; # redirect all requests to https rewrite ^/(.*)$ https://hostname/$1 redirect; } # HTTPS server server { listen xxxx:443; server_name hostname; passenger_enabled on; root /path/to/rails/root; access_log /srv/log/nginx/ssl.access_log main; error_log […]

如何在nginx中设置每个位置的ssl_verify_client

我想为每个位置设置ssl_verify_client nginxconfiguration值。 这似乎还不支持: http://trac.nginx.org/nginx/ticket/317 有没有其他解决方法,人们正在使用? 想要这样做的动机是创build一个受TLS相互authentication保护的API; 然而,这个相同的HTTPS端口将被一个标准的网页浏览器所使用,由于部署复杂性的原因,这个浏览器将不会被期望拥有一个客户端证书。 另外,nginx是反向代理我们的WebSockets,并打开ssl_verify_client那里打破了我试过的大多数Web浏览器上的WebSockets。

我怎样才能代理到SSL后端没有特定的证书文件?

我有一个使用JKS标志自己的Play 2.1.x应用程序。 这是运行,并在domain.com:9443 ,我需要用nginx代理它,因为将有更多的应用程序在同一台机器上( 因此不能运行它只是在端口443 )我添加了nginxconfiguration希望proxy_pass与https将允许我只是代理它的客户端 upstream backend-secure { server 0.0.0.0:9443; } server { listen 443 ssl; server_name domain.com; proxy_redirect off; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; location / { proxy_pass https://backend-secure; } } 不幸的是,当试图在浏览器中打开https://domain.com ,我只能loginnginx/error.log如: 没有“ssl_certificate”定义在服务器监听SSL端口,而SSL握手,客户端:123.123.123.123,服务器:0.0.0.0:443 有没有办法让它工作,或者只有选项是使用常见的方式为nginx SSL +使用http后端? 编辑:这是EV,多域名证书,如果它的事。

错误代码:ssl_error_rx_record_too_long对于ruby on rails应用程序中的nginx https

我使用rails 3.2和ruby 1.9作为我的应用程序,必须在https上运行应用程序,并在我的系统上使用https://welcome.com这样的域名。 所以我通过为域名和https创buildssl证书来configuration我的nginx ssl的snapshort: # HTTPS server # server { listen 443 ssl; server_name welcome.com; root html; index index.html index.htm; ssl on; ssl_certificate /etc/nginx/ssl/server.crt; ssl_certificate_key /etc/nginx/ssl/server.key; ssl_session_timeout 5m; } 我可以通过调用welcome.com和https://welcome.com来看到nginx主页。 无需运行rails应用程序 我的应用程序也成功运行在443端口,但在像https://welcome.com浏览器查询 Railsterminal显示错误: ERROR bad Request-Line `\x16\x03\x01\x00 \x01\x00\x00 \ ERROR bad URI `._i\b8\x10 yA ^6 v M| 在浏览器中抛出错误: SSL received a record that exceeded […]

Rails 4 + nginx + unicorn + ssl = 502坏的网关

浏览器显示502坏门户 – nginx。 唯一的好消息是我的SSL HTTPS和绿色锁正在显示。 下面的Nginx日志错误 nginx的/ error.log中 *1 connect() failed (111: Connection refused) while connecting to upstream, client: xx.xxx.xx.xx, server: mysite.com, request: "GET / HTTP/1.1", upstream: "http://xxx.xxx.xx.xxx:80/maintenance.html", host: "mysite.com" home / unicorn / log / unicorn.log (好像在等待nginx): I, [2014-01-28T17:18:37.176299 #31858] INFO — : listening on addr=127.0.0.1:8080 fd=10 I, [2014-01-28T17:18:37.176619 #31858] INFO — : worker=0 […]

/ etc / nginx / sites-enabled / defaul中的“ssl_certificate_key”指令中的参数个数无效

我有我的EV SSL证书。 我正在关注如何在Ubuntu上使用NGINX的证书 当我尝试重新启动我的nginx时,我得到: **invalid number of arguments in "ssl_certificate_key" directive in /etc/nginx/sites-enabled/default 我到目前为止做了什么: sudo nano /etc/nginx/sites-enabled/default upstream app { # Path to Unicorn SOCK file, as defined previously server unix:/home/zhall/zoulfia/shared/sockets/unicorn.sock fail_timeout=0; } server { listen 80; server_name moneytree.space www.moneytree.space " " 178.62.19.65; rewrite ^/(.*) https://moneytree.space/$1 permanent; } # HTTPS server server { listen 443; […]

nginx使用Tomcat 7pipe理SSL

server.xml中的nginxpipe理SSL的正确configuration是什么? 我当前的configuration导致“redirect循环”,除非我标记的tomcat标准连接“安全”这不是我想要的。 我的应用程序需要HTTPS的所有请求,并redirect到HTTPS,如果HTTP使用。 如果我设置secure =“true”,它不再redirect,但“redirect循环”消失了。 我究竟做错了什么? 我目前的tomcat server.xml: <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" URIEncoding="UTF-8" redirectPort="8443" proxyPort="443"/> Nginx的conf: server { listen 80 default_server; server_name localhost, mydomain.com; location / { add_header 'Access-Control-Allow-Origin' '*'; proxy_pass http://localhost:8080/; proxy_redirect off; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto http; proxy_send_timeout 6000; } } server { server_name localhost, mydomain.com; […]

一个nginx虚拟服务器如何处理端口80和443?

我有一个虚拟服务器设置的configuration文件,这是运行在端口443 ssl。 我也想这个相同的虚拟服务器端口80上处理非SSLstream量。 我希望能做到以下,但似乎没有工作。 server { listen 443 ssl; listen 80; server_name example.com; … } 它看起来像这些设置下面的SSL选项导致非SSLstream量的问题。

Play框架中的SSL导致“常规SSLEngine概率”。 (nginx的)

我有一个2服务器的服务器结构:一个是与内容的主要服务器,另一个是与运行的Play的Scala服务器,做用户pipe理,包括社会login(fb,tw,g +)。 两台服务器都使用相同的通配符SSL证书。 我最近把主服务器从Apache切换到nginx,由于某种原因,Scala服务器抱怨SSL不匹配(在Apache之前这从来都不是问题)。 当我尝试login时,从Play中收到以下错误: [error] scProviderController – Unable to log user in. An exception was thrown java.net.ConnectException: General SSLEngine problem to https://www.example.com/login/corsValid at com.ning.http.client.providers.netty.NettyConnectListener.operationComplete(NettyConnectListener.java:103) ~[async-http-client.jar:na] at org.jboss.netty.channel.DefaultChannelFuture.notifyListener(DefaultChannelFuture.java:427) ~[netty.jar:na] at org.jboss.netty.channel.DefaultChannelFuture.notifyListeners(DefaultChannelFuture.java:413) ~[netty.jar:na] at org.jboss.netty.channel.DefaultChannelFuture.setFailure(DefaultChannelFuture.java:380) ~[netty.jar:na] at org.jboss.netty.handler.ssl.SslHandler.setHandshakeFailure(SslHandler.java:1417) ~[netty.jar:na] at org.jboss.netty.handler.ssl.SslHandler.unwrap(SslHandler.java:1293) ~[netty.jar:na] Caused by: javax.net.ssl.SSLHandshakeException: General SSLEngine problem at sun.security.ssl.Handshaker.checkThrown(Handshaker.java:1290) ~[na:1.7.0_51] at sun.security.ssl.SSLEngineImpl.checkTaskThrown(SSLEngineImpl.java:513) ~[na:1.7.0_51] at sun.security.ssl.SSLEngineImpl.readNetRecord(SSLEngineImpl.java:793) […]

在新的Ubuntu 16.04服务器上使用SSL脚本编写新的nginx实例的正确方法是什么?

我有这个到目前为止,但我错过了一些像获取cron作业脚本的东西。 不想以root身份执行此操作。 所以我假设可以做更多的事情来同时build立第一个用户。 脚本需要是幂等的(如果以前使用相同的参数运行,可以反复运行而不会冒险改变任何东西)。 singledomaincertnginx.sh: #!/bin/bash if [ -z "$3" ]; then echo use is "singledomaincertnginx.sh <server-ssh-address> <ssl-admin-email> <ssl-domain>" echo example: "singledomaincertnginx.sh user@mydomain.com admin@mydomain.com some-sub-domain.mydomain.com" exit fi ssh $1 "cat > ~/wks" << 'EOF' #!/bin/bash echo email: $1 echo domain: $2 sudo add-apt-repository -y ppa:certbot/certbot sudo apt-get update sudo apt-get upgrade -y sudo apt-get install […]