VPNとリモートアクセス
🔥 Vibe プロンプト
「内部サービスへのリモートアクセス用にWireGuard VPNを設定。」
WireGuard設定
sudo apt install wireguard
wg genkey | tee private.key | wg pubkey > public.key
# サーバー設定
[Interface]
Address = 10.0.0.1/24
ListenPort = 51820
PrivateKey = <サーバー秘密鍵>
[Peer]
PublicKey = <クライアント公開鍵>
AllowedIPs = 10.0.0.2/32
wg-quick up wg0
クライアント設定
[Interface]
PrivateKey = <クライアント秘密鍵>
Address = 10.0.0.2/24
[Peer]
PublicKey = <サーバー公開鍵>
Endpoint = vpn.example.com:51820
AllowedIPs = 10.0.0.0/24
WireGuard vs OpenVPN
| 機能 | WireGuard | OpenVPN | |------|-----------|---------| | 速度 | 高速(カーネル) | 低速 | | 設定 | 簡単 | 複雑 | | セキュリティ | 最新(Noise) | OpenSSL |
SSHトンネリング
# ローカルポート転送
ssh -L 5432:internal-db:5432 bastion.example.com
# SOCKSプロキシ
ssh -D 1080 bastion.example.com
# 踏み台経由
ssh -J bastion.example.com internal-server
ベストプラクティス
- WireGuardを使用(最新、高速、シンプル)
- VPN認証にMFA
- ジャストインタイムアクセス
- すべてのVPNアクセスを監査
- アイドルセッションを切断
重要なポイント
- コアコンセプトをしっかり理解する
- ハンズオンコード例で実践する
- 実世界の問題に応用する
- 演習で知識を強化する
さらに学ぶ
- 公式ドキュメント
- GitHubのオープンソースプロジェクト
- コミュニティフォーラムとディスカッション
- 関連コースとチュートリアル