初めまして、SBCloudのE.Kです。初めてのテックブログの投稿ですので、よろしくお願いいたします。
セキュリティなど色々な理由で、Linux踏み台ECS経由でVPC内部のECSを色々操作する時はたまたまありますね。そして、この時は、時々、CUIだけではもの足りなく、GUIが欲しい時もありますね。
そして、今回はこの状況を簡単に打開する二つの方法について、書かせていただきます。
方法1:VNC クライアント経由
VNC(Virtual Network Computing)とはネットワーク上の離れたコンピュータを遠隔操作するためのRFBプロトコルを利用して、GUIで接続できるソフトウェアです。
CentOS7 tigervnc を例として手順を紹介させていただきます。
1. VNCサーバーのインストールする
yum install -y tigervnc-server
- VNCサーバーの各種設定
/lib/systemd/system/vncserver@.serviceファイルでパラメータを編集して設定することができます。(以下は新規購入したECSデフォルトの状態を前提としての手順です。)
まずファイルを開く。
vim /lib/systemd/system/vncserver@.service
ファイル内の以下のところに移動して、
ExecStart=/sbin/runuser -l -c "/usr/bin/vncserver %i" PIDFile=/home//.vnc/%H%i.pid
これを下のように、
ExecStart=/sbin/runuser -l root -c "/usr/bin/vncserver %i" PIDFile=/home/root/.vnc/%H%i.pid
変更して、セーブする。(もっと詳細な設定はこちらでご覧ください)
そしてセッティングファイルを/lib/systemd/system/vncserver@:1.service変更してsystemd再起動し、設定を有効化にする。
mv /lib/systemd/system/vncserver@.service /lib/systemd/system/vncserver@:1.service systemctl daemon-reload
パスワードも設定しておく。
vncpasswd
(Option) 起動時に自動実行させる。
systemctl enable vncserver@:1.service
サービスを起動する。
systemctl start vncserver@:1.service
psコマンドでvncサーバーが動いているのを確認できるはず
ps -ef | grep vnc
そして、気持ちよく、realvnc viewerなど自分の好きなvncクライアントで接続してみるとGUIが出てきます。
方法2:Webコンソール上のVNC経由
実際は方法1より簡単な方法もございます。クラウドコンソール上のVNCを利用してもGUIに簡単にアクセスすることができます。とても忙しい人向けの方法です。
どのぐらい簡単というと:
CentOS7:
yum groups install "MATE Desktop" yum groups install "X Window System" systemctl set-default graphical.target reboot
Ubuntu:
apt-get install x-window-system-core apt-get install gnome-core apt-get install gdm startx
GUIをインストールだけでいいです。コンソール上のVNCにアクセスすれば、GUIが見られます。
*コンソール上のVNCはウェブブラウザとの相性が悪い時もあります。
まとめ
今回は二つのLinux ECSにGUIでアクセスできる方法を紹介しました。クラウドサーバーは普通CUIで十分ですが、「GUIが欲しいな」の時はぜひ以上の二つの方法(または以外)を使ってください。