Назад | Перейти на главную страницу

Получение ошибки «Получен слишком большой SFTP-пакет» при подключении с учетной записью root к серверу через WinSCP

Я пробовал разные способы и читал некоторые решения, в том числе следующие:
Почему я не могу использовать ssh как root?
Редактирование с помощью Winscp
И статья с форума Ubuntu

  1. Я не понимаю, почему, когда я связываюсь с ubuntu через PuTTY я могу иметь права root и изменять файлы. Однако когда я подключаюсь к ubuntu через WinSCP я другой пользователь (я использовал то же имя пользователя и тот же закрытый ключ (pem) в обоих подключаемых программах) и не могу изменять файлы.

  2. Затем я нашел несколько возможных решений по ссылкам выше. Я пытался установить root пароль и permitRootLogin. Но затем, когда я вхожу в систему с root имя пользователя, в нем говорится:

    Получен слишком большой (1349281121 Б) пакет SFTP. Максимальный поддерживаемый размер пакета - 1024000Б. Ошибка обычно возникает из-за сообщения, напечатанного из сценария запуска (например, .profile). Сообщение может начинаться с «Мольбы».

    Невозможно инициализировать протокол SFTP. На хосте работает SFTP-сервер?

    тогда как когда я изменил имя пользователя обратно на ubuntu, то это работает (но я не могу изменять файлы, если я не root пользователь).

Я очень запутался, пожалуйста, если вы можете указать на меня, я был бы очень признателен.

Я считаю, что сообщение об ошибке, которое вы получаете, объясняет это.

Ваш сервер root в аккаунте неправильно настроены скрипты профиля. Некоторые из них печатают сообщение, нарушающее протокол SFTP. Существуют разные сценарии профиля для терминального и нетерминального сеанса (тот, который имеет или не имеет выделенного TTY). Сообщения можно распечатать только из сценария, используемого для терминальных сессий. Когда вы печатаете сообщение из сценария профиля, используемого для нетерминальных сеансов, он нарушает работу любого клиента, использующего строгий протокол (например, SFTP или SCP).

Сообщение начинается с "Мольбы", как сказано в сообщении об ошибке. Это может быть что-то столь же тривиальное, как

echo "Please be careful when using root account!"

Вы увидите полное сообщение, когда войдете в систему с помощью терминала SSH (например, PuTTY).

Обычно вам нужно переместить команды, печатающие сообщение, из .bashrc сценарий для .bash_profile.

Работает с ubuntu учетной записи, поскольку ее сценарии профиля не выводят сообщение об ошибке.

См. Также информацию об ошибке в документации WinSCP. «Получен слишком большой (... B) пакет SFTP. Максимально поддерживаемый размер пакета составляет 102400 B».