Amazon Linux 2023を触ってみて質問がありそうなことをまとめてみました。

こんにちは、意識高い系エンジニア社長の内です。

2023年3月15日にAmazon Linux 2の後継バージョンとなるAmazon Linux 2023(略してAL2023)が一般公開されました。2021年11月にAmazon Linux 2022(略してAL2022)のプレビュー版が公開されてから、約1年4ヶ月後のリリースとなりました。2022年中にリリースできなかったため、名前もAmazon Linux 2022からAmazon Linux 2023に変更されてのリリースです。
私の投稿も約1年2ヶ月ぶりとなります、前回記事「AmazonLinux3じゃなくってAmazon Linux 2022 (AL2022) だってさ」という、Amazon Linux 2022プレビュー版記事はこちら

当初AmazonLinux2のサポート終了日 (EOL、End of Life) は2023年6月30日でしたが、後継バージョンのリリースが遅れて、移行に十分な時間を提供するために、2025年6月30日と2年間延長されてます。

Amazon Linux 2023はFedora34,35,36のコンポーネントがベース

Amazon Linux 2023は、Fedora 34、35、および36のコンポーネントを含んでいて、Fedoraのコンポーネントそのまま使っているものもあれば、修正されているものもあります。その他、CentOS Stream 9のコンポーネントもあれば、独自に開発されたものもあるとのことです。また、カーネルは、Fedoraが提供するカーネルとは別に、kernel.orgにある長期サポートオプションから選択されたものを使用しているとのことです。

FedoraCentOS Streamのさらにアップストリームなので、最新機能が搭載されている代わりに、安定性は保証されてないものです、そういったものであるFedoraの複数バージョンのコンポーネント+アルファをAWSがメンテして一般公開版を出したということになりますので、独自ディストリビューションの公開と維持に、よっぽどの稼働とコストがかかっていると想定されます、メンテナンスが非常に大変そうですね、これはリリースが1年以上遅れたことからもわかると思います。

AmazonLinux2023よくありそうな質問

AL2023をいろいろ触ってみて、これからよく質問がありそうなことをまとめてみました。

Amazon Linux 2からAmazon Linux 2023へのインプレースアップグレード

残念ながら出来ないようです、また、EPELが使用出来なくなったり、使用可能なパッケージのバージョンが大きく変更になってるので、Amazon Linux 2のEOL対応として移行を検討する際には、他のRedHat系ディストリビューションも候補に入ってくるかと思います。
Amazon Linux 2がリリースされた際はAmazonLinux上で実行することで、Amazon Linux2との非互換性の概要が記載されたレポートが作成されるpreupgrade-assistantが提供されたので、今後Amazon Linux 2023用のプレアップグレードアシスタントも提供されるのを期待しましょう。

Amazon Linux 2023へのログインユーザ名は

これまで同様ec2-userです。

teratermでAmazon Linux 2023にログインできないケース対応

Amazon Linux 2023では、opensshサーバーの設定において、デフォルトでRSA/SHA1(ssh-rsaシグネチャ)が無効化されてますので古いsshクライアント(主にteraterm4系)を使用している場合にはsshログインしようとしてもエラーではじかれます。

こちらは一部AWS公式サイトデフォルトの SSH サーバー設定
にも原因と対応方法の記載があります。
現象に遭遇するとサーバー側では以下のようなjournalログが出力される状態になります。”

これによく該当すると思われるケースとしては、rsaのキーペアを使用していて、且つteraterm4.xを使用しているケースです。

マネジメントコンソール上で見れるキーペア
ssh-rsa
teraterm4.xのバージョン

rsaのキーペアを使用している場合でも、新しいsshクライアント(rsa-sha2-256かrsa-sha2-512をサポートしているもの)を使っていればエラー回避しログインできますし、teratermでも5.0ベータ版を使用するとエラー回避できます。teraterm5.0アルファだと駄目でログインできません。
また、teratermの4.x系を使用していても、ED25519キーペアを使用していれば接続可能です。

rsaのキーペアを使用し続けて、且つteraterm4.xのようなrsa-sha2-256、rsa-sha2-512をサポートしていないsshクライアントを使用し続ける場合の回避策は、公式では以下と書いてあります。

公開鍵認証に RSA key pair を使用する場合、SSHrsa-sha2-256rsa-sha2-512 クライアントはまたは署名をサポートしている必要があります。互換性のないクライアントを使用していてアップグレードできない場合は、ssh-rsaインスタンスのサポートを再度有効にしてください。そのためには、LEGACY次のコマンドを使用してシステム暗号化ポリシーを有効にします。

$ sudo dnf install crypto-policies-scripts
$ sudo update-crypto-policies –set LEGACY

ですが、update-crypto-policiesでLEGACYを指定するということは、opensshサーバーだけでなく、システム共通の暗号化ポリシーを変える、且つssh-rsaに対応する以外にもセキュリティ的に緩くなる影響がありますので、私は推奨しません。
また、Amazon Linux 2022までは、opensshサーバーの設定ファイル/etc/ssh/sshd_configに、

を追加すれば、opensshサーバーの暗号化アルゴリズム設定のみ変更出来ましたが、Amazon Linux 2023では、この方法は使えません。
update-crypto-policies経由で、 opensshサーバーのみにssh-rsaのみを追加する以下方法のほうがまだセキュリティ的に安全ですので、個人的にはAWS公式サイトのやり方よりお勧めです。

