EC2 シリアルコンソール接続を試してみた
カスタマーサクセス部 運用支援チームのいたくらです。
はじめに
EC2 シリアルコンソールって触ったことありますか?
恥ずかしながら私は触ったことがありませんでした。
2021年3月に追加された機能で、当時の弊社アップデートブログは以下です。
上記のブログにも接続方法など記載がありますが、UI も少し変わっていたので 2025/01/21 時点の最新版ということでブログにしてみました。
やってみた
前提条件
EC2 シリアルコンソール接続を使用するためには、いくつか前提条件があります。
詳細は以下の公式ドキュメントを参照ください。
気を付けた方が良さそうな前提条件を抜粋してみました。
- インスタンスタイプ
- Nitro ベースのインスタンスタイプが対象
- 参考:https://docs.aws.amazon.com/ec2/latest/instancetypes/ec2-nitro-instances.html
- EC2 シリアルコンソール接続を実施する IAM ユーザに対して権限を付与
- 以下ポリシーをアタッチ
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:GetSerialConsoleAccessStatus", "ec2:EnableSerialConsoleAccess", "ec2:DisableSerialConsoleAccess" ], "Resource": "*" } ] }
- 参考:https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/configure-access-to-serial-console.html#serial-console-account-access
- 以下ポリシーをアタッチ
- Linux インスタンスの場合、パスワード設定済みの OS ユーザを準備
- EC2 シリアルコンソール接続した際に、ユーザ名とパスワードを入力する必要があるため
- 参考:https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/configure-access-to-serial-console.html#set-user-password
- 自分は Session Manager 経由で EC2 に接続し、root ユーザにパスワードを設定しました
シリアルコンソール接続を有効化する
まずは EC2 シリアルコンソール接続を有効化します。
EC2 サービスページに移動して、ダッシュボードから「EC2 シリアルコンソール」をクリックします。
「管理」をクリックします。
許可のチェックボックスを付けて、「更新」をクリックします。
設定が正常に保存されて、EC2 シリアルコンソールのアクセスが「許可」に変更されていれば OK です。
シリアルコンソール接続してみる
実際にシリアルコンソール接続してみます。
Amazon Linux 2023(ami-0fb04413c9de69305)を t3a.nano で起動してあります。
インスタンスを指定して、「接続」をクリックします。
「EC2 シリアルコンソール」タブに移動して、「接続」をクリックします。
ログイン画面が出てくるので、ユーザ名とパスワードを入力してログインします。
試しにシリアルコンソールにつないだまま、EC2 を再起動してみました。
以下画像のように、再起動中のコンソール出力を確認できました。なんだか懐かしみがありますね。
あとがき
あまり使う機会は無いと思いますが、万が一、いざというときに使える機能ですので頭の片隅に置いておこうと思いました。
と同時に、OS ユーザ 1 つくらいにはパスワードを設定しておいたほうが安心かもしれない…と思いました。
この記事がどなたかのお役に立てれば幸いです。
アノテーション株式会社について
アノテーション株式会社はクラスメソッドグループのオペレーション専門特化企業です。
サポート・運用・開発保守・情シス・バックオフィスの専門チームが、最新 IT テクノロジー、高い技術力、蓄積されたノウハウをフル活用し、お客様の課題解決を行っています。
当社は様々な職種でメンバーを募集しています。
「オペレーション・エクセレンス」と「らしく働く、らしく生きる」を共に実現するカルチャー・しくみ・働き方にご興味がある方は、アノテーション株式会社 採用サイトをぜひご覧ください。