web-dev-qa-db-ja.com

google CloudShellが私のvmインスタンスと同じサブネットIPアドレスを持っていないのはなぜですか? sshはできませんが、シリアルポートログインを取得できます:プロンプト

仮想マシンインスタンスは稼働中であり、シリアルポートログインを取得できます:プロンプトが表示されますが、ssh経由で接続できません。この振る舞いに対するグーグルの推論は何でしょうか?

VMインスタンスには、設計上、外部IPアドレスがありません。

私のグーグルクラウドシェルインスタンスには、私のVMインスタンスが持っている10.240.0.0/16IPアドレスがないので、クラウドシェル経由でSSHできない理由だと思います。インスタンスにインターネットが必要なのはなぜですかウェブブラウザベースのクラウドシェル内からのアクセス?
ERROR: (gcloud.beta.compute.ssh) Instance [instance-centos7] in zone [us-zone-somewhere] does not have an external IP address, so you cannot SSH into it. To add an external IP address to the in stance, use [gcloud compute instances add-access-config].

正しいIPアドレスで再構築されることを期待して、CloudShellインスタンスを再起動しました。

プロジェクト全体のsshキーはブロックされません。

Webブラウザーでは、すべてのSSHオプションが無効になり、グレー表示されます。

シリアルポートの出力を調整して、停止と開始を確認できますが、パスワードを設定しなかったため、シリアルポートと対話できません。

何年にもわたって、パブリックIPアドレスを持たない仮想インスタンスがいくつかありましたが、インターネットからのアクセスを許可する前に、マシンを保護するために正常に接続できました。

10.240.0.0/16 ipサブネットに基づくと、 レガシーネットワーク があるようです。

インターネットに直接アクセスできないが、LXCコンテナがパブリックIPを取得する仮想マシンホストベースマシンが必要でした。

1
rjt

Cloud Shellは、次のようにのみインタラクティブに使用できる限定されたシェルを提供します ドキュメント

Google Cloud Shell SSH接続を使用すると、ユーザーはGoogle Cloud PlatformConsole内からGoogleComputeEngine仮想マシンに接続できます。 Compute Engine VMインスタンスから作成されたSSH接続は、別のVPCネットワーク内から作成され、正しく設定されていないと接続をブロックする可能性があるファイアウォールの背後にある可能性があるため、異なります。

Google Compute Engineインスタンスは、外部IPアドレスの有無にかかわらず作成できます。外部IPアドレスなしでインスタンスを作成すると、インスタンスに外部から直接アクセスできないため、高レベルのセキュリティが提供されます。パブリックからインスタンスの内部IPアドレスに接続することはできますが、インスタンスの内部IPアドレスにアクセスできる他の方法を介してのみ接続できます。これらの方法には、次のように「内部IPアドレスにアクセスできるVPN接続を介した接続」または「要塞ホスト」インスタンスを介した接続が含まれます ドキュメント

VMインスタンスを作成するときに、[プロジェクト全体のSSHキーをブロックする]オプションが有効になっていないことを確認してください。有効にしないと、 ドキュメント に従ってインスタンスがプロジェクト全体のSSHキーを無視します。 ==

1
JMD