V-antena and Tanimoto's page

谷本の備忘録・雑記帳・work

>

wireguardでvpnを構築した

実際の理由は不明もルータを変更したところ、ポートフォワーディングを設定してもIPSEC/L2TPでのVPN接続ができなかった。 そこでwireguardを使ってのvpnを設定しなおした。 

参考としたサイト

'https://chirashi.twittospia.com/技術/windowsでwireguardを設定する方法/2021-02-26/
'https://qiita.com/naomori/items/1ee1a314cbdd3010f3ee
'https://asiavp.net/guide/windows/wireguard/

環境

サーバー: raspberry pi (buster)
外部端末: タブレットPC(windows10)
ルータ使用: NAT転送(ポートフォワーディング)使用

なお、下記手順中のxxxxxxx,yyyyy,zzzzz,vvvvv, aaaaa, mydomain, 192.168.123.200, 192.168.123.100は自分の環境や設定したい値に合わせること。

サーバー側設定

sudo apt update
sudo apt upgrade
sudo apt install wireguard
mkdir wgkeys
cd wgkeys
umask 077
wg genkey > server_private.key
wg pubkey > server_public.key < server_private.key
wg genkey > client_private.key
wg pubkey > client_public.key < client_private.key
cd
sudo nano /etc/wireguard/wg0.conf
sudo wg-quick up wg0
sudo wg-quick down wg0
sudo systemctl enable wg-quick@wg0
sudo systemctl start wg-quick@wg0
sudo ufw allow aaaaa/udp

wg0.confの内容は

[Interface]
# virtual IP address for server
Address = 192.168.123.200/24

# port for wireguard .  any number available
ListenPort = aaaaa

# server_private.key
PrivateKey = xxxxxxxxxxxxxxxxxxxxxxx

# nat mantra
PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -A FORWARD -o %i -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -D FORWARD -o %i -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE

[Peer]
# client_public.key
PublicKey = yyyyyyyyyyyyyyyyyyyyyyyyyyy

# virtual IP address in VPN for client 
# allowed virtual IP
AllowedIPs = 192.168.123.100/32

タブレット側設定

windows用wireguardソフトをwireguardサイトからダウンロード

次にwindows上でnotepadか何かを使ってconfファイルを作成する。ここではwg1.confとする。

[Interface]
# client_private.key
PrivateKey = zzzzzzzzzzzzzzzzzzzzzzzzzzz

# virtual IP for client
Address = 192.168.123.100/24

[Peer]
# server_public.key
PublicKey = vvvvvvvvvvvvvvvvvvvvvvvvv

# set virtual IP address for VPN server as allowed IPs
AllowedIPs = 192.168.123.200/32,192.168.123.0/24

# set url and port
Endpoint = mydomain:aaaaa

windows用wireguardソフトをインストール&起動し、上記confファイルを読ませる。

その後は、有効化や無効化で制御可能

その他

ルータでポートaaaaa/udpをポート転送できる様にする。

Leave a Comment

入力エリアすべてが必須項目です。メールアドレスが公開されることはありません。

内容をご確認の上、送信してください。