Jak mogę połączyć się przez SSL z websemocket obsługiwanym przez GlassFish na instancji Amazon AWS EC2 przez ELB?WebSockets: wss od klienta do instancji Amazon AWS EC2 poprzez ELB
Używam Tyrus 1.8.1 w wydaniu wstępnym GlassFish 4.1 b13 jako mojej implementacji websocket.
Port 8080 jest niezabezpieczony, a port 8181 jest zabezpieczony przez ssl.
- ELB nazwa DNS: elb.xyz.com
- EC2 nazwa DNS: ec2.xyz.com ścieżka
- websocket:/web/gniazdo
mam z powodzeniem stosować zarówno ws & wss, aby połączyć się bezpośrednio z moją instancją EC2 (z pominięciem mojego ELB). czyli oba z następujących adresów URL działa:
- WS: //ec2.xyz.com: 8080/web/gniazdo
- WSS: //ec2.xyz.com: 8181/web/gniazdo
Pomyślnie użyłem ws (non-ssl) nad moim ELB przy użyciu detektora 80 tcp 8080. tj następujący adres URL działa:
- WS: //elb.xyz.com: 80/web/gniazdo
Ja jednak nie udało się znaleźć sposób na wykorzystanie WSS chociaż moja ELB.
Próbowałem wielu rzeczy.
Przypuszczam, że najbardziej prawdopodobnym sposobem na uzyskanie WSS pracować przez moją ELB byłoby stworzyć tcp 8181> tcp 8181 słuchacza na moim ELB z protokołem Proxy włączony i kliknąć na poniższy link:
- WSS : //elb.xyz.com: 8181/web/socket
Niestety, to nie działa. Sądzę, że być może będę musiał włączyć protokół proxy na glassfish, ale nie byłem w stanie dowiedzieć się, jak to zrobić (lub jeśli jest to możliwe, lub jeśli jest to konieczne, aby wss pracował nad moim ELB).
Inną opcją może być w jakiś sposób uruchomienie ws lub wss za pośrednictwem połączenia ssl, które jest zakończone na ELB, i niech dalej będzie niezabezpieczone dla glassfish, za pomocą detektora ssl> tcp 8080. To też nie działało dla mnie, ale może niektóre ustawienia były nieprawidłowe.
Czy ktoś ma jakieś modyfikacje do moich dwóch wyżej wymienionych badań. A może ktoś ma jakieś inne sugestie?
Dzięki.
Mam na myśli "w przeciwieństwie do HTTPS tylko" – guillaumepiot
Dziękuję, Bezpieczny TCP zamiast HTTPS zrobił lewę! –
"SSL (Secure TCP) 443 TCP 80" działa również –