この動画は、Ubuntu 22.04にSSH接続する際に秘密鍵を使用する方法について詳しく解説しています。Google CloudやOracle CloudのインスタンスでUbuntu 22.04を使用している場合、デフォルトではssh-rsaが無効になっているため、特定の設定を行う必要があります。この動画では、その設定方法と問題の解決方法を詳しく解説しています。この動画は、クラウドサービスを使用してUbuntu 22.04を運用する際に、SSH接続に関する問題を解決するための有用な情報を提供します。
#Ubuntu2204 #SSH接続 #秘密鍵 #GoogleCloud #OracleCloud #ssh-rsa #クラウドサービス #問題解決
先日、Google Cloudのインスタンス作成時に、OSとしてubuntu22.04が追加されていました。そこで20.04の時と同様にしてSSH接続の設定をしていたらログインできませんでした。
• Google Cloudの永久無料枠e2-microでブログ運用(podman,wo...
接続ソフトにはTeraTermを使用します。設定ミスがあると思い何度かやり直しましたが接続できません。まだ、ubuntu22.04がリリースされて間もないのでGoogle Cloudがなにかしらの理由で対応してないと勝手に考えて対処せずにいました。
少し時間が経過して、Oracle Cloudでも試しましたが接続が出来ません。
今度は接続できない理由を調べているとubuntu22.04の仕様が変更されていて接続できないことがわかったので対処します。
どうやら、22.04ではssh-rsaがデフォルトで無効のようです。LAN内では鍵を使用せずパスワードでログインしていたので盲点でした。
• 使っていないPCにUbuntu Server 22.04 LTSをインストールします
それでは接続できるように問題を解決していきましょう。
自宅のWindows端末で作業します。PowerShellを開いてコマンドを入力します。Oracle Cloudではインスタンス作成時に公開鍵と秘密鍵を保存することができます。
ssh -i 秘密鍵の存在するパス+鍵のファイル名 ubuntu@外部IPアドレス
実際の例
ssh -i C:\Users\minok\OneDrive\ドキュメント\oracle\ssh-key.key [email protected]
鍵の場所が複雑な階層にある場合は、一度エクスプローラを開いてアドレスをテキストとしてコピーしておきます。もしくはCドライブ直下など簡単な場所にファイルを置いておきます。下記のメッセージが表示されたら「yes」と入力します。
ECDSA key fingerprint is SHA256:
Are you sure you want to continue connecting (yes/no/[fingerprint])?
ログインしたらルートに切り替えて、sedコマンドを入力します。このコマンドは文字列を全置換したり、行単位で抽出したり、削除したり、いろいろなテキスト処理します。
sudo su -
sed -i '1s/^/PubkeyAcceptedAlgorithms=+ssh-rsa\n/' /etc/ssh/sshd_config
最後に書き換えた内容を反映するためSSHサービスを再起動します。
systemctl restart ssh.service
これでテラタームで鍵を使いログインできるはずです。
解説
https://minokamo.tokyo/2022/07/26/5101/
English
https://betelgeuse.work/archives/5101
立ち絵お借り先
〇もちこさん
浅井麻さん
/ asaiasa0
twitter superdoccimo
mail [email protected]