WindowsからUbuntuにリモートデスクトップ
Windows機からUbuntu機をリモートデスクトップで操作する方法(LANのみ)。
手順
Ubuntu機をvncで操作できるようにする
- 下記コマンドでUbuntu機にx11vncをインストールします。
$ sudo apt-get install x11vnc
- 下記コマンドでx11vncのパスワードを設定します。
$ x11vnc -storepasswd
- 下記コマンドでx11vncを起動します。起動後文がずらずらと出てくるのでポート番号「PORT=xxxx(デフォルトでは5900)」の部分を覚えておいてください。また、後でvncで接続するので起動したままにしておいでください。
x11vnc -usepw
-usepwをつけるとvncを利用するときに先程設定したパスワードが要求されます。
Windows機にUltraVNC Viewerをインストールします。
UltraVNC Viewerを開くと一番上に「VNC Server:」という入力欄があるのでここにUbuntu機のipアドレス+:ポート番号を入力して「Connect」を押します。
ex. ipアドレスが192.168.3.11, ポート番号が5900の場合は192.168.3.11:5900と入力パスワード要求画面が出てくるのでx11vncで設定したパスワードを入力します。Ubuntu機の画面が出てきたら成功です。
※ 「Failed to connect to server !」と出る場合はUbuntu機でx11vncが起動されているか確かめてください。
ssh経由でvncを利用する
単純にvncでwindows機からUbuntu機をGUIで操作するだけなら上記までで問題ありません。しかし、vnc接続は暗号化がされていないので安全な接続とは言えません。そのため、sshを経由し、暗号化することで安全なvnc接続をします。
Ubuntu機をsshで操作できるようにする
- 下記コマンドでUbuntu機にopenssh-serverをインストールします。
$ sudo apt-get install openssh-server
$ ifconfig
inetアドレス:xxx.xxx.xxx.xxxの部分がipアドレスです。
Tera Tremを開くと「新しい接続」画面が出るので、「TCP/IP」を選択し、「ホスト(T)」にubuntu機のipアドレスを入力して「OK」を押します。
「SSH認証」という画面が出てくるので「ユーザー名(N)」と「パスフレーズ(P)」にubuntu機のアカウントのユーザー名とパスワードを入力して「OK」を押します。
接続ができることを確認したら一度Tera Termを閉じます。
sshポートフォワーディングによりvnc接続を行う
sshポートフォワーディングとはsshの経路を使用して他の通信を行うことです。
ここではUbuntu機のvncの通信をsshの経路を経由してWindows機のlocalhostのポートに転送します。
そして、localhostのポートをUltraVNC Viewerで接続します。
Tera Termを開きます。「新しい接続」画面は閉じて、「設定」→「SSH転送」を開きます。
「SSHポート転送」画面が出てくるので「ローカルのポート」を選択し、
「ローカルのポート」にはlocathostのポート番号(0~65535の任意のポート番号を設定)
「リッスン」は空欄
「リモート側のホスト」にはUbuntu機のipアドレス
「ポート」にはx11vncのポート番号
を入力し、「OK」を押して「SSHポート転送」画面を閉じます。「設定」→「設定の保存」で設定を保存します。保存名を「TERATERM.INI」にすると毎回この設定が読み込まれます。
Windows機でUltraVNC Viewerを起動し、「VNC Server:」にlocathost::+locathostのポート番号を入力し「Connect」を押します。
ex. locathostのポート番号を12345としたときlocathost::12345と入力する。