1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【AWS / CodeCommit】SSH公開キーのアップロードのエラー「Invalid public key uploaded」解決方法 for Mac(ED25519とRSA)

Last updated at Posted at 2025-06-24

目次

はじめに

環境:Mac(macOS 14.7.2)

IAMユーザーを新規作成し、SSH公開キーをアップロードするときにエラーが発生しました。
エラー発生の流れと解決策について記載します。

はじめにIAMユーザー作成の流れを記載するため、不要な方は飛ばしてください。
それからED25519とRSAの説明は記載しておりません。

1. IAMユーザーを作成

自分のアカウントがなかったので作成しました。
ユーザー作成できる権限が必要です。

作成の流れ

Identity and Access Management (IAM)
 ↓↓
サイドナビの「アクセス管理」 
 ↓↓
ユーザー
 ↓↓
右上の「ユーザーの作成」ボタンをクリック

user-create01.png

 ↓↓

ユーザー名を入力

user-create03.png

 ↓↓

オプションやグループの選択

user-create02.png

 ↓↓

内容を確認して「ユーザーの作成」をクリック

user-create04.png

作成したアカウントを確認

ユーザー名を検索し、作成できていることを確認。
user-list01.png

2. 公開鍵と秘密鍵を作成

ターミナルを開き、以下を実行。

myname@myname1 ~ % ssh-keygen

実行結果

myname@myname1 ~ % ssh-keygen
Generating public/private ed25519 key pair.

Enter file in which to save the key (/Users/myname/.ssh/id_ed25519): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 

Your identification has been saved in /Users/myname/.ssh/id_ed25519
Your public key has been saved in /Users/myname/.ssh/id_ed25519.pub
The key fingerprint is:
SHA256:hogefugapiyo0123456/test myname@myname1
The key's randomart image is:
+--[ED25519 256]--+
|.o+o             |
|o+o              |
|.o.o    .        |
| oo .  o +       |
|..o  .. S .      |
| +o....o         |
|...oo.= +   o    |
|  ..o+ B *.E +   |
|  o==+B++ oo+..  |
+----[SHA256]-----+

myname@myname1 ~ % cat /Users/myname/.ssh/id_ed25519.pub

ssh-ed25519 AAAAC3NzaHOGEHOGETESTdE+zKsNmoz5QUCb+S1 myname@myname1

 ↓↓

作成されたファイルを確認

.sshディレクトリに
秘密鍵:id_ed25519
公開鍵:id_ed25519.pub
が作られる。

スクリーンショット 2025-06-24 14.45.11.png
(「command」+「shift」+「.」で.sshディレクトリなどの隠しファイルを表示できます)

 ↓↓

公開鍵ファイルの中身を確認

myname@myname1 ~ % cat /Users/myname/.ssh/id_ed25519.pub

ssh-ed25519 AAAAC3NzaHOGEHOGETESTdE+zKsNmoz5QUCb+S1 myname@myname1

「ssh-ed25519 AAAAC3NzaHOGEHOGETESTdE+zKsNmoz5QUCb+S1 myname@myname1」をAWS側のIAMユーザーのSSHキーに設定するためにコピーします。

3. AWS CodeCommitのSSH公開キーをアップロード

Identity and Access Management (IAM)
 ↓↓
サイドナビの「アクセス管理」 
 ↓↓
ユーザー
 ↓↓
「セキュリティ認証情報」タブ

ssh01.png

 ↓↓

「AWS CodeCommit の SSH 公開キー」 というエリアがあります。

ssh02.png

 ↓↓

「SSH公開キーのアップロード」をクリック。
モーダルが開くので、ここに コピーしたSSH公開キーをそのまま貼り付ける。

ssh03.png

 ↓↓

SSH公開キーのアップロードでエラー

「エラーが発生しました。Invalid public key uploaded」

ssh04.png

4. 解決方法

ここの「公開鍵と秘密鍵を作成」では、ED25519という形式を使って鍵が作られていました。
ssh-keygenを実行後、「Generating public/private ed25519 key pair.」というメッセージが表示されています。

調べたところ、現状AWS CodeCommitではED25519 のキーペアが使えないようです。

そのため、RSAを指定して鍵を作成する方法に変更しました。

RSA暗号で公開鍵と秘密鍵を作成

myname@myname1 ~ % ssh-keygen -t rsa -b 2048 -f ~/.ssh

実行結果

myname@myname1 ~ % ssh-keygen -t rsa -b 2048 -f ~/.ssh

Generating public/private rsa key pair.
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 

Your identification has been saved in /Users/myname/.ssh
Your public key has been saved in /Users/myname/.ssh/rsa_key.pub
The key fingerprint is:
SHA256:epm6Vtesthogehoge000001111/testhoge myname@myname1
The key's randomart image is:
+---[RSA 2048]----+
|             .o..|
|           . E.oo|
|            o ==+|
|             +ooB|
|        S.    oOX|
|       . o+   +=#|
|      . +o ..=.==|
|       o.....o+..|
|      oo  oo.  . |
+----[SHA256]-----+

 ↓↓

公開鍵をコピー

myname@myname1 ~ % cat /Users/myname/.ssh/rsa_key.pub 

ssh-rsa AAAAB3N〜長いため省略〜oejjsX3hogeROrUeITEST3aT1 myname@myname1

「ssh-rsa AAAAB3N〜長いため省略〜oejjsX3hogeROrUeITEST3aT1 myname@myname1」をコピー。

 ↓↓

前述の流れに沿って、SSH公開キーをアップロードする。

ssh05.png

 ↓↓

アップロードできました。
AWS CodeCommitのSSH公開キーに「SSHキーID」が表示されるようになります。

ssh06.png

まとめ

  • CodeCommitにSSH公開キーをアップロードする際、ED25519 ではなくRSAのキーペアを使用すること。
  • 「2021年内にはED25519が使用できるようになる可能性がある」と記載されたブログがありましたが、2025年6月24日時点ではそうなっていないようです。
  • AWSのサービスやWindows/Macの違いなどによって、ED25519のサポートの有無が異なるようです。今後も変わる可能性があるかもしれません。

参考サイト

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?