こんにちはゆーろんです。
今回はAWSのEC2においてAmazon Linux 2023を設定した際にボトルネックになったポイントがあったのでその対策方法なども紹介します。
ゆーろん
久しぶりにEC2を立てたらいろいろ変わっていたので紹介します。
目次
Amazon Linux 2023の特徴
Amazon Linux 2023は2023年3月15日にリリースされたEC2の新しいイメージです。 特徴としては以下の通りです。
- ベースとなるOSがRedHatからFedoraへ変更
- サポートは3年間(EOLは2028年3月15日まで)
- パッケージ管理ツールの変更(yumからdnf)
- SELinuxがデフォルトの無効状態からパーミッシブモードに変更
- 初期状態ではrsyslogやcronieがインストールされていない
- SSHサーバのデフォルト値が変更(デフォルトではssh-rsa署名が無効)
特にTeraTermを使ってAL2023のインスタンスにアクセスする場合、Version5.0以上を使用する必要があります。 これはTeraterm 5.0 beta 1以上からrsa-sha2-256 および rsa-sha2-512プロトコルがサポートされているからです
TeraTerm4.0以前でTeraTermでSSH接続するための設定
TeraTerm4.0以前でAL2023のEC2にログインするには暗号化ポリシを変更する必要があります。
手順としてはWin10以降のPowerShellでsshが標準サポートされたことを利用します。
- powershellでSSH接続する1
ssh -i 鍵ファイルのパス ec2-user@IPアドレス
- ルートに昇格し暗号化ポリシーを変更する
sudo su #権限昇格
update-crypto-policies --show #暗号化ポリシの確認(DEFAULTと表示されるはず)
update-crypto-policies --set LEGACY #暗号化ポリシの変更
update-crypto-policies --show #暗号化ポリシの確認(LEGACYと表示されるはず)
- 再起動を行う
shutdown -r now
上記手順でTeraTerm4.0以前でもAL2023のEC2にログインできるようになります。
その他の基本設定
EC2インスタンス作成後によく行うその他の設定も記載しておきます。
ホスト名の変更
sudo hostnamectl set-hostname <ホスト名> # ホスト名の変更
hostname #ホスト名の確認
タイムゾーンの変更
日本時間(JPT)への変更手順です。
date # 時刻の確認
strings /etc/localtime # 時刻の確認
sudo timedatectl set-timezone Asia/Tokyo # 日本時間に変更
sudo vi /etc/sysconfig/clock # ZONE=\" Asia/Tokyo\", UTC=falseに変更
ロケールの設定
echo $LANG # ロケールの確認(デフォルトではC.UTF-8と表示されるはず)
export LANG=ja_JP.UTF-8 # 日本語にロケール変更
Bash
SELinuxの無効化
AL2023ではgrubbyコマンドを使用するか/etc/selinux/configを書き換えて設定します。 grubbyコマンドを使用する場合は以下の通り。
getenforce # SELinuxの確認
rpm -q grubby
sudo grubby --update-kernel ALL --args selinux=0
sudo reboot
ユーザの作成
ls /home/ # ユーザの確認
sudo adduser <ユーザ名> # ユーザ作成
sudo passwd <ユーザ名> # ユーザへのパスワード作成