Я розробив веб-додаток, який дозволяє користувачам завантажувати зображення та трансформувати їх, щоб згодом завантажити їх знову перетвореними. Я, очевидно, повинен був надати дозволу користувача apache в каталог, куди користувачі можуть завантажувати:
$ chown root:www-data uploadFolder
$ chmod 1775 uploadFolder
Це дає групі apache всі дозволи, крім видалення.
Додаток створює каталог для кожного сеансу користувача всередині uploadFolder
каталогу з 0700
дозволами та зберігає зображення користувача всередині.
Це uploadFolder
всередині каталогу додатків.
Коли зображення завантажується, воно подається безпосередньо клієнту (як посилання).
Завдання crontab виконує сценарій кожні 20 хвилин, який перевіряє, які сеанси активні, і видаляє всі файли та папки всередині, uploadFolder
які не відповідають жодному активному сеансу.
Це працює добре з двох місяців тому, але я не впевнений, чи може це бути небезпечно для мого додатка, бази даних чи інших сайтів у тому ж VPS.
Хтось знає ризик бути вседозволеним у цій ситуації?
Чи є альтернатива цього уникнути?
Це моя конфігурація сайту apache:
<VirtualHost *:80>
ServerName www.itransformer.es
ServerAlias itransformer.es *.itransformer.es
DocumentRoot /siteFolder
<Directory /var/www/itransformer-2.0/web>
AllowOverride all
Options -Indexes
</Directory>
</VirtualHost>
Додано цей фрагмент коду до конфігурації сайту Apache: (це має уникати читання .htaccess
файлів)
<Directory /uploadFolder>
AllowOverride none
Options -Indexes
</Directory>