AWS EC2シリアルコンソールお試し

AWS
この記事は約5分で読めます。
記事内に広告が含まれています。

始めに

2021年3月末に「EC2シリアルコンソール」というものがリリースされてたので、遅ればせながら使ってみました。ここでは使うための手順や注意点を書いていきます。

制約として

  • 対象インスタンスタイプは限られる(古いタイプは未対応)
  • Windowsの場合はSACを有効にしておく必要がある。

がありますが、事前に設定を済ませておけば、ブラウザから簡単にコンソール接続が出来そうです。

EC2シリアルコンソール
EC2 シリアルコンソールに接続する - Amazon Elastic Compute Cloud
Amazon EC2 コンソールまたは SSH を使用して EC2 インスタンスのシリアルコンソールに接続できます。シリアルコンソールに接続したら、起動、ネットワーク設定、およびその他の問題のトラブルシューティングに使用できます。トラブルシ...

Amazon EC2 コンソールまたは SSH を使用して EC2 インスタンスのシリアルコンソールに接続できます。シリアルコンソールに接続したら、起動、ネットワーク設定、およびその他の問題のトラブルシューティングに使用できます。

今まで通常のRDPやSSH接続以外では、他に「セッションマネージャ」等がありました。セッションマネージャは事前にエージェントのインストールやプロキシ環境ではプロキシ設定等が必要でした。そしてエージェントが死んでいる場合は接続出来ませんでした。

ECシリアルコンソールが該当EC2に対応している前提が必要ですが、より楽に緊急接続できそうです。

手順

AWS公式サイトの資料に基に進めていきます。

EC2 シリアルコンソールへのアクセスを設定する - Amazon Elastic Compute Cloud
シリアルコンソールへのアクセスを設定するには、アカウントレベルでシリアルコンソールへのアクセスを許可し、ユーザーにアクセス権を付与するように IAM ポリシーを設定する必要があります。

共通の事前準備

  • EC2シリアルコンソール操作に必要な権限があること。
    ⇒ IAMポリシー「ec2-instance-connect:SendSerialConsoleSSHPublicKey」です。詳細は上記公式サイトに明記されているため割愛します。
  • EC2内のアカウントやパスワードを設定しておく。
    ⇒ 鍵認証が前提だと意識しないかもしれません。linuxであればpasswdコマンドで事前設定しておきましょう。
  • EC2メニューから「EC2シリアルコンソール」を許可にする。
    ⇒ 後述します。
EC2シリアルコンソールを許可

EC2サービス内の共通設定であり「デフォルトは無効」です。許可するためには、EC2サービス内におけるダッシュボード画面右上の「ECシリアルコンソール」から操作可能です。

許可設定。

接続(Linux)

LinuxOSのEC2を選択して接続画面を表示し、EC2シリアルコンソールより接続してみます。

接続。

ブラウザの新しいタブで画面が開きます。画面表示後に「Enter」を1回押下すると、無事にコンソールのログイン画面が表示されました。

ログイン出来ました。

アカウント、パスワードを入力するとログインでき、操作可能です。

このようにLinuxの場合は簡単です。続けてWindowsの場合を見ていきます。

接続(Windows)

Windowsの場合、事前にSAC(Special Admin Console)の設定が必要です。

Windowsにログインしてコマンドプロンプトを「管理者権限」で起動し、以下コマンドでSACを有効にします。

bcdedit /ems {current} on
bcdedit /emssettings EMSPORT:1 EMSBAUDRATE:115200
コマンド実行時のキャプチャ。

実行後、OSを再起動します。
※コマンドでは「shutdown -r -t 0」です。

事前準備が済みましたら、Linuxの時と同様に「接続」を実施します。

接続。

ブラウザの新しいタブで画面が開きます。画面表示後に「Enter」を1回押下すると、次のようにSACのプロンプトが表示されました。

SACプロンプトが表示された。

SACで出来ることは次の通りです(?入力してEnter)。

ひどい文字化け・・・。

文字化けを読む

日本語OSのため読めません(恐らく文字コードかフォントの問題)。しかし、マウスで文字を選択後にテキストエディタにペーストすると、次のように読むことは可能です。

コピペで読める。

続いてSACのプロンプト画面から、OSにログインを行い、コマンドプロンプトの実行まで進めてみます。流れは次の通りです。

  1. cmd と入力
    → Channelが作成される。(注意) WindowsOS側を起動してすぐは作成に失敗するため、その時は暫くしてから再実行します。
  2. ESCを押下してからTABを押下
    → Channelに切り替わる。
  3. Enterを押下
    → ログイン認証に切り替わる。
  4. アカウント、ドメイン、パスワードの順に入力
    → コマンドプロンプト表示!

コマンドプロンプトでも結構な文字化けが・・・。

コマンドプロンプトの文字化けを軽減させる

日本語OSの場合、コマンドプロンプトでも文字化けしますが、「chcp 65001」と入力してUTF-8に切り替えることで若干改善はされます。

文字化けの軽減。

それでも文字化けは残りますが、テキストエディタにコピペで読めます。

以上がWindowsでのEC2シリアルコンソール接続となります。

まとめ

今回はEC2シリアルコンソールを使ってEC2にコンソール接続を実施してみました。

  • 事前準備が必要(権限やアカウント。WindowsはSACの有効化。)
  • 対象リージョンやインスタンスタイプは制限がある

というのが現状ありますが、対応可能なEC2に対しては構築段階で準備しておくと、いざってときにEC2シリアルコンソールは心強いと感じます。

最後までご覧いただき、ありがとうございました。

コメント

Top
タイトルとURLをコピーしました