SSH vs. VPN: 둘 중 어떤 게 더 안전한가요?

온라인 보안은 아무리 강조해도 지나치지 않습니다. 인터넷에 연결하면, 여러분이 알지 못할지도 모르는 몇 가지 위협에 노출됩니다. 여러분 스스로를 보호할 수 있는 방법이 몇 가지가 있지만, 가장 안전한 방법을 추구하는 것이 중요합니다. 그러니 이 질문을 던져보도록 하겠습니다. SSH와 VPN 둘 중 어떤 게 더 안전한가요?

SSH(Secure Shell) 터널 및 VPN(가상 사설 통신망)은 사이버 보안 업계에서 흔한 용어입니다. 사이버 보안에 대해서 잘 모른다면, 이 두 가지 용어가 이상하게 들릴 수도 있지만, 이 글에서 보다 잘 이해하도록 도와드리겠습니다.

VPN과 SSH 터널은 보안 기술이며 트래픽을 암호화 터널링하기 위하여 채널을 안전하게 보호해주며, 터널링과 관련된 다양한 문제를 해결해줍니다. 기능이 유사하기는 해도, 서로 다른 방식으로 작동합니다. 하지만, 어떤 게 더 안전한가요? 한 번 알아봅시다. 

SSH란 무엇인가요?

SSH는 암호 프로토콜이나 프로그램으로, 안전하지 않은 네트워크에 안전하게 접속할 수 있도록 설계되어 있습니다. SSH는 클라이언트 서버 원칙으로 작동하며 SSH 지원 어플리케이션을 SSH 서버에 연결합니다. UNIX 기반의 명령 인터페이스이자 프로토콜입니다. SSH는 리눅스 명령을 이용하지만, 윈도우, 맥OS, 혹은 리눅스 운영체제에서 실행할 수 있습니다.

SSH는 로그인, 명령 라인, 원격 명령과 같은 네트워크 서비스를 안전하게 보호하기 위해 이용됩니다. 셸(shell)을 이용하여 원격 기기에 액세스하고 명령을 실행할 뿐만 아니라, 안전하게 파일을 전송할 수도 있습니다. 하지만, SSH를 이용하려면, SSH 계정에 로그인해서 데이터에 액세스해야 합니다.

더 나아가, SSH를 이용하여 다른 암호화 인증(예: 공개 열쇠 암호 방식)을 설정할 수 있으며, 기본 포트는 22/TCP입니다(하지만, 더 나은 보안을 위해서 변경할 수 있음). SSH가 안전한 이유는 올바른 공개 열쇠가 있는 경우에만 전송 중인 데이터에 액세스할 수 있기 때문입니다. 덕분에 미승인 액세스를 막을 수 있습니다.

SSH는 다음과 같은 3가지 유형의 데이터 암호화를 이용합니다.

대칭 암호화

대칭 암호화는 한 개의 키를 생성하는데, 이 키는 두 개의 기기가 교환합니다. 그 후에 기기에서 암호화와 암호 해독 과정을 위해서 이 키를 이용합니다. 이 과정은 빠르고 가볍게 진행되며 SSH에서 모든 세션에 이 암호화를 이용합니다.

비대칭 암호화

기기에서 서로 다르지만 관련 있는 두 개의 키인 공개 키와 비공개 키를 이용할 때 SSH는 비대칭 암호화를 이용합니다. 이 암호화를 설정하는 데 관여한 클라이언트 기기는 비공개 키를 이용하여 데이터의 암호를 해독할 수 있습니다. SSH는 대칭 키의 교환을 위해 임시 비대칭 키를 이용합니다.

해싱

SSH는 수신 데이터 패킷을 인증하여 올바른 출처에서 나오는 것인지 확인하기 위하여 해싱을 이용합니다. 그 후에 MAC(Message Authentication Code)과 HMAC(Hashed Message Authentication) 해싱 알고리즘을 이용하여 해시를 생성합니다.

