2pfsenseでBTインフィニティSmartHubの交換

私は一年前に新しい家に移動したとき、私は最終的に参加することができました 21st 世紀とSmartHubが供給されている注文BTインフィニティ. SmartHubは実際には合理的にまともなキットは、それが自由のために来て検討しています, しかし、ほとんどの場合と同様に ISP それはいくつかの方法でロックダウンされている付属機器, たとえばあなた自身を使用することはできません DNS 私が行うことを好むのサーバー. ADSLの初期の頃には (年頃 2001) 私は、ルータの代わりにsmoothwallボックスを走りました, そして、理由の範囲について (私によって制御されるインターネットのフィルタリングを含みます, いうより ISP) 私は、Linuxベースのファイアウォールルータに戻って行くことにしました.

私は物事のハードウェア側を行うようになった少しのCeleron J1900ボックスはsmoothwallをインストールしたくありませんでした, ので、私が代わりにpfsenseをインストール. 私はまた、VDSLを取得しなければなりませんでした (ファイバ) 電話ソケットにルータを接続するモデム. 私は実際に「モデムのみ」モードに切り替えることができ、完全なルータですNETGEAR DM200を得ました. 全体の配置を取得する作業は非常にいくつかのあいをしました, ので、私は一つの場所で一緒にすべてのリソースを引っ張るだろうと思って

1. インストールpfsense

私は経由pfsenseをインストールするために必要な USB, その効果フラッシュドライブにより、. これは空白のペンドライブを使用することによって可能になりました, ルーファスと呼ばれるソフトウェア, そしてpfsenseの「memstick」のダウンロード.

2. NETGEAR DM200の設定

DM200を使って何を行うには、それにLANケーブルの両方を接続する必要があります, それに携帯電話のソケット. あなたのPCはDHCPによってNETGEARからアドレスを取得する必要がありますが、そうでない場合は、手動で設定する必要があります。 IP 192.168.5.xのアドレス (Xから何かであること 2 — 254). あなたは、その後で、Webインターフェイス経由でログインすることができます 192.168.5.1. デフォルトのログインユーザ名です 管理者 そして、パスワードがあります パスワード. 「高度」タブを選択します, その後、下部にある「高度」メニュー・オプションは、そのページの左. その下の「デバイスモード」オプションを選択します. デバイスモードを変更するには「モデム (モデムのみ)」、[適用]をクリックします. あなたはの詳細とスクリーンショットを見ることができます NETGEARヘルプページ

3. ログインして、デフォルトのパスワードを変更します

あなたのpfsenseボックスは、LANに接続し、それは、LANを経由していたWebインタフェースを使用して接続します IP アドレス (あなたはそれにディスプレイを接続している場合、それはそれのデフォルトのブートアップ画面に表示されます). あなたは、あなたの地元を変更する必要があります IP これを達成するためのアドレス. ユーザ名とpfsenseにログイン 管理者 パスワード pfsense. セットアップウィザードを移動して、ときに、デフォルトのWebUIのパスワードを変更する機会を与えられました. ステップ1-3の詳細については、私はお勧めします tecmintのガイド

4. 基本的な接続を取得するためにpfsenseボックスの設定

私は、BTの無限大を使用して、正しい設定を取得することは、私が期待したよりもトリッキー証明しました. 私が最初に設定する必要がありました WAN 設定を正しくし、その後, 以下のための正しいプロファイルを設定します WAN インターフェース. 最初の, に行きます インタフェース: WAN そして次のように設定し.

IPv4の構成タイプPPPoEの
IPv6の構成タイプDkp6
親インターフェースとしてIPv4接続を使用するチェックが入っ
要求のみIPv6プレフィックスチェックが入っ
DHCPv6のプレフィックス委任サイズ56
ユーザ名bthomehub@btbroadband.com
パスワード任意の値は動作します

変更を保存します, その後、に行きます インタフェース: 割り当て. 設定 WAN 私の場合、それは「PPPOEは言う - 括弧内の物理インターフェイスで表示する必要があります保存した後、「PPPOE ...」へのインタフェース (EM0)」. 変更をもう一度保存すると、接続が確立されることを願っています.

4B. WAN MTU値

WAN インターフェイスの設定は、あなたが断片化されたパケットと可能なパケット損失を避けるために、BTインフィニティで最適に動作するようにあなたのMTU設定を調整したい場合があります。私が書かれています [int­link id=“4002” type=“post”]専用の記事[/intlink] この問題について.

5. IPv6のテスト

設定は、上記IPv6があなたのLANクライアントに取り組んで取得するために十分なものでなければならない - あなたはまた、pfsense LANインタフェースのIPv6アドレスが表示されます (i.e. FE80を開始しません。1). LANクライアント上のターミナルウィンドウからgoogle.comにpingを実行してみてください - あなたはIPv6アドレスからの応答を取得する場合、すべてが順調です. また、すべてのことを私は使用して正しい確認することができます test-ipv6.com. おかげ Danneh 設定について. 詳細については、私はこれをお勧めします redditのスレッド.

