웹사이트 검색

Rocky Linux 9에 Wireguard VPN을 설치하는 방법


이 페이지에서

  1. 전제 조건
  2. Wireguard 커널 모듈 활성화\n
  3. 서버 및 클라이언트 키 쌍 생성
    1. 서버 키 쌍 생성
    2. 클라이언트 키 쌍 생성

    Wireguard는 IPSec, IKEv2 및 OpenVPN을 대체하는 오픈 소스 VPN 프로토콜입니다. Wiruguard는 Linux 및 Unix 운영 체제용으로 설계되었으며 Linux 커널 공간에서 실행되어 Wireguard를 더 빠르고 안정적으로 만듭니다. Wireguard는 두 대 이상의 컴퓨터 간에 보안 터널 연결을 만드는 데 사용됩니다.

    Wireguard는 IPSec, IKEv2 및 OpenVPN과 같은 VPN 프로토콜을 대체하는 것을 목표로 합니다. Wireguard는 더 가볍고 빠르며 설정하기 쉽고 효율적입니다. 동시에 Wiregurad는 VPN 프로토콜의 보안 측면을 희생하지 않았습니다. Wireguard는 Noise 프로토콜 프레임워크, Curve25519, ChaCha20, Poly1305, BLAKE2, SipHash24, HKDF 및 신뢰할 수 있는 보안 구성과 같은 최신 암호화를 지원합니다.

    OpenVPN, IPSec 및 IKEv2와 같은 다른 VPN 프로토콜과 비교할 때 wireguard는 새로운 VPN 프로토콜입니다. Wireguard는 2015년에 Jason A. Donenfeld에 의해 대체 VPN 프로토콜로 출시되었으며, 2020년과 같은 해에 Linus Torvalds에 의해 Linux 커널 v5.6에 병합되었으며 FreeBSD 13에도 포팅되었습니다.

    이 안내서는 Rocky Linux 9 서버에 Wirgeuard Server를 설치하고 설정하는 방법을 알려줍니다. 또한 Wireguard 서버에 연결하기 위해 클라이언트 시스템을 설정하는 방법도 배웁니다.

    이 예제에서는 모든 Linux 배포를 클라이언트 시스템으로 사용할 수 있습니다. 하지만 이 가이드에서는 RHEL9 기반 배포판 중 하나인 Rocky Linux 클라이언트 시스템을 사용합니다.

    전제 조건

    이 가이드를 시작하려면 다음 요구사항이 있는지 확인해야 합니다.

    • A Rocky Linux 9 서버 - 이 예에서는 호스트 이름이 wireguard-rocky인 Rocky Linux를 사용합니다.\n
    • sudo/root 관리자 권한이 있는 루트가 아닌 사용자.\n
    • SELinux가 허용 모드에서 실행 중입니다.\n

    이제 전제 조건이 준비되었으므로 이제 Wireguard 서버 설치 및 구성을 시작할 수 있습니다.

    Wireguard 커널 모듈 활성화

    Rocky Linux 9의 최신 버전은 기본적으로 그 위에 내장된 wireguard 커널 모듈인 기본 Linux 커널 5.14와 함께 제공됩니다. 이 단계에서는 Wirguard 커널 모듈을 활성화하고 Rocky Linux 서버에 wireguard-tools를 설치합니다.

    아래 modprobe 명령을 실행하여 wireguard 커널 모듈을 활성화합니다. 그런 다음 lsmod 명령을 통해 활성화된 커널 모듈 목록을 확인합니다.

    sudo modprobe wireguard
    lsmod | grep wireguard

    wireguard 커널 모듈이 활성화된 경우 다음과 유사한 출력을 수신해야 합니다.

    wireguard 모듈을 영구적으로 로드하려면 아래 명령을 실행하여 새 구성 파일을 /etc/modules-load.d/ 디렉터리에 추가할 수 있습니다. 이렇게 하면 시스템 부팅 시 wireguard 커널 모듈이 영구적으로 로드됩니다.

    sudo echo wireguard > /etc/modules-load.d/wireguard.conf

    Wireguard 커널 모듈이 활성화된 후 Wireguard 서버를 관리하려면 wireguard-tools 패키지를 설치해야 합니다. 여기에는 키 생성, Wireguard 서버 시작 등이 포함됩니다.

    wireguard-tools를 설치하려면 아래 dnf 명령을 실행하십시오. 확인 메시지가 표시되면 y를 입력하고 ENTER를 눌러 계속 진행합니다.

    sudo dnf install wireguard-tools

    이제 wireguard-tools 설치가 시작됩니다.

    이제 Rocky Linux 서버에 wireguard 커널 모듈이 활성화되고 wireguard-tools가 설치되었습니다. 다음으로 wireguard-tools를 통해 Wireguard 서버와 클라이언트 모두에 대한 키 쌍을 생성하는 방법을 살펴보겠습니다.

    서버 및 클라이언트 키 쌍 생성

    wireguard-tools는 Wireguard 배포를 관리하기 위한 사용자 공간 명령줄을 제공합니다. wireguard-tools에서 제공하는 두 가지 주요 유틸리티:

    • wg - wireguard 터널 인터페이스를 설정하는 데 사용할 수 있는 명령줄 유틸리티입니다. 이 유틸리티를 사용하면 키 쌍을 생성하고 현재 Wireguard 런타임 및 인터페이스를 확인하고 Wireguard 터널 인터페이스를 설정할 수 있습니다.\n
    • wg-quick - Wireguard 인터페이스를 관리할 수 있는 간단한 명령줄입니다. wg-quick 명령을 통해 모든 wireguard 인터페이스를 시작, 중지 및 다시 시작할 수 있습니다.\n

    Wireguard 커널 모듈을 활성화하고 wireguard-tools를 설치한 후 첫 번째 단계는 Wireguard 서버와 클라이언트 모두에 대한 키 쌍을 생성하는 것입니다. 이것은 wg 명령 유틸리티를 통해 수행할 수 있습니다.

    서버 키 쌍 생성

    아래 wg genkey 명령을 실행하여 서버 개인 키 /etc/wireguard/server.key를 생성합니다. 그런 다음 기본 권한을 0400으로 변경하여 다른 사용자 및 그룹에서 쓰기 및 실행을 비활성화합니다.

    wg genkey | sudo tee /etc/wireguard/server.key
    sudo chmod 0400 /etc/wireguard/server.key

    그런 다음 아래 명령을 실행하여 wireguard 서버 /etc/wireguard/server.pub에 대한 공개 키를 생성합니다. wireguard 공개 키는 wireguard 개인 키 /etc/wireguard/server.key에서 파생됩니다.

    sudo cat /etc/wireguard/server.key | wg pubkey | sudo tee /etc/wireguard/server.pub

    산출:

    다음으로 아래의 cat 명령을 통해 wireguard 서버의 공개 키와 개인 키를 모두 확인합니다.

    cat /etc/wireguard/server.key
    cat /etc/wireguard/server.pub

    공개 키와 개인 키에 대해 서로 다른 키가 있을 수 있지만 출력은 다음과 유사합니다.

    클라이언트 키 쌍 생성

    Wireguard 서버 키 쌍을 생성한 후 클라이언트용 새 키 쌍을 생성합니다. 이 예에서는 이름이 client1인 새 키 쌍을 생성합니다.

    아래 명령을 실행하여 새 디렉터리 /etc/wireguard/clients를 만듭니다. 이 디렉토리는 클라이언트 키 쌍을 저장하는 데 사용됩니다.

    mkdir -p /etc/wireguard/clients

    다음으로 아래 wg genkey 명령을 실행하여 클라이언트 개인 키 /etc/wireguard/clients/client1.key를 생성합니다. 그런 다음 wg pubkey 명령을 통해 클라이언트 공개 키 /etc/wireguard/clients/client1.pub를 생성합니다.

    wg genkey | tee /etc/wireguard/clients/client1.key
    cat /etc/wireguard/clients/client1.key | wg pubkey | tee /etc/wireguard/clients/client1.pub

    산출:

    이제 아래 cat 명령을 사용하여 클라이언트 공개 키와 개인 키를 모두 확인하십시오.

    cat /etc/wireguard/clients/client1.key
    cat /etc/wireguard/clients/client1.pub

    키는 wireguard 서버와 클라이언트 키 쌍 모두에 대해 유사해야 하며 이는 base64와 유사한 키입니다.

    Wireguard 서버 구성

    이 단계에서는 wireguard 서버에 대한 새 구성 파일을 만들고 wireguard 인터페이스를 설정하고 클라이언트 연결을 위한 피어 연결을 설정합니다. 여기에는 wireguard VPN 서브넷의 구성, wireguard 서버의 IP 주소 및 피어 클라이언트의 IP 주소가 포함됩니다.

    시작하려면 아래의 nano 편집기 명령을 사용하여 새 wireguard 서버 구성 파일 /etc/wireguard/wg0.conf을 만듭니다.

    sudo nano /etc/wireguard/wg0.conf

    파일에 다음 줄을 추가하고 Wirguard 서버 개인 키 server.key로 PrivateKey를 변경해야 합니다. 이를 통해 IP 주소 10.8.0.1에서 실행되도록 Wireguard 서버 인터페이스도 설정합니다. 그리고 클라이언트 연결을 위해 UDP 포트 51820을 사용하게 됩니다. 마지막으로 Wireguard 인터페이스가 꺼진 경우에도 변경 사항이 wireguard 구성 파일에 저장되도록 하는 SaveConfig 매개 변수도 활성화합니다.

    [Interface]
    # Wireguard Server private key - server.key
    PrivateKey = iHaI5bkEbW8wqTQDbU/KITGhxtKoiezWVohVZsKwj3w=

    # Wireguard interface will be run at 10.8.0.1
    Address = 10.8.0.1/24

    # Clients will connect to UDP port 51820
    ListenPort = 51820

    # Ensure any changes will be saved to the Wireguard config file
    SaveConfig = true

    그런 다음 다음 줄을 추가하여 클라이언트 피어 연결을 정의합니다. 클라이언트 공개 키 client1.pub로 PublicKey 매개변수를 변경해야 합니다. AllowedIPs 매개변수를 사용하여 이 피어에 액세스할 수 있는 Wireguard 클라이언트를 지정할 수 있습니다. 이 예에서는 IP가 10.8.0.8인 클라이언트만 이 피어 연결에 액세스할 수 있습니다. 또한 172.16.100.0/24와 같은 내부 네트워크 서브넷 범위가 wireguard 피어에 액세스하도록 허용할 수도 있습니다.

    [Peer]
    # Wireguard client public key - client1.pub
    PublicKey = iWskvxyj+QK4185xO6Z2Fb0XYo1jGyiyI3iKbyGTkT8=

    # clients' VPN IP addresses you allow to connect
    # possible to specify subnet ⇒ [172.16.100.0/24]
    AllowedIPs = 10.8.0.8/24

    완료되면 파일을 저장하고 종료합니다.

    이것으로 이제 Wreguard 서버의 기본 구성을 만들었습니다. 또한 클라이언트 공개 키 client1.pub를 사용하여 클라이언트에 대한 피어 연결을 정의했습니다. 다음 단계에서는 wireguard 서버에서 포트 포워딩을 설정하고 트래픽 라우팅을 위한 방화벽 규칙을 설정합니다.

    포트 포워딩 설정

    VPN 서버를 설정하려면 배포 서버에서 포트 전달을 활성화해야 합니다. 이 단계에서는 /etc/sysctl.conf 파일을 통해 Rocky Linux 서버에서 포트 포워딩을 활성화합니다.

    아래의 nano 편집기를 사용하여 구성 파일 /etc/sysctl.conf를 엽니다.

    sudo nano /etc/sysctl.conf

    줄 맨 아래에 다음 줄을 추가합니다. 이 라인은 IPv4 및 IPv6 모두에 대해 포트 포워딩을 활성화합니다. IPv6이 필요한지 여부에 관계없이 줄 시작 부분에 주석 #을 입력하여 비활성화할 수 있습니다.

    # Port Forwarding for IPv4
    net.ipv4.ip_forward=1

    # Port forwarding for IPv6
    net.ipv6.conf.all.forwarding=1

    파일을 저장하고 완료되면 편집기를 종료합니다.

    이제 아래의 sysctl 명령을 실행하여 /etc/sysctl.conf 파일에 변경 사항을 적용하십시오.

    sudo sysctl -p

    그러면 다음과 유사한 출력이 표시됩니다.

    포트 포워딩이 활성화되면 다음으로 클라이언트에서 와이어가드 서버의 특정 네트워크 인터페이스로 트래픽을 라우팅하는 데 사용할 방화벽을 설정합니다.

    방화벽 설정

    이 단계에서는 Wireguard 서버에 방화벽을 설정합니다. 방화벽을 통해 클라이언트 트래픽을 wireguard 서버의 특정 네트워크 인터페이스로 라우팅합니다. 이것은 firewalld에 새 규칙을 영구적으로 추가하거나 Wireguard 구성 파일에서 wireguard PostUp 및 PostDown 매개변수를 사용하여 수행할 수 있습니다.

    시작하기 전에 아래 ip 명령을 실행하여 wireguard 서버에서 인터넷 액세스에 사용되는 기본 네트워크 인터페이스를 확인하십시오.

    ip route show default

    다음과 유사한 출력이 표시됩니다. 이 예에서 wireguard 서버는 인터넷 액세스를 위해 인터페이스 eth0을 사용했습니다. 서버에 다른 이름의 네트워크 인터페이스가 있을 수 있습니다.

    다음으로 아래의 nano 편집기 명령을 사용하여 wireguard 서버 구성 파일 /etc/wireguard/wg0.conf을 엽니다.

    sudo nano /etc/wireguard/wg0.conf

    [Interface] 섹션에 다음 줄을 추가합니다.

    PostUp = firewall-cmd --zone=public --add-masquerade
    PostUp = firewall-cmd --direct --add-rule ipv4 filter FORWARD 0 -i wg -o eth0 -j ACCEPT
    PostUp = firewall-cmd --direct --add-rule ipv4 nat POSTROUTING 0 -o eth0 -j MASQUERADE

    PostDown = firewall-cmd --zone=public --remove-masquerade
    PostDown = firewall-cmd --direct --remove-rule ipv4 filter FORWARD 0 -i wg -o eth0 -j ACCEPT
    PostDown = firewall-cmd --direct --remove-rule ipv4 nat POSTROUTING 0 -o eth0 -j MASQUERADE

    파일을 저장하고 종료합니다.

    • PostUp 매개변수는 Wirguard 서버가 VPN 터널을 시작할 때마다 실행됩니다.\n
    • PostDown 매개변수는 Wireguard 서버가 VPN 터널을 중지할 때마다 실행됩니다.\n
    • firewall-cmd --zone=public --add-masquerade 명령은 firewalld에서 마스커레이드를 활성화합니다.\n
    • firewall-cmd --direct --add-rule ipv4 filter FORWARD 0 -i wg -o eth0 -j ACCEPT 명령은 wireguard 인터페이스에서 eth0으로의 트래픽에 대해 firewalld rich-rule을 추가합니다.\n
    • firewall-cmd --direct --add-rule ipv4 nat POSTROUTING 0 -o eth0 -j MASQUERADE 명령은 eth0 인터페이스를 통해 NAT를 활성화합니다.\n
    • PostDown 매개변수에서 이러한 모든 명령은 PostUp 매개변수에 대한 명령이 실행되는 동안 적용된 규칙을 제거하여 firewalld의 변경 사항을 되돌리는 데 사용됩니다.\n

    다음으로 아래의 firewall-cmd 명령을 실행하여 wirguard 클라이언트에 사용할 UDP 포트 51820을 엽니다. 그런 다음 방화벽을 다시 로드하여 변경 사항을 적용합니다.

    sudo firewall-cmd --add-port=51820/udp --permanent
    sudo firewall-cmd --reload

    마지막으로 아래의 firewall-cmd 명령을 통해 방화벽 규칙을 확인합니다.

    sudo firewall-cmd --list-all

    다음과 같은 출력을 수신해야 합니다. Wireguard 클라이언트 포트 51820/udp가 firewalld에 추가되었습니다.

    이것으로 이제 wireguard 서버에서 포트 포워딩을 활성화하고 wireguard 인터페이스에서 특정 네트워크 인터페이스로 트래픽을 라우팅하도록 방화벽을 구성했습니다. 이제 wireguard 서버를 시작할 준비가 되었습니다.

    Wireguard 서버 시작

    이 단계에서는 Wireguard 서버를 시작하고 활성화합니다. 또한 Wireguard 서버를 확인하고 Wireguard 서비스에서 생성할 wg0 인터페이스를 확인합니다.

    아래 systemctl 명령 유틸리티를 실행하여 wireguard 서버를 시작하고 활성화합니다. 이렇게 하면 wireguard 서비스가 시작되고 새 wireguard 인터페이스 wg0이 생성됩니다.

    sudo systemctl start 

    아래 systemctl 명령을 사용하여 wireguard 서버를 확인합니다. 이렇게 하면 wireguard 서버가 실행 중인지 확인할 수 있습니다.

    sudo systemctl status 

    그러면 다음과 유사한 출력이 표시됩니다. Wireguard 서버가 이제 활성화되었으며 부팅 시 자동으로 실행됩니다. 그리고 Wireguard 서버의 상태가 실행 중입니다.

    아래의 ip 명령을 통해 wireguard 서버에서 생성한 인터페이스 wg0도 확인할 수 있습니다.

    ip a show wg0

    Wireguard 서버 구성 파일 /etc/wireguard/wg0.conf와 일치하는 wg0의 자세한 인터페이스를 받게 됩니다. wg0 인터페이스에는 wireguard 구성 파일 /etc/wireguard/wg0.conf에 설명된 대로 IP 주소 10.8.0.1이 있어야 합니다.

    Wireguard 서버를 시작하는 데 사용할 수 있는 또 다른 방법은 wireguard-tools에서 제공하는 wg-quick 명령 유틸리티를 사용하는 것입니다.

    wg-quick up을 실행하여 wireguard 서버를 시작하고 wg-quick down을 실행하여 wireguard 서버를 중지합니다. 또한 Wireguard 서버 구성 파일 /etc/wireguard/wg0.conf의 전체 경로를 지정해야 합니다.

    sudo wg-quick up /etc/wireguard/wg0.conf
    sudo wg-quick down /etc/wireguard/wg0.conf

    이 시점에서 Wireguard 서버는 Rocky Linux 서버에서 실행 중입니다. 다음 단계에서는 클라이언트 시스템을 설정하고 이를 wireguard 서버에 연결합니다.

    클라이언트 설정 및 Wireguard 서버에 연결

    이 단계에서는 Linux 클라이언트 시스템에 와이어가드를 설정한 다음 클라이언트 시스템을 와이어가드 서버에 연결합니다. 이 예에서는 호스트 이름이 client1인 Rocky Linux를 클라이언트 시스템으로 사용하지만 모든 Linux 배포판을 사용할 수도 있습니다.

    클라이언트 컴퓨터에 로그인하고 아래 dnf 명령을 실행하여 클라이언트에 wireguard-tools 패키지를 설치합니다. 이 작업은 DNS 확인자를 관리하기 위해 wireguard-tools에서 사용할 종속성 systemd-resolved도 설치합니다.

    sudo dnf install wireguard-tools

    메시지가 표시되면 y를 입력하고 ENTER를 눌러 계속 진행합니다.

    wireguard-tools 설치 중에 systemd-resolved 패키지도 종속 항목으로 설치됩니다.

    아래 명령을 실행하여 systemd-resolved 서비스를 시작하고 활성화하십시오.

    sudo systemctl start systemd-resolved
    sudo systemctl enable systemd-resolved

    wireguard-tools가 설치되고 systemd-resolved가 실행되면 다음으로 systemd-resolved를 DNS 백엔드로 사용하도록 NetworkManager를 설정합니다.

    아래의 nano 편집기 명령을 사용하여 NetworkManager 구성 파일 /etc/NetworkManager/NetworkManager.conf을 엽니다.

    sudo nano /etc/NetworkManager/NetworkManager.conf

    아래와 같이 [main] 섹션에 dns 매개변수를 추가합니다.

    [main]
    dns=systemd-resolved

    파일을 저장하고 편집기를 종료합니다.

    다음으로 아래 명령을 실행하여 /etc/resolv.conf 파일을 제거하고 systemd-resolved에서 관리하는 resolv.conf 파일의 symlink 파일을 새로 생성합니다.

    rm -f /etc/resolv.conf
    sudo ln -s /usr/lib/systemd/resolv.conf /etc/resolv.conf

    이제 NetworkManager 서비스를 다시 시작하여 변경 사항을 적용하십시오.

    sudo systemctl restart NetworkManager

    NetworkManager가 구성되었으므로 이제 wireguard 클라이언트를 설정할 준비가 되었습니다.

    아래 nano 편집기를 사용하여 새 파일 /etc/wireguard/wg-client1.conf를 만듭니다.

    sudo nano /etc/wireguard/wg-client1.conf

    파일에 다음 줄을 추가합니다.

    [Interface]
    # Define the IP address for the client - must be matched with wg0 on Wireguard Server
    Address = 10.8.0.8/24

    # Private key for the client - client1.key
    PrivateKey = 4FsCdtKr9GrLiX7zpNEYeqodMa5oSeHwH/m9hsNNfEs=

    # Run resolvectl command
    PostUp = resolvectl dns %i 1.1.1.1 9.9.9.9; resolvectl domain %i ~.
    PreDown = resolvectl revert %i

    [Peer]
    # Public key of the Wireguard server - server.pub
    PublicKey = aK+MQ48PVopb8j1Vjs8Fvgz5ZIG2k6pmVZs8iVsgr1E=

    # Allow all traffic to be routed via Wireguard VPN
    AllowedIPs = 0.0.0.0/0

    # Public IP address of the Wireguard Server
    Endpoint = 192.168.5.59:51820

    # Sending Keepalive every 25 sec
    PersistentKeepalive = 25

    파일을 저장하고 완료되면 편집기를 종료합니다.

    [Interface] 섹션에서 다음을 정의해야 합니다.

    • 클라이언트의 IP 주소는 Wireguard 서버의 서브넷과 일치해야 합니다. Wireguard 클라이언트는 이 예에서 IP 주소 10.8.0.8을 얻습니다.
    • solventctl 명령을 통해 클라이언트의 DNS 서버를 지정합니다.\n
    • 클라이언트1.key를 생성한 클라이언트 개인 키로 PrivateKey 매개변수를 변경합니다.\n

    [Peer] 섹션에서 다음을 추가해야 합니다.

    • Wireguard 서버 공개 키 server.pub를 PublicKey 매개변수로 설정합니다.\n
    • AllowedIPs를 지정하여 VPN 피어에 대한 액세스를 제한하거나 네트워크의 서브넷을 지정하거나 0.0.0.0/0을 입력하여 VPN을 통해 모든 트래픽을 터널링할 수 있습니다.\n
    • Wireguard 서버의 공용 IP 주소로 Endpoint 매개변수를 지정하거나 도메인 이름을 사용할 수도 있습니다.\n

    Wireguard 클라이언트 구성 파일이 생성되면 아래의 wg-quick up 명령을 통해 클라이언트 시스템에서 wireguard를 실행할 수 있습니다.

    wg-quick up wg-client1

    다음과 유사한 출력을 받게 됩니다. 새 wireguard 인터페이스 wg-client1이 생성되고 IP 주소 10.8.0.8을 받습니다.

    이제 아래의 ip 명령을 통해 wg-client1 인터페이스를 확인하십시오.

    ip a show wg-client1

    다음은 터미널에 인쇄될 유사한 출력입니다.

    아래의 resolvectl 명령을 통해 wg-client1 인터페이스에서 DNS 리졸버를 확인할 수도 있습니다.

    resolvectl status wg-client1

    아래는 터미널에서 수신하게 될 출력입니다. 와이어가드 인터페이스 wg-client1은 PostUp 매개변수를 통해 정의된 DNS 리졸버를 사용했으며, 이는 systemd-resolved를 사용합니다.

    그 외에도 wg show 명령을 통해 Wireguard 연결을 확인할 수도 있습니다.

    wireguard 클라이언트 시스템에서 wg show 명령을 실행하면 아래 스크린샷과 같은 출력이 표시됩니다.

    wg show

    Wireguard 서버 IP 주소는 끝점 섹션에 표시되어야 합니다. 또한 wireguard 서버 공개 키 server.pub를 볼 수 있습니다.

    wireguard 서버로 돌아가서 아래의 wg show 명령을 실행합니다.

    wg show

    다음은 터미널에서 수신하게 될 유사한 출력입니다. 엔드포인트 섹션에는 클라이언트 공개 IP 주소가 표시되고 피어 섹션에는 클라이언트 공개 키 client1.pub가 표시됩니다.

    마지막으로 아래 명령을 실행하여 클라이언트 시스템이 인터넷에 액세스하거나 Wireguard VPN의 내부 네트워크 서브넷에 액세스할 수 있는지 확인합니다.

    ping -c5 10.8.0.1
    ping -c5 1.1.1.1
    ping -c5 duckduckgo.com

    다음은 수신해야 하는 출력입니다.

    클라이언트 시스템은 IP 주소가 10.8.0.1인 Wireguard 서버에 연결할 수 있습니다.

    클라이언트 시스템은 인터넷에 액세스할 수 있습니다. 모든 트래픽은 Wireguard 서버 공용 IP 주소를 통해 라우팅됩니다.

    이제 클라이언트 시스템에서 wireguard VPN을 구성했습니다. 클라이언트 시스템과 wireguard 서버 간의 연결도 확인했습니다.

    결론

    이 가이드에서는 Rocky Linux 9에 wireguard VPN 서버를 설치하고 구성했습니다. 또한 Wireguard 서버에 연결하기 위해 Rocky Linux 클라이언트 시스템을 설정하는 방법도 배웠습니다. 이와 함께 방화벽을 통해 포트 포워딩을 활성화하고 NAT를 설정하는 방법도 배웠습니다.

    마지막으로 공개 및 개인 키 쌍을 생성하고 wireguard VPN 연결을 확인하기 위한 wg 명령 유틸리티의 기본 사용법을 배웠습니다. 그런 다음 wg-quick 명령을 사용하여 wireguard 연결을 시작하고 중지하는 방법도 배웠습니다.

    WireGuard에 대해 자세히 알아보려면 WireGuard 설명서를 참조하십시오. 또한 Wireguard와 관련된 GitHub 항목을 방문하여 WireGuard VPN 서버에 대한 자동화 배포를 찾을 수 있습니다.