Windows 및 Linux에서 HTTPS 클라이언트를 통해 SoftEther VPN을 설정하는 방법

VPN(가상 사설망)은 다양한 프로토콜을 사용하지만, 모든 프로토콜이 동일한 수준의 보안과 우회를 제공하는 것은 아닙니다. OpenVPN과 Wireguard는 널리 사용되는 VPN 프로토콜이지만, 그 인기로 인해 일부 네트워크 환경에서 차단되는 경우가 늘고 있습니다.

SoftEther VPN은 이러한 문제를 해결하기 위해 HTTPS 포트(443)를 통해 암호화된 터널을 구축하여 VPN 연결을 마치 SSL 연결처럼 보이게 합니다. 이를 통해 VPN 사용을 더욱 은밀하게 만들 수 있습니다.

다음은 Windows와 Linux 환경에서 HTTPS 연결을 사용하는 SoftEther VPN 클라이언트를 설정하는 방법에 대한 안내입니다.

SoftEther VPN 작동 원리

SoftEther, 즉 “소프트웨어 이더넷”은 오픈 소스 다중 프로토콜 VPN 소프트웨어입니다. 이 소프트웨어는 다양한 VPN 프로토콜을 지원하며, 특히 HTTPS를 통한 VPN을 제공하는 유연성으로 인해 점점 더 많은 사용자들의 관심을 받고 있습니다.

기존의 VPN 차단 방법은 주로 흔히 사용되는 VPN 포트 또는 프로토콜 자체를 차단하는 방식입니다. 하지만 HTTPS를 통한 VPN은 SSL/TLS 암호화 프로토콜을 사용하여 일반적인 HTTP 트래픽처럼 보이도록 위장합니다. 이러한 접근 방식을 통해 대부분의 방화벽과 웹 프록시를 우회하고 탐지를 피할 수 있습니다.

SoftEther VPN은 클라이언트와 서버가 모두 필요합니다. 이 문서에서는 SoftEther 클라이언트 설치 및 설정에 중점을 둡니다. SoftEther 서버 설정에 대한 자세한 내용은 SoftEther VPN 서버 설정 가이드를 참조하세요. 다음 섹션에서 SoftEther 클라이언트를 구성하려면 SoftEther 서버의 호스트 이름 또는 IP 주소 정보가 필요하므로 미리 준비해 두시기 바랍니다.

설치 과정을 자세히 살펴보기 전에, HTTPS를 통한 VPN은 Windows 및 Linux 환경에서만 지원된다는 점을 기억해야 합니다. 또한, Windows 및 Linux 사용자 모두 SoftEther 서버의 호스트 이름 또는 IP 주소, 그리고 사용자 이름과 비밀번호를 미리 확인해 두시기 바랍니다.