해싱 알고리즘은 데이터 패킷을 이용하여 고유한 해시 스트링을 생성합니다. 데이터 패킷을 전송하는 기기는 항상 해시값과 함께 데이터 패킷을 전송합니다. 수신 기기는 이용되는 알고리즘을 잘 알고 데이터 패킷에 알고리즘을 적용할 수 있습니다. 이는 해시값의 진위 여부를 확인하기 위함입니다. 

SSH는 어플리케이션 계층에서 작동하므로, SSH를 설치하여 모든 트래픽을 수동으로 보호해야 합니다. 모든 트래픽을 암호화하지 않는 SSH의 좋은 점은 연결 속도가 느려지지 않으며 결국 일부 프로그램에만 필요할 수 있다는 점입니다. SSH는 기기에 설치하기 쉽지만, 전문가가 아니라면 설치하기가 복잡할 수 있습니다.

SSH 터널이란 무엇인가요?

SSH (Secure Shell) 터널은 간단히 말하자면 SSH 프로토콜이 생성하는 암호화된 터널입니다. 소프트웨어 기반의 접근법을 따라서 암호화 해제된 트래픽을 암호화된 SSH 채널을 통해서 전송하여 데이터를 보호할 수 있습니다.

SSH는 탄탄한 암호화를 이용하며, SSH 클라이언트가 SOCKS 프록시로 기능하도록 환경 설정할 수 있습니다. SOCKS는 프록시 서버를 이용하여 서버에서 클라이언트로 데이터 패킷을 전송하는 프로토콜입니다. 프록시는 데이터가 목표 지점에 도달하기 전에 무작위 IP 주소를 생성합니다. 프록시는 SOCKS가 IP 주소를 통해서 TCP와 UDP 프로토콜 연결을 설정하도록 합니다.

SOCKS와 SSH의 조합은 기기에서 SOCKS 프록시를 통해서 트래픽을 전송합니다. SSH 클라이언트는 SSH를 통해서 트래픽을 라우팅하므로, 트래픽이 SSH 서버에서 전송된 것처럼 보입니다.

SSH 서버 연결 방법

서버에 연결하기 위하여, SSH 클라이언트를 선택해야 합니다. 맥OS에는 기본 SSH 클라이언트 터미널이 기본적으로 설정됩니다. 또한 리눅스는 SSH를 내장형으로 지원하므로, 터미널을 시작해야 할 것입니다. 하지만, 윈도우 기기의 경우, 윈도우 기반의 시스템에서 기본 SSH 클라이언트를 구비하지 않고 있기 때문에 PuTTY 같은 제3자 클라이언트를 이용해야 할 것입니다.

VPN이란 무엇인가요?

VPN은 Virtual Private Network(가상 사설 통신망)의 약자입니다. VPN은 안전한 온라인 연결을 설정하기 위하여 이용됩니다. VPN은 원격 서버를 통해서 트래픽을 암호화하고 터널링하여, 그 과정에서 인터넷 서비스 제공자(ISP) IP 주소와 위치를 변경합니다. VPN은 여러분이 온라인 상태일 때 개인 정보를 보호하여, 그 누구도 트래픽을 가로채거나, 온라인 활동을 모니터링하거나, 실제 위치를 확인할 수 없도록 합니다.

요즘에는 VPN이 비즈니스 및 개인적인 목적으로 이용되는, 온라인 보안에 매우 중요한 툴입니다. 인기 VPN 업체는 최신 암호화와 보안 프로토콜을 이용합니다. 또한 다른 유용한 기능을 이용하여 최고의 경험을 선사하기도 합니다. VPN은 이용하기 쉬우며 SSH보다 간단하게 설치할 수 있습니다.

VPN에 연결되면, 아웃바운드 데이터가 기기에서 나와서 서버로 가기 전에 암호화합니다. 누군가 트래픽을 가로채려고 기다리고 있다면, 암호화로 인해 데이터를 이해하는 것은 불가능할 겁니다. 그 후에 VPN 서버는 데이터가 목표 지점에 도달하기 전에 데이터의 암호화를 해독합니다.

