Amazon EC2 UbuntuサーバーでGUIを設定する方法


136

コマンドラインインターフェースしかないamazon Ubuntu EC2インスタンスを使用しています。そのサーバーがリモートデスクトップツールを使用してアクセスするためのUIをセットアップしたい。EC2インスタンスにGUIを適用する方法はありますか?


@ user3071284この記事はすばらしいです。もう1つのステップが欠けています。インスタンスセキュリティグループでRDPポート(3389)を開くことです。
Noam Manos 2017

1
残念ながら、そのリンクは現在利用できません。
KK2491

私の解決策は、xstartupファイルが実行可能であることを確認することでした:chmod + x〜/ .vnc / xstartup
Christopher Broderick

回答:


200

これは可能です。GUIをセットアップする手順は次のとおりです

パスワードでログインして新しいユーザーを作成する

sudo useradd -m awsgui
sudo passwd awsgui
sudo usermod -aG admin awsgui

sudo vim /etc/ssh/sshd_config # edit line "PasswordAuthentication" to yes

sudo /etc/init.d/ssh restart

AWSでのUIベースのUbuntuマシンのセットアップ。

セキュリティグループでポート5901を開きます。次に、サーバーインスタンスにSSHで接続します。次のコマンドを実行して、uiおよびvncサーバーをインストールします。

sudo apt-get update
sudo apt-get install ubuntu-desktop
sudo apt-get install vnc4server

次に、次のコマンドを実行し、vnc接続のログインパスワードを入力します。

su - awsgui

vncserver

vncserver -kill :1

vim /home/awsgui/.vnc/xstartup

次に、Insertキーを押し、キーボードの矢印でテキストファイルをスクロールし、「通常のデスクトップの場合は次の2行のコメントを外してください」という行の下の2行の先頭からポンド(#)記号を削除します。そして、2行目に「sh」を追加して、次のようにします。

exec sh /etc/X11/xinit/xinitrc. 

完了したら、キーボードでCtrl + Cを押し、:wqと入力してEnterキーを押します。

次に、vncサーバーを再起動します。

vncserver

xtightvncviewerここからダウンロードしてデスクトップ(Ubutnu用)を表示できますhttps://help.ubuntu.com/community/VNC/Clients

vncクライアントで、パブリックDNSに「:1」を加えます(例:www.example.com:1)。vncログインパスワードを入力します。必ず通常の接続を使用してください。キーファイルを使用しないでください。

ここで利用可能な追加ガイド:http : //www.serverwatch.com/server-tutorials/setting-up-vnc-on-ubuntu-in-the-amazon-ec2-Page-3.html

Mac VNCクライアントは、https//www.realvnc.com/en/connect/download/viewer/からダウンロードできます

コンソールのポート開放

sudo iptables -A INPUT -p tcp --dport 5901 -j ACCEPT

灰色のウィンドウの問題が発生した場合。主に別のユーザーの「.vnc / xstartup」ファイルが原因です。したがって、「awsgui」ユーザーではなく、同じユーザーでvncサーバーを実行します。

vncserver


13
私はあなたがsu - awsgui後で行方不明だと思いますsudo usermod -aG admin awsgui
コンスタンティンK 14

14
これを機能させるには、セキュリティグループのポート5901を必ず開いてください。詳しい回答ありがとうございます!
Daniel Magliola、2015年

11
これを含むいくつかのガイドを試したところ、灰色の背景しか表示されません-Ubuntuデスクトップはありません。
レンチ2015

5
私は私のためにグレーの背景を解決した本でしたdigitalocean.com/community/questions/...
timhc22

8
vim .vnc/xstartupうまくvim awsgui/.vnc/xstartupいかなかった場合は試してください
TomasVeras '29 / 10/29

76

だから私は最初の答えに従いますが、それに接続すると私のvncビューアに灰色の画面が表示されます。そして私はそれを解決するためにこのAsk Ubuntuリンクを見つけました。

以前の回答との唯一の違いは、これらの追加パッケージをインストールする必要があることです。

apt-get install gnome-panel gnome-settings-daemon metacity nautilus gnome-terminal

そして、この〜/ .vnc / xstartupファイルを使用してください:

#!/bin/sh

export XKL_XMODMAP_DISABLE=1
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS

[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &

gnome-panel &
gnome-settings-daemon &
metacity &
nautilus &
gnome-terminal &

他はすべて同じです。

EC2 Ubuntu 14.04 LTSでテスト済み。


2
これは、前の回答に加えsu - awsguiて、vncコマンドを実行する前に完了しました。
Vincenzo Pii

1
この手順は、tightvncserverを使用してawsでubuntuデスクトップをセットアップする方法に関するほとんどのチュートリアルを実行した後で、この手順を実行するために必要でした。このステップがなければ、どのチュートリアルも私にとってはうまくいきませんでした。
techdog

1
次の手順を実行した後、OSを再起動する必要がある場合があります。私はこの回答に従って、最初に再起動する必要があります。
tno2007

上記の手順を試しましたが、RealVNCでUbuntuを確認できます。しかし、私はターミナルとデスクトップしか見ることができません。どういうわけか、ツールバー、アプリケーションなどの他のUIパーツが欠落しています。他の手順はありますか、これに対する修正はありますか?
ビナヤク2017年

ターミナルで次のコマンドを実行します killall gnome-panel && sudo gnome-panel &
Octocat

17

Ubuntu 16.04の場合

1)パッケージをインストールする

$ sudo apt update;sudo apt install --no-install-recommends ubuntu-desktop
$ sudo apt install gnome-panel gnome-settings-daemon metacity nautilus gnome-terminal vnc4server

2)/ usr / bin / vncserverファイルを編集し、以下のように変更します

