ホストユーザーがリモートマシンにsshキーを持たない場合、別のユーザーとしてボックスにsshする方法


12

私のMacマシンのユーザー名はJohnだとしましょう。

slicehostアカウントが完全に構成されています。このスライスには、Johnのsshキーがないことに注意してください。

次に、このボックスをユーザー展開用のsshアクセス用に構成します。

私のMacマシンには、ユーザーがデプロイするための秘密鍵があります。Slicehostにはユーザー展開用の公開キーがあります。

繰り返しますが、ユーザーjohnにはslicehostには何もありません。

ユーザーがデプロイするときにsliceghostボックスにsshしたい場合、Johnの公開鍵もそこに置く必要がありますか?


完了のために、後で参照できるようにこのリンクを追加します。gist.github.com/df7d13a0556cd4a1bc13
user35340

回答:


21

並べ替え。

リモートサーバー上にあるアカウントの公開キーを配置する必要があります。それがJohnキーの場合、そのサーバーの適切なアカウントを使用して、接続するサーバーにそのキーを配置します。

あなたのケースでは、デプロイとして接続しています。したがって、接続すると、次のように入力します。

ssh deploy@slicehost

Johnのキーがアカウントdeployの.ssh / authorized_keysファイルにある場合、直接アクセスできます。


1
それは他の誰かとしてログインするという全体の目的を無効にするものではありません。そのため、この場合、Johnとdeployの両方の公開鍵をauthorized_keysファイルに配置する必要があるようです。
user35340

3
いいえ。これはsftpバックアップで常に行われます。バックアップが必要なシステムの公開秘密キーペアを生成します。そのアカウント/マシンの公開鍵をバックアップサーバー上のユーザー、たとえばバックアップユーザーの下に置きます。次に、クライアントマシンからバックアップするために、backup-user @ backup_machineにsftpします。クライアントマシンのユーザーは関係ありません。そのマシンの公開キーが、バックアップユーザーアカウントの.sshディレクトリの下にあるバックアップサーバーのauthorized_keysファイルにあることが重要です。魅力のように機能します。
ジム

1

いいえ。ユーザー名は公開鍵と秘密鍵のペアとは関係ありません。どちらのキーのどこにも記録されません。ユーザーの.ssh/authorized_keysファイルに公開キーを配置する限り、秘密キーを使用してそのユーザーとしてログインできます。


私が正しく理解していることを確認しようとしています。ジョンがデプロイ用の秘密鍵を持ち、デプロイ用の公開鍵がauthorized_keysファイルにある限り、ジョンはデプロイとしてログインできるはずです。
user35340

私にはうまくいかないようです- .ssh.authorized_keysあるアカウントから別のアカウントにコピーしましたが、まだログインできません
エドガーH

1

ユーザー「deploy」としてログインする両方を指定する必要があります。また、デプロイするIDファイルも指定する必要があります。

ssh -i ~/.ssh/id_deploy.rsa deploy@slicehost

id_deploy.rsaは、slicehostアカウントにアップロードした認証キーに対応する秘密キーファイルです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.