
У меня есть сервер Ubuntu с 3 учетными записями пользователей (root, user1, user2). У user1 есть доступ через WinSCP, scp и ssh. Здесь проблем нет. Затем я создал еще одного user2, но с этим пользователем я не могу получить доступ к серверу через WinSCP, но scp и ssh через консоль работают как часы. WinSCP говорит, что аутентификация не проходит, но я на 100% уверен, что не сделал опечатки (могу сказать это после 433245 попыток). Теперь я пытаюсь найти различия между двумя учетными записями пользователей, и единственные различия — это их имя пользователя, пароль и то, что user2 находится в группе sudoers.
Есть ли у вас предложения, что еще я могу попробовать?
решение1
Изменение пароля пользователя user2 решило проблему. Теперь я не уверен, связано ли это с кодировкой или экранированием пароля внутри WinSCP или с какой-то другой странной проблемой.
EDIT 1: Я изменил пароль обратно на тот, который не работает, и попытался найти специальный символ, вызывающий проблемы. Это был не-ASCII символ '§', вызывающий проблемы. Я попробовал другой пароль с не-ASCII символом 'ß', и он тоже не сработал. Так что не-ASCII символы в паролях UNIX — не очень хорошая идея.
EDIT 2: Отчет об ошибке был добавлен на форум WinSCP: http://winscp.net/forum/viewtopic.php?p=56296#56296
решение2
Используйте WinSCP 5.9 или новее. Эти версии кодируют имена пользователей и пароли с помощью кодировки UTF-8.