Amazon Linux 2 を実行している Amazon EC2 インスタンスに GUI をインストールする方法を教えてください。

最終更新日: 2021 年 4 月 20 日

Amazon Linux 2 を実行している Amazon Elastic Compute Cloud (Amazon EC2) インスタンスにグラフィカルユーザーインターフェイス (GUI) をインストールしたいと考えています。どうすればよいですか?

簡単な説明

先に進む前に、GUI を手動でインストールする代わりに、まず次のいずれかの方法を検討してください。

  • MATE がプリインストールされている Amazon Linux 2 AMI から起動します。詳細については、「Amazon Linux 2 MATE デスクトップ接続を設定する」を参照してください。
  • Amazon WorkSpaces は、フルマネージドの永続的なデスクトップ仮想化サービスです。Amazon WorkSpaces のユーザーは、サポートされている任意のデバイスから、いつでも、どこでも、必要なデータ、アプリケーション、およびリソースにアクセスできます。詳しくは製品ホームページをご覧ください
  • NICE DCV は、さまざまなネットワーク条件で、クラウドやデータセンターからデバイスにリモートデスクトップおよびアプリケーションストリーミングを配信するセキュアな方法を提供する高性能のリモートディスプレイプロトコルです。詳しくは製品ホームページをご覧ください。

GUI の手動インストールを続行する場合は、次の操作を行います。

  1. GNOME 2 をベースにした軽量 GUI である MATE デスクトップ環境をインストールします。これは Amazon Linux 2 のエクストラとして利用できます。MATE の詳細については、MATE デスクトップ環境のウェブサイトを参照してください。
  2. TigerVNC などの仮想ネットワークコンピューティング (VNC) サービスをインストールします。TigerVNC の詳細については、tigervnc.org のウェブサイトを参照してください。
  3. VNC を使用して GUI に接続します。
  4. (オプション) VNC のパスワード認証を無効にします。
  5. (オプション) Firefox や Chromium などのウェブブラウザをインストールします。Chromium の詳細については、chromium.org のウェブサイトを参照してください。Firefox の詳細については、mozilla.org のウェブサイトを参照してください。Chromium と Firefox はどちらも、X86 バリアントでのみ利用可能であることに注意してください。

: これらの手順は、Amazon Linux 2 にのみ適用されます。実行中のバージョンを確認するには、次のコマンドを実行します。

$ grep PRETTY_NAME /etc/os-release
PRETTY_NAME="Amazon Linux 2"

GUI を使用して EC2 macOS インスタンスにアクセスする手順については、「GUI を使用して Amazon EC2 Mac インスタンスにアクセスするにはどうすればよいですか?」を参照してください。

解決方法

開始する前に

1.    SSH を使用して EC2-User としてインスタンスに接続します

インスタンスはパブリックサブネットに存在し、かつパブリック IP アドレスまたは Elastic IP アドレス経由でアクセス可能である必要があります。または、AWS VPN または AWS Direct Connect を使用して、プライベート IP を介してインスタンスにアクセスできる接続を確立できます。これらの手順は、踏み台ホストを使用する環境には適用されません。セキュリティ上の理由から、VNC サーバーへのトラフィックは SSH を使用してトンネリングされます。ベストプラクティスとして、セキュリティグループで VNC ポートを開かないようにします。

2.    sudo yum update を実行してインスタンスを更新してから、インスタンスを再起動します。更新してから再起動しないと、以下のステップに沿って実行するときに予期しない結果が生じる可能性があります。

MATE デスクトップ環境をインストールする

1.    MATE パッケージをインストールします。

sudo amazon-linux-extras install mate-desktop1.x

2.    MATE をすべてのユーザのデフォルトデスクトップとして定義します。

sudo bash -c 'echo PREFERRED=/usr/bin/mate-session > /etc/sysconfig/desktop'

TigerVNC をインストール

1.    TigerVNC サーバーをインストールします。

sudo yum install tigervnc-server

2.    このユーザーに対して、6~8 文字を含む VNC 固有のパスワードを設定します。表示専用のパスワードを入力するかどうかを確認するメッセージが表示されたら、「n」を押します。

vncpasswd

3.    VNC ネットワークアクセスをローカルホストに制限し、セキュアな SSH トンネルの使用でのみ VNC にアクセスできるようにします。

tigervnc 設定ディレクトリを作成します。

sudo mkdir /etc/tigervnc

localhost オプションを含む必須の設定ファイルを作成します。

sudo bash -c 'echo localhost > /etc/tigervnc/vncserver-config-mandatory'

4.    VNC サーバーをディスプレイ番号 1 で起動し、起動時に常に起動するようにします。

新しい systemd ユニットを作成します。

sudo cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@.service

sed コマンドを使用して、新しいユニットのすべての USERec2-user で置き換えます。

sudo sed -i 's/<USER>/ec2-user/' /etc/systemd/system/vncserver@.service

systemd マネージャー設定を再ロードします。

sudo systemctl daemon-reload

サービスを有効にします。

sudo systemctl enable vncserver@:1

サービスを起動します。

sudo systemctl start vncserver@:1

VNC を使用して GUI に接続します。

1.    ローカルコンピュータに TigerVNC ソフトウェアをインストールします (まだインストールされていない場合)。TigerVNC は Linux、Windows、macOS で利用できます。ダウンロードにアクセスするには、TigerVNC のウェブサイトを参照してください。

