Виртуальные машины GCP + файл ssh/config

Ребята.

GCP предлагает несколько способов ssh-ов в gcloud, облачной оболочке и облачном SDK для локальных машин.

Хотя все эти параметры хороши, и я их использую, я обычно предпочитаю использовать.ssh/config, чтобы сократить процесс входа в систему на компьютерах.

Например, для EC2 вы просто добавляете:

Host $name
    HostName $hostname
    User $username
    IdentityFile $pathtoFile

Есть ли способ повторить это для виртуальных машин GCP?

Спасибо

2 ответа

Согласно этому документу

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

  • Linux и macOS
    • Открытый ключ: $HOME/.ssh/google_compute_engine.pub
    • Закрытый ключ: $ HOME /.ssh / google_compute_engine
  • Windows
    • Открытый ключ: C:\Users[ИМЯ ПОЛЬЗОВАТЕЛЯ].ssh\google_compute_engine.pub
    • Закрытый ключ: C:\Users[ИМЯ ПОЛЬЗОВАТЕЛЯ].ssh \ google_compute_engine

Вы можете использовать ключ с типичным -i или в .ssh/config Конфигурационный файл

Или просто сделать

ssh-add ~/.ssh/google_compute_engine

добавить личность в ваш агент SSH.

PS> Я видел, как люди создают псевдоним для команды ssh, что-то вроде

alias gce='gcloud compute ssh'

Если вы хотите использовать SSH для разных экземпляров облачного проекта Google (от Mac или Linux), сделайте следующее:

Шаг 1. Установите ключи SSH без пароля

Используйте следующую команду для генерации ключей на вашем Mac

ssh-keygen -t rsa -f ~/.ssh/<private-key-name> -C <your gcloud username>

Например private-key-name может быть bpa-ssh-key, Это создаст два файла со следующими именами в ~/.ssh каталог

  1. bpa-ssh-key
  2. bpa-ssh-key.pub

Шаг 2. Обновите открытый ключ в вашем проекте GCP

Перейдите в Google Cloud Console, выберите свой проект, затем

VMInstances->Metadata->SSH Keys->Edit->Add Item

Вырежьте и вставьте содержимое bpa-ssh-key.pub (от вашего Mac) здесь, а затем сохранить

Сбросить инстанс виртуальной машины, если он работает

Шаг 3. Редактировать config файл под ~/.ssh на вашем Mac Редактировать ~/.ssh/config добавить следующие строки, если их еще нет

Host *
PubKeyAuthentication yes
IdentityFile ~/.ssh/bpa-ssh-key

Шаг 4. SSHing к экземпляру GCP

ssh username@gcloud-externalip

Он должен создать оболочку SSH без запроса пароля (поскольку вы создали ключи RSA/SSH без пароля) в экземпляре gcloud.

Поскольку метаданные являются общими для всех экземпляров одного и того же проекта, вы можете использовать SSH без швов для любого экземпляра, выбрав соответствующий внешний IP-адрес экземпляра gcloud.

Другие вопросы по тегам