완벽하게 차단할 수 없습니다. TCP 연결은 주소의 IP로 이루어 지므로 IP를 찾기 위해 어떤 도메인 이름을 쿼리했는지 알 수있는 방법이 없습니다. DNS 변경이 짧고 절대적인 해결책이 없습니다 (심지어 그때까지는 IP로 액세스를 차단할 수 없습니다)
이 (가) exemple2.org
이 아닌 요청을 차단하는 것도 한 가지 방법입니다. 예를 들어 사용자 정의 필터가있는 경우 :
@Override
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
if (!request.getServerName().equals("exemple2.com")) {
((HttpServletResponse) response).sendError(403);
} else {
chain.doFilter(request, response);
}
}
또는 tomcat 내부에 2/3 호스트를 정의 할 수 있습니다. 하나의 호스트는 응용 프로그램과 함께 exemple2.com
이고 오류 페이지 만 보내는 기본 호스트입니다.
내가 말했듯이 호스트 헤더를 변경하여 쉽게 우회 할 수 있으므로 완벽하지는 않습니다.
감사합니다. 나는 또한 이것을 생각했다. 그러나 요청을 받음으로써 클라이언트는 이미 성공적으로 HTTPS 연결을 만들었고 example1과 example2가 같은 시스템이라는 것을 알게되었습니다. 몇 가지 해결책을 찾아 보겠습니다. – Midson