VPN은 전송 계층에서 작동하는 반면, SSH는 어플리케이션 계층에서 작동합니다. 즉, VPN은 자동으로 보안 VPN 터널을 통해서 트래픽을 라우팅합니다. VPN 이용 시, 많은 부분이 VPN 업체의 품질에 따라서 달라진다는 점을 유의하세요.

VPN을 선택하기 전에 고려해야 할 점

VPN 이용을 시작하기 전에, 고려해야 할 점이 몇 가지가 있습니다.

무료 VPN vs 프리미엄 VPN

유료 VPN은 최고의 보안과 개인 정보 보호 기능을 이용할 수 있다고 보장해주는 최고의 옵션입니다. 무료 VPN은 데이터 수집 등의 이유로 리스크가 있습니다. 좋은 무료 VPN도 있지만, 보안과 개인 정보를 진지하게 생각한다면, 유료 VPN을 선택해야 합니다.

노로그 정책

엄격한 노로그 정책을 준수하는 VPN을 고르고 싶으실 겁니다. 일부 VPN에서는 연결 로그나 기본 로그인 정보를 유지하지만, 이 부분이 신경 쓰이지 않는다면 괜찮습니다. 하지만, VPN에서 이보다 더 많은 정보를 수집하는 경우, 이러한 VPN을 이용해서는 안 됩니다.

보안 표준

시중 최고의 VPN이라면 군사용 암호화를 이용하며 VPN 연결이 끊어지면 데이터를 보호해주는 킬 스위치 같은 보안 기능을 제공합니다. 보통 VPN에서 이용할 수 있는 기타 기능으로는 멀웨어 방지, 난독화 서버 등이 있습니다.

사용자 인터페이스

대부분 VPN의 사용자 인터페이스는 간편하지만, 그중 일부는 다른 VPN보다 더 이용하기 쉽고 기능이 더 적기도 합니다. 한 번의 클릭으로 안전하게 인터넷에 연결하고 싶다면, 여러분이 이용할 수 있는 VPN이 시중에 많이 있습니다.

서버 네트워크

VPN에서 운영하는 서버의 수를 고려해보는 것이 좋습니다. 특히, 특정 위치에서만 독점적으로 이용할 수 있는 콘텐츠에 액세스하고 싶거나 정부 검열을 우회해야 하는 경우에 그렇습니다. 이용할 수 있는 서버가 더 많을수록, 특정 콘텐츠에 액세스하기 더 쉬워집니다. 

SSH의 장점과 단점

SSH의 가장 주요한 장점과 단점은 다음과 같습니다.

SSH의 장점

SSH의 일부 장점에 대해서 알아봅시다.

1. SSH는 서버에 설치하기 간단합니다.

2. 모든 트래픽을 암호화하지는 않으므로, 온라인 활동을 위해 실제 신원을 유지해야 하는 경우에 도움이 됩니다.

3. 일부 VPN 서비스를 구독하는 것보다 SSH 터널을 실행하는 게 더 저렴합니다.

4. SSH의 암호화는 DNS 공격과 데이터 도용으로부터 여러분을 보호해줄 수 있습니다.

5. SSH는 통일되고 표준화된 단일 프로토콜을 이용합니다.

6. SSH는 허용 권한과 비밀번호 공유를 관리하기 쉽게 하며, SSH가 원격 서버 제어를 지원하기 때문에 많은 웹 관리자가 SSH를 이용하여 웹 서버에서 계정을 관리합니다.

SSH의 단점

SSH를 이용하기로 하기 전에, 다음과 같은 단점에 대해서 알고 있는 것이 좋습니다.

1. SSH는 기술을 잘 모르는 사용자가 설치하기 힘들 수 있습니다.

