
Ubuntu 16.04 AMI を使用して ec2 インスタンスを作成しました。この AMI の sudo ユーザーを次のように作成しました。
sudo adduser myuser
sudo usermod -aG sudo myuser
次に、すでに持っている RSA キーペアを使用して、ユーザーに SSH アクセスを許可しようとしました。新しいユーザー用に .ssh ディレクトリを作成しました。
mkdir ~/.ssh
chmod 700 ~/.ssh
vim ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys
公開鍵をコピーして「authorized_keys」に貼り付けました。次に、ec2 を終了して、次のように接続をテストしました。
cd ~/.ssh
ssh -i "mypem.pem" [email protected]
「アクセスが拒否されました(公開鍵)」というエラーが発生しました
そこで、ユーザーを削除して別のユーザーを作成しました。今回は、Vim ではなく nano を使用して 'authorized_keys' ファイルを作成し、動作しました。
これを経験した人はいますか?
答え1
おそらく間違って貼り付けたのでしょう。
- それは で始まりますか
ssh-rsa
、それとも で始まりますかssh-ed25519
? - 前にスペースがありますか(スペースは不要です)
- 大文字/小文字は保持されますか?
- 行末のコメントの前にスペースはありますか?
vim に何かを貼り付ける前に、 を使用する必要があります:set paste
。これにより、アクティブな自動補完/自動インデント/... マクロがすべてオフになります。
もう 1 つ、 と書いていますが、これは ssh-keys ではなく openssl ファイルの通常の拡張子です。 ssh-pubkey として/ をmykey.pem
使用したのは確かですか?id_rsa.pub
id_ed25519.pub
答え2
このようなことが起こった場合は、ViM で 、 、 を確認することをお勧めします。nanofileencryption
で編集したファイルと vim で編集したファイルの両方を比較します。それらを vim で開き、次の点を確認します。fileformat
bomb
:set bomb?
これはバイト オーダー マークです。通常、Windows 上の notepad.exe を使用して UTF-8 ファイルを編集するときに設定されます。私はよくそれで問題に遭遇しました。
:set ff?
ファイル形式dos
またはunix
.dos の行末は UNIX とは異なります。
:set fenc?
ファイルのエンコーディング: おそらく、あるエディターが UTF-8 ではなく latin1 に変更します。
答え3
myuser は .ssh と keyfile にアクセスできる必要があります。誰が所有しているか確認してください。