인터넷 검열을 피하고자 할 때, 많은 이들이 “프록시”나 VPN 서비스를 떠올립니다. 이러한 도구들은 사용자가 정치적인 검열이나 직장 내 IT 규정과 같은 제약을 극복하는 데 도움을 줍니다. 또한, 온라인 활동에 있어 보안을 중시하고 추가적인 개인 정보 보호 장치를 원하는 사용자에게도 유용합니다. 대개 VPN이나 공용 프록시 사이트들은 효과적으로 작동하며, 접근과 설정도 간단합니다. 특히 리눅스 사용자에게는, 웹 서핑 시 불필요한 네트워크 제약을 우회하고 개인 정보를 신속하게 보호할 수 있는 쉬운 방법이 있는데, 바로 SSH 터널을 설정하는 것입니다.
터널링의 작동 원리
터널링은 서버 호스트와 클라이언트 사이에 마치 ‘튜브’나 ‘터널’과 같은 연결을 생성하여, 호스트로부터 클라이언트로 네트워크 트래픽을 효과적으로 전송하는 방식으로 작동합니다. 이는 마치 사용자가 자신의 PC가 아닌, 서버 바로 앞에서 인터넷에 접속하는 것과 같은 효과를 제공합니다.
이러한 터널은 SSH(Secure Shell Protocol)를 통해 구현됩니다. SSH 터널링은 복잡한 홈 서버를 필요로 하지 않습니다. SSH 서버를 실행하는 것은 매우 가벼운 작업이기 때문입니다. 실제로, 마음만 먹으면 휴대폰으로도 실행할 수 있습니다.
터널 설정 방법
SSH 터널링은 SSH 서버 없이는 불가능합니다. 다행히 설정 과정은 매우 간단합니다. 먼저 SSH와 서버 관련 구성 요소를 설치해야 합니다. 운영체제에 따라 설치 명령이 다릅니다.
주요 리눅스 배포판별 SSH 서버 설치 명령어
| 운영체제 | 설치 명령어 |
| 우분투 |
sudo apt install openssh-server |
| 아치 리눅스 |
sudo pacman -S openssh sudo systemctl enable sshd sudo systemctl start sshd |
| 데비안 |
sudo apt-get install openssh-server |
| 페도라/오픈수세 |
sudo systemctl enable sshd sudo systemctl start sshd (페도라 및 OpenSUSE는 SSH가 이미 설치되어 있을 수 있습니다. 그렇지 않은 경우 위의 명령어를 통해 SSH 서비스를 활성화하십시오.) |
서버가 설치되었다면, 이제 터널링을 시작할 시간입니다.
SOCKS 프록시 설정

터널링을 위한 가장 효과적인 방법은 동적 터널링입니다. 이는 트래픽을 안전하게 보호하고 개인 정보 보호를 위한 최적의 선택입니다. SSH 터널은 SOCKS 프록시 연결로 변환되므로, 누구도 연결을 감시할 수 없습니다.
ssh -C -D 1080 [email protected]
여기서 ‘[email protected]’ 부분은 실제 사용자 이름과 터널을 설정하고자 하는 PC의 IP 주소로 대체해야 합니다.
Firefox 브라우저 설정
어떤 종류의 터널을 사용하든, 인터넷 검색 시에는 프록시 설정을 조정해야 합니다. SOCKS 프록시는 대부분의 브라우저에서 잘 작동하지만, 특히 Firefox는 강력한 옵션들을 제공하므로 가장 적합한 선택이 될 수 있습니다.

Firefox를 실행한 후, 메뉴 버튼을 클릭하여 설정 메뉴를 엽니다. “설정”을 선택하여 설정 탭을 불러온 다음, “고급”을 클릭하고 “네트워크” 탭으로 이동합니다.
네트워크 페이지에서 “설정” 버튼을 클릭하여 프록시 설정 창을 엽니다.

“수동 프록시 구성”을 선택하고, SOCKS 호스트 입력란에 “127.0.0.1”을 입력합니다. 포트 번호는 “8888”을 사용하십시오. 확인 버튼을 클릭한 후, 새로운 탭을 열고 주소 표시줄에 “about:config”를 입력합니다.
Firefox ‘about:config’ 설정
Firefox의 ‘about:config’ 설정 페이지는 고급 사용자가 브라우저 내부 설정을 변경하고 조정할 수 있는 영역입니다. SOCKS 프록시가 올바르게 작동하도록 설정을 변경해야 합니다.
about:config 페이지에 표시되는 경고를 확인하고 수락하여 다음 단계로 진행합니다. 경고 메시지를 다시 표시하지 않으려면, 해당 확인란을 선택 해제하십시오.
검색 창에 “network.proxy.socks_remote_dns”를 입력합니다. 나타나는 옵션 중 “False” 값을 더블 클릭하여 “True”로 변경합니다. 이후 SOCKS 프록시는 활성화되어 브라우징을 시작할 수 있습니다.
주의: SSH 터널 연결이 끊기면 터널도 종료됩니다. Firefox를 일반 모드로 사용하려면 네트워크 설정을 다시 원래대로 변경해야 합니다. 그렇지 않으면 정상적으로 작동하지 않을 수 있습니다.
기본 로컬 터널

로컬 터널은 원격지의 연결을 로컬로 전송하는 데 사용됩니다. 이는 원격 PC와 서버를 연결하고자 할 때 가장 적합합니다. 개인 정보 보호보다는 단순히 터널을 통한 원격 연결이 필요하다면 로컬 터널을 활용하십시오.
ssh -L 8888:localhost:80 [email protected]
결론
SSH를 이용한 터널링은 인터넷 트래픽을 필요에 따라 비공개로 전송할 수 있는 훌륭한 방법입니다. 또한, VPN을 사용하고 싶지만 비용이 부담스러운 경우에 좋은 대안이 될 수 있습니다. 그렇다고 리눅스에서 VPN 사용이 나쁘다는 것은 아닙니다. 각각 사용해야 할 적절한 시점과 상황이 있습니다. 리눅스 환경에서 인터넷 트래픽을 안전하게 전송하는 빠른 방법을 찾고 있다면, SSH 터널 설정을 고려해 보세요.