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

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

新規登録して質問してみよう
ただいま回答率
85.37%
Linux

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

Q&A

解決済

6回答

734閲覧

SSH接続する際の Permission denied の解消方法

falifa

総合スコア8

Linux

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

0グッド

0クリップ

投稿2024/10/05 05:22

編集2024/10/05 17:37

実現したいこと

Linuxインスタンス①からLinuxインスタンス②へSSH接続したいです。

発生している問題・分からないこと

ターミナル からLinux①へSSH接続後、ssh-keygenで認証用の公開鍵を作成し、②の.ssh/配下にauthorized_keysが配置されていることを確認したのですが、①→②へSSH接続ができません。

エラー内容:Permission denied (publickey,gssapi-keyex,gssapi-with-mic).

該当のソースコード

Linux

1ssh-keygen 2cd .ssh/ 3cat id_rsa.pub >> authorized_keys 4chmod 600 authorized_keys 5 6ssh root@IPアドレス 7The authenticity of host ' IP  ' can't be established. 8ED25519 key fingerprint is SHA256:NNNcY3MxeSRPNAgnRj1p3u5hPbry1IvQ7alaFrdpTwI. 9This key is not known by any other names 10Are you sure you want to continue connecting (yes/no/[fingerprint])? yes 11Warning: Permanently added ' IP ' (ED25519) to the list of known hosts. 12root@IPアドレス: Permission denied (publickey,gssapi-keyex,gssapi-with-mic). 13

試したこと・調べたこと

  • teratailやGoogle等で検索した
  • ソースコードを自分なりに変更した
  • 知人に聞いた
  • その他
上記の詳細・結果

SSH接続するには認証用の公開鍵を作成することが必要で、接続先にauthorized_keysが確認できれば可能であると思ったのですがうまくいきません。

補足

ターミナル上から対象インスタンスへssh-copy-idを試してみましたが2つインスタンスとも以下の内容が出てしまいました。
ssh-copy-id -i /.ssh/id_rsa.pub root@インスタンス①のパブリックIP
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "
/.ssh/id_rsa.pub"
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
root@インスタンス①のパブリックIP: Permission denied (publickey,gssapi-keyex,gssapi-with-mic).

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

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

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

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

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

guest

回答6

0

自己解決

鍵の作成と公開鍵の配置は問題では無かったようです。下記のようにしたら解決しました。
PermitRootLoginの有効化に加え、PasswordAuthentication noに設定変更し、rootユーザにパスワード設定をした結果インスタンス①→インスタンス②へssh接続が可能になりました。
アドバイスをくださった皆様ありがとうございました。

投稿2024/10/05 18:14

falifa

総合スコア8

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

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

otn

2024/10/06 02:52

PasswordAuthentication は、「パスワードでのログインを許可するしないか」の設定で、公開鍵認証には関係ありません。 「rootユーザにパスワード設定をした結果」が効いているのですかね。ググってみると「パスワードが無いとロックされているユーザーであると認識される」という情報がありました。詳細調べてませんが、なるほどですね。 (「パスワードが無い」=「/etc/shadouのパスワード欄が固定文字列」) 普通はrootでsshログインしないのであまり他者事例の情報がみつからないのかと思います。
guest

0

ssh-copy-id コマンドを利用して公開鍵をLinuxインスタンス②側の ~root/.ssh/authorized_keys に追加するとよいかもしれません。(Linuxインスタンス②側の sshd で root でのパスワードによるログインが可能となっていることが前提となります)

$ ssh-keygen $ cd .ssh/ $ ssh-copy-id -i id_rsa.pub root@IPアドレス /usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/home/.../.ssh/id_rsa.pub" /usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed /usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys root@IPアドレス password: Number of key(s) added: 1 Now try logging into the machine, with: "ssh 'root@IPアドレス'" and check to make sure that only the key(s) you wanted were added.

投稿2024/10/05 11:36

melian

総合スコア20574

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

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

falifa

2024/10/05 17:38

こちら試してみたのですがそもそもssh-copy-idがうまくいかない状態でした。PermitRootLoginはyesの状態に変更してみました。
guest

0

SSH接続するには認証用の公開鍵を作成することが必要で、接続先にauthorized_keysが確認できれば可能であると思った

