Compute EngineでDebianをいじっていて、サーバーにSFTPで接続する方法を考えていました。私はそれに関するドキュメントを見つけることができず、誰かが私を正しい方向に向けることができることを望んでいました。
ありがとう!
これが不可能な場合、SCPを介して静的サイトを管理する最良の方法はありますか?
インスタンスがフェッチされなかった理由と権限が不十分なものがわからなかったため、gcloud compute copy-filesをあきらめ、gcloudインスタンスにsftpする方法を調べ始めました。
これが私がこれをfilezillaで動作させる方法です
最初にgcloudsdkをダウンロードして実行しました: https://cloud.google.com/compute/docs/gcloud-compute/#install
ターミナルからインスタンスに最初に接続しようとすると、sshキーを作成するように求められました。私はMacを使用しているため、キーは.ssh /フォルダーの下の/ Users //フォルダーにセットアップされました。
.ssh /フォルダーからgoogle_compute_engine秘密鍵を取得し、それをfilezilla>設定> sftpにインポートしました
ホストは私のgcloudvmインスタンスのIPアドレスであり、ユーザーはssh経由でインスタンスに接続した後のユーザー名に関係ありません。プロンプト:[@] $を確認してください。キーは、認証方法である必要があります。リモートディレクトリは/ home //と同じで、サーバータイプはunixです(GoogleCloudにcentosvmがありました)
ファイルがコンピューターからインスタンスのディレクトリにアップロードされると、それらのファイルをgcloudvmインスタンス内に配置する必要がある場所にファイルを移動できました。
私は再び幸せなキャンピングカーでした。
大まかに言うと、次の手順があります。
$ gcloud init
)$ gcloud compute ssh
)この質問がこの前にここで尋ねられたと仮定すると ドキュメント Googleから入手可能になりました。
また、私はこれを記録しました、それは役に立つかもしれません:
https://www.youtube.com/watch?v=9ssfE6ODpak
また、参考までに..転送する必要のあるファイルのサイズがかなり小さい場合は、SFTPクライアントは必要ないかもしれません。ここに表示されているように、コンソールから直接転送します https://youtu.be/HEdXEEYOynE
グーグルコンピュータエンジンはすでにデフォルトでSFTPサービスを持っているようです。以下は、サービスに接続するためのSFTPクライアントとしてWinSCPを使用する優れたステップバイステップの説明です。それは私にとって最初の試みで完璧に機能します。
http://winscp.net/eng/docs/guide_google_compute_engine
他のFTPクライアントソフトウェアを使用しても同じ原則が適用されます。希望は誰かの時間と労力を節約するでしょう。
gcloud compute scp
を使用してファイルをアップロードおよびダウンロードできます。たとえば、次の方法でアップロードします。
gcloud compute scp \
~/local-dir/file-1 \
my-instance:~/remote-destination \
--zone us-central1-a
およびダウンロード:
gcloud compute scp \
my-instance:~/file-1 \
my-instance:~/file-2 \
~/local-dir \
--zone us-central1-a
gcloud
ツールは Google Cloud SDK に含まれており、標準のGoogle Compute Engine VMイメージにプリインストールされています。
インスタンスのIPアドレスを指定すると、ssh、scp、sftpがすべて機能するはずです。静的IPアドレスがある場合は、DNSを使用できます。または、gcutil listinstances
またはコンソールからIPアドレスを使用できます。
インスタンスのIPアドレスがわかったら、ssh秘密鍵も必要になります。これは通常~/.ssh/google_compute_engine
にあります。次に、次のようにsftp
を介して接続できます。
sftp -o IdentityFile ~/.ssh/google_compute_engine user@Host
MacまたはLinuxOSでは、「gcloud compute config-ssh:コマンド」を使用します。これにより、.ssh dirにconfファイルが設定され、設定ファイルで設定されているエイリアスを使用してssh、scp、sftpを使用できるようになります。
config-sshのgclouddoc https://cloud.google.com/sdk/gcloud/reference/compute/config-ssh
私が質問を理解しているなら、DebianのインスタンスにSFTPが必要です。
試してください このチュートリアル
ファイアウォールのポート22を開きます。
gcutil addfirewall port-22 --description="Open up port 22." --allowed="tcp:22"
SFTP接続を確立するFilezillaクライアントでテストします。
楽しんで :)