探検


【VPN】 WireGuard Part.1

1login:Penguin (ワッチョイ 3bb7-dhUW)
垢版 |
2022/03/23(水) 15:16:44.05ID:wv2RlyN60
!extend:checked:vvvvv:1000:512
!extend:checked:vvvvv:1000:512
↑これを2行になるようにコピペしてからスレ立てしてください

WireGuardは最先端の暗号技術を利用した、極めてシンプルかつ高速な最新のVPNです。
WireGuard は2020年から Linux カーネルに組み込まれています。

■ WireGuard公式サイト
https://www.wireguard.com/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
2022/03/23(水) 15:17:35.90ID:wv2RlyN60
無かったので立てました
2022/03/23(水) 16:41:15.03ID:kwt40Mia0
おつ よくやった
OpenVPNとの違いがあまりわからんけど
2022/03/24(木) 07:49:28.62ID:z1aIG80l0
実際使うとOpenVPNより何もかもが速い。
サーバークライアント型じゃないのでOpenVPNみたいに通信速度がサーバーの処理能力によって制限されることがない。
もちろん一つのPeerをハブとしてハブアンドスポーク型のネットワークを作ればOpenVPNと同様にハブの処理能力がボトルネックになるんだろうけど。
多数のPeerでP2P型のネットワークを作ろうとするとコネクションの数が膨大になって管理が大変になるというのはWireGuardの弱点かもしれない。
そこでTalescaleのようなサービスが出てきたわけだけど、似たような仕組みがいずれWireGuard本体に取り込まれそうな気がする。
2022/03/25(金) 19:53:30.60ID:GNNLO5G70
テレワーク必須になって急遽使い始めたけど
今や手放せないわ
めっさ便利で速い
2022/03/25(金) 20:21:59.24ID:SO/5Ca5i0
で、どうやって使うの?
2022/03/25(金) 21:59:09.50ID:GNNLO5G70
https://hub.docker.com/r/linuxserver/wireguard

これが一番簡単じゃないかな?

awsでlightsail借りるか、自宅鯖のポート開いたらそれだけで準備完了よ。

クライアント側は各OS のアプリストアで配信されてるから
それを入れる

iPhoneならQRスキャンしたら一瞬で終わるね
2022/03/25(金) 22:02:36.50ID:GNNLO5G70
サンプルのコマンドコピペするだけで
必要な設定全て込みでサーバが立ち上がるから。
これだけで世界のどこからでも自宅のネットワークや、
接続されたクライアント同士で通信できる。

自分はオフィスのLinux箱6台とMac3台、
自宅のMac3台全部これで繋げてテレワークしてます。
便利
2022/03/25(金) 22:11:03.14ID:SO/5Ca5i0
ありがとう ぱっと見た限りでは確かにすごく簡単そうだねえ
普段はOpenVPNを自宅に仕込んで色々と活用してるんだが俺もこれ使ってみるか
2022/03/25(金) 22:41:22.13ID:GNNLO5G70
open VPN設定出来てるなら
カンタン過ぎて鼻血出ると思うw

そしてめちゃくちゃ速いのよねぇ
調べれば調べるほどよく出来てると感心する
2022/03/25(金) 22:45:32.52ID:GNNLO5G70
自分は以前はsshトンネルでなんとかやりくりしてたんだけど、
みんながこういうの使いなれてるわけじゃないからね。

ワイヤガードはテキスト数行コピペしたらあっという間に設定終わるから
誰でも使えるのホント素晴らしいよ。

自分はデータ分析チームなんだけどjupyterとかRStudioみたいなWEBアプリが主な用途です
2022/03/25(金) 22:48:30.84ID:GNNLO5G70
そのdockerイメージめちゃ便利なんだけど、
peerの設定変えるとクライアントが全部作り直しになるので
初めからピア数100とかにして立ち上げちゃうのがおススメです
2022/03/25(金) 22:59:33.99ID:SO/5Ca5i0
情報提供の為にお手数かけて頂いて恐縮です
有益に違いないスレが立ったのに盛り上がって無かったので
既存ユーザー様に熱く語って頂きたくて少々いやらしいテクに手を出した事をお許し下さいませ

どれ、早速明日にでもこさえてみるか
dockerはあんまり得意じゃないのでオンプレホストで作ってみるとするか

と書いてたらdockerイメージ激推しに気付いたので
余裕があったらこれを期に特訓してみよう
2022/03/26(土) 02:22:28.62ID:jvewD6I40
まぁDockerでWireGuardするなら>>7のLinuxServer.ioのコンテナが安定だと思う。
Docker使わなくても鍵作ったらあとは設定ファイルしかいじるところないから環境が汚れるってこともないとは思うけど。

簡単さで鼻血出したいなら>>4にあるTalescaleも試してみるといい。
WireGuardの設定をさらに簡単にするサービスで、イメージとしては公開鍵交換サーバー+DDNSな感じかな?
https://tailscale.com/blog/how-tailscale-works/を読むと仕組みが分かる。
2022/03/26(土) 09:20:54.50ID:A3dib8LD0
>>13
サーバ立てられる人なら
dockerfile読むようにするだけで
一瞬で慣れると思うよ、docker

