You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
102 lines
2.4 KiB
102 lines
2.4 KiB
Installation instructions for iptables
|
|
======================================
|
|
|
|
iptables uses the well-known configure(autotools) infrastructure.
|
|
|
|
$ ./configure
|
|
$ make
|
|
# make install
|
|
|
|
|
|
Prerequisites
|
|
=============
|
|
|
|
* no kernel-source required
|
|
|
|
* but obviously a compiler, glibc-devel and linux-kernel-headers
|
|
(/usr/include/linux)
|
|
|
|
|
|
Configuring and compiling
|
|
=========================
|
|
|
|
./configure [options]
|
|
|
|
--prefix=
|
|
|
|
The prefix to put all installed files under. It defaults to
|
|
/usr/local, so the binaries will go into /usr/local/bin, sbin,
|
|
manpages into /usr/local/share/man, etc.
|
|
|
|
--with-xtlibdir=
|
|
|
|
The path to where Xtables extensions should be installed to. It
|
|
defaults to ${libdir}/xtables.
|
|
|
|
--enable-devel (or --disable-devel)
|
|
|
|
This option causes development files to be installed to
|
|
${includedir}, which is needed for building additional packages,
|
|
such as Xtables-addons or other 3rd-party extensions.
|
|
|
|
It is enabled by default.
|
|
|
|
--enable-static
|
|
|
|
Produce additional binaries, iptables-static/ip6tables-static,
|
|
which have all shipped extensions compiled in.
|
|
|
|
--disable-shared
|
|
|
|
Produce binaries that have dynamic loading of extensions disabled.
|
|
This implies --enable-static.
|
|
(See some details below.)
|
|
|
|
--enable-libipq
|
|
|
|
This option causes libipq to be installed into ${libdir} and
|
|
${includedir}.
|
|
|
|
--with-ksource=
|
|
|
|
Xtables does not depend on kernel headers anymore, but you can
|
|
optionally specify a search path to include anyway. This is
|
|
probably only useful for development.
|
|
|
|
If you want to enable debugging, use
|
|
|
|
./configure CFLAGS="-ggdb3 -O0"
|
|
|
|
(-O0 is used to turn off instruction reordering, which makes debugging
|
|
much easier.)
|
|
|
|
To show debug traces you can add -DDEBUG to CFLAGS option
|
|
|
|
|
|
Other notes
|
|
===========
|
|
|
|
The make process will automatically build multipurpose binaries.
|
|
These have the core (iptables), -save, -restore and -xml code
|
|
compiled into one binary, but extensions remain as modules.
|
|
|
|
|
|
Static and shared
|
|
=================
|
|
|
|
Basically there are three configuration modes defined:
|
|
|
|
--disable-static --enable-shared (this is the default)
|
|
|
|
Build a binary that relies upon dynamic loading of extensions.
|
|
|
|
--enable-static --enable-shared
|
|
|
|
Build a binary that has the shipped extensions built-in, but
|
|
is still capable of loading additional extensions.
|
|
|
|
--enable-static --disable-shared
|
|
|
|
Shipped extensions are built-in, and dynamic loading is
|
|
deactivated.
|