Установка местоположения ssh-ключа по умолчанию

StackOverflow https://stackoverflow.com/questions/84096

  •  01-07-2019
  •  | 
  •  

Вопрос

ssh по умолчанию будет искать свои ключи в папке ~/.ssh.Я хочу заставить его всегда искать в другом месте.

Обходной путь, который я использую, — добавить в агент ключи из нестандартного местоположения:

ssh-agent
ssh-add /path/to/where/keys/really/are/id_rsa 

(в Linux и оболочке MingW32 в Windows)

Это было полезно?

Решение

Если вы хотите указать только другое местоположение файла идентификации, вы можете изменить файл ~/.ssh/config следующей записью:

IdentityFile ~/.foo/identity

man ssh_config чтобы найти другие параметры конфигурации.

Другие советы

man ssh дает мне эти варианты, которые могут быть полезны.

-i Identity_file Выбирает файл, из которого читается идентификация (закрытый ключ) для аутентификации RSA или DSA.По умолчанию- ~/.ssh/идентификация для протокола версии 1 и ~/.ssh/id_rsa и ~/.ssh/id_dsa для Protocol версии 2.Идентификационные файлы также могут быть указаны на основе первого хоста в файле конфигурации.Можно иметь несколько параметров -i (и несколько идентификаторов, указанных в файлах конфигурации).

Итак, вы можете создать псевдоним в своей конфигурации bash, например

псевдоним ssh="ssh -i /путь/к/частному_ключу"

Я не заглядывал в файл конфигурации ssh, но, как и -i вариант, это тоже может быть псевдонимом

-F configfile Определяет альтернативный файл конфигурации для каждого пользователя.Если в командной строке приведен файл конфигурации, общегосударственный файл конфигурации (/etc/ssh/ssh_config) будет игнорироваться.По умолчанию файла конфигурации для каждого пользователя составляет ~/.SSH/config.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top