Я создал виртуальную машину через Bitnami в Google Compute Engine. Раньше я мог использовать ssh через веб-интерфейс Bitnami. Я пытался использовать ssh через терминал на моем Mac, но продолжал получать Permission denied (publickey)
ошибка. Затем я удалил все ключи на сервере и своем Mac, загрузил файл pem с битнами и использовал -i
вариант подключения, но проблема все еще сохраняется.
ssh -i bitnami-gce.pem xxx@1xx.1xx.5x.1xx -v
Полная информация об отладке:
OpenSSH_6.2p2, OSSLShim 0.9.8r 8 Dec 2011
debug1: Reading configuration data /etc/ssh_config
debug1: /etc/ssh_config line 20: Applying options for *
debug1: Connecting to 1xx.1xx.5x.1xx [1xx.1xx.5x.1xx] port 22.
debug1: Connection established.
debug1: identity file bitnami-gce.pem type -1
debug1: identity file bitnami-gce.pem-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_6.2
debug1: Remote protocol version 2.0, remote software version OpenSSH_6.6.1p1 Debian-4~bpo70+1
debug1: match: OpenSSH_6.6.1p1 Debian-4~bpo70+1 pat OpenSSH*
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-ctr hmac-md5-etm@openssh.com none
debug1: kex: client->server aes128-ctr hmac-md5-etm@openssh.com none
debug1: SSH2_MSG_KEX_DH_GEX_REQUEST(1024<1024<8192) sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_GROUP
debug1: SSH2_MSG_KEX_DH_GEX_INIT sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY
debug1: Server host key: RSA <RSA KEY>
debug1: Host '1xx.1xx.5x.1xx' is known and matches the RSA host key.
debug1: Found key in /Users/xxx/.ssh/known_hosts:1
debug1: ssh_rsa_verify: signature correct
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: Roaming not allowed by server
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey
debug1: Next authentication method: publickey
debug1: Trying private key: bitnami-gce.pem
debug1: read PEM private key done: type RSA
debug1: Authentications that can continue: publickey
debug1: No more authentication methods to try.
Permission denied (publickey).
Я не могу подключиться к хосту по ssh. Поэтому сейчас нельзя отправлять ключи на сервер. Как это решить?
Изменить: я попытался использовать ssh через веб-консоль Google, и я смог это сделать. Может ли кто-нибудь сказать мне точные шаги по ssh откуда угодно? Я предпочитаю простой способ имени пользователя и пароля, как это настроить?
После того, как я смог использовать ssh через веб-консоль Google, я сделал следующие шаги, чтобы решить эту проблему:
Создайте ключ ssh с помощью
ssh-keygen
Скопируйте содержимое файла key.pub
Добавить содержимое в ~/.ssh/authorized_keys
файл
sudo nano ~/.ssh/authorized_keys
Я столкнулся с такой же ситуацией из-за пользователя. В сети google shh мое имя пользователя показывало что-то в первой части моего электронного письма. Итак, я пробовал ssh вот так
ssh <first_part_of_gmail>@google_vm_external_ip
Позже я обнаружил, что Google создает пользователя на основе ключа ssh, который вы указали в настройке google vm. Итак, сначала проверьте пользователя в конце открытого ключа и попробуйте выполнить
ssh <user_name_at_the_end_of_public_key>@google_vm_external_ip
Когда ваш экземпляр создается впервые, по умолчанию в нем не будет никаких ключей SSH, поэтому вы должны передать их туда, например, используя gcloud
чтобы подключиться к нему в первый раз, как описано в этот ТАК ответ или вручную создав ключи SSH и вручную добавив их в свой экземпляр, как описано в еще один ТАК ответ.
У меня была такая же проблема, и я использовал команду gcloud для первого входа в систему и добавил /etc/ssh/sshd_config
.
PubkeyAcceptedKeyTypes +ssh-dss
После перезапуска службы:
systemctl restart sshd
Это старый вопрос, но сегодня у меня тоже была эта проблема, и я решил ее, выполнив следующие действия:
а затем подключитесь.
Эти шаги помогут вам подключиться к вашему экземпляру gcc vm на терминале mac os с помощью ssh: https://nabtron.com/gcc-mac-terminal/ и также исправит проблему отказа в разрешении (pubilckey).
Я надеюсь, что это помогает.
вам нужно убедиться, что у вашего файла bitnami-gce.pem разрешение 600
попробуйте chmod 600 bitnami-gce.pem
с уважением Ахмед
Удостовериться у тебя нет Вход в ОС включен. Документы читать:
Если вы управляете своими ключами SSH с помощью входа в ОС на экземплярах, конфигурации ключей SSH на основе метаданных в этих экземплярах отключены.
и
Внимание! Включение входа в ОС для экземпляров отключает для этих экземпляров конфигурации ключей SSH на основе метаданных. Отключение входа в ОС восстанавливает ключи SSH, которые вы настроили в метаданных проекта или экземпляра.
Чтобы проверить, перейдите к метаданным уровня проекта (Compute Engine -> Metadata) и убедитесь, что у вас нет enable-oslogin
ключ или что он установлен на FALSE