Правильно установите разрешение на / home / user folder для веб-сервера

В настоящее время я настраиваю свой собственный Linux-сервер под управлением CentOs 6. Чтобы проверить безопасность на моем сервере, я написал скрипт PHP, который действует как своего рода «навигатор». Я могу открыть один каталог, открыть файлы и т. Д. И т. Д.

Проблема в том, что мои инструменты позволяют мне подниматься до «/», и я не очень доволен этим. Хотя Apache запускается как «никто», похоже, он может попасть в каждую папку и файл на весь сервер.

Я попытался решить это, как это сделал cPanel, но поскольку у меня нет cPanel, я точно не знаю, как это делается.

В основном у меня это:

/ home / account / public_html / home / anotherAccount / public_html

Я хочу сделать так, чтобы «anotherAccount» не смог получить доступ к файлам «account». На самом деле мне бы это понравилось, так что «anotherAccount» не может даже выйти за пределы своего собственного каталога!

Да, я знаю, что вы думаете: установите suPHP / fastcgi / suExec, но я не могу этого сделать, потому что они едят ресурсы. Я знаю, что это возможно без установки ни одного из них! Я загрузил свой сценарий на какой-то профессиональный, но не очень известный веб-хостинг, и я смог войти внутрь / с ним, но не внутри домашних каталогов, кроме моего собственного. / home / указан как пустой!

Как защитить свои домашние папки?

  • Vagrant + CentOS 7 - Apache не запускается, я не вижу ошибки
  • На Red Hat Enterprise Linux 6.2 как я могу использовать Python 2.7 по умолчанию не Python 2.6? Я все же показывал 2.6?
  • Как обновить tcpdump?
  • Как включить Centos-release-SCL в Centos 6.7?
  • не может обновить ядро ​​(grubby fatal error: невозможно найти подходящий шаблон)
  • Кукольная проблема с sysctl
  • Telnet не выводит эхо из сценария xinetd
  • Почему изменение предельного размера ядра меняет местоположение coredump?
  • One Solution collect form web for “Правильно установите разрешение на / home / user folder для веб-сервера”

    Если вы хотите, чтобы никто не мог получить доступ к вашей домашней папке, кроме вас самих и root, вы должны убедиться, что у других пользователей нет разрешений в вашем homedir. как это:

    chmod o-rwx ~ 

    Это удаляет разрешения на чтение, запись и выполнение из вашего домашнего каталога для других пользователей.

    Если вы также хотите убедиться, что никто из группы, которая владеет вашим родным справочником, не сможет получить к ней доступ, вам также необходимо будет сделать это:

     chmod g-rwx ~ 

    Это также удалит все разрешения для групп членов группы, которая владеет вашим каталогом.

    если вы хотите узнать больше деталей, проверьте manpage man 1 chmod и man 2 chmod . Они должны объяснить вам все подробности.

    КСТАТИ. Мне было бы страшно поставить PHP-скрипт на моем сервере, который позволяет кому-либо использовать файлы браузера, даже если он работает только как пользователь.

    Interesting Posts

    SELinux не позволяет oddjobd-mkhomedir создавать пользовательский домашний каталог в нестандартном месте

    Сценарий, вызывающий ifconfig и службу openvpn, не будет работать, но если интерфейс уже работает, он работает

    Команда sed не возвращает то, что я хочу

    Есть ли способ указать список закрытых ключей для добавления в ssh-agent?

    В чем преимущество логического рабочего каталога?

    curl загружает несколько файлов с синтаксисом привязки

    Как запустить скрипт в нескольких экземплярах? (Сервер Ubuntu)

    динамический компоновщик / загрузчик libs – отсутствует ld.so

    Программное обеспечение OCR для уравнений для получения файла LaTeX

    Запустить 4 программы при запуске в Linux Mint через терминал

    Сделать XServer игнорировать mouseclick, который разбудил монитор от сна

    FDs больше 2, больше (stdin / stdout / sterr)

    Как найти файлы с определенными расширениями, исключая только имена в текущем каталоге?

    Разница между deb и deb-src в sources.list

    tgz-файл дает недопустимые сжатые данные – формат нарушен

    Linux и Unix - лучшая ОС в мире.