Как защитить сайт nginx + express.js от оффлайн браузеров, зловредных ботов и прочей нечисти?

Сразу предупреждаю, вопрос новичка.
Его можно разделить на 2 части:
1. Как правильно настроить прокси-сервер на nginx, что бы отсечь оффлайн браузеры, боты, и все то что может зря грузить сервер?
2. Как "штатными" методами node.js, express.js защитить бизнес-логику проекта от "кражи"?
  • Вопрос задан
  • 801 просмотр
Пригласить эксперта
Ответы на вопрос 3
MarcusAurelius
@MarcusAurelius Куратор тега Node.js
автор Impress Application Server для Node.js
1. Можно ограничить интенсивность запросов с одного IP, в nginx, например при помощи такого модуля nginx.org/ru/docs/http/ngx_http_limit_req_module.html или добавить фаервол/брандмауэр хардварный или софтварный.
2. Исходные коды сервера ни кто не заберет, если Вы не напишите очевидных дыр, через которые их можно будет взять, а клиентский код заберут, но его можно чуточку испортить при помощи обфускации habrahabr.ru/post/112530 и минификации https://www.npmjs.com/package/uglify-js
Ответ написан
Комментировать
zysyl
@zysyl
способы есть разные. Но так или иначе на классическом nginx этого просто так сделать нельзя. Нужны кастомные сборки типа habrahabr.ru/post/260159 . Если у вас есть опыт в lua, то можно написать waf и на стандартный nginx-extras
Ответ написан
Комментировать
@LiguidCool
1) Никак.
2) Запереть клиентов в директории, если у вас есть подгрузка локальных файлов.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы