Где должен быть файл authorized_keys, если я хочу ssh на «localhost»?

У меня есть настройка моего общедоступного / частного ключа, но я не знаю, куда он должен идти. Должны ли эти файлы размещаться в ~/.ssh/ для моего пользователя?

  • SSH Pub Key Login без пароля
  • reverse-i-search не показывает все результаты по сравнению с grep
  • Есть ли инструмент (!), Чтобы перечислять назначенные значения subuid и subgid для пользователей?
  • Как Ubuntu блокирует мой Live USB?
  • Не удалось найти пакет ubuntu-desktop на ubuntu desktop iso
  • Нужна помощь в создании Live SD-карты
  • Как смонтировать / usr на другом разделе, но использовать папку с именем / usr в этом разделе вместо использования / as / usr?
  • подключение ноутбука к ЖК-телевизору через кабель VGA
  • One Solution collect form web for “Где должен быть файл authorized_keys, если я хочу ssh на «localhost»?”

    Частный ключ остается дома. Публичный ключ путешествует:

    • Поместите свой закрытый ключ в ~/.ssh (локальный хост). Обычно это ~/.ssh/id_rsa .
    • Поместите свой открытый ключ в ~/.ssh/authorized_keys (удаленный хост).

    Хотя первый шаг обычно выполняется автоматически при создании ключа, второй может быть выполнен с помощью:

     $ ssh-copy-id ~/.ssh/id_rsa.pub user@remotehost 

    Если у вас есть какая-либо остаточная конфигурация в отношении удаленного хоста, вы можете столкнуться с некоторыми проблемами с этим (ошибка аутентификации или «слишком много ошибок аутентификации» ). Чтобы избавиться от этой проблемы, вы можете заставить ssh-copy-id использовать аутентификацию с помощью:

     $ ssh-copy-id -o"PubkeyAuthentication no" ~/.ssh/id_rsa.pub user@remotehost 

    Конечно, как только ваши ключи правильно размещены, больше нет необходимости в пароле:

     $ ssh user@remotehost 

    Вы также можете добавить некоторую конфигурацию SSH в ~/.ssh/config чтобы сделать ее еще проще:

     Host [custom name for the remote machine] Hostname [remote hostname or IP] User [remote username] IdentityFile /home/[your local user]/.ssh/id_rsa 

    Благодаря этому вы можете просто ввести следующее для входа на удаленный хост:

     $ ssh [custom name for the remote machine] 

    Изменить: если обе машины (локальные и удаленные) одинаковы, вы можете упростить процедуру с помощью:

     $ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys 

    Это добавит ваш открытый ключ в файл authorized_keys . Конечно, другой способ зарегистрировать себя как кто-то еще на вашей локальной машине – использовать:

     $ su [another user] 

    Это сэкономит вам транзакцию SSH, где вам может не понадобиться. Password-less su можно настроить с помощью sudo :

     $ sudo -iu [another user] 
    Linux и Unix - лучшая ОС в мире.