インターネット
 Computer >> コンピューター >  >> ネットワーキング >> インターネット

Pi-Hole - DNS Triangle

現代のインターネットはかなり厄介な場所です。多くの場合、テキストを読んだり、ビデオを見たりするような無害な活動は、広告として知られる宣伝メッセージによって中断されます.広告が関連性があり、タイミングがよく、邪魔にならない場合、これは問題にはなりませんが、人工知能、深層学習、およびその他の流行語の多くの「進歩」にもかかわらず、広告はそれらのどれでもありません.次に、プライバシーなどがあります。

広告提供者と広告ブロッカーの間の戦いは激しさを増しています。また、攻撃的なインイヤーフェイスの広告モデルに反対する人が増えているため、徐々にエスカレートしています。ほとんどの場合、ブラウザで広告ブロック拡張機能を使用すれば、準備は完了です。ただし、ブラウザ会社とその許容範囲に左右されます。さらに、これはすべてのブラウザやオペレーティング システムで常に機能するとは限りません。解決策は、広告サーバーへのブロック ネットワーク リクエストを完了することであり、これが Pi-Hole が行うことです。復習しましょう。

Pi-Hole - DNS Triangle

はじめに

Pi-Hole は、インターネット広告主にとってブラック ホールです。これは、広告配信であると識別されたドメインへの DNS 要求をブロックする一連のソフトウェア ツールであり、ブラウジング セッションやインターネットに接続するアクティビティに広告が含まれないようにします。これはネットワーク レベルのソリューションであるため、すべてのシナリオで機能するはずです。ノイズの減少以外にも、トラフィック量の減少、プライバシーの改善などのメリットがあります。

これに興味をそそられ、Pi-Hole をセットアップすることにしました。現在、一般的に、Pi-Hole はアプライアンスとして使用するように設計されています。その名前が示すように、安価な Raspberry Pi デバイスを使用し、それに Pi-Hole をインストールしてから、ネットワーク フィルターとして使用することをお勧めします。ここに問題 1 があります。Pi-Hole を正しく構成するには、ネットワークについてある程度理解する必要があります。全体として、完全な Pi-Hole ソリューションは以下をカバーします:

  • Pi-Hole ソフトウェアを実行するデバイスのセットアップ - これは、ネットワーク上の専用システムにすることも、Linux を実行している任意のマシンで Pi-hole を構成することもできます。たとえば、Linux ラップトップまたはデスクトップが 2 台ある場合、それぞれが独自のネットワーク フィルタになる可能性があります。
  • 次のステップは、Pi-Hole を DNS サーバーとして構成することです。つまり、IP アドレスではなくドメイン名を使用してブラウジングします。人間は、1.2.3.4 などの一連の数字よりも、dedoimedo.com や example.com のようなものの方がはるかに覚えやすいと感じています。これは、人間が読める名前から数字への変換を行うドメイン ネーム システム (DNS) 解決サービスを通じて行われます。 Pi-Hole は、この時点でフィルタリング ルールを適用できます。インターネット広告主の 1 つに属すると見なされるアドレスへのリクエストを識別した場合、このリクエストをドロップすることができるため、そのようなコンテンツは提供されません。もちろん、これには誤検知も含まれます。
  • 最後のステップは、Pi-Hole を DNS サーバーとして使用するように他のシステムを構成することです。これには、ネットワークに関するある程度の知識が必要です。しかし、これは実際にはどのオペレーティング システムにも当てはまります。 Pi-Hole アプライアンスは Linux である必要がありますが、どのマシンでも DNS 構成を変更してアプライアンスを使用できます。その時点から、Pi-Hole がネットワーク リクエストをフィルタリングする仲介者になります。

したがって、上記のすべてには専門知識が必要であることを覚えておく必要があります。セットアップでこの性質のソリューションを気軽にプラグ アンド プレイすることはできません。しかし、オタクの友人がいる場合、彼らはあなたのためにこれを行うことができるかもしれません.これがどれほど単純か複雑かについては、続けましょう。

インストール ウィザード

スクリプトをダウンロードして実行しました。従うのが比較的簡単なテキストベースのウィザードが表示されます。これを KDE ネオンで実行したところ、GitHub から提供される独自のコンポーネントを除いて、システム リポジトリからソフトウェアのみがインストールされました。

Pi-Hole - DNS Triangle

Pi-Hole - DNS Triangle

Pi-Hole - DNS Triangle

どの DNS を使用するかを Pi-Hole に伝える必要があります。たとえば、192.168.1.1 や 192.168.2.1 などの独自のルーターを使用できます。これは通常、Linux システムが使用するものです。 systemd が導入された現在、状況を理解するのは少し難しくなっていますが、そこにたどり着きます。既存のインターネット DNS (Google や CloudFlare など) を使用するオプションもあります。カスタム設定から始めることにしました。

Pi-Hole - DNS Triangle

