私はAmazon EC2の世界から来た新しいGoogle Cloudトライアルユーザーであり、sshを介して新しいGoogle Compute Engine VMインスタンスにログインする方法について完全に困惑しています。
Google Cloud Webコンソールを使用して新しいインスタンスを作成しました(重要な場合はCentOS 6.xイメージから)。作成フォームに空白があり、既存のsshキーを貼り付けることができましたが、これが最初のインスタンスであったため、まだありませんでした。 Amazon EC2のように、キー作成プロセスを完了すると思いました。しませんでした。インスタンスを作成したようですが、そのためのsshキーを取得する方法がわかりません。インスタンスWebページには「ssh」というボタンがあり、sshセッションをシミュレートするポップアップWebブラウザーウィンドウから簡単にログインできます。ただし、ルートではなく、ユーザーレベルのアカウントにしかアクセスできません。ポップアップにはユーザーを変更するメニュー項目があり、それを「ルート」に変更した後、接続エラーを生成するだけで、インスタンスにまったくログインできなくなりました。
検索しましたが、Google Computeインスタンスのこの側面を説明する簡単なドキュメントは見つかりません。 Webコンソールを検索しましたが、sshキーの作成/選択メカニズム、またはインスタンスのキーを作成またはダウンロードする方法が見つかりません。
自分のSSHキーを最後に手動で作成し、作成中にフォームに貼り付ける必要がありますか、それとも他に明らかなステップがありませんか?
デフォルトでは、新しいGoogle Compute Engine(GCE)VMインスタンスにはSSHキーが事前に割り当てられていないため、存在しないため「取得」できません。それらを作成するか、gcloud
(以下を参照)のようなツールを使用します。これにより、SSHキーがまだない場合に作成するように求められます。
新しく作成したGCE VMに接続するためのいくつかのオプションがあります。
1つのオプションは、インスタンスのリスト内のインスタンスの隣にある開発者コンソールGUIの「SSH」ボタンを使用して接続することです。これにより、ブラウザウィンドウとインスタンスへのターミナルセッションが開きます。
コマンドラインでSSHクライアント経由で接続する場合は、gcloud
ツール( Google Cloud SDK の一部)を使用できます。
gcloud compute ssh example-instance
gcloud compute ssh
ヘルプページで、いくつかの例とともに、フラグとオプションの完全なセットを確認できます。
SSHキーをまだお持ちでない場合は、作成してからインスタンスに接続するよう求められます。すでにキーがある場合は、既存のSSHキーを使用して、インスタンスに転送できます。
デフォルトでは、gcloud
はキーが次のパスにあることを想定しています。
$HOME/.ssh/google_compute_engine
–秘密鍵$HOME/.ssh/google_compute_engine.pub
–公開鍵gcloud
を使用して別の場所からキーを再利用する場合は、 --ssh-key-file
フラグを使用して、シンボリックリンクを作成するか、gcloud
を指すことを検討してください。
注:gcloud
をまったく使用しない場合は、-の説明に従って、手動でインスタンスのメタデータにSSHキーを追加する必要があります- インスタンスレベルでのsshキーのセットアップ これは、gcloud
を介して、または Google Cloudコンソール を介して手動で実行できます。
また、ssh-keygen
を使用して独自のキーを作成することもできます。これは、gcloud
も裏で使用します。インスタンスに接続できます ssh
を直接使用gcloud
の代わりに、ただし追加のパラメーターを指定する必要があります。
ssh -i KEY_FILE -o UserKnownHostsFile=/dev/null \
-o CheckHostIP=no -o StrictHostKeyChecking=no \
USER@IP_ADDRESS
次のパラメータが必要です。
KEY_FILE
– [必須]コンピューター上のキーが保存されているファイル。例:~/.ssh/google_compute_engine
。
USER
– [必須]そのインスタンスにログインするためのユーザー名。通常、これはgcloud compute
を実行しているローカルユーザーのユーザー名です。
IP_ADDRESS
– [必須]インスタンスの外部IPアドレス。
詳細については、 SSH docs を参照してください。
Sshを使用してインスタンスにログインするには-[Linux Ubuntu 16.04で実行されるすべてのステップ]
SSHキーを作成するssh-keygen -t rsa -f ~/.ssh/gcloud_instance1 -C varunon9
ここgcloud_instance1
はキーファイルの名前であり、varunon9
はユーザー名です
公開鍵ファイルの内容を印刷するcd ~/.ssh && cat gcloud_instance1.pub
公開鍵ファイル(cd ~/.ssh && cat gcloud_instance1.pub
の出力)の内容をssh-keysテキスト領域に貼り付けます
保存をクリックします
ターミナルから、ssh ssh -i gcloud_instance1 [email protected]
を介してインスタンスにログインできます。ここで、gcloud_instance1
は(.sshディレクトリ内の)プライベートキーファイルであり、varunon9
はユーザー名で、35.200.201.56
はインスタンス。
複数のインスタンスに対して1組のsshキーを作成して使用する最も簡単な方法:
ステップ1:https://PuTTY.org/ からPuTTYとputtyGenをインストールします
ステップ2:ローカルデスクトップ/ラップトップでターミナルを開きます(Windows 10以降ではWindows Linux Subsystemを使用します)
タイプ:ssh-keygen
プロンプトでファイル名の名前を入力します。 google_key
google_keyとgoogle_key.pubの2つのファイルが作成されます
ステップ3:google_key.pubのコンテンツ全体をコピーします
改行文字がないことに注意してください。すべて1行である必要があります。
ステップ4:任意のVMインスタンスを作成する前に、 Compute Engine-> Metadata
「SSHキー」タブを選択し、「Add SSH」キーをクリックします
Google_key.pubの内容を貼り付けます。内容を適切に貼り付けると、左側のラベルにusernameが表示されます。次に、保存をクリックします。
ステップ5:ここで、お気に入りのVM google computeの下のインスタンスを作成します。
外部IPをコピーvm_instance_external_ip
Linuxターミナルに戻って入力します
ssh -i google_key.pubusername@vm_instance_external_ip
「yes」と入力します
そして今、あなたは行ってもいいはずです。
ビデオの説明が必要な場合は、 こちらを参照
コンソールを開いたら、sshタブでgcloudコマンドを表示してみてください。 gcloudクライアントは、次のコマンドで開きます。
gcloud compute --project ssh --zone
そして初めての場合は、sshキーを作成します。この場所でファイルをダウンロードするだけです〜/ .ssh/google_compute_engine右上のgcloud client download fileオプションを使用します。キーファイルを入手したら、発行するだけです
ssh -i username @ external_IP