프로젝트를 하다보면 보안 이슈로 인해서 SSL을 사용하는 경우가 많다.

SSL은 해당 사이트를 인정받는 목적이 가장 크지만, 웹 패킷이 종단간에 암호화되는 것도 SSL 적용에 큰 이유가 되기도 한다.


외부망에서만 SSL 서버에 접근한다면 문제가 없겠지만, 내부망에서도 SSL을 사용해서 통신을 하는 경우가 있다.

내부망에서 사설 IP로 접근하게되면 아래와 같은 경고 문구가 표시된다.





SSL 인증서가 확인되지 않았지만, 브라우저에서는 이를 무시하고 해당 경로로 이동할 수 있다. 

하지만 매번 접근하기에는 매우 번거롭고 귀찮다.


이 상황에서 SSL 인증서를 정상적으로 인식되도록 하는 방법은 여러가지가 있다.

1. Loopback을 지원하는 스위치 (공유기)를 사용한다

2. 사설 대역에서의 DNS 서버 구축 후, SSL 인증서의 도메인 주소를 사설 IP로 지정한다.

3. Window 네트워크 어댑터에서 제공하는 Microsoft Loopback Adapter를 설정한다

4. Windows의 Hosts 파일에 도메인을 추가한다.


이중에 가장 간단한 것은 아무래도 4. Host 파일 설정이다.



현재 내가 가지고 있는 도메인은 http://www.chohyunsu.com 이다.

SSL 인증서 또한 www.chohyunsu.com 의 주소로 인증을 받았다.


동일한 사설망에서 위 도메인으로 접근하려면 현재 상황에서는 주소를 찾을 수 없다고 표시된다.




그렇다면 C:\Windows\System32\drivers\etc 경로에서 hosts 파일을 텍스트 에디터로 수정한다. (관리자 권한)

작성법은 간단하다.

왼쪽에 사설 IP를 입력하고, 스페이스나 탭으로 공간을 띄운 다음, 도메인 주소를 입력한다.

(파일 수정 전, 원본 파일은 항상 백업하는 습관을 가지자)



수정이 완료되었으면 수정 사항을 저장하고 닫는다.

그리고 CMD 창에 아래와 같은 명령어를 입력한다.


ipconfig /flushdns



이렇게 해서 아래와 같이 사설 대역에서도 SSL 인증서 오류 없이, 깔끔하게 웹페이지에 접속할 수 있다.






* Loopback이라는 기술은 자기 자신의 공인 IP를 입력하면 공유기에서 패킷을 자기 자신으로 인식하는 기술이다.

* Hosts파일을 수정함에 있어서 포트까지 지정할 수는 없다. 만약 지정하려면 스위치에서 PortForwarding하는 방법이 있다.

+ Recent posts