本記事はOracle Cloud Infrastructure Advent Calendar 2022 カレンダー1の Day 5として書いています。
こんにちは!s.tanakaです。
8月にOracle Linux 9がOracle Cloud Infrastructure(以下OCI)で利用可能となりました!
リリースノートはこちらになります。
色々検証した中で、設定方法が以前のOracle Linuxと違う点がいくつかあったのでご紹介させていただきます!
Tera TermからSSH接続できない!
OCI上でOracle Linux 9を立ち上げ後、WindowsマシンからTera TermでSSH接続しようとすると繋がらない!
試しにMacマシンのターミナルから接続すると正常に接続できる。。。
そこでサーバ上のsecureログを確認したところ、以下のようなログが出力されていました。
userauth_pubkey: key type ssh-rsa not in PubkeyAcceptedAlgorithms [preauth]
原因を調べたところ、Oracle Linux 9 からデフォルトで認証アルゴリズム SHA1 が無効になっているため、SSHクライアントが SHA2 に対応しているものでしか接続ができなくなったようです。
対処法としては、PuTTYなどのSHA2に対応しているSSHクライアントを利用する。または、認証アルゴリズムEd25519の鍵を予め作成しOS立ち上げ時に指定することでTera Termでも接続可能となります。
Ed25519の鍵の作成方法はこちらの記事などが参考になるかと思います。
Windowsユーザの方はSSH接続する際にTera Termをご利用する人が多いと思いますので、同じ現象で困っている方がいればお試しください!
IPv6が無効化できない!
Oracle Linux 8では以下の様なコマンドなどでIPv6が無効化できましたが、Oracle Linux 9では従来の方法でIPv6を無効化することができなくなりました。
# sysctl -w net.ipv6.conf.all.disable_ipv6=1
# sysctl -w net.ipv6.conf.default.disable_ipv6=1
# sysctl -p
代わりに以下のコマンドでIPv6を無効化することが可能となりました。
IPv6を無効化
# grubby --update-kernel=ALL --args=“ipv6.disable=1”
再起動
# reboot
有効に戻したい場合は以下コマンドでIPv6有効化できます。
IPv6を有効化
# grubby --update-kernel ALL --remove-args ipv6.disable
再起動
# reboot
SELinux無効化の手順が違う!
Oracle Linux 8以前は以下の様なコマンドで/etc/selinux/configファイルを編集しSELinuxを無効化していましたが、Oracle Linux 9では推奨される設定方法が変更になりました。
sed -i -e "s/^SELINUX=enforcing$/SELINUX=disabled/g" /etc/selinux/config
こちらもIPv6設定と同様にgrubbyコマンドを使用して無効化します。
以下のようなコマンドでSELinuxを無効化することが可能です。
SELinuxを無効化
# grubby --update-kernel ALL --args selinux=0
再起動
# reboot
有効に戻したい場合は以下コマンドで有効化可能です。
SELinuxを有効化
# grubby --update-kernel ALL --remove-args selinux
再起動
# reboot
まとめ
Oracle Linux 9は初期設定をする中でもOracle Linux 8以前とは設定方法が変わっている箇所が多くありました!
今後検証する中でもさらに相違点が見つかると思いますので、続報として今後お知らせしようと思います!
本記事が皆様のお役に立てれば幸いです。
最後まで読んでいただきありがとうございました!