nginx で https と ssh をリッスンする nginx には $ssl_preread_protocol というStream設定が用意されている。これを使うとTLSプロトコルごとに、プロキシ先を変えることができる ただし443 はストリームが使うので、リッスン先をいい感じに帰る必要がある。 全体の接続 全体の接続は、次のようになる。 nginx stream は sshd / https に直接接続しない。 sshd のリッスンポートに直接接続すると、プロトコル不一致が起きて接続できないので、server{ .. } を経由してる。 https に直接接続できるといえばできるが、プロキシプロトコルを設定しやすくするため、server{ .. } を経由してある nginx の設定は次の通り stream 設定を作る。 ssl_preread_protocol で TLSはweb