オンライン広告は、当サイトを含むお気に入りのウェブサイトにとって大きな収益源となっていますが、パフォーマンスやプライバシーへの懸念など、様々な理由から広告をブロックしたいという人もいます。所有する各デバイスにブロックソフトウェアをインストールすることもできますが、最も効率的な方法は、Pi-holeを使用してサーバーを作成し、ローカルネットワークレベルですべてのウェブトラフィックをフィルタリングすることです。
Pi-holeは、Raspberry Piをベースにしたネットワーク全体の広告ブロッカーです。Raspberry Pi OSを搭載したRaspberry Piにソフトウェアをインストールし、簡単なインストールスクリプトを実行するだけで、Raspberry PiのIPアドレスを指定して即座に広告をブロックできます。また、tomshardware.comなど、頻繁に利用するサイトをホワイトリストに追加することもできます(これは強く推奨します)。これにより、サイトが継続的に広告をブロックできるようになります。
このプロジェクトに必要なもの
- イーサネット搭載のRaspberry Pi
- Raspberry Pi用の電源およびイーサネットケーブル
- Windows PC
Raspberry Piのセットアップ
1. Raspberry Pi の Web サイトからRaspberry Pi Imager をダウンロードしてインストールします。
2.予備のmicroSDカードをコンピュータに挿入します。このカードの内容は消去されますのでご注意ください。
3. Raspberry Pi Imager を起動し、SHIFT + CTRL + X を押して秘密の設定メニューを開きます。
4.下にスクロールして「SSHを有効にする」をクリックし、新しいSSHパスワードを設定します。完了したら「保存」をクリックします。
Tom's Hardware の最高のニュースと詳細なレビューをあなたの受信箱に直接お届けします。
5. 「オペレーティング システム」で「Raspberry Pi OS (32 ビット)」を選択します。
6. 「ストレージ」の下にあるボタンをクリックしてmicroSDカードを選択します。続行する前に、正しいドライブが選択されていることをご確認ください。
7. 「書き込み」をクリックして、Raspberry Pi OS をダウンロードし、microSD カードに書き込みます。完了したら、カードをコンピューターから取り外します。
8. Raspberry Pi OS microSDカードをRaspberry Piに挿入します。次に、イーサネットケーブルを使ってRaspberry Piをネットワークに接続し、最後に電源を入れてRaspberry Piを起動します。
SSH経由でPi-holeをインストールする
Raspberry Piへのセキュアな接続であるSSHは、Pi-holeのインストールとセットアップに最適な方法です。接続にはSSHクライアントを使用します。Windowsの場合はPuTTY、MacおよびLinuxの場合はターミナルから直接接続できます。SSHを使えば、まるで目の前に座っているかのように、ソフトウェアのインストールやRaspberry Piの管理が可能です。
1. Windows ユーザーはPuTTY をダウンロードしてインストールします。Linux および Mac ユーザーはターミナルを直接開くことができます。
2. PuTTY 経由でホスト名を raspberrypi.local として入力し(一部のネットワークでは、.local なしの raspberrypi のみ) 、[開く] をクリックします。
3.プロンプトが表示されたら、ユーザー名とパスワードを入力します。セキュリティ上の理由から、これらの情報は画面には表示されませんのでご注意ください。
4.ソフトウェア リポジトリを更新し、Raspberry Pi の最新のアップデートをダウンロードします。
$ sudo apt update
$ sudo apt upgrade -y
5.この1行のインストールスクリプトを使ってPi-holeをインストールします。このコマンドはスクリプトをダウンロードし、ターミナルでインストーラーを実行します。
$ curl -sSL https://install.pi-hole.net | bash
6. Pi-holeインストーラーが起動し、利用可能なソフトウェアを更新します。その後、メニューベースのインストールウィザードが起動します。Enterキーを押してインストールを進めてください。
7. Pi-holeで使用するインターフェースとしてeth0を選択します。Tabキーを押して赤いハイライトをOkに移動し、Enterキーを押します。これは最適な接続を提供するギガビットイーサネットポートです。
8.アップストリームDNSプロバイダーを選択します。ここではGoogleを選択しましたが、他にも選択肢はたくさんあります。Tabキーを押してからEnterキーを押してください。
9. Tab キーと Enter キーを押して、 ブロックされたサイトのデフォルトのリストを受け入れます。
10. Tab キーと Enter キーを押して、デフォルトの IPv4 および IPv6 プロトコルを受け入れます。
11.現在のネットワーク設定をそのまま受け入れ、静的に設定します。設定内容は後で必要になるので、必ずメモしておいてください。
12. Tab キーと Enter キーを押して、 Web 管理インターフェイスをインストールします。
13. Tab キーと Enter キーを押して、Web 管理ページの提供に使用される lightppd Web サーバーをインストールします。
14.デフォルトのログオプションを受け入れます。
15. Tab キーと Enter キーを押して、 デフォルトのプライバシー モードを受け入れます。
インストールが完了し、最後のページでは Pi-hole デバイスの IP アドレスが要約され、管理者 Web ページのログイン パスワードが提供されます。
16.ターミナルで次のコマンドを実行し、Web管理者のパスワードを変更します。パスワードを2回入力するよう求められます。
$ pihole -a -p
Pi-holeのネットワーク接続の設定
Raspberry PiでPi-holeのセットアップと実行が完了したら、Pi-holeのDNSサーバーが不要な広告をブロックできるように、デバイスをPi-holeに向ける必要があります。ここでは、Windows 10で有線ネットワーク接続を手動で設定します。Wi-Fiの場合も手順は同様です。
1. Windows ロゴを右クリックし、「ネットワーク接続」を選択します。
2. 「プロパティ」をクリックします。
3. 「編集」をクリックしてネットワーク構成を更新します。
4. IPアドレスを希望のアドレスに編集します。ルーターのDHCPサーバーから発行されたIPアドレスを使用することにしました。サブネットプレフィックス長は24に設定します。ゲートウェイはルーターのIPアドレスで、今回の場合は192.168.0.1です。優先DNSはPi-holeのDNSサーバーで、192.168.0.24です。代替DNSはPi-holeデバイスがオフラインになった場合に使用されます。今回の場合はGoogleのDNSサーバーです。「保存」をクリックして変更を保存し、ネットワークインターフェースを再起動します。
Pi-Holeでサイトをホワイトリストに登録する方法
当サイトを含む多くのコンテンツサイトが収益のかなりの部分を広告に依存していることを考えると、サポートしたいサイトをホワイトリストに登録して広告を表示してもらうことは理にかなっています。Pi-holeにはホワイトリストメニューがあり、特定のドメインとサブドメインをPi-holeのリストに追加できます。
1.ウェブブラウザを開き、 Raspberry PiのIPアドレスにアクセスし、 「/admin」と入力します。この設定では、http://192.168.0.34/admin/にアクセスしました。
2.ユーザー名とパスワードを入力してPi-Holeにログインします。管理者ログインパスワードは先ほど変更しました。
3. ダッシュボードから「ホワイトリスト」をクリックします。
4. 「ドメイン」の下に、ホワイトリストに追加したいサイトのURLを入力し、「ホワイトリストに追加」をクリックします。これで、このサイトで広告を配信できるようになります。
ステータスの下のボタンをクリックすると、ホワイトリスト内のドメインを有効化/無効化できます。ホワイトリストに登録されたドメインは、ゴミ箱アイコンをクリックすると削除できます。
5.ログアウトをクリックして、デフォルトの管理ページに戻ります。
これで、ブラウザのタブから広告がなくなり、ブラウジングの速度が大幅に向上しました。これはすべて、引き出しに眠っていた予備の Raspberry Pi のおかげです。