защита cacti

Igor Sysoev is at rambler-co.ru
Thu May 19 14:02:22 MSD 2005


On Thu, 19 May 2005, Denis Shaposhnikov wrote:

> Здравствуйте!
>
> Если есть время, посмотрите пожалуйста, не ошибся ли я где или по
> другому можно сделать?
>
> Задача в следующем. Есть cacti, у которого и php отображающие его и
> конфиг и данные лежат в одном дереве fs, начиная с
> /usr/local/share/cacti/
>
> Нужно,
>  1. Разрешить обращения к php файлам в /cacti/ и только в нем, скроме
>     poller.php.
>  2. Отдавать css и js из /cacti/include/ и далее по дереву.
>  3. Отдавать картинки из /cacti/images/
>  4. Остальное запретить.
>
> Вот, что у меня получилось:
>
>        location / {
>            internal;
>        }
>
>        location = /cacti/ {
>            proxy_pass http://cacti.cacti.vlink.ru/cacti/;
>        }
>
>        location = /cacti/poller.php {
>            internal;
>        }
>
>        location /cacti/images/ {
>            alias /var/jail/cacti/the.jail.local/share/cacti/images/;
>            expires 1M;
>        }
>
>        location ~ /\. {
>            internal;
>        }
>
>        location ~ ^/cacti/[^/]+\.php {
>            proxy_pass http://cacti.cacti.vlink.ru/;
>        }
>
>        location ~ ^/cacti/include/.+\.(css|js)$ {
>            root /var/jail/cacti/the.jail.local/share/;
>            expires 1M;
>        }
>
> Может быть есть какие-нибудь замечания/советы?

Один из location'ов лишний. Я бы оставил без регулярного выражения.

-----------
         location = /cacti/ {
             proxy_pass http://cacti.cacti.vlink.ru/cacti/;
         }

         location ~ ^/cacti/[^/]+\.php {
             proxy_pass http://cacti.cacti.vlink.ru/;
         }
-----------

Кроме того, для "location /cacti/images/" я бы поставил ^~, если для
него действительно не нужно проверять регулярные выражения.


Игорь Сысоев
http://sysoev.ru





More information about the nginx-ru mailing list