EC2でUbuntuを起動してChrome Remote Desktopで接続してみた!
こんにちは!Koty-Mousa 矢坂幸太郎です!
前回は、EC2でAmazon Linux 2023の起動方法についてご紹介しました。
Amazon Linux 2023は、基本的にCUIで操作するOSです。
しかし、私たちが一般にPCで利用するOSは、GUIを採用しているものがほとんどです。
今回は、Ubuntu にGUIをインストールして、Chrome Remote Desktopで接続してみます!
ちなみに...CUI と GUI の違い
CUI / CLI(Command-Line Interface)はテキストベースのインターフェースで、ユーザーがキーボードからテキストコマンドを入力して操作します。グラフィクスなどがないため一般にGUIよりサイズが小さく、システムリソースの消費が少なくなります。そのため、CUIはサーバー環境や、リソース効率が重要な場面で広く使用されています。
一方、GUI(Graphical User Interface)は視覚的な要素(アイコン、ウィンドウ、メニューなど)を使用し、主にマウスやタッチスクリーンで操作します。WindowsやmacOS、Androidなどの一般的なオペレーティングシステムで採用されています。CUIよりわかりやすく直感的なインターフェースのため、幅広い用途で使用されていますが、CUIと比べて多くのシステムリソースを必要とします。
Chrome Remote Desktop
Chrome Remote Desktopは、Googleが提供する無料のリモートデスクトップソフトウェアです。Windows、Mac、Linux、ChromeOSなど、多様なプラットフォームに対応しています。高度な暗号化技術を用いて安全な接続を確保し、Googleアカウントでログインするだけで簡単にセットアップできます。
通常のRDPでは、ファイヤウォールやルーターの設定、AWSの場合はセキュリティグループやVPCの設定が必要となります。 Chrome Remote Desktopではそれらの複雑な設定は不要です。Googleのサーバーを介して接続を確立するため、NATやファイアウォールの内側にあるコンピューターでも、インターネットにつながる環境であれば、簡単にリモートアクセスが可能になります。 また、クライアント側は ブラウザベースのWebサイトにアクセスするだけで利用可能なので、様々なデバイスからアクセスできます。
また、Elastic IP を使用していない場合、EC2インスタンスを再起動すると パブリックIPアドレスが変更されます。
通常のRDPでは、IPアドレスが変更されるとクライアント(手元のPC等)の設定を変更する必要があります。
Chrome Remote Desktopでは、インターネット経由でGoogleのサーバーを介して接続するため、IPアドレスに関係なく接続可能、つまり、EC2インスタンスを再起動した後も特に設定を変更することなく利用できます。
やってみよう!
今回は、次の順で実施します。
- EC2インスタンスの準備
- Ubuntu 下準備
- Chrome / Chrome Remote Desktop のインストール
- 接続して操作しよう!
EC2 インスタンスの準備
まず初めに、EC2インスタンスを起動します。
起動テンプレートには「Ubuntu Server 24.04 LTS (HVM), SSD Volume Type」を選択します。
インスタンスタイプは、少なくともt3.medium、可能な限りt3.largeをお勧めします。
Ubuntu Desktop は CLI版 より消費リソースが大きいため、t3.microでは動作しませんでした。
そのほか、設定上の注意点は下記の通りです。
- インターネットに接続可能なサブネットに配置してください。
- セキュリティグループで、使用するリージョンの EC2 Instance Connect のIPアドレス及び SSH(22番)ポートのインバウンド接続を許可してください。
- 「パブリック IP の自動割り当て」を有効にしてください。
設定方法の例は、こちらの記事をご参照ください。
準備ができたらインスタンスを起動します!
Ubuntu 下準備
インスタンスが起動したら、「EC2 Instance Connect」で接続します。
接続できたら、Ubuntuの下準備を始めます。
まずは、下記コマンドを実行します
sudo apt update && sudo apt upgrade -y
このコマンドは、Ubuntuを含む DebianベースのLinuxシステムでソフトウェアパッケージを最新の状態に更新するために使用される重要な操作です。
まず、「sudo apt update」コマンドは、システムのパッケージリストを最新の情報に更新します。これにより、利用可能な最新のソフトウェアバージョン、セキュリティパッチ、バグ修正などの情報をリポジトリから取得します。このステップはアップグレードプロセスの準備段階で、実際のパッケージのインストールや更新は行いません。
次に、「sudo apt upgrade」コマンドは、先ほど更新されたパッケージリストに基づいて、システムにインストールされているすべてのパッケージを最新バージョンにアップグレードします。このコマンドは、新しいバージョンが利用可能な場合、インストールされているパッケージを実際に更新します。
続いて、Ubuntu Desktop をインストールします。
今回使用しているAMIは Ubuntu Server です。こちらはサーバーで使用される想定のため、GUIがインストールされていません。そのため、手動でインストールする必要があります。
sudo apt install ubuntu-desktop -y
Chrome / Chrome Remote Desktop のインストール
続いて、Google Chrome (ブラウザ)をインストールします。
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb -O /tmp/chrome.deb && sudo apt install /tmp/chrome.deb
このコマンドは、Google Chromeブラウザの最新安定版をUbuntuにインストールするための一連の操作を実行します。
まず、wgetコマンドを使用してGoogleの公式サーバーからChromeのDebianパッケージをダウンロードし、それを一時ディレクトリ(/tmp)に保存します。
その後、ダウンロードが成功したら、sudo apt install コマンドを用いて管理者権限でaptパッケージマネージャーを起動し、保存したDebianパッケージをシステムにインストールします。
次に、Chrome Remote Desktopをインストールします。
wget https://dl.google.com/linux/direct/chrome-remote-desktop_current_amd64.deb && sudo apt install -y ./chrome-remote-desktop_current_amd64.deb && sudo bash -c 'echo "exec /etc/X11/Xsession /usr/bin/gnome-session" > /etc/chrome-remote-desktop-session'
このコマンドは、Ubuntuに Chrome Remote Desktop をインストールし、設定するための一連の操作を実行します。
まず、Google のサーバーから Chrome Remote Desktop の最新の Debian パッケージをダウンロードします。
次に、ダウンロードしたパッケージをシステムにインストールします。
その後、Chrome Remote Desktop のセッション設定ファイルを作成し、GNOME デスクトップ環境を使用するように構成します。
続いて、クライアント側(手元のPCのブラウザ)を操作します。
ブラウザで Chrome Remote Desktopのページにアクセスします。
リモート アクセス - Chrome リモート デスクトップ
左側のメニュー「SSH経由でセットアップする」を選択します。
画面の表示を確認しながら、「開始」→「次へ」→「承認」を選択します。
『別のパソコンを設定』の画面が表示されます。
こちらの「Debian Linux」項目のコピーボタンを押して、セットアップ用のコマンドをクリップボードにコピーします。
再び、ホスト(EC2 Instance Connect画面)に戻ります
先ほどコピーしたコマンドを貼り付けて、実行してください。
コンソールに次のメッセージが表示されます
Enter a PIN of at least six digits:
PINコードを設定します。
6桁以上の数字を入力して、実行してください。なお、入力しても画面には表示されませんが、セキュリティのために意図的に非表示となっています。実際には正しく入力されていますので、ご安心ください。
Enter the same PIN again:
上記が表示されたら、再度 数字を入力してください。これは後ほど必要になるため忘れないでください。
Host started successfully.
上記が表示されたら準備完了です!
接続して操作しよう!
これで、Chrome Remote Desktop での接続設定が完了しました!
Chrome Remote Desktop のブラウザ画面に戻って、左側のメニューから「リモートアクセス」を選択してください。
すると、上記のように、先ほど設定したインスタンスが「オンライン」として表示されています。
こちらをクリックしてください。
先ほど設定したPINコードを入力します。
すると、EC2インスタンス上で稼働中のUbuntuに接続され、GUI操作が可能になります!
- English を選択して 右上の「Next」をクリック→
- お使いのキーボードを選択(表示されない場合は「︙」をクリックする・日本語キーボードであれば、「Japanese」をお勧めします)して右上の「Next」をクリック→
- 「Start Using Ubuntu」をクリック
すると、Ubuntuのデスクトップ画面が表示されます!!!
右クリック→「Change Background...」でで壁紙をUbuntuらしいものに変えてみました。
ブラウザを起動して、私のジョインブログにアクセスしてみました!
インターネットにも接続できていますね!
つづく!
今回は、Chrome Remote Desktop を使ってAmazon EC2上のUbuntu Desktop に接続して GUI 操作を行いました!
今後は、EC2インスタンス上で できること、Ubuntu Desktop で できること、そして EC2インスタンスへの様々な接続方法を、本ブログでお伝えしたいと思います。
Koty-Mousa 矢坂幸太郎がお伝えしました!
The avatar, logo and name of "Koty-Mousa 矢坂幸太郎" and "Clamerus, dev. by Koty-Mousa" (include inconsistent/abbreviation spelling) are owned and copyrighted by Koty-Mousa (individually).
アノテーション株式会社について
アノテーション株式会社はクラスメソッドグループのオペレーション専門特化企業です。サポート・運用・開発保守・情シス・バックオフィスの専門チームが、最新 IT テクノロジー、高い技術力、蓄積されたノウハウをフル活用し、お客様の課題解決を行っています。当社は様々な職種でメンバーを募集しています。「オペレーション・エクセレンス」と「らしく働く、らしく生きる」を共に実現するカルチャー・しくみ・働き方にご興味がある方は、アノテーション株式会社 採用サイトをぜひご覧ください。