セキュアWebソケットの設定について何かアイデアはありますか?C#でサーバーにSystem.Net.WebSocketを使用しています。これにnginxを設定したいと思いました。WebSocketはhttps://localhost:9000nginx 設定ファイルで必要な設定は何でしょうか。
答え1
あなたの質問を読むと、https アップストリーム プロキシの nginx vhost 構成の例を求めているのではないかと思います。
以下にその構成例を示します。
server {
listen 443;
listen [::]:443;
server_name www.example.com;
location / {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_pass https://localhost:9000;
proxy_ssl_certificate /etc/nginx/client.pem;
proxy_ssl_certificate_key /etc/nginx/client.key
proxy_ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
proxy_ssl_ciphers HIGH:!aNULL:!MD5;
proxy_ssl_trusted_certificate /etc/nginx/trusted_ca_cert.crt;
proxy_ssl_verify on;
proxy_ssl_verify_depth 2;
proxy_ssl_session_reuse on;
}
}
また、http -> https へのリダイレクトも必要になる場合があります。
server {
listen 80;
listen [::]:80;
server_name www.example.com;
return 301 https://$server_name$request_uri;
}
詳細は以下をご覧くださいNGINX: アップストリーム サーバーへの http トラフィックのセキュリティ保護そして