技術をかじる猫

適当に気になった技術や言語、思ったこと考えた事など。

リモートデスクトップ環境をさくっとくみ上げる

外出先からOnして地デジ録画するために、さくっと環境整えてみた。
前提は以下の通り。

  • 光回線が入っている
  • リモート対象の他に、開いてるPCが1台以上ある
  • ルータの操作ができる
  • グローバルアドレスとローカルアドレスの意味が理解できる
  • Linux の端末が多少弄れる

とりあえず自宅構成をこんな感じで設定した。

インターネット --- ルータ --- PC2:Windows7(リモート対象)
                      |------ PC1:Linux(ローカルサーバ)
Linuxを用意する

先ずはPC1に対してLinuxを突っ込む。

ルータ --- ◎PC1:Linux(コレを用意する)

自分は開いてるPCがなかったので、適当に省電力の軽そうなのを購入したER1401
ここに、UbuntuLinuxを突っ込む。
サーバ版でも、クライアント版でも、好きなほうで良いと思う。気が向いたときにネットしたり、2PCで調べ物したい場合もあったので、クライアント版を入れた。

入れたら、最初に端末開いて

sudo apt-get install openssh-server

で、さくっとSSHを突っ込む。
後はログオフだけして、ディスプレイ引っこ抜いてOK.

ルータでPC1,PC2 のローカルIPを固定する

このへんの設定はルータの説明書を見て欲しい。
PC1、PC2を MAC アドレス指定でローカルIPを固定化する。
一応、Windows側とLinux側のMACアドレスの表示方法だけ記載。

  • Windows7 : コンソールを開いて「ipconfig /all」の「物理アドレス」の項目
  • Linux : 端末開いて、「ifconfig」で「ハードウェアアドレス」の項目

参考までに、ウチの構成はこんな形。

ルータ(192.168.0.1) --- (192.168.0.10) PC1:Linux
                  |---- (192.168.0.11) PC2:Windows7
ルータでポート転送設定を行う

とりあえず、グローバルアドレスの22番ポートでアクセスされた際に、ローカルPC1に転送できればOKです。

こちらもルータの説明書を見て欲しい。機種によって説明がまちまちだったりする。
「ポートマッピング」「静的IPマスカレード」とか色々呼び名があります。

インターネット ---> (GlobalIP:22)ルータ(192.168.0.1) ---> (192.168.0.10:22)PC1 : Linux
PC2 でリモートデスクトップを有効にする

[スタート]-[コントロールパネル]-[システムとセキュリティ]-システムの項目より[リモートアクセスの許可]をクリック

セキュリティ設定は任せた!
これで基本的な準備は完了。

リモートデスクトップをしてみる

クライアントマシンから、TeraTermを起動してルータのグローバルIPアドレスに対してSSHをかける。

クライアント ---> インターネット ---> (GlobalIP:22)ルータ(192.168.0.1) ---> (192.168.0.10:22)PC1 : Linux

接続したら、[設定]-[SSH転送]を指定し、ローカルポート「4389」リモート側ホスト「192.168.0.11」ポート「3389」を指定する。

クライアント(localhost:4389) ---> ( インターネット ---> (GlobalIP:22)ルータ(192.168.0.1) ---> (192.168.0.10:22)PC1 : Linux ) ---> (192.168.0.11:3389) PC2 : Windows7

最後に、TeraTerm を起動したまま、クライアント側でリモートデスクトップを「localhost:4389」で接続する。
すると上記の経路で、PC2につながる。
記憶がさだかじゃないけど、SSHトンネリングという呼び名だった気がする。