2. SSH는 어플리케이션 계층에서 작동하므로, 어플리케이션에서 발생하는 트래픽만 암호화됩니다. 즉, 보호하고자 하는 기기 내 어플리케이션이라면 무엇이든지 SSH 터널에 맞게 별도로 환경 설정되어야 합니다. 반면에, VPN 연결은 모든 트래픽을 자동으로 암호화하며, 일부 VPN에서는 어떤 앱을 VPN을 통해 암호화하지 않을지 선택할 수 있습니다. 

3. SSH는 TCP만 이용하며, 그래서 ISP와 서버에서 트래픽을 감지하기가 쉽습니다.

4. DNS 유출 보호 기능이 없습니다.

VPN의 장점과 단점

VPN의 가장 주요한 장점과 단점은 다음과 같습니다.

VPN의 장점

VPN의 장점은 다음과 같습니다.

1. VPN은 기기나 라우터 네트워크에서 나오는 모든 트래픽을 자동으로 암호화합니다.

2. VPN은 UDP나 TCP를 구현하며, 손쉽게 감지하거나 차단되지 않는 포트를 이용합니다.

3. VPN은 다수 위치에서 서버를 운영하므로, 어떤 서버가 여러분에게 가장 잘 맞는지 선택하고 가상 위치를 변경할 수 있습니다.

4. VPN 소프트웨어는 VPN을 이용해본 경험이 없어도 쉽게 이용할 수 있습니다. 한 번의 클릭으로 손쉽게 IP 주소를 변경하고 암호화를 구현할 수 있습니다. 

5. 대부분의 VPN은 다양한 기능을 제공하며, 이러한 기능이 VPN 연결 시 보안과 개인 정보 보호를 보장합니다.

6. 프리미엄 VPN을 이용하면 1개의 계정으로 다수의 기기에 연결할 수 있으므로 구독료를 아낄 수 있습니다.

7. 위치 제한 콘텐츠 스트리밍, 토렌트, 검열 우회와 같은 다양한 활동에 VPN을 이용할 수 있습니다.

VPN의 단점

SSH처럼 VPN에도 여러분이 알아둬야 하는 몇 가지 단점이 있습니다.

1. 일부 무료 VPN은 위험할 수 있습니다. 온라인 활동의 로그를 유지하고 제3자와 이러한 로그를 공유할 수 있으며, 탄탄한 암호화 프로토콜을 이용하지 않을 수도 있습니다.

2. 또한, SSH보다 VPN에 구독하는 게 돈이 더 많이 들 수 있습니다.

SSH와 VPN 중에서 어떤 게 더 안전한가요?

VPN과 SSH 터널 둘 다 올바르게 환경 설정한 경우에 거의 동일한 수준의 보안을 제공합니다. 하지만, 특정 측면에서 차이가 있긴 합니다. 예를 들어, SSH는 일반적으로 환경 설정하기가 더 어려우며, 일정 수준의 전문 지식을 필요로 합니다. SSH용 업체는 없습니다.

기업용 네트워크를 보호하려는 기업인이라면, VPN을 이용했을 때 모든 트래픽이 단일 암호화 채널을 통과하기 때문에 더 안전합니다. 하지만, 비공개 네트워크를 안전하게 보호하고 싶다면, SSH와 VPN 둘 다 좋습니다.

한편, VPN을 이용하는 과정은 간단합니다. 여러분은 수많은 VPN 중에서 선택할 수 있으며, VPN은 모든 데이터 트래픽을 보호합니다. 하지만, SSH 터널과 VPN을 함께 이용할 수 있지만, 속도가 정말 느려질 수 있습니다.

결론

SSH 터널링과 VPN은 매우 안전한 기술입니다. SSH는 트래픽 일부를 보호하는 반면, VPN은 모든 데이터를 암호화합니다. SSH와 VPN의 용이성은 여러분의 니즈와 이용 경험에 따라서 달라집니다. 저희가 생각하기에는 VPN이 SSH 터널링보다 더 나은 것 같습니다. VPN이 이용하기 쉽고 SSH보다 더 많은 목적으로 이용될 수 있습니다.