Linux: tigervnc パッケージは多くのディストリビューションのリポジトリで利用可能で、それぞれのパッケージマネージャーを使ってインストールできます。

macOS: TigerVNC-x.y.z.dmg をダウンロードしてインストールします。ここで x.y.z は最新バージョンを表します。
Windows:
tigervnc64-x.y.z.exe (64 ビット) または tigervnc-x.y.z.exe (32 ビット) をダウンロードしてインストールします。ここで x.y.z は最新バージョンを表します。

2.    ローカルコンピュータで、ローカルポート 5901/TCP (VNC) 上のすべてのトラフィックをインスタンスの VNC サーバーに転送するトンネルを作成しながら、SSH を使用してインスタンスに接続します。

Linux および macOS

SSH を使用してインスタンスに接続する場合は-L パラメータを追加してポート転送を有効にします。必要に応じて、PEM_FILE をプライベートキーに置き換え、INSTANCE_IP をインスタンスのパブリック IP またはプライベート IP に置き換えます。

ssh -L 5901:localhost:5901 -i PEM_FILE ec2-user@INSTANCE_IP

Windows

PuTTY で接続を開く場合は、ポートフォワーディングを設定してから接続を開きます。    [Connection] (接続) メニューで、[SSH][Tunnels] (トンネル) を順に選択します。    発信元ポートフィールドに「5901」と入力します。    送信先フィールドに「localhost:5901」と入力します。    [Add] を選択します。

3.    ローカルコンピューターで TigerVNC ビューアーを開きます。VNC サーバーのホスト名の入力を求められたら、localhost:1 と入力して接続します。

4.    「TigerVNC のインストール」セクションの手順 2 で設定した VNC パスワードを入力します。接続が安全でないことを示すアラートが表示された場合は、無視してください。暗号化された SSH トンネルを使用して VNC サーバーにアクセスしている。

MATE デスクトップ環境が表示されます。

(オプション) VNC のパスワード認証を無効にする

VNC パスワード認証を無効にすることはベストプラクティスではありません。SSH を使用してインスタンスに接続できるユーザーは、トンネルを作成して VNC デスクトップにアクセスできます。これがシングルユーザーインスタンスで (つまり、他のユーザーがログインできない)、VNC のパスワード認証を無効にする場合は、次のステップに従います。

1.    VNC サーバの [セキュリティタイプ] 設定を [なし] に変更します。

echo SecurityTypes=None >> ~/.vnc/config

2.    VNC サーバーを再起動します。

sudo systemctl restart vncserver@:1

(オプション) ウェブブラウザをインストールする (X86 のみ)

AWS は、Amazon Linux 2 リポジトリに Chromium や Firefox などのウェブブラウザを提供していません。こうしたブラウザの 1 つをインストールするには、以下の手順に従います。AWS は、サードパーティーソースからインストールされたソフトウェアをサポートしていないことに注意してください。

以下の手順は、64 ビットの Intel や AMD のプロセッサ (x86_64) をベースとする EC2 インスタンスに適用できます。これらのサードパーティソースでは、Graviton プロセッサ (aarch64) ベースのインスタンスがサポートされていません。インスタンスのアーキテクチャを確認するには、次のコマンドを実行します。

$ uname -m
x86_64

Chromium (Google Chrome のオープンソース版) をインストールするには、次のステップを実行します。

1.    EPEL リポジトリを有効にします。詳細については、Fedoraproject.org ウェブサイトの EPEL ドキュメントを参照してください。

sudo amazon-linux-extras install epel

2.    Chromium パッケージをインストールします。

sudo yum install chromium

Chromium は、アプリケーションインターネットChromium ウェブブラウザの MATE にインストールされます。

Mozilla Firefox をインストールするには (現在のユーザーのみ)、次の操作を行います。

1.    Linux 64 ビット版の最新バージョンの Firefox をローカルコンピュータにダウンロードします。ダウンロードにアクセスするには、mozilla.org のウェブサイトを参照してください。

2.    Firefox をダウンロードしたら、ファイルをインスタンスにコピーします。手順については、Linux および Windows のそれぞれのウェブサイトを参照してください。

3.    ファイルの内容を抽出します。次のコマンドは、ファイルが ec2-user のホームディレクトリにあることを示しています。必要に応じて、パスと Firefox のバージョンを変更します。

tar jxf ~/firefox-xx.y.tar.bz2 -C ~/

4.    vim または好みのエディターを使用して、デスクトップアイコンを作成します。次の例に示す内容を持つ ~/Desktop/Firefox.desktop ファイルを作成します。

[Desktop Entry]
Version=1.0
Type=Application
Terminal=false
Icon=/home/ec2-user/firefox/browser/chrome/icons/default/default128.png
Icon[en_US]=/home/ec2-user/firefox/browser/chrome/icons/default/default128.png
Name[en_US]=Firefox
Exec=/home/ec2-user/firefox/firefox
Comment[en_US]=Firefox web browser
Name=Firefox
Comment=Firefox web browser
GenericName[en_US.UTF-8]=Firefox web browser
Categories=Network;WebBrowser;

5.    手順 4 でデスクトップに作成したアイコンを使用して、Firefox を起動します。

6.    アプリケーションランチャーが信頼済みとしてマークされていない旨のプロンプトが表示された場合は、[Mark as Trusted] (信頼済みとしてマークする) を選択し、ダブルクリックして Firefox を開きます。


この記事は役に立ちましたか?


請求に関するサポートまたは技術サポートが必要ですか?