GNU/Linux >> Linux の 問題 >  >> Linux

IPFireファイアウォール用のPSADのコンパイルとインストール

はじめに

この記事は、IPFire(Linuxベースのファイアウォール)用のPSAD(ポートスキャン攻撃検出器)のコンパイルとインストールに関するものです。ただし、IPFireの開発環境は、新しいプラグイン(この場合はPSAD)をコンパイルするためにセットアップされます。 PSADツールの構成と使用法の詳細については、前回の記事をご覧ください。

IPFire開発環境の設定

IPFireの開発環境の前提条件は次のとおりです。

  • 最新のアップデートが適用されたUbuntu16.04LTS OS
  • 次の必要なパッケージのインストール
git gcc g++ make bzip2 realpath
  • コンパイル時間を短縮するための5〜6GBのディスク容量や6GBのRAMなどのハードウェアリソース。

同様に、IPFire開発環境は他のLinuxディストリビューションでもセットアップできます。 Ubuntuディストリビューションでのソースコードのコンパイルに必要な以下のパッケージをインストールします。 Gitツールは、開発システムでソースコードのクローンを作成するために使用されます。

aptitude install git gcc g++ make bzip2 realpath

IPFireソースツリー

現在、次の2つのIPFireソースコードのリポジトリがgithubサイトで利用できます。

  • IPFire 2.x(安定版リリース)
  • IPFire 3.x

このチュートリアルでは、新しいプラグインをコンパイルするためのIPfire2.xソースコードリポジトリを検討しました。

git clone git://git.ipfire.org/ipfire-2.x.git

次のスナップショットは、IPFire-2.xリポジトリの最新の更新を示しています

次の手順で、次のコマンドを実行して、IPFireパッケージのソースコードをダウンロードします。

./make.sh downloadsrc

現在のマシンは64ビットであるため、ソースをコンパイルするために、コンパイル済みのツールチェーンがダウンロードされます。次のコマンドは、開発システムにツールチェーンをダウンロードするために使用されます。

./make.sh gettoolchain

IPFireのクローン作成、ソースパッケージおよびツールチェーンのダウンロードが成功したら、次のステップはビルドプロセスを開始することです。まず、IPFireファイアウォールは変更なしでコンパイルされます。その後、必要なプラグインが含まれ、再コンパイルされて、IPFire環境用のPSADパッケージが作成されます。 ipfire拡張機能を使用して新しく作成されたパッケージは、PSADパッケージをインストールするためにIPFireVMに移動されます。

IPFireのコンパイル

最後のステップは、次のコマンドを実行してソースコードをビルドすることです。開発システムに十分なディスク容量があり、ビルドコマンドがユーザーrootで実行されていることを確認してください。

./make.shビルド

32ビットシステムの場合。

linux32 ./make.sh build                

初回のビルドプロセスは、完了するまでに数時間かかります。ただし、開発システムの優れたハードウェアリソースを使用して削減できます。 IPFireのビルドスクリプトは、次の4つの段階で実行されます。

  1. Building LFS(Building Linux From Scratch system)であり、パッケージをインストールするためのスクリプトが含まれています。
  2. IPFireの構築
  3. ビルドインストーラー
  4. パッケージの構築

次のスナップショットは、LFSの構築を示しています。 ステップ。

IPFireの構築手順を以下に示します。

次のスナップショットは、インストーラーの構築手順を示しています。

最後に、ビルドプロセスのコンパイルプロセスをパッケージ化します。

次のスクリーンショットに示すように、

IPFireのコンパイルには何時間もかかります(この場合は13時間)。

最後に、IPFireビルドスクリプトは、以下に示すように、iso、xen、およびimg出力ファイルを生成します。ビルドスクリプトは、生成されたisoファイルのmd5チェックサムも計算します。

最後に、ソースコードからのIPfireのコンパイルが完了し、VMにインストールする準備が整います。ビルドプロセスを実行するには、開発システムのルートとしてログインすることをお勧めします。

IPFireのインストール

IPFireファイアウォールは、ビルドスクリプトによって生成されるisoを使用してセットアップできます。 IPFireのインストールに関する詳細な手順は、このチュートリアルには含まれていません。インストール後、Linuxカーネルのバージョン(3.14.73-ipfire 1686)を示す次のウィンドウが表示されます。

