2011年4月12日火曜日

AWS EC2を使ったクラウドデスクトップ挑戦

先月にAWS東京リージョンが増え,遅延も少ないだろうということでクラウドデスクトップに挑戦してみました。

参考にしたのはこちらのエントリー
http://d.hatena.ne.jp/j3tm0t0/20110302/1299076190

  • インスタンスの立ち上げ

コミュニティのAMIがいっぱいありすぎて、どれ選んでいいかわからなかったけどとりあえず先人の真似をしてUBUNTUのAMI(ami-460fa447)を選択しました。当然タダのmicroインスタンスで…
その後のセキュリティーグループの設定やSSHでの接続とかはこちらのエントリーがわかりやすいかと思います。
http://www.studio-fix.com/blog/kaoru/2009/04/03/post156/


ちなみにUBUNTUログイン時はAWSのInstance actionのconnectをそのままコピペではなく、ユーザをubuntuに変更します。


ssh -i 〜 root@ ~ を、
ssh -i 〜 ubuntu@ 〜
に書き換えるということです。


  • リモートデスクトップ用ソフトのインストール
起動後は# apt-get install ubuntu-desktop をしてデスクトップ環境を入れます。

さらに、手持ちのノートPCやらデスクトップPCからリモート接続をするためにFreenxをインストールします。
以下のページが参考になります。
https://help.ubuntu.com/community/FreeNX

Freenxインストールの日本語のエントリとしては以下があります、
http://gihyo.jp/admin/serial/01/ubuntu-recipe/0098
ただ、こちらのサイトは10.10のリリース前なので記載してありませんが、今回は10.10(maverick)を使うためPPAを追加した後に以下を行う必要があります。

2.If you're using Maverick, run
sudo sed -i 's/maverick/lucid/g' /etc/apt/sources.list.d/freenx-team-ppa-maverick.list

  • 認証の設定
サーバ、クライアントでインストール後にいよいよ接続ですが、
そのままではauthentication failedになります。
freenxは1.ユーザnxでSSH接続(公開鍵認証),2.自分のユーザでlocalhostにSSH接続(パスワード認証)
の二段階で認証を行うらしく、デフォルトの状態ではパスワード認証がnoになっているのでsshd_configファイルをいじる必要があります。以下でlocalhostのみパスワード認証を許可しています。

/etc/ssh/sshd_config
 50 PasswordAuthentication no
... 
 83 Match Address 127.0.*.*
 84   PasswordAuthentication yes
 85 Match Host localhost
 86   PasswordAuthentication yes

パスワード設定後にリスタートをしてから、freenxクライアントで接続してください。

詳細はこちらのエントリーで、
http://d.hatena.ne.jp/takuya_1st/20091229/1262115454


ここまで設定してようやくクラウドリモートデスクトップを使えるようになります!
ブロードバンド環境であれば遅延も少なく結構快適に使えました。
AWSのmicroインスタンスは一年間タダなのでちょっと試してみてはいかがでしょうか?
私はこの後にXMPPサーバのOPENFIREを入れたいと思います。
(管理コンソールが便利なのでデスクトップ環境を使いたかったのです。)