🐸

【Linux/SSH認証】REHL9.4でSSH鍵認証+PW認証をしてみた

2024/10/16に公開

どうも!新人エンジニアの前歯すきっ歯です🦷

LinuxでSSH鍵認証とPW認証の方法を検索すると色々な記事が出てきますが、書いてあることがまちまちだし、OSの種類やバージョンによって設定が違うらしく、はたして何を信じればいいものか分かりません。

今回はRHEL9.4にてSSH鍵認証とPW認証の両方の認証を同時に設定してみたので、忘れぬようにその記録を残しておきます。

結論

編集が必要なファイルは以下2つです。

/etc/ssh/sshd_configの編集

/etc/ssh/sshd_configのパラメータを以下に変更する。

/etc/ssh/sshd_config
・AuthenticationMethods publickey,password publickey,keyboard-interactive
・PasswordAuthentication yes 
・PubkeyAuthentication yes
・ChallengeResponseAuthentication yes

50-cloud-init.confの編集

/etc/ssh/sshd_configを編集するという内容がネット上でよく出てきます。
RHEL9以降のバージョンの場合、上記に加えて/etc/ssh/sshd_config.dファイル内にいる50-cloud-init.confというファイルを編集する必要があります。

理由は”PasswordAuthentication yes”と上記の通り記載したいのに、50-cloud-init.confの中に"”PasswordAuthentication no”"と記載されているからです。このパラメータの値をyesに修正して完了です!

cat 50-cloud-init.conf
PasswordAuthentication yes

https://qiita.com/murasakiya/items/d58bbc1a9f16b8e2b255#rhel9からの変更点を追加設定していく

その他PWについて

PWのセキュリティ強化にあたり以下2点を調べたので忘れぬようにメモしておきます。

PWに使用する文字や文字数の制限

以下リンクが分かりやすかったです。
https://infra-exp.com/linux-passwordrules/

PWの文字数の上限

どこを調べても文字数の上限がなく、致し方なく実機確認を行いました。
passwdファイルに512文字以上の文字を入れると、画像のようにエラーが出るため、
511文字以下である必要があるようです!

Discussion