IPv6が完全に動作することを確認するために必要な一つのさらなる微調整があります, あなたは、ファイアウォールを介してのICMPv6パケットを許可する必要があります. ファイアウォールに行きます, [ルール. 新しいルールを追加します。, IPv6へのアドレスファミリを設定します, ICMPのプロトコルを変更します, 「任意の」はサブタイプとして選択したまま (あなたは、特定のサブタイプについてのより多くの読書をしたくない限り、). [保存]をクリックします, その後、「変更を適用」をクリック.

6. インテル強化スピードステップを有効にします

私は完全な傾きですべての時間を実行している私の低電力ルータを望んでいない - しかし、悲しいことにpfsense正しく現時点では、デフォルトでインテル強化スピードステップをサポートするように見えるdoens't. 鉱山作業を取得するには (それに行くために、低CPU温度!) 私が最初にパワードを有効にする必要がありました システム - > アドバンス - > その他 - > パワードを有効にします. あなたは、最も低い周波数を有効にする場合 (これらaltho多くの電力を保存しません) あなたはまた、次の変更を行う必要があります: に行きます 診断, ファイルの編集. 次に、ファイルのパスを入力してください /ブート/ device.hints. 下を変更 2 からのエントリ 10 (と呼ばれる hint.acpi_throttle.0.使用禁止hint.p4tcc.0.使用禁止). おかげ SecondEdgedreamslacker これらのヒントについて. これを確認するには、ルータ経由にログインする必要があります取り組んでいます SSH, オプションを選択 8 (シェル) そして、実行 sysctlのdev.cpu. | グレップのFREQ. これは、66Cから57Cに私のCPUコア温度を取った - 他のPCの隣に詰め小さなファンレスシステムのための悪くありません, モデム, および8ポートスイッチ.

7. ポートフォワーディング

に行きます 防火壁: NAT [追加]ボタンをクリックします. を入力 IP 送信先のアドレスとポートと (最も可能性が高い) 外部ポートに同じポート. より詳細な情報については、私はお勧めします splurbenによってポスト pfsenseのフォーラムで.

8. NATリフレクション

私は、LAN上のさまざまなWebインターフェースにアクセスしたいLAN家と家から離れて、両方のケースでは、両方の私のラップトップを使用します. 私は、ドメイン名を取得するにはDDNSを使用して、LANに接続されている場合でも、接続するために、これを使用していました. これは、下有効にすることができNAT反射が必要です システム: 高度な: ポート転送のためのNAT反射モード. してもいいです (恐らく) また、有効にする必要があります 2 このページの他のオプション: 以下のためのNATリフレクションを有効にします 1:1 NATリフレクションの自動アウトバウンドNATを有効にする

9. Adblocking

私のPCのwebbrowsersのすべてがインストールされているadblocked, しかし、同じことが、これらはブロッカーをインストールするために根ざしする必要があるように私のAndroidデバイスの言うことができません. だから、pfsenseで広告をブロックすることができるということは、それを使用しての主な利点の一つであります. 最初の, に行きます システム: パッケージマネージャー その後、を検索 pfblockerng そしてそれをインストール. あなたはその後、使用してそれを構成することができます 防火壁: PFBlockerNG. 私はその後で、ガイドを使用しました FredMerc それを設定するには. 次のように私が使用した設定の概要は、. に行きます 防火壁: PFBlockerNG その後、をクリックしてください DNSBL タブ, その後、をクリックしてください DNSBL EasyListタブ. トップEasyListフィードをオンにしてEasyListを指すように. [追加]ボタンをクリックします, そして、EasyPrivacyに二EasyListフィードを設定し、あまりにもそれをオン. listアクションは、「結合していない」であるべきと私はへの更新頻度を設定します 1 日. [保存]をクリックします. その後に行く DNSBL タブとオプションを有効に DNSBLを有効にします. 最後に行きます 一般的な タブと pfBlockerNGを有効にします.

9B. 自分好みの修正

デフォルトPFBlockerNGの設定は、Amazon Androidアプリのための問題を引き起こし. これを回避するために、, やその他の問題, それはいくつかのホワイトリストを使用して価値があります. に行きます 防火壁: PFBlockerNG その後、をクリックしてください DNSBL タブ, までスクロール カスタムドメインのホワイトリスト そして次のように入力します。 (おかげ pfsenseのフォーラムでbchow)

.amazonaws.com
.amazon-adsystem.com
.amazon.com
.ssl.google-analytics.com
.ssl-google-analytics.l.google.com # 以下のためのCNAME (ssl.google-analytics.com)
.www.google-analytics.com
.www-google-analytics.l.google.com # 以下のためのCNAME (www.google-analytics.com)
.www.googleadservices.com
.plex.tv
.gravatar.com
.thetvdb.com
.themoviedb.com
.googleapis.com # 172.217.3.202 Amazonアプリが機能するために重要です
.1e100.net # CNAME? ALTNAME? googleapis.com
.ad.doubleclick.net # 氏族の衝突のために必要?
.g.doubleclick.net # 氏族の衝突のために必要?
.q1mediahydraplatform.com # hungryhouse Androidアプリのために必要?

また、トップサイトのAlexaのホワイトリストを有効にすることができます.

10. 透明なイカプロキシ

私は透明のイカのプロキシを設定するために、我々は、異なるデバイス上で、繰り返し同じ場所に当たるんブラウジングの多くを決めました, 私はそれが大きな違いを生むことを期待しないでください, 私はないに任意の理由を見ることができません. 使用 システム: パッケージマネージャー イカをインストールするには. その後に行きます サービス: イカプロキシサーバー それを設定するには. あなたがそれを使用したい場合はこれもsquidGuardのために必要とされます, 私がそうであるように.

11. squidGuardを持つ子供の安全のためのWebフィルタリング

私は家の中で幼い子供を持っており、不適当コンテンツをブロックします. これは、squidGuardのパッケージとShallaのブラックリストを用いて達成することができます. からsquidGuardのインストール システム: パッケージマネージャー. その後に行きます サービス: squidGuardのプロキシフィルタ. に行きます ブラックリスト タブ, アドレスを入力します。 https://www.shallalist.de/Downloads/shallalist.tar.gz クリックします ダウンロード. そして、共通ACL]タブを使用します, プラスボタンをクリックして、ブロックしたいカテゴリを選択. バグによるダミーターゲットカテゴリを設定することもnecesaryです. 詳細については、上のこの記事を参照してください pfsenseフォーラム. リストのすべてのためにデフォルトを設定することを忘れないでください 許します リストの一番下にあります. 上networkinggeekのおかげ pfsenseフォーラム このヒントについて. 最後に - それはブロックされた要求が短期間しかキャッシュされるように、高度なオプションのカップルを編集する価値があるかもしれない - あなたには、いくつかのサイトのブロックを解除することを決定した場合にはそのように、あなたは文句を言わないそれらのサイトにアクセスするには、ブラウザのキャッシュをクリアする必要があります - あり詳細について pfsenseフォーラム. カテゴリをホワイトリストに登録する必要がありました[blk_BL_sex_lingerie] 私の妻は、フィルタとしての下着を買うことができるように主流の小売店で下着のセクションをブロックしました (e.g. デベンハムズ).

12. サービスの範囲のためのU-PNPを有効にします (ゲーム, メッセージング, 急流, 等)

に行きます サービス: UPnPの & NAT-PMP, トップのダニ 2 箱 (有効にする UPnPの & NAT-PMP許します UPnPの ポートマッピング), 、[保存]をクリックします.

13. SNORTと悪意のあるトラフィックのブロック

検出し、悪意のあるトラフィックをブロックをブロックするには、Snortのパッケージをインストールすることができます. それが原因偽陽性の多くにあなたがしたくない物事の多くをブロックするように私は、最初の数週間はブロックせずにそれを実行することをお勧め. 最も厄介な誤検知を回避するために、次の抑制リストを使用することをお勧めします

#と P2P ビットトレント P2P クライアントのUser-Agent (uTorrentの)
GEN_ID抑制 1, sig_id 2011706
#と P2P BitTorrent DHT announce_peersリクエスト
gen_idを抑制します 1, sig_id 2008585
#(spp_ssl) サーバーHELLOが検出された後の無効なクライアントHELLO
gen_idを抑制 137, sig_id 1
#と P2P BitTorrent DHT pingリクエスト
gen_idを抑制します 1, sig_id 2008581
#(http_inspect) 簡単なリクエスト
gen_idを抑制 119, sig_id 32
#(http_inspect) 未知の方法
gen_idを抑制 119, sig_id 31
#(http_inspect) 無効なコンテンツ長またはチャンクサイズ
gen_idを抑制します 120, sig_id 8
#(http_inspect) NO CONTENT-LENGTHんや転送、エンコードで HTTP 応答
gen_idを抑制 120, sig_id 3
#(http_inspect) 二重復号攻撃
gen_idを抑制 119, sig_id 2
#(http_inspect) HTTP 応答GZIP解凍に失敗しました
gen_idを抑制します 120, sig_id 6
#(http_inspect) IIS ユニコードコードポイントエンコーディング
gen_idを抑制 119, sig_id 7
#(http_inspect) ベアバイトユニコードエンコーディング
gen_idを抑制 119, sig_id 4
#(http_inspect) JAVASCRIPT難読化レベルは超えています 1
GEN_ID抑制 120, sig_id 9
#(http_inspect) JAVASCRIPT WHITESPACESが最大許容数を超えています
gen_idを抑制 120, sig_id 10
#(http_inspect) エスケープされていないSPACE HTTP URI
GEN_ID抑制 119, sig_id 33
#(http_inspect) Uエ​​ンコード
gen_idを抑制 119, sig_id 3
#(http_inspect) 二重復号攻撃
gen_idを抑制 119, sig_id 2
#(http_inspect) JAVASCRIPT難読化データ内の複数のエンコーディング
gen_idを抑制します 120, sig_id 11
#(http_inspect) HTTP 応答の正規化に失敗したUTF CHARSETがあります
gen_idを抑制 120, sig_id 4
#FILE-IMAGEののDirectShow GIF 論理幅オーバーフローの試行
gen_idを抑制します 1, sig_id 27525

14. モデムへのWebアクセスを取得します, pfsenseボックス経由

私のNETGEARのDM200モデム (パススルーモードで) 固定経由でのみアクセス可能です IP アドレス (192.168.5.1). 私はLANのコンピュータ上のWebインターフェイスにアクセスできるようにしたかったです. でいくつかの命令があります。 pfsenseウィキ, これらは最初に私のために動作しませんでした. 上のユーザーナンセンスによって役立つ記事があります pfsenseフォーラム

14B. pfsenseダッシュボード上のモデム接続の統計情報を表示

頭を悩ませた後、ネットギアモデムのモデム統計をダッシュ​​ボードに表示する方法を見つけました.
これは、PHPコードでカスタムウィジェットを作成することによって行われます.
診断および編集するファイルに移動します. パスに新しいファイルを作成します。

/USR /ローカル/ WWW /ウィジェット/ウィジェット/ modemstatus.widget.php

内容で

< ?PHPの$ステータス=のfile_get_contents("https://ユーザ名:password@192.168.5.1/RST_statistic.htm"); $ステータス= str_replace("timereset = でした"5\";","timereset = でした"0\";",$状態); エコー$ステータス ?>

あなたは、ユーザー名とパスワードをカスタマイズする必要があります. 上記のコードは、NetgearのDM200のために働きます, おそらく他のNETGEARのモデムやルータ. ハードウェアの他の作るために、あなたは統計のために別のアドレスが必要になりますし、あなたは、PHPを使用して応答の追加の操作を行う必要があるかもしれません.
私はオーバーだらけのデフォルトNETGEARリフレッシュ間隔を持っていることに注意してください - リロードは、ダッシュボードの表示を破るように私はそれをオフにしました. 更新された数値を取得するには、Webブラウザのリロードボタンを使用してpfsenseダッシュボードを更新するだけです。
今、ダッシュボードに移動して、ウィジェットを追加して、あなたはすべて完了しています.

15. ログイン時に証明書の警告を修正

見る このガイド

16. 地元を使用するためにFirefoxを確認して下さい DNS HTTPS経由, 代わりに、私たちのフィルタをバイパスします (2020年4月追加)

サービス内-> DNS 解きます
「カスタムオプション」フィールドに次の行を追加します…

サーバー:ローカルゾーン: "use-application-dns.net。" always_nxdomain

17. 代わりにブロックされたリソースのためのpfsenseボックスのドメイン名を使用します IP (2020年4月追加)

サービス-> Squid­Guardプロキシフィルター-> 一般的なACL
「ReDir­ect Mode」を「ext url move」に変更します (入力する URLは)」
「Redir­ect info」フィールドで「https://お使いのルータ名/ sgerror.php?url = 403%20&A =%A&N =%nを&私は、%Iを=&S =%sの&T = T%&u =%u "

Leave a Reply

2 Comments

Jジョン

これを浮動ルールに配置するファンタスティックガイド?
IPv6が完全に動作することを確認するために必要な一つのさらなる微調整があります, あなたは、ファイアウォールを介してのICMPv6パケットを許可する必要があります. ファイアウォールに行きます, [ルール. 新しいルールを追加します。, IPv6へのアドレスファミリを設定します, ICMPのプロトコルを変更します, 「任意の」はサブタイプとして選択したまま (あなたは、特定のサブタイプについてのより多くの読書をしたくない限り、). [保存]をクリックします, その後、「変更を適用」をクリック.

plsはガイドが来続ける!!

応答
JSジョン・スカイフ

追加情報をありがとう. 実際にICMPv6パケットを有効にしていましたが、これを書いたときに持っていたのを忘れていたに違いありません. 更新します. 最初の質問でガイドのどの部分が参照されているかわかりません?

応答