Как вы управляете SSH-ключами, чтобы добавить второго пользователя?
Я использовал эту статью, чтобы настроить ключи и пользователя для входа на сервер Ubuntu из коробки Windows, используя Putty.
Теперь я хотел бы добавить дополнительного пользователя SSH, который будет входить с MacBook. Я использовал ssh-keygen для генерации локальных ключей, но мне не удалось скопировать ключи на сервер. Вот мое считывание bash (изменено по частям по понятным причинам)
MacBook-Pro: ~ joe $ scp -2 -P 50022 -v ~ /.ssh / id_rsa.pub newuser@111.222.333.444:
Выполнение: программа /usr/bin/ssh host 111.222.333.444, пользователь newuser, команда scp -v -t.
OpenSSH_5.2p1, OpenSSL 0.9.8l 5 ноября 2009 г.
debug1: чтение данных конфигурации / etc / ssh_config
debug1: подключение к порту 111.222.333.444 [111.222.333.444] 50022.
debug1: соединение установлено.
debug1: файл идентификации /Users/joe/.ssh/id_rsa тип 1
debug1: файл идентификации /Users/joe/.ssh/id_dsa тип -1
debug1: удаленный протокол версии 2.0, удаленная версия программного обеспечения OpenSSH_4.3
debug1: match: OpenSSH_4.3 pat OpenSSH_4 *
debug1: включение режима совместимости для протокола 2.0
debug1: строка локальной версии SSH-2.0-OpenSSH_5.2
debug1: отправлено сообщение SSH2_MSG_KEXINIT
debug1: SSH2_MSG_KEXINIT получено
debug1: kex: сервер-> клиент aes128-ctr hmac-md5 нет
debug1: kex: клиент-> сервер aes128-ctr hmac-md5
debug1: отправлено сообщение SSH2_MSG_KEX_DH_GEX_REQUEST(1024<1024<8192)
debug1: ожидается SSH2_MSG_KEX_DH_GEX_GROUP
debug1: отправлено сообщение SSH2_MSG_KEX_DH_GEX_INIT
debug1: ожидается SSH2_MSG_KEX_DH_GEX_REPLY
debug1: Host '[111.222.333.444]: 50000' известен и соответствует ключу хоста RSA.
debug1: найден ключ в /Users/joe/.ssh/known_hosts:2
debug1: ssh_rsa_verify: подпись верна
debug1: отправлено сообщение SSH2_MSG_NEWKEYS
debug1: ожидается SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS получено
debug1: SSH2_MSG_SERVICE_REQUEST отправлено
debug1: SSH2_MSG_SERVICE_ACCEPT получено
debug1: аутентификации, которые могут продолжаться: publickey
debug1: следующий метод аутентификации: publickey
debug1: предложение открытого ключа: /Users/joe/.ssh/id_rsa
debug1: аутентификации, которые могут продолжаться: publickey
debug1: пробуем закрытый ключ: /Users/joe/.ssh/id_dsa
debug1: больше не нужно проверять методы аутентификации.
В доступе отказано (publickey). потерянное соединение
3 ответа
Вам необходимо войти в систему, используя замазку на машине с Windows, выйти из файла.ssh / authorized_keys и добавить в файл ключ, который вы сгенерировали на mac.
Не запускайте команду
scp -2 -P 50022 -v ~/.ssh/id_rsa.pub newuser@111.222.333.444:
Это перезаписывает существующий ключ на сервере, и он также не будет работать, так как сервер принимает только входы в систему ключей.
Вам нужно будет добавить содержимое открытого ключа Джо (.ssh/id_rsa.pub) в файл ~newuser/.ssh/authorized_keys на сервере. Я бы порекомендовал использовать RDP на MacBook для подключения к вашей машине с Windows, убедившись, что буфер обмена используется совместно. Найдите содержимое открытого ключа в macbook, затем откройте окно замазки, подключенное к серверу. Тогда беги...
cat - >>~newuser/.ssh/authorized_keys
и вставьте содержимое ключа, нажмите Ctrl + D, чтобы закрыть файл.
В качестве альтернативы, если вы можете включить аутентификацию пароля на сервере, вы можете использовать 'ssh-copy-id' с Mac
В качестве альтернативы, вы можете просто скопировать секретный ключ, сгенерированный на вашем компьютере с Windows, на свой Mac (вам, возможно, придется преобразовать формат ключа, см. ssh
справочные страницы на вашем Mac...). Нет суеты, нет суеты.