緑のインターフェースのIPアドレス(192.168.1.150:444)を使用してアクセスされるIPFireデバイスのWebインターフェース。 IPFireのバージョン情報は、Fireinfoサブメニューにも表示されます。

PSADアドオンの構築

直接、PSADツールをIPFireでコンパイルすることはできません。そのため、IPFireプラットフォーム用の新しいアドオンのソースコードをコンパイルするための開発システムが必要です。 IPFireの開発環境は、上記のセクションですでに設定されています。

以下は、IPFire開発環境で新しいソースコードをコンパイルするための要件です。

  • 目的のアドオンまたはパッケージのコンパイルスクリプトを作成し、 lfs \に配置します ディレクトリ(ipfire-2.x \ lfs \の下)
  • ビルドスクリプトへのアドオンスクリプトの追加make.sh

PSADのコンパイルスクリプトは、パッケージpsad-2.4.1.tar.gz用に作成されています。 lfsスクリプトをダウンロードし、ipfire-2.x内のlfsディレクトリに配置すると、lfsスクリプトのpsad-2.4.1.tar.gzに対してMD5チェックサムが作成されます。

PSADlfsスクリプトは次のスナップショットに示されています。

PSADアドオンのmake.shビルドスクリプトの変更を以下に示します。

新しいアドオンのコンパイルでは、次のビルドコマンドが2回実行されます。スクリーンショットに示されているように、psadはビルドスクリプトに正常に含まれています。

./make build

次の図に、最初のビルドコマンドの出力を示します。PSADのルートファイルがありません。

アドオンルートファイルの名前はパッケージ/ファイル名(psad-2.41)と同じで、log内に存在します ディレクトリ。

次の図に示すように、 psad-2.4.1をコピーします ファイルをconfig/rootfiles/packages に入れます path lfsディレクトリに配置されているパッケージ/ファイル名のlfsに名前を変更します。

cp log / psad-2.4.1 config / rootfiles / packages / psad

アドオンのルートファイルには、インストールスクリプトによって削除、変更、または追加されたすべてのファイルのリストが含まれています。 次のコマンドを実行して、「 +」を削除します "以下に示すようにPSADのルートファイルから。

sed -i's / + // g'config / rootfiles / packages / psad

新しいアドオンには、インストール、アンインストール、更新などのPakFire(IPFireパッケージ管理システム)ルーチンを含める必要があります。まず、 src / paks 内にディレクトリ(psad)を作成します パッケージ名のlfsと同じです。 src / paks / default / *からデフォルトルーチンをコピーします src / paks / psadに それに応じてカスタマイズします。

PSADのソースコードをコンパイルするために、ビルドコマンドを再度実行します。

./make build

以下に示すように、PSADアドオン( psad-2.4.1-2.ipfire )はIPFire環境で正常にコンパイルされ、packagesディレクトリに配置されます。

IPFireへのPSADのインストール

これで、PSADパッケージがIPFireにインストールされます。以下に示すように、コンパイルされたパッケージは、すでにインストールされているIPFireにコピーされます。

コンパイルされたパッケージが/opt / pakfire / tmpの下にある必要があることを確認してください パス。

次のコマンドを使用して、インストール用にパッケージを抽出します。

 tar -xvf psad-2.4.1-2.ipfire

PSADアドオンファイルのリストを以下に示します。

次のウィンドウは、IPFireへのPSADアドオンのインストールを示しています。

  ./install.sh

次の図は、IPFire環境でのPSADツールのヘルプを示しています。

この記事では、有名なLinuxベースのファイアウォール「IPFire」に新機能またはアドオンが含まれています。 PSADツールは、IPtablesを使用して悪意のあるトラフィックを自動的にブロックするために使用されます。 IPFire環境向けのPSADのコンパイルは私たちの貢献です。


Linux
  1. 自動化のためにAnsibleとanacronを使用する方法

  2. 初心者と専門家のための10のLinuxコマンドチュートリアル

  3. Linuxユーザーと権限のチートシート

  1. BashForループガイドと例

  2. Bash の For ループと While ループの例

  3. malloc と free のコード

  1. CSFファイアウォールのインストールおよび使用ガイド

  2. YUM を使用したオフライン インストール用のリポジトリからの特定のバージョンのパッケージとその依存関係のダウンロード

  3. コマンドと出力の異なる色