IIS로 역방향 프록시(리버스 프록시) 걸기 (https, wss -> http, ws)

1. 사전 준비

IIS와 ARR, URL Rewrite 모듈 설치 필요. 아래 링크들을 사용해 설치.

 

2. 사이트 추가

컨텐츠 경로는 적당히 빈 디렉토리 추천.

 

역방향 프록시용 규칙이 들어가는 web.config가 해당 컨텐츠 경로에 저장됨.

포트와 서버 이름, SSL 인증서 등 바인딩은 알아서 설정.

 

 

3. 프록시에서 헤더 유지 옵션

1. 사진 처럼, 왼쪽의 연결 탭에서 서버 컴퓨터를 선택.

2. 그런 다음 창에서 구성 편집기 선택.

 

3. 섹션은 system.webServer/proxy 로 선택.

4. preserveHostHeader 옵션을 찾아서 True로.

5. 이후 오른쪽 작업 탭의 적용을 눌러 저장.

 

 

4. URL 재작성 서버 변수 추가

6. 조금 전에 만든 사이트를 선택.

7. 그런 다음, URL 재작성 옵션으로 들어감.
8. 오른쪽 ‘작업’ 섹션에서 서버 변수 보기 선택.
9. 추가를 눌러 HTTP_HOST 이름의 서버 변수를 추가.

10. 추가했으면 규칙으로 돌아가기를 선택해서 돌아가기.

 

5. URL 재작성 규칙 추가

11. 규칙 추가 버튼 선택.
12. 역방향 프록시를 선택하고 확인.
 규칙 추가 창의 아래쪽에 있는 아웃바운드 규칙은 활성화 시키지 않는다.


인바운드 규칙에서 요청을 전달할 대상으로 주소 및 포트 번호를 모두 입력해준다.


또한, 여기서는 https,wss -> http,ws 규칙을 만들 예정이므로, SSL 오프로드 사용 규칙을 반드시 해제한다.


모두 설정을 마쳤다면, 확인을 눌러 저장한다.
14. 방금 만든 규칙을 선택하고, 인바운드 규칙에서 편집을 눌러 편집 창으로 들어간다.
15. 입력 조건 규칙에 있는, 기본으로 생성된 조건 규칙을 선택하고 편집을 클릭.
16. 사진처럼 URL스키마를 (http|ws)(s?) 로 수정.
※ http, ws 이외에 다른 스키마도 사용한다면, 그것들도 추가.


17. 고쳤으면 확인 클릭. 이후 규칙에서도 오른쪽의 작업 섹션에서 저장을 클릭해서 저장시킴.

 

6. 완료

윈도우 상의 code-server에 역방향 프록시를 설정한 사진.

그러면 IIS를 활용한 역방향 프록시 설정 끝.

위와 같이 해당 주소로 들어가보면, http, ws에 대해서 역방향 프록시가 올바르게 모두 동작하는 것을 확인.

댓글

Designed by JB FACTORY