https://github.com/linuxserver/docker-wireguard/blob/master/Dockerfile

慣れるとコンテナ無しの時代が信じられんくらい便利だから
試してみてね。
2022/03/26(土) 09:22:09.25ID:A3dib8LD0
>>14
おー、面白そうな実装だねえ
wgつかってメッシュネットワーク作るんだすごい

今の自分にはオーバーキルな感じもするけど
じっくり読んでみたい

OSSじゃ無いのが少し残念
2022/03/26(土) 10:05:22.20ID:ctWaexFZ0
>>16
クライアントのコードはGithubにあるhttps://github.com/tailscale/tailscale
OSSでTalescaleのサーバー側の実装をしようとしてるHeadscaleっていうのもあるにはあるhttps://github.com/juanfont/headscale
2022/03/26(土) 12:41:34.01ID:i0NZPBSca
昨晩は充実した情報提供ありがとうございました
先ず基礎的な事から身体で覚えたいので wireguard をホストマシンにインスコして戦っております
コンテナじゃないのはうちのメイン鯖がDocker使えないと言う理由もあるので
2022/03/26(土) 13:01:53.93ID:i0NZPBSca
取り敢えず開通自体はいとも簡単に終わりました
アプリの設定見てみたらOpenVPNみたく事前共有鍵も使えるんですね
自分以外の接続は徹底排除したいのでこれは設定しなくては
2022/03/26(土) 15:05:50.25ID:ctWaexFZ0
あんまりよく分かってないんだけど、PSKは将来的な量子コンピューティングによる暗号解読に備えたオプションなんで、現状設定する意味があるかというとあんまりない、はず。(だよね?)

この辺に書いてあるhttps://www.wireguard.com/known-limitations/
「量子コンピュータが実用化された場合を考慮して、既存の公開鍵暗号に対称鍵暗号のレイヤーを追加するために事前共有鍵を生成することもできます:」https://wiki.archlinux.jp/index.php/WireGuard

ただ、よりセキュアなオプションがあるなら設定した方が精神衛生的にいいというのはわかる。
2022/03/26(土) 16:05:45.59ID:UdkaNDvRa
何しろ使用開始してから半日も経って無いので内容の把握もこれからなんですが
OpenVPNの tls-auth に準ずる機能があれば是非設定しておきたいと思いまして
https://www.openvpn.jp/document/how-to/#Security
(OpenVPNのセキュリティを強化する の項目)

全ての通信をWireGuard経由にする方法も模索してましたが
そちらは成功しました
2022/03/26(土) 16:43:25.45ID:ctWaexFZ0
送信元の[Peer]でAllowedIPs = 0.0.0.0/0, ::/0
2022/03/26(土) 17:53:07.86ID:+Av4CXBka
その辺りはOpenVPNのやり方と似たような感じでしたね
熟練者に書いて頂くと説得力がありますな

認証に関しては某ブログに「認証情報が不正ならそもそも応答しない」みたいな事が掲載されておりました
あまりピリピリする必要も無さそうですね
2022/03/26(土) 19:42:45.86ID:79jXbE1Oa
しかしこれはいい
何がいいかって、設定の簡単さもさることながらOpenVPNに付きものの
証明書の期限と言う煩わしさからの解放感
すばらしいの一言に尽きる
2022/03/26(土) 20:14:50.02ID:79jXbE1Oa
なおズルして同じ秘密鍵/共有鍵を使い回そうとしたら繋がりませんですた
よく出来てやがる
26login:Penguin (JP 0H1a-0GGF)
垢版 |
2022/03/26(土) 20:25:59.64ID:QZFq80lWH
複数台同時接続じゃなければいけたような?
2022/03/26(土) 20:34:09.30ID:79jXbE1Oa
秘密鍵/公開鍵の間違いですた
入門者は繋がっただけでも感激しているのでズルの再検証は明日にでもやろうかと
2022/03/26(土) 21:39:02.37ID:79jXbE1Oa
WireGuardデビュー初日 Dockerイメージ不使用での作業内容

1. wireguardメタパッケージインスコ kmod & 管理ツール入る
2. 秘密鍵/公開鍵を鯖PC用・ケータイ用に生成 簡素なコマンド4回
3. 生成した鍵を反映した設定ファイルを書く ものの数行
4. IPフォワーディング・NAT設定(拙はOpenVPNでの設定流用の為ほぼ作業せず)
5. HGWの穴空け
6. 鯖PCでwireguardデーモン起動し、設定をインポートしたケータイアプリでトグルスイッチON
7. ( ゚Д゚)ウマー

初構築での作業時間はだいたい正味1時間強 簡単ですた
https://i.imgur.com/ZoZB50a.png
29login:Penguin (スププ Sdb2-AROK)
垢版 |
2022/03/27(日) 09:00:06.28ID:xQuJ62WMd
OpenVPNとどれくらい差があるか試してみたくなってきた
2022/03/27(日) 13:12:11.08ID:O2b9UK4O0
接続先のLANに接続したい時に書くNAPTの設定がよくわからん。[Interface]のところにPostUp,PostDownの二行書くやつ。
2022/03/27(日) 13:12:24.37ID:d4c2SElXa
興味をお持ちの方がいらっしゃる様なのでPCでの設定例を上げておきます
https://i.imgur.com/gxgW0jU.jpg

