Использовать X SSH ключ при входе в систему Y удаленного пользователя?

Думаю, проблема в построении команды mount. Попробуйте следующее:

mount -t cifs //192.168.1.1/share mount_point/ -o username=****,password=****

Это должно сработать, если конфигурация общих ресурсов в 192.168.1.1 настроена правильно. Если это не сработает, вы можете использовать smbclient на клиентской машине для отладки проблем без использования mount, примерно так (выполняется на одной из клиентских машин):

smbclient //192.168.1.1/share -U username

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

2
27.07.2017, 03:31
2 ответа

Спасибо @xhienne(ссылка на комментарий)за ваше предложение.

Добавление следующего в конфигурацию ssh _, по-видимому, решило проблему:

Match User testuser
  IdentityFile ~/.ssh/id_rsa-test

Этот блок следует разместить над Host *, чтобы отправить id_rsa-testперед id_rsaдля тестового пользователя.

2
27.01.2020, 22:03

Предполагая, что вы используете OpenSSH, вы можете настроить свой файл ~/.ssh/configдля каждого, тогда вам также не нужно будет указывать пользователя, вы можете создать свое собственное имя:

host host1
    User testuser
    IdentityFile ~/.ssh/id_rsa-test

тогда, когда вы сделаете ssh host1, это будет сделано автоматически, или, поскольку вы будете использовать host1как другие пользователи, вы также можете сделать

host test-host1
    User testuser
    IdentityFile ~/.ssh/id_rsa-test
    Hostname host1

затем выполнитеssh test-host1

и вы можете сделать то же самое для любого желаемого хоста.

Любой хост, который не соответствует записи в файле конфигурации ssh _(5 ), будет использовать поведение по умолчанию --или использовать значения по умолчанию, указанные в конфигурации ssh _по адресу глобальная настройка, т. е. не внутри хост-блока

ssh _config не поддерживает сопоставление имен пользователей, но вы можете написать сценарий оболочки, чтобы определить это для вас. Вот хрупкий пример в bash, который предполагает, что ваше имя пользователя/хост всегда является первым аргументом, и сломается, если это не так:

ssh() {
    if [[ "$1" =~ ^testuser@ ]]; then
        command ssh -i ~/.ssh/id_rsa-test "$@"
    else
        command ssh "$@"
    fi
}
1
27.01.2020, 22:03

Теги

Похожие вопросы