0
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?

More than 3 years have passed since last update.

テストサーバーで起きたPermission denied (publickey)の対処

Posted at

そもそもsshとは

  • SSH(Secure SHell)による暗号化通信を利用してホストに接続します。これにより、実行コマンド及び、ログイン時のユーザ名やパスワードが暗号化されてホストへ送られるようになります。 (IT専科)
    http://www.itsenka.com/contents/development/unix-linux/ssh.html

テスト環境をいじる必要があり、sshを利用する機会がありました。ただ、ガッツリ、permission deniedで引っかかってしまったので、その備忘録です。多段sshした結果、agent forwardができてないことが原因でした。

Permission deniedになるまでの経緯

テスト環境に入るために、
本番サーバーにssh -> テストサーバーにssh -> コマンド実行
という流れが必要でした。
そのため、

$ ssh hoge@000.000.0.000 
$ password入力
// 本番サーバーに接続
$ ssh -p ポート番号 hoge@000.000.0.000 -A
$ password入力
// テストサーバーに接続
// コマンド実行

という順序です。実は、この段階で既に間違っていました。
というのも、1行目に

$ ssh hoge@000.000.0.000 

と、本番サーバーに対して -A オプションを付けておりませんでした。ここからは、どうやって-Aオプションが無いことに気づくかという話になります。

ローカルと本番での差異

今回の分かりづらい点として、
ローカルだと

$ ssh -T hogehoge.jp
Hi ! You've successfully authenticated, but Backlog does not provide shell access.

と表記されるのに対し
本番サーバー -> テストサーバーにアクセスした際、

$ ssh -T hogehoge.jp
Permission denied (publickey).

となってしまうことです。ローカルでは通っているのに、本番で通らないのはなぜ?となってしまっています。
更に言えば、本番サーバーをいじる必要が今回なかった為、テストサーバーにだけ注意がいってしまうのです。
多段sshをする際には、十分気をつけていきたいところです。

また、~/.ssh/configの記述も

~/.ssh/config
Host @hoge.jp
  User hoge
  IdentityFile ~/.ssh/id_rsa_hogehoge
  HostName hoge.jp
  StrictHostKeyChecking no

と、別段気に留める部分もない為、時間がかかってしまいました。

テストサーバーでdeniedなら、本番サーバーを疑う

色々と試行錯誤していたところ

$ ssh hoge@000.000.0.000 
$ password入力
// 本番サーバーに接続
$ ssh -T hogehoge.jp
Permission denied (publickey).

と、本番サーバーの時点で Permission deniedになっていたことが判明。
「あぁ・・」と納得して、

$ ssh hoge@000.000.0.000 

の部分を

$ ssh hoge@000.000.0.000 -A

とオプションを付けることで、解決できました。

所感

普段、クライアントサイドをいじっていて、中々サーバー側を触る機会が少ないので、今回四苦八苦ながら良い経験でした。多段構成でsshを渡すときには、オプションを付けることを忘れないようにしたい。

参考

ssh-agentの基本

0
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
0
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?