なお残念ながら他のマシンと同じ鍵で繋ぎに行くのは不可能ですね
この辺はOpenVPNと同じです ちっ
2022/03/27(日) 13:24:45.02ID:O2b9UK4O0
いや、コピペは流石に俺でもできる。iptablesの知識が無いから何やってるかわからんという話で。
2022/03/27(日) 13:31:52.81ID:d4c2SElXa
>>32
b7-さんが書きに来るとは思わず僅差で遅れて貼ったものなのでお気になさらず
他にも感化されてる人がいるのですよ

私もiptablesはその都度調べてるんですがマジ呪文ですよね
こんな感じの事をやってる様ですが
natテーブルを利用したLinuxルータの作成:習うより慣れろ! iptablesテンプレート集(2)(2/6 ページ) - @IT
https://atmarkit.itmedia.co.jp/ait/spv/0505/17/news131_2.html
2022/03/29(火) 09:31:18.53ID:UIpbSbmX0
ufw使おうか
2022/03/29(火) 11:55:56.90ID:vDgGAHIUa
ufwでも手軽に nat を扱えるといいんだけどね
確かbefore.rulesに追記しないとならなかった様な
俺はもう使えてるからいいとして
2022/03/31(木) 22:37:21.06ID:D3H/1UBP0
iptablesに慣れすぎて他に拒否感がでてしまうもうだめだわ
2022/04/01(金) 00:41:08.74ID:vOeM5gLUa
結果が出るなら慣れたやり方がいちばん
nft のコマンド構文でやってみようかと思いman開いて5分後にそっ閉じしたワイもおるで
2022/04/01(金) 04:17:35.34ID:6IBSWpxy0
ipコマンドもそうだけど、だらだら書いていくタイプ増えたよね。
オプションでどの位置でもパラメータ書けるみたいなほうが使いやすいんだけどな。
39login:Penguin (ワッチョイ 7927-uC5M)
垢版 |
2022/04/01(金) 12:56:04.32ID:Rmgzujic0
>>36
同じく。
サポート切れないで欲しいな。
2022/04/05(火) 10:09:11.42ID:OfuBTVTC0
AllowedIPsに0.0.0.0/0,::/0だと全部WireGuard経由になるじゃん
0.0.0.0/0だけの指定だとIPv6パケットはVPN経由じゃなくて直接出ていくってことになる?
41login:Penguin (ワッチョイ 85eb-mjDL)
垢版 |
2022/04/07(木) 19:17:39.23ID:Ql6Tdzwp0
その認識で良いのでない?
試すのが手っ取り早そうですが
42login:Penguin (ワッチョイ 85eb-mjDL)
垢版 |
2022/04/08(金) 11:09:13.71ID:dcIghJsp0
細かいメモ書きなんですが、
ubuntuでwgクライアントを設定すると、
`/usr/bin/wg-quick: line 32: resolvconf: command not found`
エラーが出ます

sudo apt install openresolve

すると解決します
lts20.04と22.04betaで確認
2022/04/08(金) 11:28:10.74ID:Bbl4TZ1/a
これ使う様な人は大丈夫だと思うが一応氏の補足

× openresolve
○ openresolv
2022/04/08(金) 11:28:53.43ID:dcIghJsp0
>>43
補足さんきゅうです!
2022/04/08(金) 21:53:47.18ID:eW2Ie5gg0
passwdだったりpasswordだったりみたいなもんか
2022/04/10(日) 19:18:51.81ID:fLV1ZsvK0
ラズパイをWireGuardサーバーとして宅内のLAN(192.168.1.0/24)に繋ぎたいんだけど、なぜかPCからの接続だけうまくいかないので助けてほしいです…。
PiVPN使って設定したラズパイのwg0.confはこんな感じ
[Interface]
PrivateKey =
Address = 10.6.0.1/24
MTU = 1420
Listen Port = 51820
PostUp = iptables -A FORWARD -o %i -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
PostDown = iptables -D FORWARD -o %i -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE
[Peer]
PublicKey =
PresharedKey =
AllowedIPs = 10.6.0.2/32

クライアント側のconfはこんな感じ
[Interface]
PrivateKey =
Address = 10.6.0.2/24
DNS = 9.9.9.9, 149.112.112.112
[Peer]
PublicKey =
PresharedKey =
Endpoint = vpn.example.com:51820
AllowedIPs = 10.6.0.0/24, 192.168.1.0/24

WindowsPCのWireGuardでトンネルの有効化をすると、ちゃんと緑色の盾が出て有効になるんだけど、192.168.1.xxxにpingが通らない(タイムアウト)。
iPhoneとAndroid端末も同じ設定(同じconfファイル)で試すとこちらはちゃんとつながって、192.168.1.xxxのNASにログインもできる。
PCとスマホで何が違うのか全く分からず困っています…。
レスを投稿する


ニューススポーツなんでも実況