Как бы я создал белый список 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>
Другие вопросы по тегам