転載・引用について

ユーザ用ツール

サイト用ツール


networkapp:pfsense:install

pfSenseをInstallする

今回は、XenServer上にpfSenseをVMとして導入する。

Install

ともあれ、公式サイトからInstallイメージ(isoイメージ)を取得し、XenServerから見えるようにしておくこと

普通にVMを作る。起動イメージを上記Installイメージにすること

今回の構成

設定

とにかく、設定が重要。

初期設定

  1. VMを起動
  2. ConsoleからNetwork関係の設定を投入
    1. WAN/LAN関係の設定を入れる
      • LAN I/FからWeb Accessで設定することになる。ここを間違えると、かなり面倒なことになるので、十分に注意
        • Webから初期設定出来なくなるのでconsoleからshell loginしてpfを止めなければならなくなる
    2. 1) Assign Interface
      1. VLAN設定についてきかれるので、nを選択。(必要に応じて設定すればよい)
      2. WAN Interface name を訊かれるので、re1を入力
      3. LAN Interface name を訊かれるので、re0を入力
      4. Optional Interface name 1 を訊かれるので、re2を入力
      5. Optional Interface name 2 を訊かれるので、何も入力せず、Returnを押す
      6. Do you want to proceed と訊かれるので y を入力
    3. Set interface(s) IP Address
      1. 先ほど入力したI/Fが表示されるので、IP Addressを入力するI/Fを選択。今回はLANの2
      2. IPv4 Addressを入力
      3. Mask lengthを入力
      4. DHCP Serverを動かすか訊かれるので、nを入力
        • 動かしたい人はyを入力すればよいが、あとで設定できるので、最初はnにしておくことを勧める
      5. これでBrowserから設定できるようになる
    4. 10) Filter logs
      1. これで、Packet filterに引っかかっているパケットが見えるので、最初の設定が終了するまでは、表示しておこう
  3. Browserから設定をする
    1. 設定したIP Addressへhttpで接続するとlogin画面が出るはず
      1. 出ない人はまず、filterに引っかかっているか確認。もし引っかかっているならI/Fの設定の問題なので、もう一回LAN/WAN関係を確認
      2. filterに引っかかっていないなら、Network的に通信できているか確認
        1. filter画面でCtrl+cを入力
        2. 7) Ping hostを選択し通信確認をする
        3. これでダメなら、色々確認。
    2. 初期userとpasswordはadmin/pfsenseなので、loginする
    3. まず何はともあれ、User情報を書き換える
      1. System→UserManagerでadminが存在するはずなので、右端のeのアイコンをクリック
      2. 必要な情報を全部入力し、パスワードを変更する。
      3. saveする
      4. 自分用のアカウントを作成する。「右端下側」の「+」のアイコンをクリック
      5. 必要な情報を全部入力し、パスワードを変更する
        1. 特にGroup設定に注意すること。admin groupに入っていないと、設定変更が出来ない
      6. saveする
    4. ともあれlogoutし、adminや自分用のアカウントでlogin出来ることを確認する
    5. 失敗したら、コンソール画面から4) Reset to factory defaultsを選択し、最初からやり直し

これで他の設定をする準備ができた。

全般的な設定

システム全般に関わる設定をする

  • System → General Setup
    1. hostname を設定する
    2. Domain を設定する
    3. DNS Servers を設定する
    4. TimeZone を設定する(Asia/Tokyoかな?)
    5. NTP Time Serverを設定する。
      • これは、一般に公開されているものでも良いし、内部に保持しているNTP ServerでもOK
    6. (好みで) Themeを設定する
    7. saveする
  • System → Advanced → Admin Access
    1. (必要があれば)ProtocolをHTTPsにする
    2. (必要があれば)sshを生かす
      • この場合、個人アカウント設定でsshのPublic keyを設定し、Authentication MethodでPassword loginをOffにすることを勧める
      • また、sshのポートを22ではなく、別のポート番号にすることを勧める
      • sshでloginした時に、簡易メニューを出したければ、/etc/rc.initialを実行すればよい
    3. saveする
    • 他にも色々設定できるので、必要に応じて設定する
  • System → Advanced → Firewall/NAT
    1. IP Do-Not-Fragment compatibilityにチェックを入れる
    2. IP Random id generationにチェックを入れる
    3. saveする
    • 他にも色々設定できるので、必要に応じて設定する
  • System → Advanced → Networking
    1. (必要に応じて)Allow IPv6にチェックを入れる
    2. (必要に応じて)IPv6 over IPv4 Tunnelingにチェックを入れる
    3. (必要に応じて)Device pollingにチェックを入れる
      • 非常に通信量が多い所にpfSenseを導入する場合、kernelが割り込みに追いつかずにパケットを取りこぼすことがある。このような場合に対応し、割り込みベースではなく、ポーリングベースで通信を処理させる時に、ここにチェックを入れる。特に仮想システム上でのVirtual Firewallとして利用する場合、状況をみて設定すると良い。
    • 他にも色々設定できるので、必要に応じて設定する
  • System → Advanced → Miscellaneous
    • ほとんどいじる所はない
  • System → Advanced → System Tunable
    1. net.inet.tcp.recvspace: 回線速度に応じて適切に(うちでは、仮想なので、defaultのまま。Bare MetalでMemoryも十分にあるなら3倍〜5倍くらい)
    2. net.inet.tcp.sendspace: 回線速度に応じて適切に(うちでは、仮想なので、defaultのまま。Bare MetalでMemoryも十分にあるなら3倍〜5倍くらい)
    • 他にも色々設定できるので、必要に応じて設定する
  • System → Advanced → Notifications
    1. 通知先の情報を入れる。特にE-Mailの部分をいじっておくと良い
    • 他にも色々設定できるので、必要に応じて設定する

