[GCP]Ubuntuインスタンス作成 + リモートデスクトップ設定 + 日本語キーボード設定


はじめに

GCPのCompute EngineへのUbuntuインスタンス作成方法、リモートデスクトップ設定方法、日本語キーボード設定方法をまとめています。

手順

1. GCP側のファイアウォールの設定

インスタンス作成の前にファイアウォールルールの設定をしておきます。
VPCネットワーク -> ファイアウォールルール を開き[ファイアウォールルールを作成]をクリックします。
以下の項目を入力した後、[作成]をクリックします。

変更する項目 変更内容
名前 適当に入力します
ターゲットタグ 適当に入力します。私は上記の[名前]と同じにしています
ソースIPの範囲 RDPする接続元のIPアドレスを入力します
指定したプロトコルとポート tcpにチェックを入れ、3389と入力します

2. Ubuntuインスタンス作成

Compute Engine -> VMインスタンス を開き[インスタンスを作成]をクリックします。
ブートディスクでUbuntuを選択し、[選択]をクリックします。

次に[管理、セキュリティ、ディスク、ネットワーク、単一テナンシー]をクリックし、[ネットワーキング]のタブを選択します。
[ネットワークタグ]にファイアウォールの設定時に入力した「ターゲットタグ」を入力します。
これで先ほど作成したファイアウォールルールが適用されます。

最後に[作成]をクリックします。

3. RDPの設定

作成されたインスタンスにSSHでログインします。
インスタンス一覧の右側の[SSH] -> [ブラウザウィンドウで開く]という順番でクリックするとSSH接続された画面が表示されます。

SSH接続できたら以下のコマンドを入力します。

アップデート

sudo apt update
sudo apt -y upgrade

ubuntu-desktopとxrdpのインストール

sudo apt -y install ubuntu-desktop xrdp
sudo systemctl enable xrdp
sudo systemctl start xrdp

リモートデスクトップ用のユーザ作成

sudo adduser username
sudo gpasswd -a username sudo

リモートデスクトップの設定

$ cat <<EOF | sudo tee /etc/polkit-1/localauthority/50-local.d/xrdp-color-manager.pkla  
[Netowrkmanager]  
Identity=unix-user:*  
Action=org.freedesktop.color-manager.create-device  
ResultAny=no  
ResultInactive=no  
ResultActive=yes  
EOF

再起動

sudo reboot

リモートデスクトップ接続

なぜか1回目に作成したユーザだとリモートデスクトップ接続はできるのですが、接続後に表示されるパスワード入力画面に入力してエンターを押すと、リモートデスクトップが切断されます。
その場合、再度「リモートデスクトップ用のユーザ作成」をして、そのユーザで接続すると今度は切断されずに先に進めます。
原因不明ですが、2回インスタンスを作成して2回とも同じ現象になりました。

再起動後に以下の画面が表示された場合は、Cancelをクリックすればよいです。

4. 日本語キーボードの設定

リモートデスクトップでログイン後、terminalを開き以下のコマンドを入力します。

gnome-session-properties

[Add]を選択し、[Name]に適当な名前、[Command]にsetxkbmap jpと入力し、最後に[Add]をクリックします。

次にterminalに以下のコマンドを入力します。

setxkbmap jp

これでGUI上で日本語キーボードが利用できるようになります。

参考サイト

リモートデスクトップ環境をUbuntu 18.04 LTSで作成する
https://qiita.com/ryo-endo/items/00f3ec125917acf4cec7

Ubuntu で日本語キーボードレイアウト
https://qiita.com/vochicong/items/6452ac54bde56b0e0bb3