この行を見つける

"# exec /etc/X11/xinit/xinitrc\n\n".

以下にこれらの行を追加します。

"gnome-session &\n".
"gnome-panel &\n".
"gnome-settings-daemon &\n".
"metacity &\n".
"nautilus &\n".
"gnome-terminal &\n".

3)「vncserver」コマンドを使用して、ユーザーのVNCパスワードとvncセッションを作成します。

lonely@ubuntu:~$ vncserver
You will require a password to access your desktops.
Password:
Verify:
xauth: file /home/lonely/.Xauthority does not exist
New 'ubuntu:1 (lonely)' desktop is ubuntu:1
Creating default startup script /home/lonely/.vnc/xstartup
Starting applications specified in /home/lonely/.vnc/xstartup
Log file is /home/lonely/.vnc/ubuntu:1.log

これで、IP /ドメインとポート1を使用してGUIにアクセスできます。

stackoverflow.com:1

AWSとデジタルオーシャンでテスト済み。

AWSの場合、ファイアウォールでポート5901を許可する必要があります

セッションを終了するには

$ vncserver -kill :1

参照:

https://linode.com/docs/applications/remote-desktop/install-vnc-on-ubuntu-16-04/

サービスとして永続的なセッションを作成するには、このガイドを参照してください

http://www.krizna.com/ubuntu/enable-remote-desktop-ubuntu-16-04-vnc/


動作しましたが、マシンを再起動した後、sshは接続タイムアウトエラーで接続を停止しました。なぜそれが起こっているのかあなたは何か考えがありますか?
シャンカーン

9

1)EC2でUbuntuインスタンスを起動します。
2)インスタンスセキュリティでSSHポートを開きます。
3)SSHをインスタンスに実行します。
4)実行:

sudo apt-get update    sudo apt-get upgrade

5)Windowsリモートデスクトップから接続するため、Linuxインスタンスのsshd_configファイルを編集してパスワード認証を許可します。

sudo vim /etc/ssh/sshd_config

6)PasswordAuthenticationをnoからyesに変更し、保存して終了します。
7)SSHデーモンを再起動して、この変更を有効にします。

sudo /etc/init.d/ssh restart

