SFTP в Google Compute Engine
Я играл с Debian на Compute Engine и задавался вопросом, как я могу SFTP на сервере. Я не могу найти документацию, и я надеялся, что кто-то может указать мне в правильном направлении.
Спасибо!
Если это невозможно, лучший способ управлять статическими сайтами через SCP?
Ответы
Ответ 1
Я отказался от gcloud compute copy-files, так как не мог понять, почему мой экземпляр не был извлечен и что-то с недостаточными разрешениями, затем я начал изучать, как sftp войти в мой экземпляр gcloud
Вот как я получил это для работы с filezilla
Сначала я скачал и запустил gcloud SDK: https://cloud.google.com/compute/docs/gcloud-compute/#install
когда я впервые пытаюсь подключиться к экземпляру из моего терминала, мне было предложено создать ключи ssh, я нахожусь на Mac, поэтому ключи были настроены в папке /Users//в папке .ssh/folder
Я получил закрытый ключ google_compute_engine из папки .ssh/и импортировал его в filezilla> settings> sftp
хост - это 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.
Удачи:)