8

Я использую ssh на разных машинах, в основном на Linux. Учетные записи на этих машинах различаются по схеме именования: если меня зовут First Last, то у меня есть учетные записи: first, flast, last_f, lastf, и иногда мне нужно войти в систему как root. Для каждой машины, которую я использую, я бы хотел, чтобы клиент openssh знал, какую учетную запись использовать, когда я не указываю в командной строке.

Итак, вопрос: как мне заставить ssh server делать правильные вещи, когда имя пользователя не указано?

2 ответа2

18

Вы можете создать файл config в своем домашнем каталоге .ssh , в котором можно указать пользователя по умолчанию, файл идентификации и т.д. И назначить его для псевдонима, который можно использовать для подключения.

Например, вы можете поместить это в файл ~/.ssh/config :

Host example
    HostName example.com
    User first_last
    IdentityFile ~/.ssh/example_rsa
    Port 22
    RSAAuthentication yes
    PubkeyAuthentication yes

Host example2
    HostName example2.com
    User last_first
    # other parameters as needed

Затем вы можете просто ввести ssh example или ssh example2 в командной строке для подключения.

Таким образом, вы можете настроить один для каждой машины, к которой вы хотите подключиться, с соответствующим пользователем. Затем просто используйте псевдонимы для подключения без указания пользователя. Вы также можете использовать шаблон для сопоставления нескольких хостов.

Больше информации и подробностей о том, что вы можете указать в конфигурационном файле на справочной странице ssh_config.

1

По ответу Рича Адама я узнал для PuTTY, где он хранит свои настройки.

Все это хранится в дереве реестра, вы найдете его в HKEY_CURRENT_USER\Software\SimonTatham (Саймон Тэтхэм - разработчик PuTTY).
Там вы можете увидеть, как определяется хост.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .