

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# Amazon Linux 2023 とは
<a name="what-is-amazon-linux"></a>

Amazon Linux 2023 (AL2023) は、Amazon Web Services (AWS) の次世代の Amazon Linux です。AL2023 を使うことで、安全で安定した高性能なランタイム環境で、クラウドおよびエンタープライズアプリケーションを開発、実行できます。また、Linux での最新のイノベーションへのアクセスを含む、長期的なサポートを提供するアプリケーション環境を取得できます。AL2023 は追加料金なしで提供されます。

AL2023 は Amazon Linux 2 (AL2) の後継です。AL2023 と AL2 の違いについては、「[AL2 と AL2023 の比較](compare-with-al2.md)」および「[AL2023 のパッケージ変更](https://docs.aws.amazon.com/linux/al2023/release-notes/compare-packages.html)」を参照してください。

**Topics**
+ [

# リリース頻度
](release-cadence.md)
+ [

# 命名およびバージョニング
](naming-and-versioning.md)
+ [

# パフォーマンスと運用の最適化
](performance-optimizations.md)
+ [

# Fedora との関係
](relationship-to-fedora.md)
+ [

# カスタマイズされた cloud-init
](cloud-init.md)
+ [

# セキュリティ更新および機能
](security-features.md)
+ [

# ネットワークサービス
](networking-service.md)
+ [

# コアツールチェーンパッケージglibc、gcc、binutils
](core-glibc.md)
+ [

# パッケージ管理ツール
](package-management.md)
+ [

# デフォルトの SSH サーバー設定
](ssh-host-keys-disabled.md)

# リリース頻度
<a name="release-cadence"></a>

Amazon Linux 2023 (AL2023) は 2023 年 3 月にリリースされ、2029 年 6 月 30 日までサポートされます。サポートには 2 つのフェーズがあります。
+ **標準サポートフェーズ** - このフェーズでは、四半期ごとにリリースのマイナーバージョン更新が行われます。標準サポートフェーズは 2027 年 6 月 30 日に終了します。
+ **メンテナンス** – このフェーズでは、リリースのセキュリティ更新と重要なバグ修正のみが行われます。これらの更新は、利用可能になるとすぐに公開されます。メンテナンスフェーズは 2029 年 6 月 30 日に終了します。

## メジャーリリースおよびマイナーリリース
<a name="major-minor-releases"></a>

Amazon Linux のリリース (メジャーバージョン、マイナーバージョン、またはセキュリティリリース) ごとに、新しい Linux Amazon マシンイメージ (AMI) がリリースされます。
+ **メジャーバージョンリリース** — スタック全体のセキュリティとパフォーマンスの新機能と改善が含まれています。改善には、カーネル、ツールチェーンGlib C、OpenSSL、およびその他のシステムライブラリとユーティリティの大幅な変更が含まれる場合があります。Amazon Linux のメジャーリリースの一部は、アップストリームの Fedora Linux 配布の最新バージョンに基づいています。AWS は Fedora 以外の他のアップストリームの特定のパッケージを追加したり、置き換えたりする場合があります。
+ **マイナーバージョンリリース** — セキュリティ更新、バグ修正、および新機能およびパッケージが含まれる四半期ごとの更新です。各マイナーバージョンは、新しい機能やパッケージに加えて、セキュリティやバグの修正を含む更新の累積リストです。これらのリリースには、PHP などの最新の言語ランタイムが含まれる場合があります。Ansible や Docker など、他の一般的なソフトウェアパッケージも含まれる場合があります。

## 新しいリリースの消費
<a name="consuming-new-releases"></a>

更新は、新しい Amazon マシンイメージ (AMI) リリースと対応する新しいリポジトリを組み合わせて提供されます。デフォルトでは、新しい AMI とそれが指すリポジトリが結合されます。ただし、実行中のAmazon EC2インスタンスに更新を適用するために、時間の経過とともに新しいリポジトリバージョンを指定できます。最新の AMI の新しいインスタンスを起動して更新することもできます。

## 長期的なサポートポリシー
<a name="long-term-support-policy"></a>

Amazon Linux では、すべてのパッケージの更新が提供され、Amazon Linux 上に構築されたアプリケーションのメジャーバージョン内での互換性が維持されます。glibc ライブラリ、OpenSSL、OpenSSH、および DNF パッケージマネージャなどのコアパッケージは、AL2023 のメジャーリリースの有効期間中サポートを受けられます。コアパッケージに含まれていないパッケージは、特定のアップストリームソースに基づいてサポートされます。以下のコマンドを実行すると、個々のパッケージの具体的なサポート状況および日付を確認できます。

```
$ sudo dnf supportinfo --pkg packagename
```

以下のコマンドを実行すると、現在インストールされているすべてのパッケージに関する情報を取得できます。

```
$ sudo dnf supportinfo --show installed
```

コアパッケージのすべてのリストはプレビュー中に完成します。コアパッケージとして含まれるパッケージをさらに確認する場合はお問い合わせください。私たちは、フィードバックを収集して評価しています。AL2023 に関するフィードバックは、指定の AWS 担当者を通じて提供するか、GitHub の[amazon-linux-2023リポジトリ](https://github.com/amazonlinux/amazon-linux-2023/issues)に問題を提出することで提供できます。

# 命名およびバージョニング
<a name="naming-and-versioning"></a>

AL2023 は、2 年間の標準サポート期間中、3 か月ごとにマイナーリリースを提供します。各リリースは 0 から N までの数字で識別されます。0 はそのイテレーションの元のメジャーリリースを指します。すべてのリリースは Amazon Linux 2023 という名前になります。次のバージョンの Amazon Linux がリリースされると、AL2023 は延長サポートに入り、セキュリティ更新と重大なバグ修正の更新が提供されます。

例えば、AL2023 のマイナーリリースのフォーマットは以下のとおりです。
+ `2023.0.20230301`
+ `2023.1.20230601`
+ `2023.2.20230901`

対応する AL2023 AMI のフォーマットは以下のとおりです。
+ `al2023-ami-2023.0.20230301.0-kernel-6.1-x86_64`
+ `al2023-ami-2023.1.20230601.0-kernel-6.1-x86_64`
+ `al2023-ami-2023.2.20230901.0-kernel-6.1-x86_64`

特定のマイナーバージョン内では、AMI リリース日のタイムスタンプが付いた通常の AMI リリースが行われます。
+ `al2023-ami-2023.0.20230301.0-kernel-6.1-x86_64`
+ `al2023-ami-2023.0.20230410.0-kernel-6.1-x86_64`
+ `al2023-ami-2023.0.20230520.0-kernel-6.1-x86_64`

AL2 または AL2023 インスタンスを識別するための推奨方法は、まず `/etc/system-release-cpe` から共通プラットフォーム一覧 (CPE) 文字列を読み取ることです。次に、文字列をフィールドに分割します。最後に、プラットフォームとバージョンの値を読み取ります。

AL2023 では、プラットフォーム識別用の新しいファイルも導入されています。
+  `/etc/system-release` への `/etc/amazon-linux-release` シンボリックリンク 
+  `/etc/amazon-linux-release-cpe` への `/etc/system-release-cpe` シンボリックリンク

この 2 つのファイルは、インスタンスが Amazon Linux であることを示しています。特定のプラットフォームとバージョンの値を知りたい場合を除いて、ファイルを読み取ったり、文字列をフィールドに分割したりする必要はありません。

# パフォーマンスと運用の最適化
<a name="performance-optimizations"></a>

**Amazon Linux 6.1 カーネル**
+ AL2023 は、Elastic Network Adapter (ENA) および Elastic Fabric Adapter (EFA) デバイス用の最新のドライバーを使用しています。AL2023 は、Amazon EC2 インフラストラクチャのハードウェアのパフォーマンスと機能のバックポートに重点を置いています。
+ `x86_64` および `aarch64` インスタンスタイプにはカーネルライブパッチが適用されています。これにより、頻繁に再起動する必要が少なくなります。
+ カーネルビルドとランタイムのすべての設定には、AL2 と同じパフォーマンス上および運用上の最適化が多数含まれています。

**基本ツールチェーンの選択とデフォルトのビルドフラグ**
+ AL2023 パッケージは、コンパイラ最適化 (`-O2`) がデフォルトで有効になっている状態でビルドされます。
+ AL2023 パッケージは `x86-64` システム (`-march=x86-64-v2`) の `x86-64v2` が必要で、`aarch64` (`-march=armv8.2-a+crypto -mtune=neoverse-n1`) の Graviton 2 以降が必要です。
+ AL2023 パッケージは、自動ベクトル化を有効にして構築されています (`-ftree-vectorize`)。
+ AL2023 パッケージはリンクタイム最適化 (LTO) を有効にしてビルドされています。
+ AL2023 は Rust、Clang/LLVM、および Go の更新バージョンを使用しています。

**パッケージの選択とバージョン**
+ 主要なシステムコンポーネントへの一部のバックポートには、Amazon EC2 インフラストラクチャ、特に Graviton インスタンスで実行するためのいくつかのパフォーマンスの向上が含まれています。
+ AL2023 には複数の AWS のサービス および機能が統合されています。これには AWS CLI、SSM エージェント、Amazon Kinesis エージェント、および CloudFormation が含まれます。
+ AL2023 では、Java 開発キット (JDK) として Amazon Corretto が使用されます。
+ AL2023 は、上流プロジェクトによってリリースされる新しいバージョンへのデータベースエンジンとプログラミング言語のランタイム更新を提供します。新しいバージョンのプログラミング言語ランタイムは、リリース時に追加されます。

**クラウド環境へのデプロイ**
+ ベースの AL2023 AMI とコンテナイメージは、パッチ適用インスタンスの置換をサポートするように頻繁に更新されます。
+ カーネルの更新は AL2023 AMI の更新に含まれています。つまり、カーネルを更新するために `yum update` や `reboot` などのコマンドを使用する必要がないということです。
+ 標準の AL2023 AMI に加えて、最小 AMI とコンテナイメージも利用できます。サービスの実行に必要な最小限のパッケージ数で環境を実行するには、最小 AMI を選択します。
+ デフォルトでは、AL2023 AMI とコンテナは特定のバージョンのパッケージリポジトリにロックされます。起動時の自動更新はありません。つまり、パッケージ更新をいつ取り込むかを常に制御できるということです。本番環境にロールアウトする前に、いつでもベータ/ガンマ環境でテストできます。問題が発生した場合は、事前に検証されたロールバックパスを使用できます。

# Fedora との関係
<a name="relationship-to-fedora"></a>

AL2023 は、Fedora から独立した独自のリリースおよびサポートライフサイクルを維持しています。AL2023 では、オープンソースソフトウェアの更新バージョン、多種多様なパッケージ、頻繁なリリースが提供されています。これにより、使い慣れた RPM ベースのオペレーティングシステムが維持されます。

AL2023 の一般提供 (GA) バージョンは、特定の Fedora リリースと直接比較できるものではありません。AL2023 GA バージョンには Fedora 34、35、36 のコンポーネントが含まれています。一部のコンポーネントは Fedora のコンポーネントと同じで、一部は変更されています。他のコンポーネントは、CentOS Stream 9 のコンポーネントによく似ているか、独自に開発されたものです。Amazon Linux カーネルは、Fedora とは別に選択された kernel.org にある長期サポートオプションから供給されています。

# カスタマイズされた cloud-init
<a name="cloud-init"></a>

cloud-init パッケージは、クラウドコンピューティング環境で Linux イメージをブートストラップするオープンソースアプリケーションです。詳細については [cloud-init のドキュメント](https://cloudinit.readthedocs.io/en/22.2.2/)を参照してください。

AL2023 には、cloud-init のカスタマイズバージョンが含まれています。cloud-init を使用すると、起動時のインスタンスの動作を指定できます。

インスタンスを起動する際、ユーザーデータフィールドを使用して cloud-init にアクションを渡すことができます。つまり、さまざまなユースケースに対して共通の Amazon マシンイメージ (AMI) を使用し、インスタンスの起動時にその AMI を動的に設定できます。AL2023 は `ec2-user` アカウントの設定にも cloud-init を使用します。

AL2023 は `/etc/cloud/cloud.cfg.d` と `/etc/cloud/cloud.cfg` にある cloud-init アクションを使用します。独自の cloud-init アクションファイルを `/etc/cloud/cloud.cfg.d` ディレクトリに作成できます。Cloud-init はこのディレクトリ内のすべてのファイルを辞書順に読み込みます。後のファイルは以前のファイルの値を上書きします。cloud-init がインスタンスを起動すると、cloud-init パッケージは以下の設定タスクを実行します。
+ デフォルトのロケールの設定
+ ホスト名の設定
+ ユーザーデータの解析および処理
+ ホストプライベート SSH キーの生成
+ 容易にログインおよび管理できるように、ユーザーのパブリック SSH キーを `.ssh/authorized_keys` に追加
+ パッケージ管理のためのリポジトリの準備
+ user-data で定義されたパッケージアクションの処理
+ user-data に含まれるユーザースクリプトの実行
+ インスタンスストアボリュームのマウント (該当する場合)
  + デフォルトでは、`ephemeral0` インスタンスストアボリュームが存在し有効なファイルシステムを含む場合、インスタンスストアボリュームは `/media/ephemeral0` にマウントされます。それ以外の場合は、マウントされません。
  + デフォルトでは、`m1.small` および `c1.medium` インスタンスタイプの場合、インスタンスに関連付けられたすべてのスワップボリュームがマウントされます。
  + 以下の cloud-init ディレクティブを使用して、デフォルトのインスタンスストアボリュームマウントを上書きできます。

    ```
    #cloud-config 
    mounts:
    - [ ephemeral0 ]
    ```

    マウントをより制御するには、「cloud-init ドキュメント」の「[マウント](https://cloudinit.readthedocs.io/en/22.2.2/topics/modules.html#mounts)」を参照してください。
  + インスタンスが起動しても、TRIM をサポートするインスタンスストアボリュームはフォーマット化されません。インスタンスストアボリュームをマウントする前に、インスタンスストアボリュームを分割してフォーマット化する必要があります。

    詳細については、「*Amazon EC2 ユーザーガイド*」の「[インスタンスストアボリュームの TRIM のサポート](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ssd-instance-store.html#InstanceStoreTrimSupport)」を参照してください。
  +  インスタンスを起動する際、`disk_setup` モジュールを使用してインスタンスストアボリュームを分割およびフォーマット化することができます。

    詳細については、「cloud-init ドキュメント」の「[ディスクの設定](https://cloudinit.readthedocs.io/en/22.2.2/topics/modules.html#disk-setup)」を参照してください。

SELinux で cloud-init を使用する方法については、「[cloud-init を使用して `enforcing` モードを有効にする](enforcing-mode.md#cloud-init-enforcing)」を参照してください。

cloud-init ユーザーデータフォーマットについては、「cloud-init ドキュメント」の「[User-Data フォーマット](https://cloudinit.readthedocs.io/en/22.2.2/topics/format.html#format)」を参照してください。

# セキュリティ更新および機能
<a name="security-features"></a>

AL2023 には、多数のセキュリティ更新およびソリューションが用意されています。

**Topics**
+ [

## 更新の管理
](#manage-updates)
+ [

## クラウド内のセキュリティ
](#cloud-security)
+ [

## SELinux モード
](#setting-selinux)
+ [

## コンプライアンスプログラム
](#compliance-program)
+ [

## SSH サーバーのデフォルト
](#ssh-server-default)
+ [

## OpenSSL 3 の主な機能
](#openssl-3)

## 更新の管理
<a name="manage-updates"></a>

DNF とリポジトリバージョンを使用してセキュリティ更新を適用します。詳細については、「[AL2023 のパッケージとオペレーティングシステムとの更新を管理する](managing-repos-os-updates.md)」を参照してください。

## クラウド内のセキュリティ
<a name="cloud-security"></a>

セキュリティは、AWS とユーザーの間の共有責任です。[責任共有モデル](https://aws.amazon.com/compliance/shared-responsibility-model/)では、これをクラウドのセキュリティおよびクラウド内のセキュリティとして説明しています。詳細については、「[Amazon Linux 2023 でのセキュリティおよびコンプライアンス](security.md)」を参照してください。

## SELinux モード
<a name="setting-selinux"></a>

AL2023 では SELinux はデフォルトで有効になっており、許可モードに設定されています。許可モードでは、アクセス拒否は記録されますが、強制ではありません。

SELinux ポリシーは、ユーザー、プロセス、プログラム、ファイル、デバイスのアクセス許可を定義します。SELinux では、2 つのポリシーから 1 つを選択できます。ポリシーはターゲットを絞ったセキュリティー、またはマルチレベルセキュリティ (MLS) です。

SELinux のモードとポリシーの詳細については、「[[AL2023 の SELinux モードの設定](selinux-modes.md) および SELinux プロジェクト Wiki](http://selinuxproject.org/page/Main_Page)」を参照してください。

## コンプライアンスプログラム
<a name="compliance-program"></a>

独立した監査人が、AL2023 のセキュリティとコンプライアンスを多数の AWS コンプライアンスプログラムとともに評価します。

## SSH サーバーのデフォルト
<a name="ssh-server-default"></a>

AL2023 には OpenSSH 8.7 が含まれています。デフォルトでは、OpenSSH 8.7 は `ssh-rsa` キー交換アルゴリズムを無効にします。詳細については、「[デフォルトの SSH サーバー設定](ssh-host-keys-disabled.md)」を参照してください。

## OpenSSL 3 の主な機能
<a name="openssl-3"></a>
+ 証明書管理プロトコル (CMP、RFC 4210) には CRMF (RFC 4211) と HTTP 転送 (RFC 6712) の両方が含まれています。
+ libcrypto の HTTP または HTTPS クライアントは、GET および POST アクション、リダイレクト、プレーンおよび　ASN.1 にエンコードされたコンテンツ、プロキシ、タイムアウトをサポートします。
+ EVP\$1KDF はキー派生関数と連携します。
+ EVP\$1MAC API は MACs と連携します。
+ Linux カーネル TLS サポート。

詳細については、「[OpenSSL の移行ガイド](https://www.openssl.org/docs/man3.0/man7/migration_guide.html)」を参照してください。

# ネットワークサービス
<a name="networking-service"></a>



オープンソースプロジェクト `systemd-networkd` は、最新の Linux 配布で広く使用できます。このプロジェクトでは、`systemd` フレームワークの他の部分と同様の宣言型設定言語を使用しています。主な設定ファイルタイプは `.network` および `.link` ファイルです。

`amazon-ec2-net-utils` パッケージはインターフェイス固有の設定を `/run/systemd/network` ディレクトリに生成します。これらの設定では、インターフェイスがインスタンスにアタッチされている場合、IPv4 と IPv6 の両方のネットワークが有効になります。これらの構成では、ローカルソースのトラフィックが対応するインスタンスのネットワークインターフェースを介してネットワークにルーティングされるようにするポリシールーティングルールもインストールされます。これらのルールにより、関連するアドレスまたはプレフィックスから適切なトラフィックが Elastic Network Interface (ENI) 経由でルーティングされるようになります。ENI の使用の詳細については「*Amazon EC2 ユーザーガイド*」の「[Elastic Network Interface](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-eni.html)」を参照してください。

このネットワーク動作は、`/etc/systemd/network` ディレクトリにカスタム設定ファイルを配置して、`/run/systemd/network` に含まれるデフォルトの設定を上書きすることでカスタマイズできます。

[systemd.network](https://www.freedesktop.org/software/systemd/man/systemd.network.html) のドキュメントには、`systemd-networkd` サービスが特定のインターフェースに適用される設定を決定する方法が説明されています。また、ENI ベースのインターフェースには、altnames と呼ばれる、さまざまな AWS リソースのプロパティを反映した代替名も生成されます。ENI ベースのインターフェースプロパティは ENI アタッチメントの `ENI ID` および `DeviceIndex` フィールドです。これらのインターフェースは、`ip` コマンドなどのさまざまなツールの使用時に、そのプロパティを使用して参照できます。

AL2023 インスタンスのインターフェイス名が、`systemd` スロット命名スキームを使用して生成されます。詳細については、「[systemd.net 命名スキーム](https://www.freedesktop.org/software/systemd/man/systemd.net-naming-scheme.html)」を参照してください。

さらに、AL2023 は `fq_codel` アクティブキュー管理ネットワークの送信スケジューリングアルゴリズムをデフォルトで使用します。詳細については、「[CoDel の概要](https://www.bufferbloat.net/projects/codel/wiki/)」を参照してください。

# コアツールチェーンパッケージglibc、gcc、binutils
<a name="core-glibc"></a>

Amazon Linux のパッケージのサブセットはコアツールチェーンパッケージとして指定されています。AL2023 の主な構成要素として、コアパッケージには 5 年間のサポートが付属します。パッケージのバージョンは変更される場合がありますが、Amazon Linux リリースに含まれるパッケージには長期サポートが適用されます。

これら 3 つのコアパッケージは、Amazon Linux 配布のほとんどのソフトウェアの構築に使用されるシステムツールチェーンを提供します。


| パッケージ | 定義 | 目的 | 
| --- | --- | --- | 
| glibc 2.34 |  システム C ライブラリ  |  標準機能を提供するほとんどのバイナリプログラムや、プログラムとカーネル間のインターフェースで使用されます。  | 
|  gcc 11.2  |  gcc コンパイラスイート  |  コンパイル C、C\$1\$1、Fortran。  | 
|  binutils 2.35  |  アセンブラとリンカー、その他のバイナリツール  |  バイナリプログラムを操作または検査します。  | 

glibc ライブラリを更新した後も再起動が必要です。サービスを制御する更新の場合は、サービスの再起動のみで更新を取得できる場合があります。しかし、システムを再起動すると、パッケージとライブラリの以前の更新はすべて完了します。

# パッケージ管理ツール
<a name="package-management"></a>

AL2023 のデフォルトのソフトウェアパッケージ管理ツールは DNF です。DNF は AL2 のパッケージ管理ツールである YUM の後継です。

DNF の使い方は YUM と似ています。DNF コマンドとコマンドオプションの多くは YUM コマンドと同じです。コマンドラインインターフェイス (CLI) のコマンドでは、ほとんどの場合、`dnf` が `yum` に置き換えられます。

例えば、次の AL2 `yum` コマンドの場合

```
$ sudo yum install packagename
$ sudo yum search packagename
$ sudo yum remove packagename
```

AL2023 では、以下のコマンドになります。

```
$ sudo dnf install packagename
$ sudo dnf search packagename
$ sudo dnf remove packagename
```

AL2023 では、`yum` コマンドは引き続き使用できますが、`dnf` コマンドへのポインタとして利用できます。そのため、`yum` コマンドをシェルまたはスクリプトで使用すると、すべてのコマンドとオプションは DNF CLI と同じになります。YUM CLI と DNF CLI の相違点の詳細については、「[YUM との比較における DNF CLI の変更点](https://dnf.readthedocs.io/en/latest/cli_vs_yum.html)」を参照してください。

コマンドと `dnf` コマンドのオプションの詳細については、マニュアルページ「`man dnf`」を参照してください。詳細については、「[DNF コマンドリファレンス](https://dnf.readthedocs.io/en/latest/command_ref.html)」を参照してください。

# デフォルトの SSH サーバー設定
<a name="ssh-host-keys-disabled"></a>

数年前の SSH クライアントを使用している場合、インスタンスに接続するとエラーが表示される可能性があります。一致するホストキータイプが見つからないというエラーが表示された場合は、SSH ホストキーを更新してこの問題を解決します。

**デフォルトの `ssh-rsa` 署名の無効化**

AL2023 には、従来の `ssh-rsa` ホストキーアルゴリズムを無効にして生成するホストキーの数を減らすデフォルト設定が含まれています。クライアントは `ssh-ed25519` または `ecdsa-sha2-nistp256` ホストキーアルゴリズムをサポートする必要があります。

デフォルト設定では以下のキー交換アルゴリズムを受け入れます。
+ `curve25519-sha256`
+ `curve25519-sha256@libssh.org`
+ `ecdh-sha2-nistp256`
+ `ecdh-sha2-nistp384`
+ `ecdh-sha2-nistp521`
+ `diffie-hellman-group-exchange-sha256`
+ `diffie-hellman-group14-sha256`
+ `diffie-hellman-group16-sha512`
+ `diffie-hellman-group18-sha512`

デフォルトでは、AL2023 は `ed25519` および `ECDSA` はホストキーを生成します。クライアントは `ssh-ed25519` または `ecdsa-sha2-nistp256` ホストキーアルゴリズムのいずれかをサポートします。SSH でインスタンスに接続する場合、`ssh-ed25519` または `ecdsa-sha2-nistp256` などの互換性のあるアルゴリズムをサポートするクライアントを使用する必要があります。他の種類のキーを使用する必要がある場合は、生成されたキーのリストを user-data 内の `cloud-config` フラグメントで上書きします。

以下の例では、`cloud-config` は `ecdsa` および `ed25519` キーを使用して `rsa` ホストキーを生成します。

```
#cloud-config 
 ssh_genkeytypes: 
 - ed25519 
 - ecdsa 
 - rsa
```

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

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

ホストキーの管理の詳細については、Amazon Linux の「[Host Keys](https://cloudinit.readthedocs.io/en/22.2.2/topics/modules.html#host-keys)」を参照してください。