LAN設定

  • Interface → LAN
    • Enableであることを確認する
    • (必要に応じて)Descriptionを変更する。(今回は、管理I/Fとして設定するので、Mgmtとした)
    • (必要に応じて)Mac Address/MTU/MSSを設定する。LAN系統なので、変更の必要なし
  • Interface → WAN
    • Enableであることを確認する
    • (必要に応じて)Descriptionを変更する。(今回は、管理I/Fとして設定するので、Mgmtとした)
    • (必要に応じて)Mac Address/MTU/MSSを設定する。LAN系統なので、変更の必要なし
    • 今回は、NATの内側にいるので、Block private networksはチェックしない
    • Block bogon networksをチェックする。Bogon Networkは使わないこと。
  • Interface → OPT1
    • Enableにする
    • (必要に応じて)Descriptionを変更する。(今回は、Server収容Segmentとして使うので、SRVとした)
    • TypeをStaticにする
    • (必要に応じて)Mac Address/MTU/MSSを設定する。LAN系統なので、変更の必要なし
    • IP Addressを設定する。Masklenを設定することを忘れないように

ここまで設定すれば、最小限の設定が済んだと考えて良い。

追加設定

  • System → Packages
    • 追加パッケージを突っ込む
    1. Available Packages タブをクリック
    2. 以下のpackagesを追加する
      1. sudo
        • System → sudo から設定可能。自分のアカウントを追加すること。これ見て判らない人は、CommandLineで何かすることは考えない方が良い。
      2. mtr-nox11 (Enhanced traceroute)
        • Diagnostic → mtr から使える。強化版traceroute
      3. pfBlocker
        • pfを利用したPacket Blocker。Firewall→pfblockerから設定できる。
        • Source Addressを国毎に分類して、国単位で通信を止めることが出来る。
      4. snort + Dashboard Widget: snort (Snort)
        • 恐らく、最も有名なIDS
        • Service → snortから設定可能。
          • snort.orgにSign upして、oink master codeを取得する。
            • Sign upして、Sign inして、My AccountからSubscriptions and Oinkcodesを確認すると、取得できる。
          1. Global Setting
            1. Install Snort VRT rules → Install Basic Rules or Premium rules にチェック
            2. Oinkmaster Configuration Codeに上記で取得したCodeを投入
            3. Install Snort Community rules にチェック
            4. Install Emerging Threats rules にチェック
            5. Update Interval を 1dayに
            6. Update Start Time を適切な時間に
            7. Remove blocked hosts every を 1 Hourに
          2. Update Rules
            1. Update your rulesetを実行する。これでうまくupdate出来ない場合、Oink Master Codeが間違っているので、確認すること。
          3. Snort Interfaces
            1. WAN Settings
              1. Enableにチェック
              2. saveする
            2. WAN Categories
              1. Select the rulesets Snort will load at startupで、Select Allをクリックする。
                • 実際には、必要なRuleにしぼった方がよいが、最初はどれを外して良いのか判らないはずなので、取り敢えず全部。
                • 全部チェックすると、当然遅いので、段々にTuningすること。
                  • Snort GPLv2 Community Rulesとemerging-*だけOnにしておくと言うのも一つの手ではある。
                • saveする
            3. WAN Rules
              • ここで、実際の詳細のRule設定を行う。しかし、正直ルールが多すぎるので、カテゴリーで判別するしかないだろう。
            4. Snort Interfacesの画面に戻るので、IfがWANの項目を確認。
              1. SnortがEnabled「×」になっているはずなので、「×」をクリックし、Snortを起動する
    • 将来追加したいpackages
      1. HAVP antivirus + Dashboard Widget: HAVP + Dashboard Widget: Antivirus Status (HTTP Antivirus Proxy)
      2. squid + squidGuard + Sarg (Web Proxy/Reverse Proxy)

NAT/Firewall設定

次の本命。これを設定しないと意味がない。が、TBD

その他サービス

対外部に直接つながっている機器が行うと良いサービスを動かす

  • Service → NTP
    • 生かしたいI/Fを選んでSaveするだけ
  • Service → SNMP
    • Enableにチェックする
    • 必要な情報を書き込む
      • 特にCommunityはDefaultから書き換えること。
    • Interface Bindingで参照するI/Fを選ぶ
  • Status → Dashboards
    • 左上の「+」を選び、必要なものを追加する。
      • Snort Alerts、Interface Statistics、Firewall logs、Service Status、Traffic Graphs
      • Save settingsをクリック
  • xe-guest-utilitiesを突っ込む
    • これは、GUIからでは不可能
    • CommandLineからpkg installする
      • pkg install xe-guest-utilities
      • echo “xenguest_enable=\”YES\“” » /etc/rc.conf.local
      • ln -s /usr/local/etc/rc.d/xenguest /usr/local/etc/rc.d/xenguest.sh
      • service xenguest start

その他運用

Configuration Backup

  1. Diagnostics → Backup/Restore
  2. Download Configuration
このウェブサイトはクッキーを使用しています。 Webサイトを使用することで、あなたはあなたのコンピュータにクッキーを保存することに同意します。 また、あなたはあなたが私たちのプライバシーポリシーを読んで理解したことを認めます。 同意しない場合はウェブサイトを離れてください。クッキーに関する詳細情報
networkapp/pfsense/install.txt · 最終更新: 2016/05/05 21:34 by 127.0.0.1

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki