PERL - статьи

       

Права доступа к файлам и скриптам


Правильная настройка прав доступа к файлам имеет очень важное значение. От этого зависит безопасность вашего сайта. Кроме того, неправильно настроенные права доступа могут служить причиной ошибок в работе ваших программ и веб страниц.

    Настраивая права доступа к файлам, вы должны знать, под какими именами веб сервер выполняет ваши программы и считывает веб страницы.
  • Все CGI-программы, а также asp-страницы выполняются с именами пользователя и группы - владельца сайта.
  • Все остальное - HTML страницы, программы mod_perl, mod_php, java-сервлеты, jsp-страницы, ... - выполняется с именами пользователя и группы www.
  • SSI-страницы вызываются под именами www.www. Однако запускаемые из SSI-страниц CGI-скрипты имеют имя и группу владельца сайта.

Исходя из этих сведений и настраиваются права доступа:

  • Те файлы и скрипты, которые запускаются под именем www.www, должны иметь признаки чтения всеми. Если это исполняемые файлы (mod_perl), то должны еще быть и признаки выполнения всеми.
  • Файлы, выполняемые под вашими именами пользователя и группы, не обязаны содержать признаки чтения и выполнения всеми. Вы можете даже убрать разрешение чтения/выполнения членами вашей группы (FTP-пользователями вашего сайта). В этом случае вы полностью застрахованы от того, что ваш файл прочитают посторонние пользователи. Вы можете смело располагать прямо в файле такие сведения, например, как пароли доступа к базам данных. Кроме суперпользователя root и самого веб сервера, эти файлы сможете прочитать или исполнить только вы сами.
  • Если файл создан не вами, а одним из ваших FTP-пользователей, то имя владельца не будет совпадать с тем, под которым его будет запускать веб сервер. В этом случае признак чтения (и исполнения, если требуется) должен быть проставлен для группы тоже. Но открывать чтение (и исполнение) для всех в этом случае все равно не требуется.
  • Варианты настройки прав доступа к различным типам файлов вы можете проследить из следующей таблицы.



    CGI Perlrwx --- ---700user.user
    rwx r-x ---750
    CGI Pythonrwx --- ---700user.user
    rwx r-x ---750
    CGI TCLrwx --- ---700user.user
    rwx r-x ---750
    CGI PHPrw- --- ---600user.user
    rw- r-- ---640
    ASP (VBScript,JavaScript)rw- --- ---600user.user
    rw- r-- ---640
    ASP (PerlScript)rw- r-- r--644www.www
    Java сервлетыrw- r-- r--644www.www
    JSP-страницыrw- r-- r--644www.www
    HTML-страницыrw- r-- r--644www.www
    SSI-страницыrw- r-- r--644www.www
    mod_php скриптыrw- r-- r--644www.www
    mod_perl скриптыrwx r-x r-x755www.www



    Содержание раздела