최근 SNI 차단으로 인해 다수의 사이트가 차단되고 있습니다. 웹브라우저는 사이트 접속에 앞서 dns통신을 하게 되는데… 일반적으로 이 단계에서는 암호화통신을 사용하지 않습니다. 이런 특성을 이용하여 dns를 조회하는 단계에서 실제 웹서버의 주소를 찾아가지 못하도록 차단하는 것이 바로 SNI 차단방식입니다. 때문에 SNI 차단방식을 우회하는 방식은 생각보다 쉽습니다. 기존 dns통신을 암호화 된 dns통신으로 바꾸시면 바로 접속이 되게 됩니다. 그러니깐… ESNI 통신을 이용하시면 현재 SNI방식으로 차단된 사이트들이 모두 접속이 된다는 이야기이지요…
그러면 어떻게 ESNI통신을 이용할 수 있을까요? 간단합니다. 웹브라우저로 Firefox를 사용하시면 됩니다. 현재 PC에서 ESNI통신을 이요하여 인터넷을 하도록 해주는 웹브라우저는 Firefox가 유일합니다. 제가 실제 테스트해보니 PC에서 변경할 것은 전혀 없었으며 오직 Firefox만 설치하고 약간의 설정만 하면 되었습니다. Firefox에서는 기본적으로 ESNI가 비활성화 되어 있으므로 사용할 수 있도록 설정해주어야 합니다.
■ 파이어폭스 다운로드 페이지
아래 사이트에서 먼저 Firefox 최신버전을 다운로드하여 설치해주세요
ESNI통신을 지원하는 Firefox버전은 64.0.0 부터입니다.
○ 설치버전: https://www.mozilla.org/ko/firefox/new/
○ 포터블버전: https://www.firefox-usb.com/
http://ww25.firefox-usb.com/?subid1=20231207-1327-146c-9f47-8d620636c9fc
ww25.firefox-usb.com
■파이어폭스에서 ESNI를 사용하도록 설정하기
파이어폭스 주소창에 about:config 를 입력하여 고급환경설정 메뉴로 이동합니다.
고급환경설정 기능 창이 뜨는데.. [위험을 감수하겠습니다] 라는 버튼을 클릭해주세요.
먼저 암호화된 DNS통신을 사용하도록 설정해주세요 (Dns over https 관련 설정)
검색창에 network.trr 이라고 입력해서 나오는 항목중 아래의 세가지를 수정해줍니다. (요즘 network.trr.uri 항목의경우 Firefox 기본값이 바뀌어서 수정하지 않아도 되는 것 같습니다.)
network.trr.bootstrapAddress 1.1.1.1
network.trr.mode 3
network.trr.uri https://dns.cloudflare.com/.well-known/dns-query
ESNI 설정을 활성화시켜줍니다.
검색창에서 ESNI라고 입력해서 나오는 항목중 network.security.esni.enabled 를 true 로 변경해주세요 이것으로 설정은 끝이 났습니다.
ESNI 통신이 잘 설정되었는지 검증해볼 단계입니다.
Firefox 로 아래 사이트에 접속해서 [Check My Browser] 버튼을 클릭해주세요.
https://www.cloudflare.com/ssl/encrypted-sni/https://www.cloudflare.com/ssl/encrypted-sni/
암호화된 DNS 통신이 잘 이루어지고 있다는 결과를 확인할 수 있습니다.
Firefox로 SNI 차단된 사이트에 접속해보면 잘 연결되는 것을 확인 할 수 있습니다.
하지만 크롬과 엣지로 해당 사이트를 접속하면 연결할 수 없다거나 이 페이지를 표시할 수 없다는 메세지가 나오는 것을 확인 할 수 있습니다.
이 방법으로 PC의 설정을 변경시키지 않고 Firefox 설치 및 설정만으로 SNI 차단 우회 가능한 것을 알 수 있습니다.