質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
公開鍵認証

公開鍵認証とは、公開鍵と秘密鍵の2つの鍵の組を利用する、SSHで利用される認証方式です。

FTP

FTP(File Transfer Protocol)は、ネットワークでのファイル転送を行うための通信プロトコルの1つである。

SSH

SSH(Secure Shell)は、セキュアチャネルを通してデータを交換するためのネットワークプロトコルです。リモートサーバーへのコマンド実行やファイル転送を行う時に一般的に使用されます。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Amazon EC2

Amazon EC2は“Amazon Elastic Compute Cloud”の略称です。Amazon Web Services(AWS)の一部であり、仮想化されたWebサーバーのコンピュータリソースをレンタルできるサービスです。

Q&A

解決済

4回答

4968閲覧

ssh接続でPermission denied (publickey).がでてec2に接続できない。

donut4

総合スコア148

公開鍵認証

公開鍵認証とは、公開鍵と秘密鍵の2つの鍵の組を利用する、SSHで利用される認証方式です。

FTP

FTP(File Transfer Protocol)は、ネットワークでのファイル転送を行うための通信プロトコルの1つである。

SSH

SSH(Secure Shell)は、セキュアチャネルを通してデータを交換するためのネットワークプロトコルです。リモートサーバーへのコマンド実行やファイル転送を行う時に一般的に使用されます。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Amazon EC2

Amazon EC2は“Amazon Elastic Compute Cloud”の略称です。Amazon Web Services(AWS)の一部であり、仮想化されたWebサーバーのコンピュータリソースをレンタルできるサービスです。

0グッド

1クリップ

投稿2020/01/24 10:36

編集2020/01/26 10:40

前の質問の続きです

ec2ユーザーをuseraddで新たにA_userというユーザーを追加し、鍵ファイルを作成してFTPクライアントソフトでA_userにリモートログインをしたいため環境を整えようと試みているのですが、sshコマンドを入力したら

入力したsshコマンド

ssh -i ~/.ssh/id_rsa.ppk A_user@ec2-XX-XXX-XXX-XXX.ap-northeast-1.compute.amazonaws.com

と打ったら下記エラーが

Load key "/Users/NAME/.ssh/id_rsa.ppk": invalid format A_user@ec2-XX-XXX-XXX-XXX.ap-northeast-1.compute.amazonaws.com: Permission denied (publickey).

ec2側のログファイルには(/var/log/secure)

Connection closed by XXX.XXX.XX.XXX port 60170 [preauth]

と出力されました。

調べても、/etc/shadowやhosts.allowやhosts.denyやら解決内容が色々出てきて
頼りの情報が定まらなくなりました。

解決策など知っている方がいましたら教えていただいたら幸いです。
お手数ですがよろしくおねがいいたします。

追記:
OSはMac、
ターミナルソフトはiTermです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答4

0

作成した秘密鍵と配置した公開鍵の作成プロセスが形式が異なってました。

opensslではなく、ssh-keygen -t rsa -b 2048 {-f 鍵のパス}
コマンドで秘密鍵を作っていたのが問題でした。

ローカルで
openssl genrsa 1024 > XXXXXX.pem で秘密鍵を作成
chmod 400 XXXXXX.pem でパーミッションを変更
ssh-keygen -y -f XXXXXX.pem で公開鍵の文字列を作成

ec2上で
mkdir .ssh
chmod 700 .ssh
touch .ssh/authorized_keys
chmod 600 .ssh/authorized_keys

authorized_keysに公開鍵の文字列を貼り付け

再度SSL接続を試みたら以下メッセージに変わったので本質問は閉じさせていただきたいと思います。
Connection to ec2-XX-XXX-XXX-XXX.ap-northeast-1.compute.amazonaws.com closed by remote host.
Connection to ec2-XX-XXX-XXX-XXX.ap-northeast-1.compute.amazonaws.com closed.

投稿2020/01/27 07:15

donut4

総合スコア148

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

このあたり
を参考に見直してみてはいかがでしょうか

投稿2020/01/27 04:27

nanami12

総合スコア1015

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ベストアンサー

使っているOSもターミナルソフトも不明なので勘にしかなりませんが(この辺りは質問に追記してください)

ログを見る限り、.pkk形式の秘密鍵でログインしようとしているように見えます。

ターミナルソフトによって使える形式は異なるので、
putty openssh 変換
辺りで調べて変換して試すか、
ターミナルまで指定しているサイトを参考にして、最初から試してみてください。
(前回の質問で出したAWS公式の場合、windowsならteratermでは使えるがputtyでは使えない形式の鍵が出来るはずです)

投稿2020/01/24 12:39

tanat

総合スコア18713

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

donut4

2020/01/26 10:39

回答ありがとうございます。 OSはMac、 ターミナルソフトはiTermです。
tanat

2020/01/26 15:29

途中でputty形式で鍵を作っちゃったのであれば(ppkが正しい拡張子なのであれば) https://qiita.com/ryok/items/be260e6df4ecfb5d5f1d 等を参考にして鍵を変換してみて下さい。 よく分からなければ、ユーザーを作って鍵をAmazonLinux上で作り直すところからチュートリアルに添ってやり直すのが早いと思います
donut4

2020/01/27 02:51

ありがとうございます。参考にしてみます。 そもそもなんですが、このppkもFilezillaにid_rsaを使用したときに「FileZilla はファイル '/Users/id_rsa' の形式をサポートしていません。FileZilla がサポートしている形式に変換しますか?」のときに生成されたものなんですけど、このppkファイルは合っていると思いますか?
tanat

2020/01/27 03:34

FileZillaはとりあえず今は関係無いので置いてきましょう。 sshでログイン出来るようになってからでないと正しいかどうかの判定は出来ません。
donut4

2020/01/27 04:22

先ほど教えていただいた、サイトでpkkからpemに変換に変換しました。(puttyがインストールされてませんでした。) 先ほどの「Permission denied (publickey).」は出なくなりましたが、今度は Connection to ec2-XX-XXX-XXX-XXX.ap-northeast-1.compute.amazonaws.com closed by remote host. Connection to ec2-XX-XXX-XXX-XXX.ap-northeast-1.compute.amazonaws.com closed. が出るようになりました。 エラーメッセージで調べてみてもあまり検索結果に載ってなかったのですが、 何か心当たりありますでしょうか?
tanat

2020/01/27 04:29

/var/log/secureも都度都度確認してみてください。 ただ、手順以外のこともされているようですし、どこまでが正しい状態か不明です エラー自体は何らかの理由でサーバ側から接続を切られた 以上のことはわかりません。 回答の繰り返しになりますが、ターミナルまで指定しているサイトを参考にして、 完全に同じ手順で最初から試してみてください。 (具体的に実施した全ての手順とログ(クライアント側とサーバログ)が常にセットで無いと判断が出来ません。検証用に新しいインスタンスを立てるのが確実です。)
donut4

2020/01/27 07:14

ありがとうございます。 鍵作成のプロセスが間違っていました。 Permission denied (publickey). はでなくなりましたので本質問は閉じさせていただきたいと思います。 長々とありがとうございました。
guest

0

そのメッセージは接続鍵が違ってる場合に出ます
そこらへん見直してみては。

投稿2020/01/24 10:40

y_waiwai

総合スコア87774

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問