작년에 저는 중국에서 몇 달간 일했습니다. 저는 실제 VPN을 설정하는 데 전혀 신경 쓰지 않고 SSH 터널을 만들고 이를 통해 연결하도록 브라우저 프록시 설정을 변경했습니다.
모든 것이 훌륭하게 작동했지만(물론 플래시를 제외하고) 괜찮았습니다.
그러나 지금은 중국으로 돌아왔지만 이 접근 방식에는 문제가 있습니다. 나는 지난번과 똑같은 일을 하고,https://ipcheckit.com/내 IP 주소는 실제로 미국에 있는 내 (개인) 서버의 IP이고, 중국에 가기 오래 전에 만든 지문을 사용하여 내 서버에 로그인하고 있으므로 MITM이 불가능합니다. 또한 ipcheckit.com의 인증서는 GeoTrust의 인증서이므로 모든 것이 정상이어야 합니다.
하지만 중국에서 차단된 사이트에는 여전히 접속이 되지 않습니다. 이것이 어떻게 가능할 수 있는지 아시나요?
답변1
Linux 또는 osx를 사용하는 경우 sshuttle을 사용하여 SSH 터널을 만들 수 있습니다. 그러면 모든 패킷이 터널링되고 있는지 확인할 수 있습니다.
https://github.com/apenwarr/sshuttle
./sshuttle -r 사용자 이름@sshserver 0/0 -vv
또한 Google이나 OpenDNS와 같은 공개 DNS 서버를 사용하세요.
또한 DNS 요청을 프록시하려는 경우 명령은 다음과 같습니다.
./sshuttle --dns -vvr 사용자 이름@sshserver 0/0
Sshuttle은 지난 2년 동안 저에게 매우 효과적이었고 베트남 ISP에 의해 차단된 모든 것에 액세스할 수 있습니다.
유일한 단점은 AFAIK(비밀번호 기반 인증)만 지원한다는 것입니다.
답변2
SSH 프록시를 사용하여 DNS 필터링으로 차단된 웹 사이트를 우회하는 경우 DNS 요청이 프록시를 통과하지 못해 DNS 누출이 발생하고 DNS 요청이 검열 DNS 서버로 이동하게 될 수 있습니다. 누출이 있는지 확인하려면 다음으로 이동하십시오.https://ipleak.net/.
Firefox의 프록시 설정 사용 시 문제를 해결하려면 "SOCKS v5 사용 시 프록시 DNS"를 확인하세요.
네가 원한다면모두Windows에서 프록시된 DNS를 사용하는 프로그램을 사용하는 경우 조금 더 어려울 수 있습니다.이 SO 답변프록시를 통해 DNS 요청을 전달하는 자체 DNS 서버를 실행할 것을 제안합니다. 더 쉬운 방법이 있는 사람이 있으면 알려주시면 이 답변을 업데이트하겠습니다.
macOS에서 시스템 프록시 설정을 사용했는데 DNS 누출이 없는 것 같습니다.
답변3
사용해 보세요토르SSH 터널을 통해 TOR의 프록시 설정에서 SSH 터널을 사용하십시오.
답변4
공개 키 인증을 사용하여 DNS를 포함하여 sshuttle을 통해 모든 것을 터널링하는 방법은 다음과 같습니다.
sshuttle --dns -vr <remote username>@<remote IP address> 0/0 --ssh-cmd 'ssh -i <path to private key>'