他の広告ブロッカーと同様に、Pi-Hole はリストを使用して広告をブロックします。リストが最新でなかったり、たまたま不正確だったり、不適切に作成されていたりすると、正当なドメインが拒否されるギャップや誤検知が発生する可能性があるため、これがソリューションの最も強力なリンクと最も弱いリンクです。しかし、それに関しては、これはブラウザー拡張機能を介した広告ブロックと何ら変わりはありません。ほとんどのブラウザー拡張機能は、サードパーティのドメインにのみルールを適用するため、予想されるドメインが動作しない可能性は比較的低くなります。 Pi-Hole は誰にでもできるように設計されているため、正規のサイトの読み込みを妨げる可能性があります。

Pi-Hole - DNS Triangle

Web UI はいいことのように思えます。設定しました。

Pi-Hole - DNS Triangle

そしてそれだけでした。おそらく、Pi-Hole がインストールされ、構成されており、使用できるようになりました。

うまくいきましたか?

いいえ。インターネットに接続できませんでした - 名前解決に失敗しました。私のローカル システム - ネオン - は、自身を DNS (または、ルーターを使用していたインストール済みの Pi-Hole) として使用していましたが、Pi-Hole はその解決サービスを提供していないようでした.

この時点での問題は、インターネットがないためオンラインにできないことです。そのため、回答を検索したい場合は、別のマシンが必要です。 Pi-Hole をアンインストールしてみましたが、これはシンプルでクリーンなソリューションであり、接続はすぐに復元されました。再度インストールしましたが、同じ結果が得られました。

コマンドラインチェックをいくつか試してみることにしました。 Pi-Hole には、有効化、無効化、名前解決サービスの開始、ステータスの確認などを行うためのコマンドがいくつか付属しています。 pihole-FTL と呼ばれるものに問題があったことがわかりました。わかりました。

pihole enable
[i] ブロッキングを有効にします
[✗] pihole-FTL:プロセスが見つかりません
[✓] Pi-hole Enabled

pihole-FTL を実行しようとしましたが、起動しません。結局のところ、sudo が必要でした。オンライン ドキュメントを見ると、セットアップ エラーは十分に文書化されていません。これで、構成の最初のハードルを乗り越えたようです。

pihole-FTL
FATAL:FTL ログ (/var/log/pihole-FTL.log) のオープンに失敗しました!
存在し、neon ユーザーが書き込み可能であることを確認してください

sudo pihole-FTL
FTL を開始しました!

しかし、私はまだインターネットを持っていませんでした。 DNS サービスがまだダウンしていると判断したので、再起動を試みました。

pihole restartdns
[✗] pihole-FTL.service の開始に失敗しました:ユニット pihole-FTL.service が見つかりません。

エラーから、FTL サービスを開始するためのユニット ファイルが存在しないか、中断されていることがわかりました。オンラインで検索すると、サービス ファイルを変更する必要があることがわかりました。つまり、/etc/init.d/pihole-FTL の下で、以下から FTL を呼び出す行を編集する必要がありました:

su -s /bin/sh -c "/usr/bin/pihole-FTL" "$FTLUSER"

この行だけに:

/usr/bin/pihole-FTL

この後、Pi-Hole はエラーなく起動しました。

sudo pihole restartdns
[✓] DNS サービスの開始

Pi-Hole は広告をブロックしていません

接続はありましたが、広告が表示されました。 Pi-Hole はフィルタリングを行っていませんでした。そこで、Web UI にアクセスして、変更や微調整ができるかどうかを確認することにしました。しかし、Pi-Hole のアドレスにアクセスしようとすると、リッスンしている Web サーバーがありませんでした。 https://ip-address/admin と https://pi-hole/admin は何もしませんでした。

コマンド ラインでさらにテストを行ったところ、lighttpd サービスが実行されていないことが判明しました。これは、Web UI を使用しなかった理由を説明しています。そのため、さらに魔法を使う時が来ました。繰り返しになりますが、この主題に関するドキュメントは少しまばらでした。さらにエラーが発生しました:

sudo systemctl restart lighttpd.service
制御プロセスがエラー コードで終了したため、lighttpd.service のジョブが失敗しました。詳細については、「systemctl status lighttpd.service」および「journalctl -xe」を参照してください。

今回はインターネットがあったので、ネットで検索してみるとすぐに原因がわかりました。次のスレッドは正しい答えに私を導きました - エラーログには解決策を示すものは何もありません.そしてここで、systemd の解読不可能な複雑さをもう一度指摘したいと思います。バイナリログで情報を検索する必要がありましたが、それでも情報は役に立ちませんでした.

私は実際にパッケージを見逃していました-gamin-依存関係としてすぐにインストールされない理由はわかりません。しかし、これをインストールすると、lighttpd が問題なく起動し、Web UI を探索できるようになりました。

sudo apt-get install gamin

systemctl status lighttpd.service
● lighttpd.service - Lighttpd デーモン
ロード済み:ロード済み (/lib/systemd/system/lighttpd.service; 有効; ベンダー プリセット:有効)
アクティブ:アクティブ (実行中) Thu 2019-05-09 15:34:03 CEST 以降。 2 秒前
プロセス:19060 ExecStartPre=/usr/sbin/lighttpd -tt -f /etc/lighttpd/lighttpd.conf (code=exited, status=0/SUCCESS)
メイン PID:19069 (lighttpd )
タスク:6 (制限:4915)
CGroup:/system.slice/lighttpd.service
├─19069 /usr/sbin/lighttpd -D -f /etc/lighttpd/lighttpd .conf
├─19078 /usr/bin/php-cgi
├─19079 /usr/bin/php-cgi
├─19080 /usr/bin/php-cgi
> ├─19081 /usr/bin/php-cgi
└─19082 /usr/bin/php-cgi

