Как бы я создал белый список IP для tomcat?
Я чрезвычайно новичок в tomcat, но мне нужно настроить сервер tomcat моей компании, чтобы мы могли разрешить только ограниченные IP-адреса.
Я понимаю, что обычно это работа брандмауэра, но в этом случае это не вариант.
Мы выполняем развертывание на производственном сервере, и пока это происходит, мы должны иметь возможность показать страницу обслуживания, запущенную Apache, которая находится на том же сервере, что и tomcat.
В этом случае, что мне нужно сделать, чтобы разрешить доступ только к выбранным IP-адресам на весь сервер Tomcat?
1 ответ
Взгляните на фильтр удаленных адресов Tomcat:
Фильтр удаленных адресов позволяет вам сравнивать IP-адрес клиента, который отправил этот запрос, с одним или несколькими регулярными выражениями и либо разрешать запрос на продолжение, либо отказывать в обработке запроса от этого клиента.
Изменить. Выбор файла для редактирования зависит от того, хотите ли вы применить фильтр к одному веб-приложению или ко всем из них. С той же страницы, ссылки на которую приведены выше:
Tomcat предоставляет несколько фильтров, которые можно настроить для использования со всеми веб-приложениями, использующими $CATALINA_BASE/conf/web.xml, или настроить для отдельных веб-приложений, настроив их в WEB-INF/web.xml приложения.
Изменить 2: Вот пример для 3 адресов IPv4:
<filter>
<filter-name>Remote Address Filter</filter-name>
<filter-class>org.apache.catalina.filters.RemoteAddrFilter</filter-class>
<init-param>
<param-name>allow</param-name>
<param-value>x\.x\.x\.x|y\.y\.y\.y|z\.z\.z\.z</param-value>
</init-param>
</filter>