SFTP в Google Compute Engine

Я играл с Debian на Compute Engine и задавался вопросом, как я могу SFTP на сервере. Я не могу найти документацию, и я надеялся, что кто-то может указать мне в правильном направлении.

Спасибо!

Если это невозможно, лучший способ управлять статическими сайтами через SCP?

Ответ 1

Я отказался от gcloud compute copy-files, так как не мог понять, почему мой экземпляр не был извлечен и что-то с недостаточными разрешениями, затем я начал изучать, как sftp войти в мой экземпляр gcloud

Вот как я получил это для работы с filezilla

  1. Сначала я скачал и запустил gcloud SDK: https://cloud.google.com/compute/docs/gcloud-compute/#install

  2. когда я впервые пытаюсь подключиться к экземпляру из моего терминала, мне было предложено создать ключи ssh, я нахожусь на Mac, поэтому ключи были настроены в папке /Users//в папке .ssh/folder

  3. Я получил закрытый ключ google_compute_engine из папки .ssh/и импортировал его в filezilla> settings> sftp

  4. хост - это ip-адрес моего экземпляра gcloud vm, пользователь - каким бы ни было ваше имя пользователя, когда вы подключаетесь к экземпляру через ssh... проверьте приглашение: [@] $, ваш ключ должен быть вашим методом аутентификации. ваш удаленный каталог такой же, как /home//, тип сервера unix (у меня был centos vm в облаке Google)

Как только мои файлы были загружены в мой каталог на моем экземпляре с моего компьютера, я смог скопировать их туда, где мне нужно было, чтобы эти файлы были в экземпляре gcloud vm.

Я снова был счастливым туристом.

источники: http://winscp.net/eng/docs/guide_google_compute_engine

Ответ 2

На высоком уровне это следующие шаги:

  • Установите и запустите gcloud SDK ($ gcloud init)
  • Сгенерировать ключ SSH ($ gcloud compute ssh)
  • Настройка FTP-клиента (установка и добавление ключевого файла)
  • Подключение к виртуальной машине с помощью клиента SFTP

Предполагая, что этот вопрос задавался здесь до того, как появилась документация из Google.

Кроме того, я записал это, это может быть полезно:

https://www.youtube.com/watch?v=9ssfE6ODpak

И только FYI.. если файлы, которые вам нужно перенести, довольно маленькие по размеру, возможно, вам не нужен SFTP-клиент. Передача непосредственно с консоли, как показано здесь https://youtu.be/HEdXEEYOynE

Ответ 3

Вы можете загружать и скачивать файлы с помощью 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.

Ответ 4

Похоже, что у движка Google уже есть служба SFTP по умолчанию. Ниже приведена превосходная пошаговая инструкция с использованием WinSCP в качестве SFTP-клиента для подключения к службе. Он работает отлично для меня с первой попытки.

http://winscp.net/eng/docs/guide_google_compute_engine

Тот же принцип должен применяться с использованием другого программного обеспечения FTP-клиента. Надежда сэкономит время и силы.

Ответ 5

ssh, scp и sftp должны работать, если вы укажете IP-адрес экземпляра. Вы можете использовать DNS для этого, если у вас есть статический IP-адрес, или вы можете использовать IP-адрес от gcutil listinstances или консоли.

Как только вы узнаете IP-адрес экземпляра, вам также понадобится ваш закрытый ключ ssh, который обычно находится в ~/.ssh/google_compute_engine. Затем вы можете подключиться через sftp следующим образом:

sftp -o IdentityFile ~/.ssh/google_compute_engine [email protected]

Ответ 6

В операционной системе Mac или Linux используйте команду "gcloud compute config-ssh:". Это установит файл conf в вас .ssh dir и позволит вам использовать ssh, scp и sftp, используя псевдоним, который настроен в config.

gcloud doc для config-ssh https://cloud.google.com/sdk/gcloud/reference/compute/config-ssh

Ответ 7

Если я понимаю вопрос, вы хотите иметь SFTP в экземпляре с Debian.

  • Попробуйте этот учебник

  • Откройте порт 22 в брандмауэре:

    gcutil addfirewall port-22 --description="Open up port 22." --allowed="tcp:22"

  • Тестирование с помощью клиента Filezilla, устанавливающего соединение SFTP.

Удачи:)