WireGuard は、最新の安全なクロスプラットフォームで汎用の VPN 最先端の暗号化を使用する実装。これは、IPsecよりも高速で、シンプルで、スリムで、機能的であることを目指しており、 OpenVPNよりもパフォーマンスが高いことを目的としています。 。
さまざまな状況で使用するように設計されており、組み込みインターフェイス、完全にロードされたバックボーンルーター、およびスーパーコンピューターに同様に展開できます。 Linux、Windows、macOS、BSD、iOS、Androidオペレーティングシステムで動作します。
おすすめの記事 :生涯サブスクリプションを備えた13の最高のVPNサービス
これは、SSHのように構成および展開が簡単で、シンプルであることを目的とした、非常に基本的でありながら強力なインターフェースを提供します。その主な機能には、シンプルなネットワークインターフェース、暗号化キールーティング、組み込みのローミング、コンテナサポートなどがあります。
執筆時点では、開発が進んでいることに注意してください。一部のパーツは安定した1.0リリースに向けて動作していますが、他のパーツはすでに存在しています(正常に動作しています)。
この記事では、 WireGuardをインストールして構成する方法を学習します Linuxで、2つのLinuxホスト間にVPNトンネルを作成します。
テスト環境
このガイドでは、セットアップ(ホスト名とパブリックIP)は次のとおりです。
Node 1 : tecmint-appserver1: 10.20.20.4 Node 2 : tecmint-dbserver1: 10.20.20.3
LinuxディストリビューションにWireGuardをインストールする方法
両方のノードにログインして、 WireGuardをインストールします Linuxディストリビューションに対して次の適切なコマンドを次のように使用します。
RHEL8にWireGuardをインストールする
$ sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm $ sudo subscription-manager repos --enable codeready-builder-for-rhel-8-$(arch)-rpms $ sudo yum copr enable jdoss/wireguard $ sudo yum install wireguard-dkms wireguard-tools
CentOS8にWireGuardをインストールする
$ sudo yum install epel-release $ sudo yum config-manager --set-enabled PowerTools $ sudo yum copr enable jdoss/wireguard $ sudo yum install wireguard-dkms wireguard-tools
RHEL /CentOS7にWireGuardをインストールする
$ sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm $ sudo curl -o /etc/yum.repos.d/jdoss-wireguard-epel-7.repo https://copr.fedorainfracloud.org/coprs/jdoss/wireguard/repo/epel-7/jdoss-wireguard-epel-7.repo $ sudo yum install wireguard-dkms wireguard-tools
FedoraにWireGuardをインストールする
$ sudo dnf install wireguard-tools
DebianにWireGuardをインストールする
# echo "deb http://deb.debian.org/debian/ unstable main" > /etc/apt/sources.list.d/unstable.list # printf 'Package: *\nPin: release a=unstable\nPin-Priority: 90\n' > /etc/apt/preferences.d/limit-unstable # apt update # apt install wireguard
UbuntuにWireGuardをインストールする
$ sudo add-apt-repository ppa:wireguard/wireguard $ sudo apt-get update $ sudo apt-get install wireguard
OpenSUSEにWireGuardをインストールする
$ sudo zypper addrepo -f obs://network:vpn:wireguard wireguard $ sudo zypper install wireguard-kmp-default wireguard-tools
2つのLinuxホスト間のWireGuardVPNトンネルの構成
ワイヤーガードのインストール時 両方のノードで完了したら、両方のノードで次のコマンドを使用して、ノードを再起動するか、Linuxカーネルからwireguardモジュールを追加できます。
$ sudo modprobe wireguard OR # modprobe wireguard
次に、 wg を使用して、base64でエンコードされた公開鍵と秘密鍵を生成します 示されているように、両方のノードでユーティリティ。
---------- On Node 1 ---------- $ umask 077 $ wg genkey >private_appserver1 ---------- On Node 2 ---------- $ umask 077 $ wg genkey >private_dbserver1 $ wg pubkey < private_dbserver1

両方のノードでキーを生成する
次に、ネットワークインターフェースを作成する必要があります(例: wg0 )以下に示すように、ピア上のwiregaurdの場合。次に、作成した新しいネットワークインターフェイスにIPアドレスを割り当てます(このガイドでは、ネットワーク 192.168.10.0/24を使用します 。
---------- On Node 1 ---------- $ sudo ip link add dev wg0 type wireguard $ sudo ip addr add 192.168.10.1/24 dev wg0 ---------- On Node 2 ---------- $ sudo ip link add dev wg0 type wireguard $ sudo ip addr add 192.168.10.2/24 dev wg0
ピアに接続されているネットワークインターフェースとそのIPアドレスを表示するには、次のIPコマンドを使用します。
$ ip ad

IPアドレスを使用したネットワークインターフェイスの表示
次に、各ピアの秘密鍵を wg0に割り当てます。 ネットワークインターフェイスを表示し、図のようにインターフェイスを表示します。
---------- On Node 1 ---------- $ sudo wg set wg0 private-key ./private_appserver1 $ sudo ip link set wg0 up ---------- On Node 2 ---------- $ sudo wg set wg0 private-key ./private_dbserver1 $ sudo ip link set wg0 up
両方のリンクがそれぞれ秘密鍵に関連付けられて稼働しているので、 wgを実行します。 ピア上のWireGuardインターフェースの構成を取得するための引数のないユーティリティ。次に、次のようにWireguardVPNトンネルを作成します。
ピア(公開鍵 )、許可されたips (ネットワーク/サブネットマスク)およびエンドポイント (public ip:port)は反対側のピアです。
---------- On Node1 (Use the IPs and Public Key of Node 2) ---------- $ sudo wg $ sudo wg set wg0 peer MDaeWgZVULXP4gvOj4UmN7bW/uniQeBionqJyzEzSC0= allowed-ips 192.168.10.0/24 endpoint 10.20.20.3:54371 ---------- On Node2 (Use the IPs and Public Key of Node 1) ---------- $ sudo wg $ sudo wg set wg0 peer 6yNLmpkbfsL2ijx7z996ZHl2bNFz9Psp9V6BhoHjvmk= allowed-ips 192.168.10.0/24 endpoint 10.20.20.4:42930

Linuxマシン間にWireguardVPNトンネルを作成する
Linuxシステム間のWireGuardVPNトンネルのテスト
Wireguard VPNトンネルが作成されたら、Wireguardネットワークインターフェイスのアドレスを使用して反対側のピアにpingを実行します。次に、 wgを実行します 示されているように、ピア間のハンドシェイクを確認するためのユーティリティ。
---------- On Node 1 ---------- $ ping 192.168.10.2 $ sudo wg ---------- On Node 2 ---------- $ ping 192.168.10.1 $ sudo wg

Linuxマシン間のWireguardVPNトンネルをテストする
今のところ以上です! WireGuard は、将来に向けた、最新の安全でシンプルでありながら強力で構成が簡単なVPNソリューションです。それは大規模な開発が行われているため、作業が進行中です。特に内部の内部動作やその他の構成オプションに関する詳細は、WireGuardホームページから入手できます。
共有は思いやりがあります…Facebookで共有するTwitterで共有するLinkedinで共有するRedditで共有する