Windows에 SoftEther 클라이언트 설치

  • 먼저 SoftEther 웹사이트에서 Windows용 SoftEther 클라이언트를 다운로드합니다. 다운로드 페이지에서 SoftEther VPN Client와 Windows를 선택해야 합니다. 설치 프로그램을 실행하고 화면의 지시에 따라 설치를 진행합니다. 설치 옵션을 선택하는 단계에서는 “SoftEther VPN Client”를 선택해야 합니다.

  • 설치가 완료되면 VPN 클라이언트 관리자를 실행합니다. VPN 연결을 위해 가상 네트워크 어댑터를 생성해야 합니다. “가상 어댑터”를 선택한 다음 “새 가상 네트워크 어댑터”를 클릭합니다. SoftEther VPN 네트워크 어댑터의 고유한 이름을 입력하고 확인을 클릭합니다.

  • 이제 왼쪽 상단에서 “연결”을 선택한 다음 “새 VPN 연결 설정”을 클릭합니다. SoftEther VPN 서버에 해당하는 다음 정보를 입력합니다.

    • 설정 이름: VPN 클라이언트 연결에 사용할 이름을 설정합니다.
    • 호스트 이름: SoftEther VPN 서버의 호스트 이름 또는 IP 주소를 입력합니다.
    • 포트 번호: 443을 입력합니다.
    • 프록시 유형: 대부분의 경우 “직접 TCP/IP 연결”을 선택하는 것이 적합합니다. 만약 연결이 웹 또는 SOCKS 프록시를 거쳐야 한다면 해당 옵션을 선택합니다.
    • 사용할 가상 클라이언트 어댑터: 이전 단계에서 생성한 가상 네트워크 어댑터를 선택합니다.
    • 사용자 인증 설정: “표준 비밀번호 인증”을 선택하고 VPN 사용자 이름과 비밀번호를 입력합니다.
    • 입력이 완료되면 “확인”을 클릭합니다.
  • 생성된 연결을 마우스 오른쪽 버튼으로 클릭한 후 “연결”을 클릭합니다. 모든 정보가 올바르게 입력되었다면 VPN 연결이 성공적으로 이루어질 것입니다.

    이제 필요에 따라 Windows 내에서 가상 네트워크 어댑터 설정을 편집하여 특정 DNS 서버를 사용할 수 있습니다.

  • “네트워크 및 공유 센터”에서 “어댑터 설정 변경”을 클릭한 후 가상 어댑터(이름이 VPN##과 유사)를 마우스 오른쪽 버튼으로 클릭하고 “속성”을 선택합니다. “인터넷 프로토콜 버전 4″를 선택합니다.

  • “기본 DNS 서버” 섹션에 사용할 DNS 서버 주소를 입력합니다.

  • VPN이 정상적으로 연결되었는지 확인하려면 내 IP 주소 확인 사이트를 방문하여 표시되는 IP 주소를 확인합니다. 만약 IP 주소가 SoftEther VPN 서버의 IP 주소와 일치한다면 클라이언트가 올바르게 설정된 것입니다.

    Linux에 SoftEther 클라이언트 설치

    Linux에 SoftEther 클라이언트를 설치하려면 터미널을 열고 루트 권한으로 로그인해야 합니다. 여기서는 Debian/Ubuntu를 기준으로 설명하며, 다른 Linux 배포판에서는 명령어 조정이 필요할 수 있습니다. Linux 설치 과정은 Windows에 비해 조금 더 복잡하므로 단계별로 나누어 설명하겠습니다.

    1. 소프트웨어 저장소 및 종속성 업데이트

    클라이언트 설치를 시작하기 전에 먼저 다음 명령을 사용하여 소프트웨어 저장소를 업데이트합니다.

    apt-get update -y

    다음으로 VPN 클라이언트에 필요한 종속성을 설치합니다.

    apt-get install build-essential gnupg2 gcc make -y

    2. Linux용 SoftEther 클라이언트 다운로드 및 설치

    터미널 기반 브라우저인 Lynx를 설치하고 SoftEther 다운로드 페이지를 엽니다.

     apt-get install lynx -y
    lynx http:

    다운로드 페이지에서 최신 버전 또는 베타 버전을 선택하려면 페이지 하단으로 스크롤합니다. Linux를 선택한 다음 SoftEther_VPN_Client를 선택합니다.

    시스템 아키텍처에 맞는 파일을 선택한 후 “d” 키를 눌러 다운로드합니다. 마지막으로 디스크에 저장합니다.

    Lynx 브라우저를 종료하려면 “q” 키를 누릅니다.

    다운로드한 아카이브 파일을 압축 해제합니다. 파일 이름은 다운로드한 버전에 따라 다를 수 있습니다.

    tar -xvzf softether-vpnclient (press tab to complete)

    압축 해제된 VPN 클라이언트 디렉터리로 이동합니다.

     cd ./vpnclient 

    make 명령어를 실행하여 소프트웨어를 컴파일하고 라이센스 계약에 동의합니다.

     make 

    이제 VPN 클라이언트를 시작합니다.

     ./vpnclient start 

    구성 전에 시스템과 클라이언트의 호환성을 확인합니다. 옵션 3(VPN 도구 사용)을 선택합니다.

    다음 명령을 실행하여 테스트를 진행합니다.

     check 

    모든 테스트가 오류 없이 통과되면 구성 단계로 넘어갈 수 있습니다. vpncmd를 종료하려면 “Exit”를 입력합니다.

    3. VPN 클라이언트 구성

    구성 설정을 시작하려면 vpncmd를 다시 실행하고 옵션 2(VPN 클라이언트 관리)를 선택합니다. localhost를 클라이언트로 승인하려면 Enter 키를 누릅니다.

     ./vpncmd 

    VPN 서버 연결을 위한 새 가상 인터페이스를 만듭니다. 원하는 이름을 사용할 수 있습니다.

     NicCreate <인터페이스 이름> 

    새 고객 계정을 만들고 이름을 지정합니다. 이 단계에서는 SoftEther 사용자 이름과 허브 이름이 필요합니다.

     AccountCreate <계정 이름> /server:<VPN 서버 IP 주소>:443 /HUB:<vpn 허브 이름> /USERNAME:<vpn 사용자 이름> /NICNAME:<가상 네트워크 인터페이스 이름> 

    새로 생성된 계정의 비밀번호와 인증 방식을 설정합니다.

     AccountPasswordSet <계정 이름> /PASSWORD:<vpn 비밀번호> /TYPE:standard 

    다음 명령을 사용하여 새로 생성된 계정의 상태를 확인합니다.

     AccountList 

    4. IP 전달 활성화

    이제 계정이 SoftEther VPN 서버에 연결할 준비가 되었지만, 먼저 IP 전달이 활성화되어 있는지 확인해야 합니다.

     cat /proc/sys/net/ipv4/ip_forward 

    이 명령은 1 또는 0을 반환합니다. 만약 값이 0이라면 IP 전달이 활성화되어 있지 않은 것입니다. 이를 활성화하려면 다음 명령을 사용하여 sysctl.conf 파일을 편집합니다.

     nano /etc/sysctl.conf 

    “net.ipv4.ip_forward=1” 줄을 찾아 주석을 제거합니다. 파일을 저장합니다(Ctrl+O, Ctrl+X).

    5. 첫 번째 SoftEther VPN 연결 만들기

    이제 계정이 VPN 서버에 연결할 준비가 되었습니다. 다음 명령을 실행하여 연결을 시작합니다.

     AccountConnect <계정 이름> 

    이 시점에서 AccountList 명령을 다시 실행하여 계정이 성공적으로 연결되었는지 확인할 수 있습니다.

    AccountList

    DHCP를 통해 VPN 서버에서 IP 주소를 요청합니다. 가상 인터페이스 이름 앞에 “vpn_” 접두사를 붙여야 합니다. 예를 들어 “vpn_sevpn”과 같이 이름을 지정합니다.

     dhclient <가상 어댑터 이름> 

    VPN 서버에서 할당받은 IP 주소를 확인해야 합니다. 이 주소는 다음 단계에서 중요하므로 잘 기억해 둡니다.

    다음 명령을 사용하면 가상 인터페이스의 이름과 할당된 IP 주소를 확인할 수 있습니다. 위 이미지에서는 파란색으로 강조 표시되어 있습니다.

     iconfig <인터페이스 이름> 

    6. 정적 라우팅 설정

    이제 모든 트래픽이 기본 네트워크 게이트웨이가 아닌 VPN을 통해 전달되도록 정적 경로를 설정해야 합니다. 현재 라우팅 테이블을 보려면 netstat 명령어를 실행합니다.

     netstat -rn 

    위 이미지에서는 VPN 서버(vpn_sevpn)에서 할당한 IP 주소와 기본 게이트웨이(ens33)를 확인할 수 있습니다. 모든 네트워크 구성은 다르므로 라우팅 테이블이 제공된 예와 다를 수 있습니다. 여기서 기본 게이트웨이 IP는 이전 단계에서 VPN 서버에서 DHCP로 할당받은 IP 주소와는 다릅니다.

    기본 게이트웨이 IP를 확인했다면, 기본 게이트웨이를 통해 VPN 서버의 IP 주소로 향하는 새 경로를 추가합니다. 여기서 VPN 서버 IP는 DHCP를 통해 서버에서 받은 IP가 아니라 SoftEther VPN 서버 자체의 IP 주소입니다.

     ip route add <VPN 서버 IP 주소>/32 via <기본 게이트웨이 IP 주소> 

    기존 기본 경로를 삭제합니다.

     ip route del default via <기본 게이트웨이 IP 주소> 

    라우팅 경로 변경이 완료되면 위의 이미지와 같이 라우팅 테이블이 변경됩니다. 기본 게이트웨이가 이제 VPN 서버에서 DHCP를 통해 할당된 IP 주소로 변경되었습니다.

    이제 Google DNS 서버와 같은 외부 IP를 핑하여 연결을 테스트합니다.

    ping -c4 8.8.8.8

    마지막으로, 공용 IP 주소를 확인하여 SoftEther 클라이언트 연결이 올바르게 작동하는지 확인합니다.

     wget -qO- http: 

    반환된 IP 주소가 VPN 서버의 IP와 같다면 모든 설정이 정상적으로 완료된 것입니다.

    7. VPN 연결 끊기

    VPN 연결을 끊으려면 다음 명령을 사용하여 VPN 클라이언트 구성 스크립트를 다시 실행해야 합니다.

    ./vpncmd

    이제 AccountDisconnect 명령을 실행합니다.

     AccountDisconnect <계정 이름> 

    이제 클라이언트 구성을 종료하고 가상 네트워크 인터페이스에서 DHCP 임대를 해제합니다.

    dhclient -r <가상 인터페이스 이름>

    그런 다음 VPN 클라이언트를 중지합니다.

     ./vpnclient stop 

    이제 VPN 서버에 대한 경로를 제거하여 라우팅 테이블을 편집합니다.

     ip route del <VPN 서버 IP 주소>/32 

    마지막으로 네트워크의 로컬 게이트웨이를 통해 기본 경로를 다시 추가합니다.

     ip route add default via <로컬 게이트웨이 주소> 

    이제 네트워크 연결이 원래 상태로 복원되었습니다.

    SoftEther VPN을 사용하여 온라인 개인 정보 보호

    SoftEther 클라이언트를 성공적으로 설정하고 VPN 서버에 연결하면 온라인 보안이 크게 강화됩니다. SoftEther VPN은 VPN 탐지 및 차단 시도에도 효과적으로 대응하며, 사용자의 활동을 안전하게 보호합니다.