Image

База знаний → Ограничение доступа к административному разделу сайта по ip в nginx

[Виртуальные сервера]
Дата публикации: 22.03.2024

В зависимости от самой (CMS) системы управления контентом мы рекомендуем ограничивать доступ к административному разделу сайта на уровне службы веб сервера.

На примере с CMS Laravel, где административный раздел существует отдельно от самого сайта, хорошо подойдет следующая конструкция настройки в nginx

...

location /myadmin {
    try_files $uri $uri/ /index.php?$query_string;
    allow 77.xx.80.xxx;
    allow 89.xxx.71.xx;
    deny all;
    }
    
...

Где:

/myadmin - это расположение папки с административным разделом (по примеру https://domain.tld/myadmin)

В нашем примере мы перечислили список ip, с которых данный путь будет разрешен, где Вы сможете пройти дальнейшую авторизацию, используя логин и пароль. С других ip адресов, которых нет в списке будет выдано сообщение: Запрещено.

Данное правило существенно увеличивает безопасность Вашего сайта, имейте ввиду каждую CMS нужно проверять отдельно, так как некоторые административные разделы при таком ограничении могут нарушить работу всего сайта.

Для применения настроек не забудьте перезапустить службу, проверив конфигурацию в целом.

nginx -t
service nginx restart

Для авторизации всегда от одного и того-же статического ip адреса, используйте VPS сервер, например с настроенной службой squid.





Нет комментариев