SSHポートフォワーディングによるリモートデスクトップ接続の色々

今日、自宅のLAN内のPCにVPN経由でリモートデスクトップ接続しようとしたら、なぜか繋がらなかった。
代替案を考えたのだけれども、LinuxルータにSSH接続が可能なので、ポートフォワーディングを利用すればいいんじゃないかと考えた。

接続元PCはMacなので、ターミナルから

ssh -L 3389:(接続先マシンのプライベートIPアドレス):3389 \
(ルータのユーザID)@(ルータのグローバルIPアドレス)

としてルータとのSSH接続を確立し、ポートフォワーディングが可能なようにしておく。そしてRemote Desktop Connection for Mac 2を利用して、接続先にlocalhostを指定することで、無事接続できた。なんだこれ、超簡単だな。これだけだったらわざわざVPN使う必要もない感じだ。
そこで、ちょっと思ったのが、iPadからも同じことが可能なのではということ。iOSマルチタスクをサポートしているので、SSHクライアントをポートフォワーディングのオプションをつけてバックグランドで起動しておき、RDPクライアントでlocalhostに接続すればよいはず。

早速試してみたが、やはり可能だった。使用したアプリは、SSH→iSSH、RDP→iTap RDP。iSSHで接続先の設定画面で、「Tunnels」というメニューがあるので、Add Tunnel...からポート設定を追加すればよい。(サポートされているのはローカル→サーバのポート転送のみのような感じ。)
余談だが、このiTap RDP、接続先の設定を保存した後、接続先にRDP接続が可能かチェックして緑→OK、赤→NGのアイコンで教えてくれる。SSHの接続を確立する前は、接続先がlocalhostなので当然赤なのだけれども、SSH接続後、緑に変わる。これはちょっと面白い。

繋がった瞬間はおおお!って感じで結構感動するのだが、画面の切り替えがパラパラというか、結構もっさりしており、iPadを使うようにはサクサク動かせない。(そこは、うちのインターネット回線が遅いせいかもしれないけど。)ただ、このアプリの操作性自体は結構頑張っていて、Windowsマシンのブラウザを二本指のスワイプでスクロールできたり、ダブルタップでのアイコンのドラッグ、同じくダブルタップでの右クリック動作など、Macトラックパッドに近い操作感だ。

これで日常作業するのはさすがにきついが、緊急手段としては十分実用レベルだ。

ということはiPhoneからも同じことができるということか…。
iPhoneとか、電話だしw
技術の進歩は恐ろしいな。