- Netmakerは、デバイス、クラウド、オフィス、エッジ環境をWireGuardベースのトンネルで結び、細かなアクセス制御を加えることでゼロトラストネットワークアクセスを提供するプラットフォーム
- カーネルWireGuardとコロケーション型リレーにより、代替製品より10〜20倍高速だと強調しており、オンプレミス展開と専用リレーによってデータプライバシーを維持できる
- リモートチームの接続、オフィスネットワークの統合、エッジデバイス管理、レガシーVPNの置き換え、自社インフラでのホスティング、分散AIワークロードの接続を主要なユースケースとしている
- Mesh VPN、ノード管理、トラフィックルーティング、ACL、ユーザー管理機能により、複数の仮想ネットワークを分離して運用でき、OIDC、2FA、セッション有効期限ポリシーを適用できる
- ダッシュボード・CLI・APIとNetclientエージェントを通じてWireGuardおよびルーティングルールを構成するため、分散オーバーレイネットワークを望ましい状態で管理できる
Netmakerのセキュアネットワーキング方式
- Netmakerは複雑なVPN設定を減らし、チームがどこからでも数分で接続できるようにするゼロトラストネットワーキングプラットフォーム
- WireGuardのシンプルさと速度を基盤に、デバイス・クラウド・サイトを安全に接続することに重点を置く
- 世界中の500社以上が利用しているとしている
- 主な利点は3つ
- 速度: カーネルWireGuardとコロケーション型リレーにより、代替製品より10〜20倍高速としている
- プライバシー: オンプレミスと専用リレーのオプションにより、データを自社環境に置ける
- 制御: ネットワークとエンドポイントを展開、構成、自動化する柔軟なプラットフォームを提供する
主なユースケース
-
リモートチームの安全な接続
- 分散チームが企業リソースに安定してアクセスできるよう支援する
- 従来のVPN運用で生じる複雑さを減らすことに重点を置く
-
オフィスネットワークの統合
- 複数拠点をセキュリティと性能を備えたネットワーキングで接続する
- ビジネス拡大に合わせてスケールできる
-
フリートおよびエッジデバイス管理
- 分散した場所にある数千台のエッジデバイスを中央で展開、監視、保護できる
- 単一のダッシュボードで接続の自動化と一貫したセキュリティポリシーの維持を支援する
-
レガシーVPNの置き換え
- 既存VPNの限界を超えるメッシュネットワーキングを提供する
- より良い性能、容易な管理、強固なセキュリティを打ち出す
-
自社インフラでのNetmakerホスティング
- オンプレミス展開によりネットワークインフラを完全に制御できる
- 機密データを自社環境に置き、自社ハードウェア上で厳格なコンプライアンス要件を満たせる
-
AIインフラのネットワークセキュリティ
- クラウドとオンプレミスGPUに分散したAIワークロードをゼロトラストセキュリティで接続する
- 複数のクラウドプロバイダーまたはハイブリッド環境で学習ジョブを実行するMLチームに適している
- モデル転送、分散学習、大規模推論の保護といった用途を含む
Mesh VPNとネットワーク分離
- Netmakerのマルチネットワーク設計は、複数の分離された仮想ネットワークを作成し、1か所で管理できるようにする
- B2B企業は1つのアカウントで複数の顧客を管理しながら、トラフィックを分離して保護できる
- ユースケース別の分離も可能
- セキュアなインターネットアクセス
- エッジデバイス管理
- クラウドサーバーのメッシュ構成
- オフィスへのリモートアクセス
ノード、ルーティング、アクセス制御
- エンドポイントをネットワークに追加するVPNクライアントの選択肢は3つ
- netclientをLinux、Docker、Windows、Macにヘッドレスエージェントとしてインストールし、ピアツーピアノードを構成する
- シンプルなWireGuard構成ファイルで、ルーターを含むWireGuard互換デバイスをネットワークに統合する
- デスクトップまたはモバイルでRemote Access Clientを実行し、認証とセッション有効期限を含むユーザー向けリモートアクセスアプリケーションを提供する
- トラフィックルーティングとACLはネットワーク経路と権限を制御する
- ノードをHubとして設定し、接続をリレーできる
- ノードをForwarderとして設定し、オフィス、クラウド、インターネットなど外部ネットワークへのリモートアクセスを提供する
- ネットワークにACLを設定してデバイス間の権限を構成し、ゼロトラストアーキテクチャを実装する
- ユーザー管理には、エンドユーザーのオンボーディング、役割と権限の割り当て、ネットワークアクセスの付与が含まれる
- OIDC互換の認証プロバイダーと統合できる
- 2FAを有効化できる
- セッション有効期限ルールを設定できる
運用フローと拡張方法
- 運用者はダッシュボードまたはCLIにログインしてネットワークを作成し、Netclientでホストを追加する
- Egress、Ingress、Relays、ACLなどの機能で望ましいネットワーク状態を指定する
- 指定された状態は、デバイスとサーバーで実行中のNetclientエージェントに配信される
- Netclientは望ましい最終状態に合わせてWireGuardとルーティングルールを構成する
- 構成が完了すると、分散オーバーレイネットワークが動作する
- APIを通じてプラットフォームにエンタープライズ級ネットワーキングを追加できる
- オープンソースの選択肢は個人と小規模チーム向けで、無制限の個人利用と中核的なセキュリティ機能を含む
1件のコメント
Hacker News の意見
今年初めに投稿された関連スレッド: https://news.ycombinator.com/item?id=35584533
投稿者は Yggdrasil、tinc、Tailscale、Zerotier、Netmaker、Nebula を比較し、最終的には Yggdrasil を好んでいた。むしろその比較がきっかけで Netmaker を見てみることになり、実験用途で問題なく動かすうちに、こちらのほうをより好むようになった。Netmaker をまた取り上げてほしい。
プロジェクトの動きが速く、リリースごとに設定変更へ追随する必要はあるが、まだ 0.xx リリースなので予想できる範囲ではある。
Netmaker は基本的に 通常の WireGuard に経路調整と STUN/TURN を載せた形なので構造を理解しやすく、ドキュメントもセルフホスティングユーザーを念頭に置いて書かれていて、良い兆候に見える。
https://netbird.io/
機能一覧が Tailscale を思い起こさせたので調べてみると、ウェブサイトにこういう比較があった: https://www.netmaker.io/resources/tailscale-vs-zerotier
下部の比較表を見ると、Tailscale との差別化点としてセルフホスティングができない点(headscale の存在は無視)と、WireGuard 対応が限定的である点を挙げている。後者は、すべてのノードが互いに接続される Tailscale のデフォルト設定を指していて、NetMaker では別のネットワーク構成が可能だという意味に見える。
ただし Tailscale の ACL でも望む形にネットワークを再構成できるので、その批判が今も有効なのかは分からない。「データが DERP リレーサーバーをかなり頻繁に通過する」という主張も疑わしい。STUN/TURN があってもクライアント間の UDP トラフィックが流れないネットワークでだけ当てはまる話だが、実際にはかなりまれだ。
見つけられる利点は、NetMaker の 無料プランがより充実していることと、可能であれば WireGuard カーネルモジュールを使うことくらいだ。なぜこれを前面に出さなかったのか分からない。
柔軟性は Tailscale と似ているように見え、一般的なユースケースである送信/受信ゲートウェイを違う形でマーケティングしているように感じる。Tailscale でも ACL でネットワーク形態を作れる。
価格については、Tailscale の提供内容も大半のユーザーには十分で、制限も「ソフト」な部類だ。無料ではなく持続可能性を望んでいるので、年45ドルを払っている。乗り換える理由を探しているが、まだ見つけられていない。
ただし、私の見たところ tailnet lock に相当する機能はない。
たとえば設定ファイルを作成して編集し、ルーターに入れれば、すぐにサイト間接続になる: https://www.netmaker.io/features/ingress
Tailscale の NAT 越えは素晴らしいが、それでも考慮に値する要素だ。
愚かな質問かもしれないが、OpenBSD のような環境に 通常の WireGuard サーバーを自分で構成する場合と比べて、こうした製品の利点は何なのか気になる。ネットワークの専門家ではないが、自前での構成もかなり簡単だった。こうした製品がより多くの機能を提供するなら、それがどんな機能なのか知りたい。
ノードが10個あり、11個目のノードを追加するには、既存の10個のノードをすべて更新しなければならない。
こうしたプロジェクトはノード設定を自動化する。新しいノードだけを設定すれば、残りのノードが新しいノードの存在を知るようになる。
企業は WireGuard や他のオープンソースソリューションの改善にもっと投資したほうがよいのでは?
VPN のような重要なセキュリティサービスを、どうやって他社に信頼して任せられるのか分からない。その会社の従業員の誰かが、最高額を提示した相手にあなたを売り渡したらどうするのか?
自作するか購入するかを決めるとき、自分の家のドアの鍵を所有していなければ、誰かに締め出されるリスクがあるという事実を忘れがちな気がする
可能な限りシンプルに保ち、WireGuard を使った VPN プラットフォームは第三者が作るものとして残したということ
どんな VPN ソリューションにも脆弱性はあり得るし、同じ会社なら最新の状態に保つはず。多くのハードウェアファイアウォールには VPN トラフィックを高速化する ASIC があり、会社のトラフィック規模を処理するにはこうしたものが必要になる場合もある
WireGuard でまだ解決できていない不便がある。スマートフォンでは自宅の WireGuard サーバー経由でホームラボに接続し、残りのトラフィックは外部の WireGuard VPN に送りたい
ホームラボの IP 範囲は 10.10.0.0/24 のような形で、外部 VPN は別の範囲なのだが、WireGuard はこういう構成を好まないようだ
代替案はスマートフォンの全トラフィックを自宅へ送り、自宅ルーターが外部 VPN へ出すことだが、自宅回線が良くないのでボトルネックになるのは避けたい
NetMaker のドキュメントをざっと探しても、VPN をどう設定するのか、または複数の WireGuard ネットワークをブリッジする設定を何と呼ぶのかを明確に示す箇所は見つけられなかった
スマートフォンに WireGuard インターフェース/設定が1つあり、ピアが2つある構造なのか? 自宅の WireGuard ピアは AllowedIPs が 10.10.0.0/24 で、リモート VPN ピアは 0.0.0.0/24、という形なのか?
リモート VPN の AllowedIPs から自宅 WireGuard の CIDR を除外してみたのかも気になる。0.0.0.0/24 1つではなく、ローカル CIDR を除外する複数の項目で構成する方法
1つ目のピアは AllowedIPs を 10.10.0.0/8 にすると簡単で、2つ目のピアは残りすべてのトラフィックをルーティングする必要があるので、さらに設定が必要
RFC1918 以外のすべての範囲を列挙した例は、この回答を参照するとよい: https://serverfault.com/a/304791
公開インターネットへルーティングするピアの AllowedIPs に、こうした範囲を入れる必要があると思う
Netmaker はルーティングルールを異なる形で処理し、こうした構成と互換性があるように作られている。ただし通常の WireGuard でも経験上この設定はかなり安定しているので、この問題があるというのは少し意外
そうすれば自宅宛てのトラフィックは自宅の WireGuard 接続を通してルーティングし、残りのトラフィックは外部サーバーからそのまま出せる
Netmaker を数か月使っているが素晴らしい。すべての環境に対する踏み台 VPN 管理用途で使っている
まだ成功していないのは 0.0.0.0 全体のフォワーディング。ドキュメント上は可能とされているが、一般的なユースケースではないようで、試すといつもハングする。たいていは sshuttle を使う必要があった
それ以外は本当に良い
自分が設定したときはそう勧められたが、踏み台を VPC 内に置いてインターネットに露出する方式も検討した
他の製品と比較したのか、Netmaker を選んだ理由も気になる
Netmaker は良い製品で、Y Combinator の支援も受けている。Tailscale のように WireGuard ベースで、主に Kubernetes での利用に焦点を当てているようだ
私の考えでは、組み込み ACL、従来型の WireGuard/VPN 機能、P2P 暗号化メッシュオーバーレイを一緒に提供しているので、他のゼロトラストネットワーキングソリューションより良いと思う
Zerotier や Tailscale のほうが扱いやすいかもしれないが、NetMaker は引き続き注目する価値がある。去年の KubeCon で創業者に会ったが、話しやすくて良い人だった。具体的な質問や懸念があれば直接連絡してもよい
tailnet と netmaker-net の2つのネットワークを接続するにはどうすればよいのか気になる
GitHub リポジトリを見て回ったところ、
_test.goファイルが不足していてかなり残念。セキュリティ製品なのに、悪いことが起きないか怖いこうしたツールをいくつか試してみたが、Netmaker のほうが気に入っている。偏りはあるかもしれないが、構成方法が分かりやすく示されていると感じる
私は HN や他の場所で信頼している人たちが何度も言及していた製品を1つだけ使ったことがあるが、他のサービスについての HN ユーザーの経験が気になる
Kubernetes クラスター内で Netmaker と netclient を使い、安全な WireGuard トンネル経由ですべての k8s Pod にアクセスしている
Longhorn、Pihole、Portainer、Linkerd などの管理ダッシュボードで SSL 証明書を気にする必要がない。クラスターネットワーク内の特定サービスにアクセスするたびに k8s のポートフォワーディングを行う必要もない
安全で管理しやすいクラスターネットワークへのアクセスには、Netmaker と Kubernetes の組み合わせはかなり有力だと思う