本記事では、WireGuardを使ってVPNサーバーを構築し、
外出先から自宅サーバーへ安全に接続する方法を解説します。
■ できること
・外出先から自宅サーバーに接続
・Samba共有を安全に利用
・ポート公開なしでアクセス
■ 構成
スマホ / PC
↓
WireGuard VPN
↓
自宅サーバー
👉 セキュアな接続
■ ① インストール
sudo apt update
sudo apt install wireguard -y
■ ② 鍵作成
wg genkey | tee private.key | wg pubkey > public.key
■ 確認
cat private.key
cat public.key
■ ③ 設定ファイル作成
sudo vi /etc/wireguard/wg0.conf
■ 内容
[Interface]
Address = 10.9.0.1/24
ListenPort = 51820
PrivateKey = サーバーの秘密鍵
# NAT設定
PostUp = iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
PostDown = iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE
■ ④ IP転送有効化
sudo vi /etc/sysctl.conf
net.ipv4.ip_forward=1
sudo sysctl -p
■ ⑤ 起動
sudo systemctl start wg-quick@wg0
sudo systemctl enable wg-quick@wg0
■ ⑥ firewalld設定
sudo firewall-cmd --add-port=51820/udp --permanent
sudo firewall-cmd --reload
■ ⑦ クライアント設定
[Interface]
PrivateKey = クライアント秘密鍵
Address = 10.9.0.2/24
[Peer]
PublicKey = サーバー公開鍵
Endpoint = your-domain:51820
AllowedIPs = 10.9.0.0/24
PersistentKeepalive = 25
■ ⑧ 接続確認
sudo wg
👉 handshake が出ればOK
■ 動作確認
・VPN接続
・サーバーにping
■ セキュリティポイント
・ポートは51820のみ
・パスワード不要(鍵認証)
・外部公開不要
■ よくあるトラブル
● 接続できない
・ポート未開放
・IP転送未設定
● handshakeしない
・鍵ミス
・Endpoint間違い
■ 次にやること(重要)
👉 VPNができたらこれ
■ Samba連携
→ VPN経由でファイル共有
■ スマホ接続
→ iPhone / Android
■ 本環境
・Ubuntu Server
・WireGuard
・firewalld
■ 関連記事
→ Samba設定
→ スマホ接続
→ firewalld設定
→ fail2ban設定
👉 本サイトでは実運用ベースで解説しています


コメント