tomcat 도 메 인 바 인 딩 악성 도 메 인 바 인 딩 방지
2860 단어 tomcat
오늘 회사 의 한 서버 가 많은 악성 도 메 인 이름 에 연결 되 었 으 니, 전신 은 우리 가 서둘러 처리 해 야 한다. 그렇지 않 으 면 IP 를 차단 해 야 한다.
서버 는 tomcat 를 사용 합 니 다. 구 글 에서 많은 방법 을 찾 았 습 니 다. 모두 자신의 도 메 인 이름 을 연결 하 는 것 이 라 고 말 했 습 니 다. 다른 도 메 인 이름 을 연결 하지 못 하 게 하 는 방법 은 말 하지 않 았 습 니 다.
처음에 나 는 tomcat / conf / server. xml 를 수정 하고 engine 요 소 를 찾 아 기 존의 localhost 를 모방 하여 host 요 소 를 추가 했다. 예 를 들 어 www. fff. com 을 금지 하고 싶 으 면 이렇게 쓸 수 있다.
<Host name="www.fff.com" appBase="notexists"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false"></Host>
이 중 app Base 는 존재 하지 않 는 디 렉 터 리 이기 때문에 www. fff. com 에서 요청 할 때 실제 애플 리 케 이 션 에 접근 하지 않 습 니 다.그러나 이 는 www. fff. com 만 금지 할 수 있 고 fff. com 을 금지 하지 않 기 때문에 name 이 fff. com 인 host 를 추가 해 야 합 니 다. 그러면 너무 번 거 롭 고 일부 악성 도 메 인 이름 은 예측 할 수 없습니다. 얼마나 많은 도 메 인 이름 이 당신 의 IP 에 연결 되 는 지 모 르 기 때문에 이런 방식 은 통 하지 않 습 니 다.
위의 방식 은 기본 적 으로 허용 하고 금 지 된 것 을 열거 하 며 생각 을 바 꾸 고 기본 적 으로 금지 하 며 허용 하 는 것 을 열거 하 는 것 입 니 다. 그러면 OK 가 되 지 않 습 니까?그래서 두 번 째 방법 이 있 습 니 다.
<!-- default host is forbiden -->
<Engine name="Catalina" defaultHost="forbiden">
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"
resourceName="UserDatabase"/>
<!-- allow hosts -->
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false"></Host>
<Host name="www.zh56.mobi" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false"></Host>
<Host name="222.73.227.231" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false"></Host>
<!-- forbiden host, the appBase is a not exists directory.
If the requested domain is not in the above list of hosts where are allowed, then use this host.-->
<Host name="forbiden" appBase="notexists"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false"></Host>
</Engine>
Engine 의 defaultHost 를 forbiden 으로 설정 합 니 다. 아래 에 name 이 forbiden 인 host 가 있 습 니 다. app Base 는 존재 하지 않 는 디 렉 터 리 입 니 다.허 용 된 host 를 추가 합 니 다.따라서 알 수 없 는 도 메 인 이름 이 라면 forbiden 의 host 를 사용 하여 실제 응용 디 렉 터 리 에 접근 할 수 없습니다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
EC2 인스턴스에 Tomcat 설치전제 조건: Amazon 계정이 있어야 합니다. Amazon 계정에 로그인하고 EC2 인스턴스를 시작합니다. 여기에서 프리 티어를 선택했고 Amazon Linux 2를 실행하는 EC2 인스턴스를 시작했습니다. 시작 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.