Time-stamp: <01/07/14 02:36:53 kawasan>

Setup stone-ssl

FireWall内部に設置されているサーバ(イントラサーバ)を社外(インターネット)へ 公開する際に利用した。社内のイントラサーバはhttpのみでしかアクセスが出来ない。 社外利用に関しては通信データを暗号化したいとなるが、現行動作中のマシンを変更して 大事に至るよりは、FireWallにて通信データを加工できるというこのサービスに注目し 採用にいたる。
変則的だが、社内では、今まで通りのアクセス方法で利用し、社外からは暗号化された 特殊サーバという位置付けでアクセスとなる。 (要は、社内と社外ではアクセス方法が異るという意味)

stone-sslサービスのInstallについて


BASEとなるOSのインストール
「Debian GNU/Linux 徹底入門 -Potato対応-」の を見てインストールしてください。(^^;


stone-sslのインストール
root権限にて以下のコマンドでインストールします。
# apt-get update
# apt-get install stone-ssl

インストール自体はこれで終りです。認証サーバは、localhost(自マシン)に なっています。今回はここはdefaultで使っています。

電源ON時に自動実行出来る様に設定をします。以下のファイルを作成。 (ファイル名称は適当に決めました)
file : /etc/init.d/myinit.stone-ssl
#!/bin/sh

test -f /usr/bin/stone || exit 0

# 社内マシンで公開したいhttpサーバのIPアドレスを指定
# 下記の値はダミー値です。
TGT="192.168.10.10"

# 社外から受け付けるhttpsサーバのIPアドレスを指定
# 下記の値はダミー値です。
DES="210.XXX.XXX.XXX"

# コマンドpath指定
PS="/bin/ps"
GREP="/bin/grep"
CUT="/usr/bin/cut"
KILL="/bin/kill"

STONE="/usr/bin/stone"
STONE_OPT="-l -f 2 -a /var/log/stone.log  ${TGT}:http ${DES}:443/ssl"

case "$1" in
	start)
		echo -n "Starting stone-ssl server: stone"
		${STONE} ${STONE_OPT} 2> /dev/null &
		echo "."
  		;;
	stop)
		echo -n "Stopping stone-ssl server: stone... "
		PID=`${PS} -e | ${GREP} stone | ${CUT} -f1 -d' '`
		if [ "$PID" != "" ]; then
		    ${KILL} ${PID}
		fi
  		;;
	*)
  		echo "Usage: /etc/init.d/stone-ssl {start|stop}"
  		exit 1
		;;
esac

exit 0

以下のコマンドでアクセスログファイルを生成しパーミッションを変更しておきます。
# touch /var/log/stone.log
# chmod 640 /var/log/stone.log

以下のコマンドで自動起動できる様に登録します。
# update-rc.d myinit.stone-ssl defaults 99

マシンの再起動なくサービスを起動したい場合はここで、
# /etc/init.d/myinit.stone-ssl start

これで、SSL(RC4-128bit & RSA-1024bit)対応のブラウザにて、
https://DES/
httpsです。httpではないですよ。
と、入力してあげると、TGTマシンのhttpデータをSSLでラッパーして通信してくれます。 下図の場合は、DESにhttpsでアクセスすると、TGTにあたかも接続している様に動作します。 TGTは依然としてhttpにて動作しています。

模式図(簡易ですみません)
社外FireWall社内
[The Internet] ← https →
(暗号)
stone-sslマシン
(暗号/復号)
← http → WWWサーバ
DES TGT


接続確認したブラウザについて
ねすけ 4.77 on Linux
ねすけ 4.75 on Win98SE
ねすけ 4.73 on WinNT4.0WS
ねすけ 4.73 on Win98SE
IE 5.50.41.34.0600 on Win98SE


Simple Repeater stone