Linuxホームサーバー編
No.16 VNCを使ってみよう2!
(SSHの設定方法は?)

2005,8/16 完成



前回まででVNCが使えるようになったのですがローカルなネットワーク上とは言え暗号化
せずに通信するのは何となく怖いものがあります

また、クライアントマシンの画面サイズがXGA(1024x768画素)なのにVNCの画面サイズも
XGAだと画面がはみ出してしまい一々スクロールバーをを操作しなくてはならず
使いにくいものがあります。
まずはこの2点を改善してみる事にしました。

1)SSH転送の設定方法
VNCサーバーとクライアントの間をSSH通信にするためにはどうすればいいんだろう?
と色々調べてみたらTeraTermProを使ってできる、ということがわかりました。
(TeraTerm えらい!)
さっそく見よう見まねでSSH通信の設定をやってみましょう。
(画像をクリックすると大きくなります。)

Linuxマシン(Vine君)を立ち上げた状態で、クライアント
マシン(Windowsマシン)上でTeraTermProを起動します。

ホストにVine君のIPアドレスとユーザー名とパスワード
を指定してLoginします。(Linux_HomeServer No.10参照
SUコマンドを使い、rootでLoginしなおしてから、
"vncserver"と打ち込みVNCサーバーを立ち上げます。

今回、ディスプレイ番号は2でした。(大事!)
今度はTeraTermProのメニュー画面から、

  設定→SSH転送

を選びます。
ローカルポート(Windowsマシン)に、5900+ディスプレイ番号+1
を設定します。

続けてリモート側ホストにVine君のIPアドレスを設定して、
リモート側ホストのポートに5900+ディスプレイ番号
を設定して"OK"ボタンをクリックします。

ポート転送の欄に上で設定した内容が追加されているのを
確認して"OK"ボタンを押します。
この設定を残しておくため、

 設定→設定の保存

を選択してTERATERM.INIを上書きします。

※ TERATERM.INIは通常TeraTermProがインストール
   されているフォルダーに入っています。
TeraTermProはVine君にLoginした常態のまま
(そうでないとつながらない)
VNC Viewer(今回はvnc-4_1_1-x86_win32_viewer.exe)
を立ち上げます。

今回、SSH通信を行うので、

 サーバー名は"クライアントマシンのIPアドレス"
 ディスプレイ番号は"VNCサーバーのディスプレイ番号+1"
          ↓
       127.0.0.1:3

を指定して"OK"ボタンを押します。
VNC用のパスワードを聞いてくるので入力して"OK"ボタンを
押します。
これでVNCがSSHで立ち上がりました!
パチパチ! (^_^)


というわけで無事にSSHでVNCを立ち上げる事ができました。
上の説明の中でディスプレイ番号とSSH転送をするポートの関係がわかり難いので
図にしてみました。

図1:ディスプレイ番号とSSH転送ポートとの関係


クライアントマシンの方の設定が”ディスプレイ番号+1”となっているのはクライアントマシン
の中でSSH転送を行っているからのようです。

※ VNCのSSH転送に関しては風晶のC言語プログラミングVNCの使い方・その2に出ている
  解説と図が分かり易いので参照して下さい。



2)Vine君の画面サイズ(画素数)を変えてみよう!
お次はvncserverの画面サイズを変えてみました。

SSHの設定と同じく、
1)Linuxマシン(Vine君)を立ち上げた状態で、
  クライアントマシン(Windowsマシン)上で
  TeraTermProを起動します。

2)ホストにVine君のIPアドレスとユーザー名と
  パスワードを指定してLoginします。
  (Linux_HomeServer No.10参照

3)SUコマンドを使い、rootでLoginしなおします。

4)"vncserver -geometry 800x600"
  と打ち込みSVGAの画面サイズでVNCサーバーを
  立ち上げます。

※ 今回、ディスプレイ番号は3になりました。(大事!)
ディスプレイ番号が3に変わったので、再びSSH転送の
設定を行います。


1)TeraTermProのメニュー画面から"設定→SSH転送"
  を選びます。

2)ローカルポートに5904を設定します。

3)続けてリモート側ホストにVine君のIPアドレスを設定して、
  リモート側ホストのポートに5903を設定して"OK"ボタンを
  クリックします。

4)この設定を残しておくため"設定→設定の保存"
  を選択してTERATERM.INIを上書きします。
1)TeraTermProはVine君にLoginした常態のまま
  VNC Viewerを立ち上げます。

2)今回、ディスプレイ番号が3なので127.0.0.1:4
  を指定して"OK"ボタンを押します。
すると今度はきちんとSVGA(800x600画素)でVNCが
立ち上がりました。
 パチパチ!
クライアントマシンがXGAであればいちいちスクロールバー
をいじらなくてもVNCを使うことができるようになりました!

さらに、このgeometryパラメーターを使うと縦も横も好きな
画素数を設定することができます。
例えば、クライアントマシンがSVGA(800x600)の画素数の時に、
geometryで780x540と指定してあげるとピタッと画面に
おさまりとても気持ちがよいです。 (^_^;)


というわけで無事SSHを使ったVNCと画面設定ができました。
よかった、よかった。 (^_^)


←戻る 進む→
ホームに戻る