Pi-Hole - DNS Triangle

ウェブ UI のログインとパスワード

しかし、まだ広告がブロックされていませんでした。そこでログインしようとしたところ、別の問題があることに気付きました。すべてのログと詳細を実際に確認して変更を加えることができる管理ページにアクセスできませんでした。再度オンラインで検索したところ、コマンドラインからデフォルトのパスワードをリセットする必要があることがわかりました:

ピホール -a -p

その後、Web UI 設定にアクセスできました。それは本当に素晴らしく強力なインターフェースです。 Pi-Hole を一時的に停止する機能など、多くのオプションがあるため、問題が発生した場合は、すべてを変更するのではなく、フィルタリングを一時停止することしかできません。 DNS 設定をいじる必要はありません。

ブロックリストに入力

インターフェイスを調べてみると、ブロックリストがすべて空であることに気付きました。はい、これはメイン ページから明らかですが、探しているものを知る必要があります。 Pi-Hole がリストを更新するように促したり、セットアップの一部として実際にこれを行ったりしないのはなぜですか?コマンド ラインから手動で更新を実行したところ、リストが生成されました。

ピホール -g -f

Pi-Hole - DNS Triangle

うまくいきましたか?

はい、やっと動きました! Pi-Hole は DNS の役割を果たし、トラフィックのフィルタリングも行っていました。それは効果的で邪魔にならなかったと言わざるを得ません。また、私が間違っていなければ、システムが処理するクエリと提供するコンテンツが少なくなるため、ネットワーク側でもパフォーマンスがわずかに向上しました。実際、無害なブラウジングでも、すべてのクエリの 20% がブロックされました。それはたくさんのように聞こえます。しかし、現代のインターネットの現状も浮き彫りにしています。ブロックリストに 100,000 を超えるドメインがあるという事実も、この悲しい話の一部を物語っています。また、レイテンシーの緩やかな改善についても説明します。

Pi-Hole - DNS Triangle

結論

一日の終わりに、私は Pi-hole を実行しましたが、セットアップは簡単ではありませんでした。根本的な問題が 4 つまたは 5 つありましたが、インストール ウィザードが別のチェックを行って動作していることを確認できたので、これらのいずれも発生するはずがありませんでした。初回実行の一部としてサービス チェックが行われる可能性があり、そこに問題がある場合は、FTL が稼働中であることを確認するための何らかの自己診断が行われます。同じことが Web サービスにも当てはまります。次に、パスワードのリセットとリストの更新があります。これらすべてにより、エクスペリエンスがより合理化されます。

製品として、Pi-Hole は非常に優れた強力なツールです。それは非常にうまく機能し、高速で効果的で堅牢であり、Web UI は適切に設計されています。また、提供する必要があるコンテンツが少なくなり、解決するクエリが少なくなるため、トラフィック側でもいくらか得られます。したがって、重要なもののパフォーマンスが向上します。セットアップは簡単ではありませんが、達成可能であり、ネットワークの配線方法には多くの柔軟性があります。 Pi-Hole をスタンドアロン システムとして使用することも、家庭内のさまざまなデバイスすべてにサービスを提供することもできます。全体として、これは、インターネットが悪党になった場合の終末の武器です。テストする価値は十分にありますが、熱力学の 2 番目の規則を思い出してください。些細なことと複雑なことを同時に持つことはできません。

乾杯。


  1. Slimbook が登場

    私は弾丸を噛んで、かなり大胆なことを試すことにしました.まあ、それほど大胆ではありません。私は、実際に Linux マシンを日常の生産的な作業に使用できるかどうかを調べることにしました。そのために、私は 14 インチの Slimbook Pro2 を購入し、現在、家に​​持ち帰っています。 さて、これは反動的な決定ではありません。好奇心旺盛な1本です。私は邪悪な企業やその種のものから身を引き離そうとしているわけではありません。私は Windows と Linux を並行して使用することに非常に満足していますが、一方で、Linux デスクトップが実際に現実的で実用的な方法で、妥協したり甘い幻想

  2. コンピューターの未来

    コンピューターとは、ブラウジングしたり、音楽を聴いたり、友達がいるふりをしたり、時には実際の仕事をしたりするために使用するものを意味します。大企業のサーバー、デスクトップ ワークステーション、ノートブック、ネットブック、最後にスマートフォンまで、さまざまな種類があります。一握りのメディア センター、ストリーマー、タブレットを放り込むと、混乱が生じます。そして、すべてのタイプについて、非常に多くの意見と予測があり、すべてが運命論的に 1 つの質問に固執しています。すぐに死ぬのでしょうか? 死が好きな人もいます。 4 分おきに、Firefox がもうすぐ死ぬという記事があります。もちろん、この