Какой простой способ гарантировать, что HTTP-запрос с определенным заголовком приходит только с определенного IP-адреса?
Мое веб-приложение работает на Centos6. Я хочу защитить свою заявку. Я хочу убедиться, что HTTP-запрос с определенным заголовком приходит только с определенного IP-адреса.
(Заголовок включает имя пользователя, и я хочу предотвратить подделку заголовка HTTP).
Важное уточнение: запросы без конкретного заголовка должны быть разрешены с любых IP-адресов.
Возможно ли это сделать с помощью IPTable? Другие опции?
1 ответ
Вы можете сделать это только на уровне веб-сервера, который является уровнем приложения и где видны ваши заголовки HTTP. iptables не может обрабатывать заголовки HTTP, потому что он обрабатывает уровень 3, а HTTP - уровень 7.
Проверьте модель OSI. Вы можете использовать nginx или apache2 для этого
Вот два похожих вопроса и ответы на них https://stackoverflow.com/questions/18970620/nginx-reject-request-if-header-is-not-present-or-wrong
В Nginx блокируйте пользователя на основе значения заголовка X