この文だけだと、合ってるのか間違っているのか分かりませんが、繋がらないなら合ってないのでしょうね。

1.クライアント(接続元)で、鍵ペアを作成。以下、デフォルトのid_rsa id_rsa.pubを前提
2.秘密鍵id_rsaは、クライアントの~/.ssh/id_rsaという名前で置く(デフォルトだとそこにあるはず)
3.公開鍵id_rsa.pubは、サーバー(接続先)に何らかの手段持って行って、接続先ユーザーの~/.ssh/authorized_keysに保存。元々このファルがあった場合は、追記。(注:追記時は、中味の確認も兼ねてエディターで編集するのが良い)
4.どちら側もファイルやディレクトリーのオーナーは本人でパーミションは~/.ssh700~/.ssh/id_rsa~/.ssh/authorized_keys600
5.クライアント側でssh ~~でサーバーに接続
6.クライアント側の秘密鍵を何らかの事情で~/.ssh/id_rsaに置けない場合は、ssh -i ファイル ~~で秘密鍵ファイルの指定が必要
7.サーバー側のユーザーがrootの場合は、サーバー側で「rootでssh接続可能」という設定になっているか事前に確認(PermitRootLogin ~

投稿2024/10/05 10:48

otn

総合スコア85762

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

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

falifa

2024/10/05 17:41

> 3.公開鍵id_rsa.pubは、サーバー(接続先)に何らかの手段持って行って、 こちらについてなのですが、当方の認識では「ssh-copy-id」が手段と認識しているのですが認識ずれていますでしょうか。
otn

2024/10/06 01:23

いろんな方法が考えられるので、思いつく限りで、かつ実現可能な、どの方法でも良いです。 現時点で、今回の公開鍵以外の方法(パスワード認証など)でsshログインできるのであれば、それで良いのではないでしょうか。
guest

0

公開鍵を接続先へ転送済みなら、仮にRSA鍵を作成したとして

ssh -i “path/id_rsa” “root@IpAddress” -p Port

で接続可能です(-p Portは22番であれば省略可能)
事前にsshd_configの設定に不足はないか確認しておきましょう
特にrootユーザーへのログインの場合は

PermitRootLogin yes #prohibit-password

となっている必要があります

また念の為に、authorized_keysの内容がRSA鍵であるとして、接続元のid_rsa.pubと一致しているか確認しておきましょう

投稿2024/10/05 07:34

Manabu

総合スコア60

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

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

falifa

2024/10/05 17:47

自端末からインスタンスへの接続はマネコン上からSSHクライアントでコマンドをコピペして接続していました。ですが鍵を利用した場合接続ができないのです。(SGインバウンドルール22は空けています) ssh -i ~/.ssh/id_rsa root@パブリックIP -p 22 root@パブリックIP: Permission denied (publickey,gssapi-keyex,gssapi-with-mic).
guest

0

SSH接続するには認証用の公開鍵を作成することが必要

そんなことはありません。 設定にもよりますが、通常はユーザ名とパスワードでログインできます。
公開鍵を設定するととで、パスワードなしで接続できるようになります。

コマンドを見ると、設定の手順が間違えているのではないかと思います。

text

1ssh-keygen 2cd .ssh/ 3cat id_rsa.pub >> authorized_keys 4chmod 600 authorized_keys

この手順の通りだとすると、キーを作ったサーバそのもの(多分 ①)のauthorized_keysに追加していますが、追加すべきは②の接続するユーザのauthorized_keysファイルです。 scpなどで転送して同様の手順で追加します。

ただ、エラーメッセージ「Permission denied (publickey,gssapi-keyex,gssapi-with-mic)」を見ると、パスワードではログインできないようになっているようにも思えるので、②にキーを転送する方法があるのか不明です。コンソールがあるのであれば、テキストベースで転送することはできるでしょう。

投稿2024/10/05 06:04

TakaiY

総合スコア13687

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

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

0

iオプションなど、何らかのオプションを付けて、鍵ファイルを接続の際に選択しないといけないのではないでしょうか?
https://atmarkit.itmedia.co.jp/ait/spv/1701/26/news015.html

投稿2024/10/05 05:38

utm.

総合スコア267

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.37%

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

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

質問する

関連した質問