Исправление ошибки SFTP Chroot: сломанный канал в Ubuntu 20.04

Убунту 15

В этом подробном руководстве мы покажем вам процесс исправления ошибки SFTP Chroot: Broken Pipe в Ubuntu 20.04. Эта ошибка обычно возникает, когда вы пытаетесь установить пользователей, использующих только SFTP, в своем домашнем каталоге.

Чтобы исправить ошибку SFTP Chroot: Broken Pipe в Ubuntu 20.04, вам необходимо изменить файл sshd_config, установить владельца и разрешения для каталога /home/sftp и создать пользователей с правильными настройками. Эти шаги помогут вам установить пользователей только с SFTP, изолированных в их домашнем каталоге, и устранить ошибку сломанного канала.

Понимание ошибки

Ошибка «Broken Pipe» в SFTP Chroot обычно возникает, когда возникает проблема с соединением между клиентом и сервером. Это распространенная проблема при попытке настроить пользователей, использующих только SFTP, с ограниченным доступом к их домашнему каталогу.

Предварительные условия

Прежде чем мы начнем, убедитесь, что у вас есть:

  1. Сервер под управлением Ubuntu 20.04.
  2. Sudo или root-права для изменения системных файлов и настроек.

Шаг 1. Обновите файл sshd_config.

Во-первых, нам нужно изменить файл sshd_config, который является основным файлом конфигурации SSH-сервера. Откройте файл с помощью текстового редактора по вашему выбору. Здесь мы будем использовать нано.

судо нано /etc/ssh/sshd_config

Добавьте в конец файла следующие строки:

Подсистема sftp Internal-sftp Группа соответствия sftponly ForceCommand Internal-sftp -d /%u PasswordAuthentication да ChrootDirectory /home/sftp/%u PermitTunnel нет AllowAgentForwarding нет AllowTcpForwarding нет X11Forwarding нет

Вот что делает каждая строка:

  • Subsystem sftp Internal-sftp: эта строка настраивает SFTP-сервер на использование подсистемы Internal-sftp, которая необходима для среды chroot.
  • Группа соответствия sftponly: эта строка соответствует любому пользователю в группе sftponly.
  • ForceCommand Internal-sftp -d /%u: эта строка заставляет соединение использовать протокол SFTP и устанавливает в качестве каталога по умолчанию домашний каталог пользователя.
  • PasswordAuthentication да: эта строка позволяет пользователям проходить аутентификацию с использованием своих паролей.
  • ChrootDirectory /home/sftp/%u: эта строка устанавливает в качестве каталога chroot домашний каталог пользователя в каталоге /home/sftp.
  • PermitTunnel no, AllowAgentForwarding no, AllowTcpForwarding no, X11Forwarding no: эти строки отключают различные типы пересылки, повышая безопасность соединения.

После добавления этих строк сохраните и закройте файл.

Шаг 2. Установите права собственности и разрешения для /home/sftp

Далее нам нужно установить правильное право собственности и разрешения для каталога /home/sftp. Это необходимо для обеспечения безопасности и изоляции файлов каждого пользователя. Выполните следующие команды:

sudo chown root: root /home/sftp sudo chmod 0711 /home/sftp

Здесь chown root:root /home/sftp меняет владельца каталога на пользователя и группу root, а chmod 0711 /home/sftp устанавливает разрешения так, что только владелец (root) может писать в каталог, но другие могут входить и получать доступ к своим собственным каталогам внутри него.

Шаг 3. Создайте пользователей с правильными настройками

Теперь мы можем создавать пользователей с правильными настройками. В этом примере мы создадим пользователя с именем «Бэтмен». Выполните следующие команды:

sudo adduser –quiet –disabled-password –shell /bin/false –no-create-home –gecos “Пользователь” batman echo “batman:batman123” | sudo chpasswd sudo usermod -a -G sftponly batman sudo install -d -m 0755 /home/sftp/batman -o batman -g sftponly

Эти команды делают следующее:

  • adduser –quiet –disabled-password –shell /bin/false –no-create-home –gecos «Пользователь» batman: Эта команда создает нового пользователя с именем «batman» с отключенным паролем, без оболочки и нет домашнего каталога.
  • эхо “Бэтмен: Бэтмен123” | sudo chpasswd: эта команда устанавливает пароль для «batman» на «batman123».
  • usermod -a -G sftponly batman: эта команда добавляет «batman» в группу «sftponly».
  • install -d -m 0755 /home/sftp/batman -o batman -g sftponly: Эта команда создает домашний каталог для «batman» в /home/sftp/batman с правильным владельцем и разрешениями.

Последние мысли

Благодаря этим изменениям пользователи будут иметь доступ только к своему собственному каталогу (/home/sftp/batman), и при входе в систему они будут находиться в / (на самом деле это /home/sftp/batman). Они не смогут перейти в /home/sftp и просмотреть список других пользователей.

Помните: если вы столкнулись с ошибкой при изменении владельца каталога, обязательно используйте правильное имя группы (sftponly) при настройке владельца.

Выполнив эти шаги, вы сможете исправить ошибку SFTP Chroot: Broken Pipe в Ubuntu 20.04. Если у вас есть какие-либо вопросы или вы столкнулись с какими-либо проблемами, не стесняйтесь спрашивать в разделе комментариев ниже.

SFTP Chroot — это метод ограничения пользователей SFTP их домашним каталогом, обеспечивающий более безопасную среду за счет изоляции их доступа к серверу.

Ошибка «Broken Pipe» обычно возникает, когда возникает проблема с соединением между SFTP-клиентом и сервером. Это может быть вызвано проблемами с сетью, проблемами конфигурации сервера или неправильными разрешениями для каталогов.

Да, вы можете использовать любой текстовый редактор для изменения файла sshd_config. Просто замените «nano» на имя желаемого текстового редактора в предоставленной команде.

Разрешения «0711» означают, что владелец (root) имеет разрешения на чтение, запись и выполнение, в то время как другие могут только выполнять (входить) в каталог. Это гарантирует, что только владелец может изменять содержимое каталога, в то время как другие могут получить доступ к своим собственным подкаталогам внутри него.

Чтобы создать дополнительных пользователей только для SFTP, следуйте примеру, приведенному в шаге 3, заменив «batman» на желаемое имя пользователя. Обязательно измените команды соответствующим образом, чтобы установить правильное право собственности и разрешения для домашнего каталога нового пользователя.

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *