Я следил за этим руководством:
http://www.exratione.com/2012/12/websockets-over-ssl-haproxy-nodejs-nginx/
... но у меня возникли проблемы с подключением к Nginx через HAProxy через SSL.
я собираюсь Error 107 (net::ERR_SSL_PROTOCOL_ERROR): SSL protocol error.
в Chrome после перенаправления HTTP на HTTPS и (Error code: ssl_error_rx_record_too_long)
в Firefox.
Я думаю, это как-то связано с объединением файлов для создания .pem
файл.
Вещи, которые я пробовал:
Моя конфигурация Nginx:
server {
listen 8080 ssl; ## listen for ipv4; this line is default and implied
root /usr/share/nginx/www;
index index.html index.htm;
server_name localhost;
ssl_certificate /etc/ssl/certs/server.crt;
ssl_certificate_key /etc/ssl/private/server.key;
ssl_session_timeout 5m;
ssl_protocols SSLv3 TLSv1;
ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv3:+EXP;
ssl_prefer_server_ciphers on;
location / {
# First attempt to serve request as file, then
# as directory, then fall back to displaying a 404.
try_files $uri $uri/ /index.html;
# Uncomment to enable naxsi on this location
# include /etc/nginx/naxsi.rules
}
location /doc/ {
alias /usr/share/doc/;
}
Еще у меня есть 3 файла SSL:
/etc/ssl/certs/server.crt
/etc/ssl/private/server.key
/etc/ssl/server.pem
ключ первый сертификат второй, как указано в руководстве.Чтобы еще больше усложнить ситуацию, я запускаю Ubuntu 12.04 на Vagrant
.
Спасибо,
Ясень
Хорошо, с этим было несколько проблем.
Во-первых, я включил SSL как в HAProxy, так и в Nginx, что не нужно и само по себе может вызвать проблемы. Поэтому я отключил SSL в своей конфигурации Nginx и перезапустился.
Вторая проблема заключалась в том, что я пытался получить доступ к этому серверу (который находился на гостевой виртуальной машине) через localhost
который работал частично, потому что порт 80 перенаправлялся правильно. Однако когда дело дошло до перенаправления HTTP
трафик в HTTPS
он потерпит неудачу.
Я предполагаю, что это потому, что HAProxy перенаправлялся на другой порт.
В любом случае доступ к серверу через фактический IP-адрес работает.