0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

stone/stunnel の代替としての StreamRelay.NET.exe (SSLサーバ編)

Last updated at Posted at 2017-05-24

「local」側が tcp/4443 でSSLサーバとして待機して、「remote」側の192.0.2.1:80 へ転送する場合、証明書は「server.pfx」(パスワードは「abcdefgh」)とする
証明書は、事前にWindowsに信頼させておく必要がある

StreamRelay.NET.exe -LocalPort 4443 -RemoteHost 192.0.2.1 -RemotePort 80 -LocalProxy ssl:///?CertFile=server.pfx^&CertPassword=abcdefgh


オプション

  • CertFile : クライアント証明書認証の際のクライアント側の証明書ファイル(事前にWindowsに信頼させる必要がある)
  • CertPassword: 証明書のパスワード
  • NeedClientCert: クライアントへ証明書提示を求めるかどうか
  • UseCertRevocationList: 信頼破棄リストを問い合わせするかどうか
  • Protocol: SSLプロトコルを明示するかどうか

方向を逆転させる

StreamRelay019.png

既定では、TCPのハンドシェイクの方向と、SSLのハンドシェイクの方向は同じだが、反対にすることができる

StreamRelay.NET.exe -LocalPort 0 -RemoteHost 192.0.2.1 -RemotePort 4443 -RemoteProxy ssl:///?Server^&CertFile=server.pfx^&CertPassword=abcdefgh
StreamRelay.NET.exe -LocalPort 4443 -RemotePort 0 -LocalProxy ssl:///?Client
の二つの接続は、SSL で保護されるが、TCPのハンドシェイクの方向とSSLのハンドシェイクの方向は逆になる。
逆なので、TCPクライアント側がSSLサーバとなっているので、そちら側はSSLサーバなので証明書が必要。


目次へ戻る

目次というか最初の一歩

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?