Linux 版 NordVPN が LAN を遮断する:許可リストと DNS
キルスイッチはトンネル外のすべてを遮断し、プライベート範囲も含みます。ルールを読み、一つのプレフィックスを許可し、名前解決は別に直します。
自分のデスク上の何かにアクセスしようとするまで、すべては正常に見えます。トンネルは上がり、ページは読み込まれ、ネットワークドライブがタイムアウトします。切断すると、言い終わる前にドライブが戻り、これはどのログよりも多くを語ります:クライアントはトンネルに入らない通信を意図的に拒否しており、ローカルネットワークがその境界の間違った側にあるのです。
キルスイッチは仕事をしている
キルスイッチは、トンネルが使えないときに通信が外へ漏れないようにするためのものです。プライベートアドレス範囲はトンネルに入らない通信と見なされるため、厳格な実装はそれを他のすべてとともに遮断します。人が不具合報告を出すときの意味での不具合ではありません。
まずクライアント自身の見解を読みます。一つのコマンドが現在の設定を出力し、二つ目がクライアントの作ったファイアウォールオブジェクトを表示します。探すのは、トンネルの例外より前に現れる drop か reject で、その順序こそがローカルネットワークを到達不能にするからです。
nordvpn settings
sudo nft list ruleset
sudo iptables -S
次に、問題を二分するテストを一つ実行します。アドレスで機器に到達し、次に名前で到達します。アドレスは通り名前が失敗するなら、ファイアウォールは無実でリゾルバーが原因です。両方失敗するなら、ファイアウォールがパケットを拒否しており、この記事の残りが当てはまります。
許可リスト:症状に応じて項目の種類を選ぶ
クライアントは三種類の項目を持つ許可リストを提供し、正しい種類を選ぶことが作業の大部分です。サブネットはホストを対象にします。ポートは宛先にかかわらず一つのサービスを対象にします。マルチキャストグループは検出トラフィックを対象にし、これは単一のホスト宛てのどの通信とも異なる形の通信です。
nordvpn allowlist add subnet 192.168.1.0/24
nordvpn allowlist add port 22
nordvpn allowlist add subnet 239.255.255.250/32
sudo nft list ruleset | grep -i allow
検出の失敗が人を驚かせるのは、プリンターやメディアサーバーが自分のアドレスの検索ではなく、グループ宛ての問い合わせで見つかることがあるからです。ホストのサブネットを追加してもそのグループは自動的には対象にならないため、アドレスを入力すれば Web ページは問題なく読み込まれるのに、機器は見えないままです。
例外は症状が許す範囲で狭く保ちます。一度入力した広いプレフィックスは何年も忘れられ、後からどのマシンを通すつもりだったのか説明できません。必要としたプロジェクトが終わったら項目を削除し、更新後に何が残っているかを確認します。
最近のビルドは LAN 検出の単一設定も公開しています。便利で、許可リストに積み重なるのではなく相互作用します:有効にすると既存のプライベートサブネットの項目が消えることがあり、有効なままだと手動のプライベートサブネット規則が拒否されることがあります。
ホスト名には別の判断が必要
サブネットを許可するとアドレスでの接続は戻りますが、名前の扱いは変わりません。ローカルのホスト名は、トンネルが上がったときにクライアントが設定したリゾルバーへ今も送られるため、以前は解決できた名前が今は何も返しません。
クライアントをルーターのリゾルバーに向けると一手で直り、買ったものが静かに変わります。するとローカルだけでなくすべての問い合わせがルーターを通るため、トンネルは意図を明かす閲覧部分をもう守りません。
狭い道はトンネルのリゾルバーを保ち、重要な少数の名前を検索ドメインとして、または個別の項目として追加します。手間は増えますが、支払った性質を保ちます。
結果はブラウザーではなくシステムのリゾルバー呼び出しで確認します。ブラウザーは独自の暗号化解決をますます実行し、シェルが決して使わない経路から平気で答えるため、アドレスバーは健全に見えてもシステムのリゾルバーは壊れたままです。
先に来るインストールの問題
こうした報告のかなりの部分は、コマンドがそもそも無いためにファイアウォールへ届きません。ベンダーのブートストラップパッケージはリポジトリーと署名鍵を登録します。クライアントはインストールしないので、直後にコマンドが無いのは失敗ではなく想定された結果です。
パッケージ一覧を更新し、名前でインストールします。パッケージマネージャーが公開鍵の欠落を訴えるなら、鍵はそれが探す場所に届いていないので、再度更新する前にそこへ置くのが修正です。
リポジトリーのホスト名がプライベートアドレスに解決されるなら、止まってその結果を二度読みます。すでにリゾルバーが公開名に答えているトンネルを動かしているかもしれませんし、インストールを再試行しても同じメッセージが延々と出るだけです。
ふたを閉じる前に書き留める
変わったのがトンネルだけだと確かめてから、症状を戻す最小のものを許可します。名前の扱いは独自のメモを持つ別の判断として保ちます。
どの例外がどの機器のためのものか、誰が求めたのかを記録します。誰かが広いプレフィックスを入力したから動くだけのローカルネットワークは、その理由より長く生き延びた判断です。
クライアントの更新後にもう一度テストします。ファイアウォールの構成はリリース間で変わり、先月の許可リストは今月の事実ではありません。