Jump to content
СофтФорум - всё о компьютерах и не только

Безопасность веб-сервера


Recommended Posts

Собственно, хотел поговорить об этом. Психолог в отпуске :greedy:.

Нашёл неплохую статью по настройке apache от Stricty.

http://www.opennet.ru/base/dev/php4unix.txt.html

Там ничего не сказано о настройке каталогов других пользователей.

Мне непонятно вот что. В httpd.conf указываем open_basedir как /home/username. Тогда пользователь nobody/www, от которого запускаются скрипты может изменять/читать файлы из этого каталога. Допустим, я пропишу open_basedir как /home. Тогда скрипт сможет изменять директории других пользователей. А это плохо.

Link to comment
Share on other sites

И в чем конкретно проблема...

Да, если ты разрешиш работать с папкой /home то фактичеки ты разрешиш nobody запускать скрипты из этой папки.

Все дело в том что по умолчанию в *nix системах доступ к папкам пользователей ограничен.

Я не думаю что какие-то скрипты смогут обойти систему безопастности *nixов.

Т.е. скрипты из папки /home. не смогут изменить другие папки, если специально не изменить права на папки пользователей.

Link to comment
Share on other sites

root_: Я имел ввиду нечто другое. Пользователь qwerty может с помощью скрипта изменить содержимое домашней папки пользователя asdf, т.к. владельцем папки /home будет nobody, от лица которого запускаются php-скрипты.

Link to comment
Share on other sites

/home - владелец nobody

/home/asdf - владелец asdfg

/home/qwert - владлец qwerty

Если у пользователя nobody есть права на запись и изменение /home, то он легко сможет исправить с помощью скриптов и /home/asdf и /home/qwerty.

Link to comment
Share on other sites

root_: Задача состоит в том, чтобы, скажем, пользователь qwerty мог с помощью php-скрипта изменять chmod на файлы в своём каталоге (/home/qwerty).

Link to comment
Share on other sites

man2D: А все скрипты запускаются от nobody, и естественно нужно что бы один пользователь не могу ничего сделать с другим?!

И у каждого есть своя папка и своя группа.

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

получается что nobody должен только выполнят скрипты, а доступ к папкам осуществлятся только на уровне пользлвателей.

chmod 001 /home для nobody и потом соответственно каждому свои права.

Link to comment
Share on other sites

Блин, выручайте :bye1:.

Сделал chown -R apache:apache /home/user, теперь скрипт работает, chmod() с помощью скрипта изменяется. Но потерялся доступ по FTP. Как бы всю эту мутотень настроить по-умному?

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...