/bin/bash (chrooted) больше не работает

Ранее все наши веб-клиенты были настроены для доступа к своим SFTP с помощью shell /bin/bash(chrooted). По состоянию на 1-17-17 это работало для всех. В следующий понедельник 1-20-17 этого не было. Эта проблема затрагивает ВСЕ домены, которые использовали / bin / bash (chrooted) в качестве оболочки.

При попытке подключения ошибка FTP: EOF при чтении пакета. Пожалуйста, свяжитесь с вашим поставщиком услуг веб-хостинга для помощи.

При попытке подключиться через SSH в командной строке выдается сообщение об ошибке: Не удается chdir к домашнему каталогу /var/www/vhosts/domain.com: Нет такого файла или каталога /usr/local/psa/bin/chrootsh: Нет такого файла или каталога Подключение к domain.com закрыто.

Я не могу найти записи каких-либо актуальных обновлений для Plesk, я, конечно, ничего не изменил. Единственное обновление, которое я вижу в истории Plesk, - это обновление с PHP 7 до PHP 7.0.14. Я занимался поиском того, что нашел (в приведенных ниже примерах я заменил фактическое имя пользователя на "username", а реальный домен на "domain.com"):

  1. Пользователь FTP в / etc / passwd правильно показывает, насколько я могу судить: имя пользователя:x:10057:1004::/var/www/vhosts/domain.com:/usr/local/psa/bin/chrootsh

  2. не было никаких изменений в разрешениях пользователей или групп. Пользователь правильно назначен в группу psacln, как и прежде.

  3. Насколько я могу судить, в папке / var / www / vhosts / chroot есть все, что нужно, и все права и права собственности указаны правильно.

  4. Я попробовал метод из Plesk здесь: https://support.plesk.com/hc/en-us/articles/213909545--HOWTO-How-to-add-new-programs-to-a-chrooted-shell-environment-template, не работал. Я даже переименовал папку chroot в chroot_old и переустановил, без разницы.

  5. Я попытался добавить пользовательские правила в файл sshd_config в /etc: Соответствовать имени пользователя ChrootDirectory /var/www/vhosts/chroot Затем перезапустить sshd, нет.

  6. Я также запустил утилиту восстановления plesk по этой ссылке: https://docs.plesk.com/en-US/onyx/a...epair-utility/plesk-repair-utility-web.74654/ и ничего не нашел на мой вопрос.

Я понятия не имею, что еще нужно проверить, и изменение оболочки на / bin / bash не вариант - помимо риска для безопасности у нас есть клиенты с автоматизированными SSH-соединениями, которые требуют chroot для своих путей к файлам / папкам. Моя поддержка сервера поставлена ​​в тупик.

Буду признателен за любую помощь! Спасибо.

1 ответ

Решение

Чтобы решить мою проблему, по существу, chroot был переустановлен. У меня был другой парень, который знает это гораздо больше, чем я, но я попросил его попытаться подвести итог тому, что он сделал, чтобы это могло помочь любому, кто должен сделать то же самое:

  1. По сути, он взял исполняемые файлы, которые существовали в исходном исходном каталоге CHROOT, и скопировал их в исходный каталог CHROOT, который я создал, когда запускал сценарий из документации Plesk выше: https://support.plesk.com/hc/en-us/articles/213909545--HOWTO-How-to-add-new-programs-to-a-chrooted-shell-environment-template.

  2. Затем он очистил все остатки исходной среды CHROOT в каждой учетной записи (например, удалил папки bin, sbin и т. Д. И т. Д. Под учетной записью хостинга (/var/www/vhosts/somedomain.com).

  3. Затем установите для оболочки значение, отличное от параметра chroot (в plesk -> subscription -> доступ к веб-хостингу и сохраните его. Затем установите параметр shell в chroot (/bin/bash(chrooted). Этот последний элемент запускает команды для удаления и добавления). среда chroot для целевого каталога.

Я все еще выполняю шаги 2 и 3 для оставшихся доменов, но до сих пор это работало каждый раз. Надеюсь, это поможет кому-то, у кого есть подобная проблема.

Другие вопросы по тегам