====== VPSを中継した VNC over SSH ======
===== 目的 =====
SSHにてVPSを中継したVNC接続を行う。
{{:vps:vnc_over_ssh_01.png?600}}
===== 操作されるPCの設定 =====
==== VNCサーバ設定 ====
VNCサーバとして、TightVNCを使用する。
* サービスとして登録する。
* [TightVNC Server Configuration] -> [Access Control] -> [Loopback Connections]にて[Allow loopback connections]を有効にする。
==== SSHクライアント設定 ====
=== ttl作成 ===
TeraTermのttlを作成する。ttlファイルをTTPMACRO.exeと関連付けする事。
connect '<接続先(VPS)>:<ポート番号> /ssh /i /auth=publickey /user=<ユーザ名> /passwd=<パスワード> /keyfile=<鍵をフルパスで指定> /ssh-R:localhost:5900'
while 1
yesnobox '切断しますか?' '接続中...'
if result then
break
else
messagebox '接続を継続します' '確認'
endif
endwhile
sendln
sendln
sendln 'exit'
closett
=== 転送(1) ===
図の「転送(1)」をsshvnc.ttlの/ssh-Rにて設定する。
* \\ VPS側でVNC接続を待つポート番号を指定する。図では「6661」を指定。
* localhost:5900\\ 操作される側のvncserverのポート番号を指定する。
=== その他のオプション ===
* /usr\\ 操作する側がVPS接続時に使用するユーザ名と同じである必要は無い。
===== 操作する側の設定 =====
==== ssh接続 ====
VPSへのssh接続は以下の通り行う。
ssh -i <鍵をフルパスで指定> <ユーザ名>@<接続先(VPS)> -p <ポート番号> -L <ローカルのポート番号>:localhost:
=== 転送(2) ===
図の「転送(2)」をsshの-L似て設定する。
* <ローカルのポート番号>\\ 転送するポート番号を指定する。図では「6661」を指定。
* localhost:\\ <ローカルのポート番号>への接続をlocalhost:に付け替える。図では「6661」を指定。
==== vncクライアントによる接続 ====
vncviewerを使用する場合の接続例は以下の通り。
$ vncviewer -bgr233 localhost:<ローカルのポート番号>
* <ローカルのポート番号>\\ ssh接続の<ローカルのポート番号>を指定する。
===== 接続手順 =====
- 操作される側PCにてvncssh.ttlを実行する。
- 操作する側にてVPSにssh接続を行う。
- 操作する側にてVNCクライアントを実行する。