8)一時的にroot権限を取得し、ubuntuユーザーのパスワードを複雑なパスワードに変更して、セキュリティを強化します。コマンドpasswd ubuntuを入力した後にEnterキーを押すと、新しいパスワードを2回入力するように求められます。

sudo –i
passwd ubuntu

9)ubuntuユーザーアカウントに戻り、cdを実行してubuntuホームディレクトリに移動します。

su ubuntu
cd

10)LinuxインスタンスにUbuntuデスクトップ機能をインストールします。最後のコマンドが完了するまでに最大15分かかります。

export DEBIAN_FRONTEND=noninteractive
sudo -E apt-get update
sudo -E apt-get install -y ubuntu-desktop

11)xrdpをインストールする

sudo apt-get install xfce4
sudo apt-get install xfce4 xfce4-goodies

12)xfce4をRDP接続のデフォルトのウィンドウマネージャーにします。

echo xfce4-session > ~/.xsession

13).xsessionを/ etc / skelフォルダーにコピーして、xfce4が、作成される新しいユーザーアカウントのデフォルトのウィンドウマネージャーとして設定されるようにします。

sudo cp /home/ubuntu/.xsession /etc/skel

14)xrdp.iniファイルを開いて、接続するホストポートを変更できるようにします。

sudo vim /etc/xrdp/xrdp.ini

(xrdpは今までインストールされていません。最初にsudo apt-get install xrdpでxrdpをインストールしてから、上記のファイルを編集してください)

15)セクション[xrdp1]を探して、次のテキストを変更します(次に、[:wq]を保存して終了します)。

port=-1
- to -
port=ask-1

16)xrdpを再起動します。

sudo service xrdp restart

17)Windowsでは、リモートデスクトップ接続クライアントを開き、コンピューターのAmazon EC2インスタンスの完全修飾名を貼り付けて、[接続]をクリックします。

18)xrdpへのログインを求めるプロンプトが表示されたら、sesman-Xvncモジュールが選択されていることを確認し、ステップ8で作成した新しいパスワードでユーザー名ubuntuを入力します。セッションを開始すると、ポート番号は-1になります。

19)システムが接続すると、[接続ログ]画面にいくつかのステータスメッセージが表示されます。これらのステータスメッセージに細心の注意を払い、表示されるVNCポート番号をメモしてください。後でセッションに戻る場合は、xrdpログインダイアログボックスのポートフィールドにこの番号を指定します。

詳細を参照してください:https : //aws.amazon.com/premiumsupport/knowledge-center/connect-to-linux-desktop-from-windows/
http://c-nergy.be/blog/?p=5305


2
これにより理論的には質問に答えることができますが、答えの本質的な部分をここに含め、参照用のリンクを提供することが望ましいでしょう
Bhargav Rao

3
xrdp.iniファイルで[xrdp1]セクションが見つかりません。
Sudhir 2018

3

LXDE / Lubuntuの場合


1.インスタンスに接続します(ローカル転送ポート5901)

ssh -L 5901:localhost:5901 -i "xxx.pem" ubuntu@xxx.amazonaws.com

2.パッケージをインストールする

sudo apt update && sudo apt upgrade
sudo apt-get install xorg lxde vnc4server lubuntu-desktop

3. /etc/lightdm/lightdm.confを作成します

sudo nano /etc/lightdm/lightdm.conf

4.以下をコピーしてlightdm.confに貼り付け、保存します

[SeatDefaults]
allow-guest = false
user-session = LXDE
#user-session = Lubuntu

5. vncserverのセットアップ(vncserverのパスワードを作成するように求められます)

vncserver
sudo echo "lxpanel&/ usr / bin / lxsession -s LXDE&" >>〜/ .vnc / xstartup

6.インスタンスを再起動して再接続します

sudo reboot
ssh -L 5901:localhost:5901 -i "xxx.pem" ubuntu@xxx.amazonaws.com

7. vncserverを起動します

vncserver -geometry 1280x800

8.リモートデスクトップクライアント(Remminaなど)で、サーバーをlocalhost:5901に、プロトコルをVNCに設定します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.