ある Digital Ocean ドロップレットから 2 番目のドロップレットに SSH 接続しようとしています。
私の設定は次のとおりです:
セットアップと構成
- ドロップレット 1: MyTest (Ubuntu 16.04 512 MB RAM)
- ドロップレット 2: RemoteHost (Ubuntu 16.04 512 MB RAM)
- ローカル システム (Putty、PuttyGen を使用した Windows 7)
ビデオの指示に基づいてここ、私は PuttyGen を使用して、ローカル システム (Windows 7) で公開キーと秘密キーのペアを生成しました。公開キーは保存しませんでした。秘密キーはローカル システム (Windows 7) に保存しました。公開キーを MyTest ドロップレットに追加しました。これで、Putty を使用して、ビデオに示されているとおりに、パスワードなしでローカル システム (Windows 7) から MyTest に SSH 接続できるようになりました。
問題
ここで、MyTest ドロップレットから RemoteHost ドロップレットに SSH 接続したいと思います。
ステップ1。
RemoteHost ドロップレットを作成し、MyTest と同じ公開キーを添付しました。そのため、MyTest と RemoteHost の両方のドロップレットは同じ公開キーを持ちます。
ステップ2。
ローカル マシン (Winsows 7) から、PuTTy を使用して MyTest ドロップレットに SSH 接続しました。
ステップ3。
次に、(MyTest ドロップレットのコマンド ラインから) 次のようにして RemoteHost ドロップレットに SSH 接続しようとしました。
root@MyTest:~# ssh [email protected]
その後、次のエラーメッセージが表示されます
root@MyTest:~# ssh root@xxx
The authenticity of host 'xxx (xxx)' can't be established.
ECDSA key fingerprint is SHA256:yyy.
Are you sure you want to continue connecting (yes/no)?
質問:
ある Digital Ocean ドロップレットから別の Digital Ocean ドロップレットに SSH 接続することは可能ですか?
答え1
はい、ただし、MyTest に秘密鍵のコピーを置く必要があります。MyTest の SSH クライアントは、PC 上の秘密鍵を読み取ることができません。
そうは言っても、MyTest から RemoteHost に接続するには、別のキー ペアを使用する必要があります。MyTest に設定した秘密キーは、そのシステムにアクセスできる人 (サーバーを共有している人、DO スタッフなど) によってコピーされ、そのキーを使用してアクセスする他のシステムへのアクセスに使用される可能性があるためです。そのため、MyTest で 2 番目のキー ペアを生成し、その公開キーを RemoteHost にコピーします (RemoteHost には、PC ペアと MyTest ペアの 2 つの公開キーがあります)。その後、PC から直接 RemoteHost に接続したり (ローカル秘密キーを使用)、MyTest から RemoteHost に接続したり (MyTest 秘密キーを使用) できます。
答え2
@xenoidの回答はうまくいきました!私は別の公開鍵と秘密鍵のペアを使って接続することにしましたマイテストにリモートホスト。
私がしなければならなかったことは次のとおりです(これらのソースを使用した手動アプローチ -ここステップ4からここ) は @xenoid の提案に従います:
1回目のドロップレット(MyTest)
1.
root@MyTest:~# ssh-keygen -t rsa -N '' -f keyfilename.rsa
root@MyTest:~# cat ~/keyfilename.rsa.pub
最初の行パスワードなしでキーペアを生成する2 行目には PUBLIC キー ファイルの内容が表示されます。
2. PUBLIC キー ファイル内のすべての文字を選択し (マウス カーソルを使用)、Ctrl+を押してCPUBLIC キーをコピーします。
3.
root@MyTest:~# exit
2番目のドロップレット(RemoteHost)
1.
root@RemoteHost:~# chmod 700 ~/.ssh
root@RemoteHost:~# chmod 600 ~/.ssh/authorized_keys
root@RemoteHost:~# nano ~/.ssh/authorized_keys
このファイルには、ローカル マシンから生成され、ドロップレットの作成時に追加された公開キーと秘密キーのペアの公開キーが既に含まれています。
2. 使用ナノエディタ公開キーを貼り付けます。Enterこのファイルで新しい行を開始するには、を押します
3. Ctrl+を押してVプライベートキーを貼り付けます
4. Ctrl+ X, y,を押してEnter同じファイル名で保存して終了します。
5.
root@RemoteHost:~# exit
Ubuntuクライアント(AnsibleFlex)
1.
root@MyTest:~# ssh [email protected] -i ~/keyfilename.rsa
123.456.789.10
パブリックIPアドレスはどこですか?リモートホスト/root
. これにより、ディレクトリのSSHプロンプトが開きます。リモートホスト、 要求に応じ。
@xenoid ありがとう!