wireguard
差分
このページの2つのバージョン間の差分を表示します。
| 両方とも前のリビジョン前のリビジョン次のリビジョン | 前のリビジョン | ||
| wireguard [2025/12/11 07:03] – [クライアント] araki | wireguard [2025/12/17 01:01] (現在) – [クライアント] araki | ||
|---|---|---|---|
| 行 9: | 行 9: | ||
| クライアントとして、Windows, | クライアントとして、Windows, | ||
| + | nanoKVMは、Tailscaleに対応しており、独自にVPNを用意せずとも、外部からアクセス可能だが、正直、とても遅い。 | ||
| + | また頻繁に切断される。 | ||
| + | 何か、問題があった時用のラインだと思って納得していたが、WireGuardでVPNを構築した場合、外部からWindows11のデスクトップにアクセスしても十分に使えるレベルでありしかも安定している。 | ||
| + | WireGuardは非常に強力なリモートアクセスツールとして利用可能である。 | ||
| ===== 設定 ===== | ===== 設定 ===== | ||
| 行 20: | 行 24: | ||
| パッケージがあるのでそれをインストールすればよい。 | パッケージがあるのでそれをインストールすればよい。 | ||
| + | パッケージにはサーバ、クライアントの別はなく、どちらであってもwireguardをインストールする。 | ||
| <code bash> | <code bash> | ||
| 行 39: | 行 44: | ||
| 別にどこに保存してもいいですが、ばらけるとめんどくさいのでとりあえず/ | 別にどこに保存してもいいですが、ばらけるとめんどくさいのでとりあえず/ | ||
| 一応中身を見られないように600にしておきます。 | 一応中身を見られないように600にしておきます。 | ||
| + | |||
| + | VPNから別のネットワークにアクセスするにはIPフォワーディングを有効化する必要があります。 | ||
| + | / | ||
| + | |||
| + | <code ini> | ||
| + | # Uncomment the next line to enable packet forwarding for IPv4 | ||
| + | net.ipv4.ip_forward=1 | ||
| + | </ | ||
| + | |||
| + | 即座に有効化するには以下のコマンドを発行します。 | ||
| + | |||
| + | <code bash> | ||
| + | $ sudo sysctl -p | ||
| + | </ | ||
| + | |||
| 次に、設定ファイルを作りますが、これはVPNのインターフェイスごとに作ります。 | 次に、設定ファイルを作りますが、これはVPNのインターフェイスごとに作ります。 | ||
| 行 71: | 行 91: | ||
| Peerは接続してくるクライアントごとに持たせることができる。 | Peerは接続してくるクライアントごとに持たせることができる。 | ||
| - | DHCP機能はないので、IPはここで設定されたものが渡される。 | + | DHCP機能はないので、IPはここで設定されたものが渡される。((とはいえ、DHCPで新しいデバイスをばかばかつなぐような性質のものではないので、これでいいと思われる。DHCPでアドレスを静的割り当てする設定と大差ないので実用上問題はないと思う。)) |
| クライアント側で生成されたPublicKeyに従って割り当てが行われる。 | クライアント側で生成されたPublicKeyに従って割り当てが行われる。 | ||
| + | -o eth0 の部分は実際に動かすサーバのネットワークインターフェイスと置き換える必要がある。 | ||
| 外部に対して、192.168.1.2: | 外部に対して、192.168.1.2: | ||
| 行 125: | 行 146: | ||
| $ sudo wg-quick down wg0 | $ sudo wg-quick down wg0 | ||
| </ | </ | ||
| + | |||
| + | == 自動起動 == | ||
| + | |||
| + | NetworkManagerの機能を利用して、自宅のSSID以外のものに接続したら自動的にVPNを起動させることが可能です。 | ||
| + | / | ||
| + | |||
| + | <file bash 99-wg0-autostart> | ||
| + | #!/bin/bash | ||
| + | IFACE=$1 | ||
| + | STATUS=$2 | ||
| + | |||
| + | case " | ||
| + | up) | ||
| + | SSID=$(nmcli -t -f active,ssid dev wifi|grep ' | ||
| + | case " | ||
| + | myhomewifi*) | ||
| + | # no need to start VPN | ||
| + | ;; | ||
| + | *) | ||
| + | wg-quick up wg0 | ||
| + | ;; | ||
| + | esac | ||
| + | ;; | ||
| + | down) | ||
| + | wg-quick down wg0 | ||
| + | ;; | ||
| + | esac | ||
| + | </ | ||
| + | |||
| + | 自宅のアクセスポイントが myhomewifi* であると仮定しています。 | ||
| + | ここを実際の自宅のWiFiのSSIDに置き換えれば機能します。 | ||
| === Windows === | === Windows === | ||
wireguard.1765436624.txt.gz · 最終更新: by araki
