Предположим, у меня есть класс подключения со свойствами для SSHClient и SCPClient из библиотеки SSH.net
(от Renci):
public class SecureConn
{
public SshClient Ssh {get; set;}
public ScpClient Scp {get; set;}
public SecureConn(string host, string usr, string pwd)
{
this.Ssh = new SshClient(host, usr, pwd);
this.Scp = new ScpClient(host, usr, pwd);
}
...
}
Когда я пытаюсь запустить команды с SSH - все работает нормально. Однако, когда я пытаюсь использовать this.Scp.Upload()
(обратите внимание на те же учетные данные в конструкторе) для загрузки файла из общего сетевого ресурса на сервер Linux, я получаю System.IO.Exception, возвращающее «Неверное имя пользователя или пароль». Что может быть причиной получения этой ошибки?
Нужно ли мне устанавливать какое-либо программное обеспечение, чтобы SCP нормально работал в Windows? Или это источник сетевого ресурса, который каким-то образом генерирует это сообщение? Может быть, серверу Linux нужно установить другой пароль для SCP?
Я проверил с помощью WinSCP, и я могу безупречно подключиться к нему и копировать файлы.
Примечание. Выше приведен пример кода, а не фактический код, но рабочий процесс в основном такой же. Я уверен, что метод Renci ScpClient.Upload выдает ошибку, поэтому я ищу код вне кода, чтобы найти ошибку.