Как заблокировать выполнение файлов, принадлежавших корню через lighttpd?

Определите "платформу". Вы не можете обоснованно протестировать программное обеспечение, предназначенное на использование в Windows или Mac, на самом деле не выполняя те операционные системы, даже если возможно использовать кросс-компиляцию для создания его на Linux. Для реального тестирования в других операционных системах VMware является большим инструментом.

Вторая часть Вашего вопроса должна, вероятно, быть полностью отдельным вопросом. Но можно использовать OpenOffice.org или Google Docs для замены MS Office, Пинты или GIMP или безотносительно заменять Краску, VNC или Empathy+Vinagre для замены Удаленного рабочего стола, и т.д. и т.д.

Было бы легче ответить на эти вопросы при предоставлении некоторых более определенных вариантов использования.

1
22.04.2011, 22:28
1 ответ

Полномочия могут помочь здесь.

Выполненный lighttpd как ограниченный пользователь. Я полагаю, что можно указать пользователя и группу это lighttpd понижает себя до в lighttpd.conf.

Затем удостоверьтесь, что Ваши исполняемые файлы, достижимые lighttpd, но принадлежавшие корню, chmodредактор к 700. Это позволяет только корню, владелец файла выполнить их. Тщательная установка этого для каталогов, принадлежавших корню, потому что выполняют разрешение на каталогах, необходима для доступа к его содержанию.

Если Вы надеетесь удостоверяться lighttpd никоим образом не может получить доступ к файлам кроме того, что Вы авторизовываете, изучаете lighttpd chroot опции. Это заставляет определенный каталог быть похожим /, каталог верхнего уровня, к lighttpd, предотвращение его от когда-либо получения доступа к чему-либо "выше" той точки.

Это может быть включено при использовании интерпретаторов сценария, таких как php или жемчуг, как lighttpd потребности смочь получить доступ к ним, таким образом, необходимо поместить копию их и их зависимостей (включая файлы конфигурации) в "chroot тюрьма", как это называют. Это не проблема просто копирования исполняемого файла, необходимо скопировать все библиотеки (это может быть различено с ldd {executable-name}.) и другие зависимости и затем Вы ответственны за то, что вручную обновили его, когда Ваш php или жемчуг обновляются.

2
27.01.2020, 23:40

Теги

Похожие вопросы