1./usr/share/crypto-policies/policies/modulesの下に、SHA1SSHD.pmodというファイルを新規作成し、以下内容で保存する。

2.以下コマンドを実行

ちなみに現在適用されているポリシーは/etc/crypto-policies/state/CURRENT.polを表示することで確認できます。
上記対応で、sign@openssh-serverの項目だけに、RSA-SHA1だけが追加された形になります。

/var/log配下にログがない

/var/logの下にmessage,secure,sshd等ログがないです。

これはAmazon Linux 2023には従来のsyslogはインストールされておらず、systemdベースの環境になっているからで、ログはjournalctlコマンドで確認します。
基本的なコマンド操作方法だけご紹介。

・boots一覧を表示する
OSを起動する度に別のBOOTIDが作成されます。

・BootIDを指定して参照する
見たいログの時間帯を指定したい場合は、FIRST ENTRYとLAST ENTRYを見て、IDXを指定してjournalctlコマンドを実行します。
例えばIDXが-4を見たい場合は以下。

・デーモンを指定(フィルター)して表示
例えばsshdのログだけ見たい場合は-uで指定します、以下。

journaldのログを収集してcloudwatch logs他にどうやって送るか

Fluent Bitでやるのが良さそうです、試せてませんが以下Amazon Linux 2022で行っている記事がありました。
Jornald を Fluent-bit で CW Logs へ in Amazon Linux 2022

他のRedHat系ディストリビューションとのEOL比較。

ディストリビューション リリース EOL
AmazonLinux1 2010年09月14日 2023年12月31日
AmazonLinux2 2018年06月 2025年06月30日
AmazonLinux2023 2023年03月15日 2028年03月15日
AmazonLinux2025 2025年03月 2030年(月日未定)
RedHatEnterpriseLinux8 2019年05月07日 2029年05月31日
2031年05月31日(ELS)
RedHatEnterpriseLinux9 2022年05月18日 2032年05月31日
2034年05月31日(ELS)
RockyLinux8 2021年06月21日 2029年05月31日
RockyLinux9 2022年07月14日 2032年05月31日
AlmaLinux8 2021年03月30日 2029年5月1日
AlmaLinux9 2022年05月126日 2032年5月31日

Amazon Linux 2からAmazon Linux 2023へのインプレースアップグレードがないので、移行先OSはフラットに、コスト、EOLまでの期間等、何を重視するかで判断すればよいのでは、と思いました。

・以下、検討する際のポイントとなる点列挙しました。

  • 最新の機能が使えるけどEOLが短めなのはAmazon Linux 2023だけど、Amazon Linux 2のEOLは2025年6月まで延びてるので、そのころにはAmazon Linux 2025が出てると思うので、今すぐ2023への移行の必要はないかも。
  • EOL重視で考えるとRed Hat Enterprise Linux,Rocky Linux,AlmaLinux9系で、さらにRed Hat Enterprise Linux 9は別途有償にはなりますが、他OSよりさらに2年サポートを延長することができます。
  • パッチマネージャー対応に関して、Red Hat Enterprise Linux,Rocky Linux8系に対応しているけど9系は未対応、AlmaLinuxはそもそもパッチマネージャー対応OSに含まれてないAmazon Linux 2023は勿論対応しているという状況です。
  • Rocky Linuxの場合は新しいマイナーバージョンがリリースされたら、それ以前のマイナーバージョンがリリースされない。セキュリティとバグフィックスを適用する際には、マイナーバージョンをアップデートする前提での運用が必要になる。

SELinuxは「permissive」がデフォルト

AL2022ではデフォルトでselinuxがenforcingになってましたがAL2023ではpermissiveになりました。
また、AL2022では/etc/default/grubを編集しないと設定変更できませんでしたが、AL2023では従来の/etc/selinux/configを編集する方法で設定変更可能です。

SSM AgentとCloudWatch エージェント,AWSCLIがデフォルトでインストールされてる

AL2022ではデフォルトでインストールされてませんでしたが、AL2023ではSSM AgentとCloudWatch エージェント,AWSCLIがインストールされてる状態がデフォルトになってました。

いつものエンジニア募集の告知

ギークフィードではハイレベルなクラウドエンジニア(を目指している人含む)を随時募集しております。
量より質を重視する企業理念の関係上、採用合格率は決して高くはございませんが、我こそはと思う方はhttps://www.geekfeed.co.jp/recruitment
よりご気軽にご応募お待ちしております。
こんなギークな記事を読んでいる方はきっとギークなので、「内さんの記事を見て応募しました。」で、書類選考通過キャンペーン実施中です。

この記事が気に入ったら
いいね ! しよう

Twitter で
The following two tabs change content below.
内信史
内信史
代表取締役
意識高い系IT企業経営者、エンジニア、コンサルタントだがMacは使いこなせない。 ギークフィードファウンダー、代表取締役、中小企業診断士、 オープンソースコンサルタント、コンタクトセンターシステムコンサルタント、データサイエンティスト エンジニアとして今でもよく触るものはElasitcSearch/Amazon OpenSearch、AWS、Linux、c++ 中小企業診断士としては、会社地元台東区の中小企業向けにホームページやSNSを利用したマーケティングプロモーション支援を実施。

【採用情報】一緒に働く仲間を募集しています

採用情報
ページトップへ