web-dev-qa-db-ja.com

エラー:(gcloud.compute.ssh)[/ usr / bin / ssh]はリターンコード[255]で終了しました

表示されたエラー(255)で数秒間アイドル状態になった後、コンピュートエンジンインスタンスから追い出され続けました。ログインには「gcloud compute ssh」を使用しました。デフォルトのファイアウォール設定を使用していますが、sshにはこれで十分だと思います。しかし、何かが足りない場合は、このエラーの修正方法を示して提案してください。基本的に、この時点で何回もsshしなければならない効率的な作業を行うことはできません。

前もって感謝します。

あー

19
Anh Nguyen

設定に変更があった場合、gcloudはssh接続を拒否します。デフォルトのゾーンまたはリージョンを変更した後、または別のインスタンスを作成した後。次に、メタデータのsshキーを更新する必要があります。

Sudo gcloud compute config-ssh

Sshキーエントリが保存されている設定ファイルのさまざまなエントリ〜/ .ssh/configについてこれが苦情を言う場合は、このファイルを削除し、上記のコマンドを再度実行します。

28
Agile Bean

255は、ssh障害の対話型ssh終了コードです。そうでない場合、対話型sshは、sshセッションで実行された最後のコマンドの終了コードで終了します。

次回sshから終了コード255を取得したときは、-ssh-flag = "-vvv"(さらにv ==より多くのデバッグ出力)で実行してみて、接続の問題の追跡に役立つかどうかを確認します。

13
Glenn Fowler

ITは、デフォルトのファイアウォールがインスタンスへのすべての接続を許可すると述べた私の間違いでした。反対は真実であることが判明しました。 インスタンスへの接続を許可するには、適切なファイアウォールルールを設定する必要があります を参照してください

あー

3
Anh Nguyen

このページに立ち寄る方へ。これは私が問題を解決するのに役立ちました。以下を試してください。

  • Googleにアクセスして、サーバーのSSHキーを削除します
  • Gcloudコマンドを再度実行します

これは、Google Cloud Platform自体の機能/問題のようです。引き続き確認します。

2
MrKumar

これは、それを処理するためのドキュメントがほとんどない現実的な問題です。

GCPコンソール経由で提供されるgcloud sdk sshスニペットを使用してインスタンスを作成した後しばらくすると、問題のコンピューティングインスタンスのGCPコンソール経由でブラウザ経由でのみインスタンスでsshに接続できるようになり、255でエラーが継続的に発生しました。言うまでもなく、これは多くの異なるインスタンスで、初期セットアップと展開後にデフォルトのアカウント権限に触れることなく起こったことがありますが、これは非常にイライラします。理由もなく、動作しなくなります...動作しますが、動作しません...

私のために働いた唯一のことは、gcloud sdkを介して接続する新しいユーザーを作成することでした!次のスニペットを使用して、ローカルでWindows/PowerShellまたはLinuxにします。

gcloud compute ssh newuser-name @ instance-name

ここにあるすべてのGCPドキュメント: https://cloud.google.com/compute/docs/troubleshooting/troubleshooting-ssh

ドキュメント内の提案ごとに他のすべてが渡されました-アクセスでポート22が開いていることは、それを修正する方法に関するドキュメントをまったく提供していないデフォルトユーザーauthorization_keysの問題でなければならないことを意味します-少なくとも修正(作成または削除ではない)で見つけることができません)

アカウントを更新しようとしましたが、インスタンスからユーザーと資格情報を削除しようとしましたが、何も機能していないようです。使用して:

gcloud compute --project "project-name" ssh --zone "us-east4-a" "instance-name"

うまくいきません...-「gcloud compute config-ssh --force-key-file-overwrite」も試しました.

ただし、新しいユーザーの作成は毎回機能し、ユーザーが作成されると、gcloud sdkを介してそのユーザーを使用し続けることができます

これは回避策であり、このようなことの回避策は嫌いですが、少なくともデフォルトのアカウントのアクセス許可をリセットする方法を見つけることができるまでは私の健全性のために動作するので、誰かが何かアイデアを持っているか、感謝する以上です!

1
sidgrafix

まったく同じ症状がありました-私の場合、理由は次のように見えました。 rootユーザー+ sshキーを使用していましたが、rootログインはデフォルトで/ etc/ssh/sshd_config(PermitRootLoginプロパティ)で無効になっています。

0
Jean Clappier

デフォルトのネットワークが編集された場合、またはデフォルトのネットワークを使用していない場合、 firewall-ruleを追加して明示的にsshアクセスを有効にする

$ gcloud compute firewall-rules create --network=YOUR_NETWORK \
default-allow-ssh --allow tcp:22

その後、「gcloud compute ssh」コマンドを再試行します。

0
Samuel N

最終的に、インスタンスを削除して、同じディスクで新しいインスタンスを作成する必要がありました。詳細については、 https://cloud.google.com/compute/docs/troubleshooting/troubleshooting-ssh#use_your_disk_on_a_new_instance をご覧ください。

0
Thomas Ahle

インスタンスにsshしようとしたときに、同じエラーコードが表示されていました。

この回答に記載されているように、sshキーを再作成してみました。しかし、それは助けにはなりませんでした。

動作するのは:

  • VMインスタンスをCompute Engineを介してブラウザのGoogleクラウドコンソール内から開始します-> VM Instances and then ..____。]
    • チェックボックスをクリックして開始ボタンをクリックしてインスタンスを選択する

start by selecting instance

または

  • インスタンス名をクリックすると、インスタンスページが表示され、開始ボタンをクリックします。

start instance on instance page

インスタンスが正常に起動したら、ターミナルからインスタンスにsshできます。

これを2回試して確認しました。

0