source: postlfs/security/iptables.xml@ 3ff3b9b

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 7.10 7.4 7.5 7.6 7.6-blfs 7.6-systemd 7.7 7.8 7.9 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind gnome kde5-13430 kde5-14269 kde5-14686 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts krejzi/svn lazarus lxqt nosym perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition systemd-11177 systemd-13485 trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 3ff3b9b was 3ff3b9b, checked in by Krejzi <krejzi@…>, 11 years ago

Some more package updates, fix iptables compilation.

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@10927 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 10.6 KB
RevLine 
[b4b71892]1<?xml version="1.0" encoding="ISO-8859-1"?>
[6732c094]2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
[b4b71892]4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
[baf47952]7 <!ENTITY iptables-download-http "http://www.netfilter.org/projects/iptables/files/iptables-&iptables-version;.tar.bz2">
[b4b71892]8 <!ENTITY iptables-download-ftp "ftp://ftp.netfilter.org/pub/iptables/iptables-&iptables-version;.tar.bz2">
[23407e4]9 <!ENTITY iptables-md5sum "c3fb2ffd5b39d0d54b06ccc4c8660116">
[d8717e4]10 <!ENTITY iptables-size "532 KB">
[23407e4]11 <!ENTITY iptables-buildsize "18 MB">
[bf157fc2]12 <!ENTITY iptables-time "0.2 SBU">
[b4b71892]13]>
14
[4591404]15<sect1 id="iptables" xreflabel="Iptables-&iptables-version;">
[71072bbe]16 <?dbhtml filename="iptables.html"?>
17
18 <sect1info>
19 <othername>$LastChangedBy$</othername>
20 <date>$Date$</date>
21 </sect1info>
22
23 <title>Iptables-&iptables-version;</title>
24
25 <indexterm zone="iptables">
26 <primary sortas="a-Iptables">Iptables</primary>
27 </indexterm>
28
29 <sect2 role="package">
30 <title>Introduction to Iptables</title>
31
[4591404]32 <para>
33 The next part of this chapter deals with firewalls. The principal
34 firewall tool for Linux is <application>Iptables</application>. You will
35 need to install <application>Iptables</application> if you intend on using
36 any form of a firewall.
37 </para>
[71072bbe]38
[60ecc5bb]39 &lfs72_checked;
[93236c2]40
[71072bbe]41 <bridgehead renderas="sect3">Package Information</bridgehead>
42 <itemizedlist spacing="compact">
43 <listitem>
[4591404]44 <para>
45 Download (HTTP): <ulink url="&iptables-download-http;"/>
46 </para>
[71072bbe]47 </listitem>
48 <listitem>
[4591404]49 <para>
50 Download (FTP): <ulink url="&iptables-download-ftp;"/>
51 </para>
[71072bbe]52 </listitem>
53 <listitem>
[4591404]54 <para>
55 Download MD5 sum: &iptables-md5sum;
56 </para>
[71072bbe]57 </listitem>
58 <listitem>
[4591404]59 <para>
60 Download size: &iptables-size;
61 </para>
[71072bbe]62 </listitem>
63 <listitem>
[4591404]64 <para>
65 Estimated disk space required: &iptables-buildsize;
66 </para>
[71072bbe]67 </listitem>
68 <listitem>
[4591404]69 <para>
70 Estimated build time: &iptables-time;
71 </para>
[71072bbe]72 </listitem>
73 </itemizedlist>
[d8717e4]74<!--
[07c061a6]75 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
76 <itemizedlist spacing="compact">
77 <listitem>
78 <para>
79 Required patch:
80 <ulink url="&patch-root;/iptables-&iptables-version;-missing-includes-1.patch"/>
81 </para>
82 </listitem>
83 </itemizedlist>
[d8717e4]84-->
[3597eb6]85 <para condition="html" role="usernotes">User Notes:
[4591404]86 <ulink url="&blfs-wiki;/iptables"/>
87 </para>
[ce6ccc9]88 </sect2>
[b4b71892]89
[4591404]90 <sect2 role="kernel" id="iptables-kernel">
[71072bbe]91 <title>Kernel Configuration</title>
[b4b71892]92
[4591404]93 <para>
94 A firewall in Linux is accomplished through a portion of the
95 kernel called netfilter. The interface to netfilter is
96 <application>Iptables</application>. To use it, the appropriate
97 kernel configuration parameters are found in Networking Support &rArr;
98 Networking Options &rArr; Network Packet Filtering Framework.
99 </para>
[f8962fe]100
[71072bbe]101 <indexterm zone="iptables iptables-kernel">
102 <primary sortas="d-iptables">Iptables</primary>
103 </indexterm>
[48ecffe8]104
[71072bbe]105 </sect2>
[48ecffe8]106
[71072bbe]107 <sect2 role="installation">
108 <title>Installation of Iptables</title>
[48ecffe8]109
[71072bbe]110 <note>
[4591404]111 <para>
112 The installation below does not include building some specialized
113 extension libraries which require the raw headers in the
114 <application>Linux</application> source code. If you wish to build the
115 additional extensions (if you aren't sure, then you probably don't), you
116 can look at the <filename>INSTALL</filename> file to see an example of
117 how to change the <parameter>KERNEL_DIR=</parameter> parameter to point
118 at the <application>Linux</application> source code. Note that if you
119 upgrade the kernel version, you may also need to recompile
120 <application>Iptables</application> and that the BLFS team has not tested
121 using the raw kernel headers.
122 </para>
123
124 <para>
125 For some non-x86 architectures, the raw kernel headers may be
126 required. In that case, modify the <parameter>KERNEL_DIR=</parameter>
127 parameter to point at the <application>Linux</application> source
128 code.
129 </para>
[71072bbe]130 </note>
131
[4591404]132 <para>
133 Install <application>Iptables</application> by running the following
134 commands:
135 </para>
136
[3ff3b9b]137<screen><userinput>LDFLAGS="-L$PWD/libiptc/.libs" \
138./configure --prefix=/usr \
[4591404]139 --exec-prefix= \
[23407e4]140 --bindir=/usr/bin \
[4591404]141 --with-xtlibdir=/lib/xtables \
142 --with-pkgconfigdir=/usr/lib/pkgconfig \
143 --enable-libipq \
144 --enable-devel &amp;&amp;
[bf157fc2]145make</userinput></screen>
[ce6ccc9]146
147 <para>This package does not come with a test suite.</para>
[71072bbe]148
149 <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
150
[93236c2]151<screen role="root"><userinput>make install &amp;&amp;
[23407e4]152ln -sfv ../../sbin/xtables-multi /usr/bin/iptables-xml &amp;&amp;
153for file in libip4tc libip6tc libipq libiptc libxtables
154do
155 ln -sfv ../../lib/`readlink /lib/${file}.so` /usr/lib/${file}.so &amp;&amp;
156 rm -v /lib/${file}.so &amp;&amp;
157 mv -v /lib/${file}.la /usr/lib &amp;&amp;
158 sed -i "s@libdir='@&amp;/usr@g" /usr/lib/${file}.la
159done</userinput></screen>
[71072bbe]160
161 </sect2>
[d40737d]162
[71072bbe]163 <sect2 role="commands">
164 <title>Command Explanations</title>
165
[4591404]166 <para>
167 <parameter>--exec-prefix=</parameter>: Ensure all binaries and
168 libraries end up in <filename class="directory">/</filename>
169 directory tree.
170 </para>
171
172 <para>
173 <parameter>--with-xtlibdir=/lib/xtables</parameter>: Ensure all
[23407e4]174 <application>Iptables</application> modules are installed in the
[4591404]175 <filename class="directory">/lib/xtables</filename> directory.
176 </para>
177
178 <para>
179 <parameter>--with-pkgconfigdir=/usr/lib/pkgconfig</parameter>:
180 Ensure all the pkgconfig files are in the standard location.
181 </para>
182
183 <para>
184 <option>--enable-libipq</option>: This switch enables building
185 of <filename class="libraryfile">libipq.so</filename> which
186 can be used by some packages outside of BLFS.
187 </para>
188
189 <para>
190 <option>--enable-devel</option>: This switch enables installation
191 of <application>Iptables</application> development headers that
192 can be used by some packages outside of BLFS.
193 </para>
194
195 <para>
[23407e4]196 <command>ln -sfv ../../sbin/xtables-multi /usr/bin/iptables-xml</command>:
197 Ensure the symbolic link for <command>iptables-xml</command> is relative.
[4591404]198 </para>
[93236c2]199
[71072bbe]200 </sect2>
[d40737d]201
[71072bbe]202 <sect2 role="configuration">
203 <title>Configuring Iptables</title>
204
[4591404]205 <para>
206 Introductory instructions for configuring your firewall are
207 presented in the next section: <xref linkend="fw-firewall"/>
208 </para>
[71072bbe]209
210 <sect3 id="iptables-init">
211 <title>Boot Script</title>
212
[4591404]213 <para>
214 To set up the iptables firewall at boot, install the
215 <filename>/etc/rc.d/init.d/iptables</filename> init script included
216 in the <xref linkend="bootscripts"/> package.
217 </para>
[71072bbe]218
219 <indexterm zone="iptables iptables-init">
220 <primary sortas="f-iptables">iptables</primary>
221 </indexterm>
222
223<screen role="root"><userinput>make install-iptables</userinput></screen>
224
225 </sect3>
226
227 </sect2>
228
229 <sect2 role="content">
230 <title>Contents</title>
231
232 <segmentedlist>
233 <segtitle>Installed Programs</segtitle>
234 <segtitle>Installed Libraries</segtitle>
[bf157fc2]235 <segtitle>Installed Directories</segtitle>
[71072bbe]236
237 <seglistitem>
[4591404]238 <seg>
239 ip6tables, ip6tables-restore, ip6tables-save, iptables, iptables-restore,
240 iptables-save, iptables-xml and xtables-multi
241 </seg>
242 <seg>
243 libip4tc.so, libip6tc.so, libipq.so, libiptc.so and libxtables.so
244 </seg>
245 <seg>
246 /lib/xtables and /usr/include/libiptc
247 </seg>
[71072bbe]248 </seglistitem>
249 </segmentedlist>
250
251 <variablelist>
252 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
253 <?dbfo list-presentation="list"?>
254 <?dbhtml list-presentation="table"?>
255
256 <varlistentry id="iptables-prog">
257 <term><command>iptables</command></term>
258 <listitem>
[4591404]259 <para>
260 is used to set up, maintain, and inspect the tables of
261 IP packet filter rules in the Linux kernel.
262 </para>
[71072bbe]263 <indexterm zone="iptables iptables-prog">
264 <primary sortas="b-iptables">iptables</primary>
265 </indexterm>
266 </listitem>
267 </varlistentry>
268
269 <varlistentry id="iptables-restore">
270 <term><command>iptables-restore</command></term>
271 <listitem>
[4591404]272 <para>
273 is used to restore IP Tables from data specified on
274 STDIN. Use I/O redirection provided by your
275 shell to read from a file.
276 </para>
[71072bbe]277 <indexterm zone="iptables iptables-restore">
278 <primary sortas="b-iptables-restore">iptables-restore</primary>
279 </indexterm>
280 </listitem>
281 </varlistentry>
282
283 <varlistentry id="iptables-save">
284 <term><command>iptables-save</command></term>
285 <listitem>
[4591404]286 <para>
287 is used to dump the contents of an IP Table in easily
288 parseable format to STDOUT. Use I/O-redirection
289 provided by your shell to write to a file.
290 </para>
[71072bbe]291 <indexterm zone="iptables iptables-save">
292 <primary sortas="b-iptables-save">iptables-save</primary>
293 </indexterm>
294 </listitem>
295 </varlistentry>
296
[6a97e97]297 <varlistentry id="iptables-xml">
298 <term><command>iptables-xml</command></term>
299 <listitem>
[4591404]300 <para>
301 is used to convert the output of
302 <command>iptables-save</command> to an XML format. Using the
303 <filename>iptables.xslt</filename> stylesheet converts the XML
304 back to the format of <command>iptables-restore</command>.
305 </para>
[6a97e97]306 <indexterm zone="iptables iptables-xml">
307 <primary sortas="b-iptables-xml">iptables-xml</primary>
308 </indexterm>
309 </listitem>
310 </varlistentry>
311
[71072bbe]312 <varlistentry id="ip6tables">
[bf157fc2]313 <term><command>ip6tables*</command></term>
[71072bbe]314 <listitem>
[4591404]315 <para>
316 are a set of commands for IPV6 that parallel the iptables
317 commands above.
318 </para>
[71072bbe]319 <indexterm zone="iptables ip6tables">
320 <primary sortas="b-ip6tables">ip6tables</primary>
321 </indexterm>
322 </listitem>
323 </varlistentry>
324
325 </variablelist>
326
327 </sect2>
[b4b71892]328
[f45b1953]329</sect1>
Note: See TracBrowser for help on using the repository browser.