WireGuardは、オープンソースで高速なセキュリティ重視の仮想プライベートネットワークアプリケーションであり、ルーティングされた構成で安全なポイントツーポイント接続を作成するために使用できます。シンプルでOpenVPNよりも高速で、実績のある暗号化プロトコルとアルゴリズムを使用してデータを保護します。 Windows、macOS、BSD、iOS、Linux、Androidなどの多くのオペレーティングシステムにインストールできます。 WireGuardはピアツーピアVPNであり、クライアントサーバーモデルを使用しません。 VPNクライアントに静的IPアドレスを割り当て、公開鍵を交換することでユーザー認証を行います。
このチュートリアルでは、CentOS8でWireGuardVPNを設定する方法を紹介します。
前提条件
- Atlantic.netクラウドプラットフォーム上の2つの新しいCentOS8VPS
- サーバーで構成されているrootパスワード
ステップ1-Atlantic.Netクラウドサーバーを作成する
まず、Atlantic.Netクラウドサーバーにログインします。 1GB以上のRAMを搭載したオペレーティングシステムとしてCentOS8を選択して、新しいサーバーを作成します。 SSH経由でクラウドサーバーに接続し、ページの上部で強調表示されているクレデンシャルを使用してログインします。
CentOS 8サーバーにログインしたら、次のコマンドを実行して、ベースシステムを最新の利用可能なパッケージで更新します。
dnf update -y
ステップ2–IP転送を有効にする
開始する前に、システムでIP転送を有効にする必要があります。新しい/etc/sysctl.d/99-custom.confファイルを作成することで有効にできます:
nano /etc/sysctl.d/99-custom.conf
次の行を追加します:
net.ipv4.ip_forward =1
ファイルを保存して閉じてから、次のコマンドを実行して変更を適用します。
sysctl -p /etc/sysctl.d/99-custom.conf
ステップ3–Wireguardをインストールする
まず、システムにEpelリポジトリとElrepoリポジトリをインストールする必要があります。次のコマンドでインストールできます:
dnf install epel-release elrepo-release -y
インストールしたら、次のコマンドを実行してWireGuardをインストールします。
dnf install kmod-wireguard wireguard-tools -y
インストールが完了したら、システムを再起動してカーネルモジュールをロードします。
ステップ4–WireGuardを構成する
まず、/ etc/wireguardディレクトリ内に公開鍵と秘密鍵を生成する必要があります。次のコマンドを実行してそれらを生成します:
wg genkey | tee / etc / wireguard / privatekey | wg pubkey | tee / etc / wireguard / publickey
生成されたキーが次の出力に表示されます。
Nnid + rqJBnsZ + SN68dILbmxMreKyFTlSjBI8bh4sbzU =
次のコマンドでそれらを一覧表示することもできます:
ls / etc / wireguard /
次の出力が表示されます。
privatekey publickey
次に、VPNトラフィックをルーティングするトンネルデバイスを構成する必要があります。これを行うには、wp0.confという名前の新しい構成ファイルを作成します。
nano /etc/wireguard/wg0.conf
次の行を追加します:
[インターフェース]
アドレス=10.0.0.1/ 24
SaveConfig =true
ListenPort =51820
PrivateKey =Nnid + rqJBnsZ + SN68dILbmxMreKyFTlSjBI8bh4sbzU =
PostUp =Firewall-cmd --zone =public --add-port 51820 / udp &&Firewall-cmd --zone =public --add-masquerade
PostDown =Firewall-cmd --zone =public --remove-port 51820 / udp &&Firewall-cmd --zone =public --remove-masquerade
終了したら、ファイルを保存して閉じます。
上記の行に関連する定義は次のとおりです。
- 住所 :VPNサーバーのプライベートIPアドレスを指定します。
- ListenPort :WireGuardリスニングポートを指定します。
- PrivateKey :/ etc / wireguard/privatekeyにあるVPNサーバーの秘密鍵を指定します。
- 投稿 :WireGuardインターフェースを起動するときに実行するアクションを指定します。
- PostDown :WireGuardインターフェースを停止するときに実行するアクションを指定します。
次に、wg-quickコマンドを使用してWireGuardインターフェースを起動します。
wg-クイックアップwg0
次の出力が得られるはずです:
[#] ip link add wg0 typewireguard
[#] wg setconf wg0 / dev / fd / 63
[#] ip -4 address add 10.0.0.1/24 dev wg0
[#] ip link set mtu 1420 up dev wg0
[#] Firewall-cmd --zone =public --add-port 51820 / udp &&Firewall-cmd --zone =public --add-masquerade
成功
次のコマンドを使用して、wg0インターフェイスのステータスを確認できるようになりました。
wg show wg0
次の出力が表示されます。
interface:wg0 public key:6hxSg1eZR9n4oPYckJbzXcNbVwcjF5vNsSzUREsoBEY =private key :( hidden)listening port:51820ip a show wg05:wg0:mtu 1420 qdis 10.0.0.1/24スコープグローバルwg0valid_lftforever Preferred_lft forever
次に、次のコマンドを使用して、システムの再起動時にwg0インターフェイスを有効にします。
systemctl enable [email protected]
ステップ5–WireguardVPNクライアントのインストールと構成
まず、次のコマンドを使用して、EpelおよびElrepoリポジトリをクライアントマシンにインストールします。
dnf install epel-release elrepo-release -y
インストールしたら、次のコマンドを実行してWireGuardをインストールします。
dnf install kmod-wireguard wireguard-tools
インストールが完了したら、システムを再起動してカーネルモジュールをロードします。
次に、次のコマンドを使用して公開鍵と秘密鍵を生成します。
wg genkey | tee / etc / wireguard / privatekey | wg pubkey | tee / etc / wireguard / publickey
次の出力が得られるはずです:
NvzqF7ilT01OD3uTAmNME1rHFnCcTdGSXo + f8tkRElQ =
次に、次のコマンドを使用して新しいwg0.conf構成ファイルを作成します。
nano /etc/wireguard/wg0.conf
次の行を追加します:
[Interface] PrivateKey =NvzqF7ilT01OD3uTAmNME1rHFnCcTdGSXo + f8tkRElQ =Address =10.0.0.2/24 [Peer] PublicKey =Nnid + rqJBnsZ + SN68dILbmxMreKyFTlSjBI8bh4sbzU =終了したら、ファイルを保存して閉じます。
上記の行に関連する定義は次のとおりです。
- PrivateKey :クライアントの秘密鍵を指定します。
- 住所 :wg0インターフェースのプライベートIPアドレスを指定します。
- PublicKey :サーバーの公開鍵を指定します。
- エンドポイント :サーバーのIPアドレスを指定します。
- 許可されたIP :許可されるIPを指定します。
ステップ6–クライアントピアをサーバーに追加する
次に、WireGuardクライアントの公開鍵とIPアドレスをWireGuardVPNサーバーに追加する必要があります。
サーバーマシンで、次のコマンドを実行して、クライアントの公開鍵とIPアドレスをサーバーに追加します。
wg set wg0 peer NvzqF7ilT01OD3uTAmNME1rHFnCcTdGSXo + f8tkRElQ =allowed-ips 10.0.0.2
client-public keyは、クライアントマシンの/ etc / wireguard/publickeyにあります。
クライアントマシンで、次のコマンドを使用してwg0インターフェイスを起動します。
wg-クイックアップwg0
次の出力が表示されます。
[#] ip link add wg0 typewireguard
[#] wg setconf wg0 / dev / fd / 63
[#] ip -4 address add 10.0.0.2/24 dev wg0
[#] ip link set mtu 1420 up dev wg0
サーバーマシンでは、次のコマンドを使用してWireGuardサーバーのステータスを確認できます。
wg
次の出力が得られるはずです:
interface:wg0 public key:6hxSg1eZR9n4oPYckJbzXcNbVwcjF5vNsSzUREsoBEY =private key :( hidden)listening port:51820peer:NvzqF7ilT01OD3uTAmNME1rHFnCcTdGSXo + f8 / pre>結論
おめでとうございます。CentOS8にWireGuardVPNサーバーを正常にセットアップし、2台のCentOS8マシン間にVPNトンネルを作成しました。これで、匿名でWebを閲覧し、トラフィックデータを非公開にすることができます。 Atlantic.Netの仮想プライベートサーバーを今すぐ始めましょう!
Linux