Iptables-1.6.1

Iptables の概要

この節の次ではファイアウォールについて説明します。 Linux においてファイアウォールを取り扱う重要なツールが Iptables です。 どのような形にせよ、ファイアウォールを実現するなら Iptables をインストールすることが必要です。

本パッケージは LFS-8.0 において正しくビルドでき動作することが確認されています。

パッケージ情報

Iptables Dependencies

Optional

nftables

ユーザー情報: http://wiki.linuxfromscratch.org/blfs/wiki/iptables

カーネルの設定

Linux におけるファイアウォールは、カーネルの機能の一部である netfilter を通じて実現されます。 その netfilter へのインターフェースが Iptables です。 これを使うには、以下のカーネルのパラメーターを設定します。

[*] Networking support  --->                                    [CONFIG_NET]
      Networking Options  --->
        [*] Network packet filtering framework (Netfilter) ---> [CONFIG_NETFILTER]

Iptables のインストール

[注記]

注記

以降にて示しているインストール手順では Linux ソースコード内の、生のヘッダーファイルを必要とする、特定の拡張ライブラリまではビルドしません。 そのような拡張ライブラリをビルドする場合 (不明であればビルドする必要はないでしょう) INSTALL ファイルを参照して Linux ソースコードの場所を指定する KERNEL_DIR= パラメーターの設定例を確認してください。 カーネルバージョンをアップグレードする際には、iptables も再コンパイルする必要があることを覚えておいてください。 なお BLFS チームでは、生のカーネルヘッダーを用いたテストは行っていません。

x86 ではないアーキテクチャーでは、生のカーネルヘッダーを必要とするものがあります。 そのような場合は KERNEL_DIR= パラメーターにて Linux のソースコードを指し示すようにしてください。

iptables をインストールするために以下を実行します。

./configure --prefix=/usr      \
            --sbindir=/sbin    \
            --disable-nftables \
            --enable-libipq    \
            --with-xtlibdir=/lib/xtables &&
make

このパッケージにテストスイートはありません。

root ユーザーになって以下を実行します。

make install &&
ln -sfv ../../sbin/xtables-multi /usr/bin/iptables-xml &&

for file in ip4tc ip6tc ipq iptc xtables
do
  mv -v /usr/lib/lib${file}.so.* /lib &&
  ln -sfv ../../lib/$(readlink /usr/lib/lib${file}.so) /usr/lib/lib${file}.so
done

コマンド説明

--disable-nftables: This switch disables building nftables compat. Omit this switch if you have installed nftables.

--enable-libipq: 本スイッチは libipq.so をビルドするようにします。 これは BLFS には含めていない他のパッケージにて利用されています。

--with-xtlibdir=/lib/xtables: Iptables モジュールをすべて /lib/xtables ディレクトリにインストールするようにします。

--enable-nfsynproxy: This switch enables installation of nfsynproxy SYNPROXY configuration tool.

ln -sfv ../../sbin/xtables-multi /usr/bin/iptables-xml: iptables-xml へのシンボリックリンクを相対的なものとします。

Iptables の設定

ファイアウォールの設定手順は、次の節 ファイアウォール設定 にて説明しています。

Systemd Unit

To set up the iptables firewall at boot, install the iptables.service unit included in the blfs-systemd-units-20160602 package.

make install-iptables

パッケージ構成

インストールプログラム: ip6tables, ip6tables-restore, ip6tables-save, iptables, iptables-restore, iptables-save, iptables-xml, nfsynproxy (任意ビルド), xtables-multi
インストールライブラリ: libip4tc.so, libip6tc.so, libipq.so, libiptc.so, libxtables.so
インストールディレクトリ: /lib/xtables, /usr/include/libiptc

概略説明

iptables

Linux カーネル内の IP パケットフィルタルール (IP packet filter rules) のテーブルを設定、管理、検証します。

iptables-restore

is used to restore IP Tables from data specified on STDIN. Use I/O redirection provided by your shell to read from a file.

iptables-save

is used to dump the contents of an IP Table in easily parseable format to STDOUT. Use I/O-redirection provided by your shell to write to a file.

iptables-xml

is used to convert the output of iptables-save to an XML format. Using the iptables.xslt stylesheet converts the XML back to the format of iptables-restore.

ip6tables*

are a set of commands for IPV6 that parallel the iptables commands above.

nfsynproxy

(optional) configuration tool. SYNPROXY target makes handling of large SYN floods possible without the large performance penalties imposed by the connection tracking in such cases.

xtables-multi

is a binary that behaves according to the name it is called by.

最終更新日: 2017-02-16 12:06:46 +0900