본문 바로가기
프로그래밍/운영체제, 서버

IIS 요청 필터링(특정 파일 또는 폴더에 접근하지 못하게 설정하기)

by pentode 2018. 8. 14.

IIS를 사용할때 특정 파일이나 특정 폴더를 접근하지 못하게 설정하여야 할 경우가 있습니다. web.config 파일이나 Tomcat 과 연동을 했을때 WEB-INF 폴더 등 입니다. 이때 요청 필터링을 사용할 수 있습니다.


요청 필터링을 사용하기 위해서는 Windows 10 에서는 "윈도우즈 기능 켜기/끄기" 에서 요청 필터링을 체크합니다. Windows Server라면 "서버 역할 페이지 -> 웹 서버 (IIS) -> 웹 서버 -> 보안 -> 요청 필터링" 을 체크합니다.




사이트를 클릭하고 가운데 화면에서 "요청 필터링"을 더블 클릭하여 들어갑니다.




탭에서 숨겨진 세그먼트를 선택합니다. 이미 web.config 가 등록되어 있는것을 확인할 수 있습니다. 오른쪽 위의 "숨겨진 세그먼트 추가..."를 클릭합니다. 팝업창에서 숨겨진 세그먼트에 "WEB-INF" 를 입력하고 확인을 누릅니다.



요청 필터링 전의 WEB-INF/web.xml 을 호출 했을때의 화면 입니다. 파일 내용이 보이는 것을 알 수 있습니다.




요청 필터링을 적용후 화면입니다. 숨겨진 세그먼트(hidden segment)로 경로를 거부하도록 설정되었다는 에러페이지가 보입니다.




요청 필터링은 지정된 URL이 들어가는 모든 요청을 거부합니다. 숨겨진 세그먼트로 WEB-INF 를 등록했다면 URL상에 WEB-INF가 들어가는 모든 요청을 차단합니다. 예로 /js/WEB-INF/ 폴더는 거부 됩니다. /js/WEB_INF_TEST/ 폴더는 요청이 처리되어 집니다.


요청 필터링에 의해 발생하는 에러페이지도 실제 운영에서는 내용을 알 수 없는 커스텀 에러페이지로 교체하여야 하겠습니다.



반응형