[Synology Nas] 역방향 프록시 설정 (Reverse Proxy)

개인 나스에 접속할 때 항상 “mkblog.co.kr:portNumber”와 같은 주소를 입력하여 접속하였다. 하지만 포트 번호를 쓰는 것이 불편하여 “subdomain.mkblog.co.kr”로 접속을 하면 자동으로 “mkblog.co.kr:portNumber”로 접속이 되는 방법을 인터넷에서 찾다가 역방향 프록시라는 기능을 알게 되었다. 완벽한 이해를 하지 못하여 대략적인 설명만 짧게 작성하였다. 상세한 정보는 아래의 출처를 확인하면 될 것 같다. 그리고 구글에서 아주 쉽게 많은 정보를 찾을 수 있다.

기본적으로 “subdomain.mkblog.co.kr”로 접속을 하면 해당 주소의 서버로 접속을 하게 된다. 해당 서버는 web 주소를 확인하여 내부 서버의 다른 포트로 자동 연결해주는 방식이다. 저의 경우 “subdomain.mkblog.co.kr”로 접속하면 저의 나스 443(HTTPS) 포트로 접속을 하게 되고 시놀로지 나스는 해당 접속을 다시 다른 포트로 리디렉션을 하는 형태이다. 아래 설명은 출처 1에서 복사해온 내용이다.

역방향 프록시: 프록시라는 자체가 연결을 보조해주는 도구 같은 역할인데, 원래는 클라이언트 입장에서 다른 프록시 서버를 통해 접속을 우회하게끔 만들어준다고 보시면 됩니다. 즉 외부로 나가는 정보를 가려주거나 바꿔서 정보를 제시해주는 역할을 합니다.  하지만, 역방향 프록시는 나가는 신호를 바꿔주는 것이 아니라 들어오는 정보를 바꿔서 표현을 해줍니다.  즉, 접속 주소 중 192.168.0.99:8080이라는 부분은 sub.mydomain.com으로 완전히 대체시켜서 보여주게끔 할 수 있습니다. 클라이언트 입장에서는 주소의 정보를 다른 주소로 보여지게끔 받아들이기 때문에 역방향 프록시라고 할 수 있습니다.   역방향 프록시의 경우에는 원래의 접속주소를 감추기 위한 보안적인 툴인데, 여기서도 유용하게 활용할 수 있습니다. (출처 1)

시놀로지 나스에서 역방향 프록시를 설정하는 방법을 정리하였다. 우선 그림 1과 같이 시놀로지 나스 제어판에서 “응용 프로그램 포털”을 클릭한다.

그림 1: 시놀로지 나스 제어판 화면

“응용 프로그램 포털”을 클릭하면 그림 2와 같은 창이 나타난다 (현재 저는 총 4개의 역방향 프록시를 설정해 놓았다). 그림 2의 “생성” 버튼을 누르면 그림 3과 같은 창이 나타난다.

그림 2: 응용프로그램 포털 화면

그림 3: 역방향 프록시 규칙 화면

그림 3에서 “설명, 소스 정보, 대상 정보” 부분에 관련 정보를 입력해야 한다.

  • 설명: 아무 이름이나 작성하면 됩니다.
  • 프로토콜 (소스): 도메인이 사용하는 프로토콜을 의미한다. HTTP와 HTTPS를 선택할 수 있다. 저의 경우 모든 접속을 HTTPS로 설정하였기 때문에 HTTPS로 선택하였다.
  • 호스트 이름 (소스): “subdomain.mkblog.co.kr”와 같은 접속을 할 때 사용하는 주소를 작성하면 된다.
  • 포트 (소스): 접속하는 포트를 의미한다. HTTP의 경우 80, HTTPS의 경우 443을 작성하면 된다. 다른 포트 번호를 적어보았는데 확인 버튼이 눌려지지 않는다.
  • 프로토콜 (대상): 이 부분은 내부 서버의 연결 방법을 의미한다. 저는 개인 나스를 사용하기 때문에 안전에 큰 문제가 없다고 판단하여 HTTP를 선택하였다.
  • 호스트 이름 (대상): 이 부분은 내부 서버의 아이피 주소를 입력하면 된다. 저의 경우 아이피 타임 공유기에 나스를 연결하였기 때문에 이 부분에 “192.168.XXX.XXX”와 같은 주소를 입력하였다.
  • 포트 (대상): 이 부분에 내부 서버의 아이피 주소를 접속할 때 사용하는 포트 번호를 작성하면 된다. “mkblog.co.kr:portNumber”의 경우 portNumber 번호를 입력하면 된다.
  • HSTS 활성화: 구글에 검색해보니 HSTS는 해당 소스 호스트 이름 (도메인)으로 HTTP 접속을 시도하면 자동으로 HTTPS로 접속을 리디렉트해주는 기능이라고 한다.
  • HTTP/2 활성화: 기본적으로 HTTPS는 접속 시간이 오래 걸린다고 한다. 이러한 접속 시간을 개선하기 위해서 HTTP/2라는 기술이 제안되었다고 한다. 패킷의 헤드가 작아졌다고 하는데 정확한 이유는 저도 잘 모르겠습니다.

모든 설정을 완료하고 확인 버튼을 누르면 끝이다. 이제 “subdomain.mkblog.co.kr”로 접속을 하면 “mkblog.co.kr:portNumber”로 접속하던 화면이 나올 것이다. 처음에 이 기능을 알고 정말 신기해서 한 20개 정도의 domain을 연결했다가 자주 사용하는 이제는 4개만 사용하고 있다.

출처

  1. http://studyforus.tistory.com/195

 

Leave a Comment