2008/02/18(月)putty よりも簡単に SSL 通信を実現する stone

2017/10/11 8:36 サーバ運営・管理
恥ずかしながら、最近まで存在を知らなかったですが...orz
やはり、日本人開発者による日本語のドキュメントはいいです。 → http://www.gcd.org/sengoku/stone/Welcome.ja.html 〔Simple Repeater `stone' 〕

FreeBSD では、package や ports でインストールできます。(個人的には余計な起動ファイルまで入ってしまうのですが orz)
Windows 98/2000/NT/XP 版もあるようです。

SSL 通信するためには、自己署名の証明書(いわゆるオレオレ証明書)の用意が最低限必要。
これは随所に提示されているので、割愛するとして、、、

コマンドラインでも設定できるが、通常は、設定ファイルを作成し、それを指定して起動するほうがよいです。
単純に以下の例を想定して簡単にまとめてみると、、

stone.png

こんな感じです。
クライアント側がサーバA、サーバ(中継も可能)側が、サーバB。
中継(簡単なゲートウェイ)もでき、こうすれば、外部からLAN内のサーバにアクセスさせることも可能。
こういう構成のセキュリティ対策は、またべつの話なので、ここでは割愛します。

この設定で、サーバAからサーバBを経由して、サーバC、D、E,Fへアクセスが出来るようになります。

設定のポイントは、アクセスしたいサーバの代わりに localhost の特定ポート経由で(どのアプリケーションも使っていない空きポートにする必要がある)をアクセスすることで、 stone を通して目的のサーバ、ポートをアクセスするようにする、ということ。

上図の場合、サーバAがlocalhost:9001 へアクセスすることで、stone が サーバBのポート3231へ接続をし、サーバB側では、ポート 3231 へやってきた接続を、サーバCのポート1230 へ転送するという動作を行います。
サーバB自身へ接続したい場合は、例えば、サーバCの代わりに localhost とすればサーバBでは、localhost:1230 で サーバA localhost:9001 との通信が可能になるわけです。
SSH トンネルと同じようなことをやっているわけです。

サーバBからサーバAにstone を使って接続する場合は、設定をもう一対用意するのが簡単でしょう。