Próba ustawienia Nginx jako równoważnika obciążenia dla serwerów https. Usługa ta działa na porcie 443 z skonfigurowanymi certyfikatami SSL. Jak skonfigurować Nginx, aby konfiguracja certyfikatu SSL była obsługiwana tylko na serwerach nadrzędnych, a nie na serwerze Nginx?Bilans obciążenia Nginx z wcześniejszym protokołem SSL
Odpowiedz
Należy użyć Upstream module i Reverse Proxy module. Aby odwrócić proxy do https w górę strumienia, należy użyć tego
proxy_pass https://backend;
gdzie backend jest blokiem wychodzącym.
Jednak gdybym to robił, kończyłbym ssl na serwerze nginx i czyniłem serwery aplikacji z wyprzedzeniem robiąc to, w czym są dobre: obsługując zawartość, zamiast martwić się o narzut szyfrowania/odszyfrowywania ssl. Konfigurowanie terminacji ssl na nginx jest również bardzo proste przy użyciu SSL module. Bardzo dobre studium przypadku podane jest również here.
Dowolna konfiguracja próbki? Dostaję "ssl_error_rx_record_too_long" do przeglądarki i nic w dzienniku błędów NGINX. –
Czy ta odpowiedź SO rozwiązuje problem? http://serverfault.com/questions/497430/error-code-ssl-error-rx-record-too-long –
Nie, próbowałem tego. Plik konfiguracyjny w tym przykładzie definiuje certyfikaty SSL, których nie robię (ponieważ nie ma ich na serwerze NGINX). –
O ile zrozumiałem z reading relevant discussion na forum Nginx, nie jest to możliwe, ponieważ Nginx i tak musi zakończyć połączenie SSL. Jeśli nalegasz na używanie Nginx, możesz tylko replikować konfigurację SSL i udostępniać Nginxowi certyfikaty i klucze.
Dyskusja, którą połączyłem, zakończyła się stwierdzeniem, że HAProxy jest znacznie lepszym narzędziem do przekazywania przez protokół SSL. Oto relevant post Znalazłem o konfiguracji HAProxy do tego celu. Ponieważ mam zerowe doświadczenie HAProxy, nie mogę podsumować jego konfiguracji lub ogólnej żywotności rozwiązania, pozostawiając je czytelnikowi.
Aktualizacja
Od 1.9.2 Nginx obsługuje HAProxy na proxy protocol.
wydaje się możliwe według https://www.nginx.com/resources/admin-guide/nginx-tcp-ssl-upstreams/ (1.9.4+)
- 1. Projekt czatu - bilans obciążenia z socket.io
- 2. Konfiguracja Nginx + CloudFlare + SSL
- 3. Nginx SSL/Subdomeny/IP
- 4. bilans Oblicz z mysql
- 5. Różnica między protokołem https a certyfikatem SSL
- 6. Sieci web PHP z nginx przez SSL
- 7. nginx proxy pass Node, SSL?
- 8. Nginx SSL wewnątrz kontenera Döcker
- 9. Delphi 2010 z wcześniejszym kompilatorem
- 10. Django + uWSGI + Nginx + SSL - żądanie konfiguracji roboczej (nacisk na SSL)
- 11. startowych z protokołem delegata
- 12. Przekierowanie do SSL przy użyciu nginx
- 13. nginx: połączenie do przodu ssl z innym serwerem
- 14. Ustawianie identyfikatora śledzenia w module równoważenia obciążenia nginx
- 15. Java serializacji z protokołem Buffer
- 16. Automatyczne dołączanie kontenera dokera do poprzedniej konfiguracji modułu równoważenia obciążenia nginx
- 17. Jak ustanowić połączenie TCP/IP z włączonym protokołem SSL w języku Ruby
- 18. Test obciążenia aplikacji Backbone
- 19. Wyjątek połączenia z protokołem HTTP z Androidem
- 20. SSL na Elastic Beanstalk
- 21. oblicz działa bilans w zapytaniu oracle
- 22. nginx - przekierowanie od https do http bez certyfikatu SSL
- 23. Niestandardowa strona błędu nginx dla "Błąd certyfikatu SSL"
- 24. Typ struktury zgodnej z protokołem generycznym z powiązanym typem, który jest również protokołem
- 25. Websockets i równoważenie obciążenia
- 26. Typ nie jest zgodny z protokołem
- 27. Typ ogólny zgodny z protokołem w Swift
- 28. Nie jest zgodny z protokołem UIPickerViewDataSource
- 29. Fragment Google+ z protokołem Open Graph
- 30. Czy mogę przekierować ruch nie-SSL, który jest dostarczany na porcie SSL z Nginxem
mógłbyś opublikować konfiguracji, która go rozwiązać? –