Linux за българи: Форуми

Сигурност => Системна Сигурност => Темата е започната от: blackpearl в Oct 08, 2012, 12:05



Титла: Shell защита
Публикувано от: blackpearl в Oct 08, 2012, 12:05
Здравейте, не съм сигурен дали това е правилният раздел, но искам да попитам има ли начин да се защити уеб сървъра от качване на shell-ове, като например се зададе всички ново качени файлове да са с права без достъп за отваряне? Как ще стане това?


Титла: Re: Shell защита
Публикувано от: ray в Oct 08, 2012, 14:07
Здравей,

Тук (във въпроса) доста неща не са ясни, например:
1. Ако не могат да се отварят/четат за какво се качват?
2.Кой (потребител) ще може, няма да може да ги чете?
3.Май по-коректно е да не могат да се изпълняват?
Стандартните права са: четене, писане и изпълнение (плюс още две).
Може и аз да не съм разбрал въпроса.
Успех, Румен


Титла: Re: Shell защита
Публикувано от: neter в Oct 08, 2012, 16:47
всички ново качени файлове да са с права без достъп за отваряне
За целта ти е нужен umask. Прочети повече за него. За да зададеш umask, с който дадено приложение да създава файлове и директории, трябва да изпълниш командата umask със съответната стойност там, където започва изпълнението. Например, ако искаш да зададеш umask със стойност 777 (което би означавало всички файлове и папки, създадени от Apache в Debian, да са без никакви права за четене, писане и изпълнение; права 000), вмъкни реда
Цитат
umask 777
в init скрипта на Apache (/etc/init.d/apache2) и го рестартирай. Така всички файлове и директории, създадени от Apache ще са без никакви права и остава твоя грижа ръчно да задаваш права на всичко, което Apache е създал и искаш да може някак да го ползва. Ако искаш файловете и директориите да се създават с друга комбинация от права, намалявай съответно цифрите в umask. Например, ако искаш файловете да се създават с права 200 (т.е., собственикът ще може само да пише в тях, другите няма да могат нищо), задай маска 577.
За да прибегнеш до този вариант (да ограничиш правата на създаваните файлове и папки), първо се подсигури, че няма да имаш сайтове на сървъра, които ще се нуждаят от правата, които ще забраниш. Като цяло този вариант е краен и рядко използваем (тъй като в много сайтове има функционалност за качване и четене на качените файлове). Подсигуряване срещу качване на нежелани файлове трябва да се направи в кода на самите сайтове, и е сред приоритетите с най-високо ниво за разработчиците. Е, разбира се, случват се грешки :)


Титла: Re: Shell защита
Публикувано от: blackpearl в Oct 08, 2012, 17:58
Благодаря на двамата за отговорите, но втория отговор, мисля че е най-точен за въпроса ми. След като направя това, кача файловете на хостинга - те ще са с права 000, ще им дам примерно 777, след което евентуално ако някой качи шел, той ще е с права 000 и няма да може да се отваря, нали?