source: postlfs/security/tripwire.xml@ 2634774

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 2634774 was 2634774, checked in by Douglas R. Reno <renodr@…>, 7 years ago

Typo

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

  • Property mode set to 100644
File size: 14.0 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
[e4565e8]7 <!ENTITY tripwire-download-http "https://github.com/Tripwire/tripwire-open-source/archive/&tripwire-version;.tar.gz">
[dc94017e]8 <!ENTITY tripwire-download-ftp " ">
[8b319a8]9 <!ENTITY tripwire-md5sum "4ec693b96112e4933235f75908695951">
10 <!ENTITY tripwire-size "945 KB">
11 <!ENTITY tripwire-buildsize "33 MB">
12 <!ENTITY tripwire-time "1.2 SBU (scripting install)">
[b4b71892]13]>
14
[2ee0a026]15<sect1 id="tripwire" xreflabel="Tripwire-&tripwire-version;">
[1503942]16 <?dbhtml filename="tripwire.html"?>
17
18 <sect1info>
19 <othername>$LastChangedBy$</othername>
20 <date>$Date$</date>
21 </sect1info>
22
23 <title>Tripwire-&tripwire-version;</title>
24
[2ee0a026]25 <indexterm zone="tripwire">
[1503942]26 <primary sortas="a-Tripwire">Tripwire</primary>
27 </indexterm>
28
29 <sect2 role="package">
30 <title>Introduction to Tripwire</title>
31
32 <para>The <application>Tripwire</application> package contains programs
33 used to verify the integrity of the files on a given system.</para>
34
[e4565e8]35 &lfs7a_checked;
[fdcbc8d]36
[1503942]37 <bridgehead renderas="sect3">Package Information</bridgehead>
38 <itemizedlist spacing="compact">
39 <listitem>
40 <para>Download (HTTP): <ulink url="&tripwire-download-http;"/></para>
41 </listitem>
42 <listitem>
43 <para>Download (FTP): <ulink url="&tripwire-download-ftp;"/></para>
44 </listitem>
45 <listitem>
46 <para>Download MD5 sum: &tripwire-md5sum;</para>
47 </listitem>
48 <listitem>
49 <para>Download size: &tripwire-size;</para>
50 </listitem>
51 <listitem>
52 <para>Estimated disk space required: &tripwire-buildsize;</para>
53 </listitem>
54 <listitem>
55 <para>Estimated build time: &tripwire-time;</para>
56 </listitem>
57 </itemizedlist>
58
[e4565e8]59 <note>
60 <para>
61 The <application>tripwire</application> source tarball shown above
62 downloads with the correct name, tripwire-open-source-&tripwire-version;.tar.gz,
63 if using a browser such as Firefox. If you prefer to use a command line
64 program such as wget, you normally would obtain
65 &tripwire-version;.tar.gz. To obtain this package with the proper
66 filename, run:
67
68<screen><userinput>wget -c https://github.com/Tripwire/tripwire-open-source/archive/&tripwire-version;.tar.gz \
69 -O tripwire-open-source-&tripwire-version;.tar.gz</userinput></screen>.
70 </para>
71 </note>
72
[1503942]73 <bridgehead renderas="sect3">Tripwire Dependencies</bridgehead>
74
[1619ad5]75 <bridgehead renderas="sect4">Recommended</bridgehead>
76 <para role="recommended"><xref linkend="openssl"/></para>
[7f5c97e]77
[2f00f964]78
[1503942]79 <bridgehead renderas="sect4">Optional</bridgehead>
[7f5c97e]80 <para role="optional">An <xref linkend="server-mail"/></para>
[1503942]81
[3597eb6]82 <para condition="html" role="usernotes">User Notes:
83 <ulink url="&blfs-wiki;/tripwire"/></para>
84
[1503942]85 </sect2>
86
87 <sect2 role="installation">
88 <title>Installation of Tripwire</title>
89
90 <para>Compile <application>Tripwire</application> by running the following
91 commands:</para>
92
[e4565e8]93<screen><userinput>sed -e 's|TWDB="${prefix}|TWDB="/var|' \
94 -e '/TWMAN/ s|${prefix}|/usr/share|' \
[8b319a8]95 -e '/TWDOCS/s|${prefix}/doc/tripwire|/usr/share/doc/tripwire-&tripwire-version;|' \
96 -i installer/install.cfg &amp;&amp;
97find . -name Makefile.am | xargs \
98 sed -i 's/^[[:alpha:]_]*_HEADERS.*=/noinst_HEADERS =/' &amp;&amp;
99sed '/dist/d' -i man/man?/Makefile.am &amp;&amp;
100autoreconf -fi &amp;&amp;
101
102./configure --prefix=/usr --sysconfdir=/etc/tripwire &amp;&amp;
[1503942]103make</userinput></screen>
[305e60de]104
[e3a8c64]105 <note><para>The default configuration is to use a local MTA. If
[2ee0a026]106 you don't have an MTA installed and have no wish to install
107 one, modify <filename>install/install.cfg</filename> to use an SMTP
[e3a8c64]108 server instead. Otherwise the install will fail.</para></note>
[7f5c97e]109
[fb3d3afd]110 <para>This package does not come with a test suite.</para>
111
[1503942]112 <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
[305e60de]113
[1503942]114<screen role="root"><userinput>make install &amp;&amp;
[8f24784c]115cp -v policy/*.txt /usr/share/doc/tripwire-&tripwire-version;</userinput></screen>
[b4b71892]116
[8b319a8]117 <note>
118 <para>
119 During <command>make install</command>, several questions
120 are asked, including passwords. If you want to make a script, you have
121 to apply a <application>sed</application> before running
122 <command>make install</command>:
123 </para>
124
125<screen><userinput>sed -i -e 's@installer/install.sh@&amp; -n -s <replaceable>&lt;site-password&gt;</replaceable> -l <replaceable>&lt;local-password&gt;</replaceable>@' Makefile</userinput></screen>
126
127 <para>
128 Of course, you should do this with dummy passwords and change them
129 later.
130 </para>
[1dd7b0ae]131
132 <para>
133 Another issue when scripting is that the installer exits when the
[2634774]134 standard input is not a terminal. You may disable this behavior
[1dd7b0ae]135 with the following sed:
136 </para>
137
138<screen><userinput>sed '/-t 0/,+3d' -i installer/install.sh</userinput></screen>
139
[8b319a8]140 </note>
141
[1503942]142 </sect2>
[b4b71892]143
[1503942]144 <sect2 role="commands">
145 <title>Command Explanations</title>
[b4b71892]146
[8b319a8]147 <para>
148 <command>sed ... installer/install.cfg</command>: This command tells
149 the package to install the program database and reports in
150 <filename class="directory">/var/lib/tripwire</filename> and sets the
151 proper location for man pages and documentation.
152 </para>
[1ad59f2]153
154 <para>
[8b319a8]155 <command>find ...</command>, <command>sed ...</command>, and
156 <command>autoreconf -fi</command>: The build system is unusable as is, and
157 has to be modified for the build to succeed.
[1ad59f2]158 </para>
159
[8b319a8]160 <para>
161 <command>make install</command>: This command creates the
162 <application>Tripwire</application> security keys as well as installing
163 the binaries. There are two keys: a site key and a local key which are
164 stored in <filename class="directory">/etc/tripwire/</filename>.
165 </para>
[1ad59f2]166
[8b319a8]167 <para>
168 <command>cp -v policy/*.txt /usr/doc/tripwire-&tripwire-version;</command>:
169 This command installs the <application>tripwire</application> sample
170 policy files with the other <application>tripwire</application>
171 documentation.i
172 </para>
[b4b71892]173
[1503942]174 </sect2>
[b4b71892]175
[1503942]176 <sect2 role="configuration">
177 <title>Configuring Tripwire</title>
[b4b71892]178
[1503942]179 <sect3 id="tripwire-config">
180 <title>Config Files</title>
[b4b71892]181
[1503942]182 <para><filename>/etc/tripwire/*</filename></para>
[b4b71892]183
[2ee0a026]184 <indexterm zone="tripwire tripwire-config">
[1503942]185 <primary sortas="e-etc-tripwire">/etc/tripwire/*</primary>
186 </indexterm>
[b4b71892]187
[1503942]188 </sect3>
[e40cb61]189
[1503942]190 <sect3>
191 <title>Configuration Information</title>
192
193 <para><application>Tripwire</application> uses a policy file to
194 determine which files are integrity checked. The default policy
195 file (<filename>/etc/tripwire/twpol.txt</filename>) is for a
[fb3d3afd]196 default installation and will need to be updated for your
[1503942]197 system.</para>
198
[cffe62a2]199 <para>Policy files should be tailored to each individual distribution
200 and/or installation. Some example policy files can be found in <filename
[1ad59f2]201 class="directory">/usr/share/doc/tripwire/</filename>.</para>
[cffe62a2]202
203 <para>If desired, copy the policy file you'd like to try into <filename
204 class="directory">/etc/tripwire/</filename> instead of using the default
205 policy file, <filename>twpol.txt</filename>. It is, however, recommended
206 that you edit your policy file. Get ideas from the examples above and
[1ad59f2]207 read <filename>/usr/share/doc/tripwire/policyguide.txt</filename> for
[cffe62a2]208 additional information. <filename>twpol.txt</filename> is a good policy
[1ad59f2]209 file for learning about <application>Tripwire</application> as it will
[cffe62a2]210 note any changes to the file system and can even be used as an annoying
211 way of keeping track of changes for uninstallation of software.</para>
212
213 <para>After your policy file has been edited to your satisfaction you may
214 begin the configuration steps (perform as the <systemitem
[4d3e5f1]215 class='username'>root</systemitem>) user:</para>
[1503942]216
217<screen role="root"><userinput>twadmin --create-polfile --site-keyfile /etc/tripwire/site.key \
[dd362e5]218 /etc/tripwire/twpol.txt &amp;&amp;
[1503942]219tripwire --init</userinput></screen>
220
[fb3d3afd]221 <para>Depending on your system and the contents of the policy file, the
[cffe62a2]222 initialization phase above can take a relatively long time.</para>
[fb3d3afd]223
[1503942]224 </sect3>
225
226 <sect3>
227 <title>Usage Information</title>
228
[cffe62a2]229 <para><application>Tripwire</application> will identify file changes in
230 the critical system files specified in the policy file. Using
231 <application>Tripwire</application> while making frequent changes to
232 these directories will flag all these changes. It is most useful after a
233 system has reached a configuration that the user considers stable.</para>
[fb3d3afd]234
[cffe62a2]235 <para>To use <application>Tripwire</application> after creating a policy
236 file to run a report, use the following command:</para>
[1503942]237
238<screen role="root"><userinput>tripwire --check &gt; /etc/tripwire/report.txt</userinput></screen>
239
[cffe62a2]240 <para>View the output to check the integrity of your files. An automatic
241 integrity report can be produced by using a cron facility to schedule the
242 runs.</para>
[fb3d3afd]243
[410e228b]244 <para>Reports are stored in binary and, if desired, encrypted. View reports,
[cffe62a2]245 as the <systemitem class="username">root</systemitem> user, with:</para>
[fb3d3afd]246
[8b319a8]247<screen role="root"><userinput>twprint --print-report -r /var/lib/tripwire/report/<replaceable>&lt;report-name.twr&gt;</replaceable></userinput></screen>
[fb3d3afd]248
[cffe62a2]249 <para>After you run an integrity check, you should examine the
250 report (or email) and then modify the <application>Tripwire</application>
251 database to reflect the changed files on your system. This is so that
252 <application>Tripwire</application> will not continually notify you that
253 files you intentionally changed are a security violation. To do this you
254 must first <command>ls -l /var/lib/tripwire/report/</command> and note
255 the name of the newest file which starts with your system name as
256 presented by the command <userinput>uname -n</userinput>
257 and ends in <filename>.twr</filename>. These files were created
258 during report creation and the most current one is needed to update the
259 <application>Tripwire</application> database of your system. As the
260 <systemitem class='username'>root</systemitem> user, type in the
261 following command making the appropriate report name:</para>
[fb3d3afd]262
263<screen role="root"><userinput>tripwire --update --twrfile /var/lib/tripwire/report/<replaceable>&lt;report-name.twr&gt;</replaceable></userinput></screen>
[1503942]264
[4d3e5f1]265 <para>You will be placed into <application>Vim</application> with a copy
[1503942]266 of the report in front of you. If all the changes were good, then just
[4751980e]267 type <command>:wq</command> and after entering your local key, the database
[1503942]268 will be updated. If there are files which you still want to be warned
269 about, remove the 'x' before the filename in the report and type
[c9d91e8a]270 <command>:wq</command>.</para>
[1503942]271
[f22f1ef3]272 <!-- 10-12-2013 bad URL and no good URL found
[7f5c97e]273 <para>A good summary of tripwire operations can be found at
[fdcbc8d]274 <ulink url="http://va-holladays.no-ip.info:2200/tools/security-docs/tripwire-v1.0.pdf"/>.</para>
[f22f1ef3]275 -->
[1503942]276 </sect3>
277
278 <sect3>
279 <title>Changing the Policy File</title>
280
281 <para>If you are unhappy with your policy file and would like to modify
282 it or use a new one, modify the policy file and then execute the following
[0bc6cf76]283 commands as the <systemitem class='username'>root</systemitem> user:</para>
[1503942]284
285<screen role="root"><userinput>twadmin --create-polfile /etc/tripwire/twpol.txt &amp;&amp;
286tripwire --init</userinput></screen>
287
288 </sect3>
289
290 </sect2>
291
292 <sect2 role="content">
293 <title>Contents</title>
294
295 <segmentedlist>
296 <segtitle>Installed Programs</segtitle>
297 <segtitle>Installed Libraries</segtitle>
298 <segtitle>Installed Directories</segtitle>
299
300 <seglistitem>
[fb3d3afd]301 <seg>siggen, tripwire, twadmin, and twprint</seg>
[1503942]302 <seg>None</seg>
[8b319a8]303 <seg>/etc/tripwire, /var/lib/tripwire,
304 and /usr/share/doc/tripwire-&tripwire-version;</seg>
[1503942]305 </seglistitem>
306 </segmentedlist>
307
308 <variablelist>
309 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
310 <?dbfo list-presentation="list"?>
311 <?dbhtml list-presentation="table"?>
312
313 <varlistentry id="siggen">
314 <term><command>siggen</command></term>
315 <listitem>
316 <para>is a signature gathering utility that displays
317 the hash function values for the specified files.</para>
[2ee0a026]318 <indexterm zone="tripwire siggen">
[1503942]319 <primary sortas="b-siggen">siggen</primary>
320 </indexterm>
321 </listitem>
322 </varlistentry>
323
[e5e7a1d]324 <varlistentry id="tripwire-program">
[1503942]325 <term><command>tripwire</command></term>
326 <listitem>
327 <para>is the main file integrity checking program.</para>
[2ee0a026]328 <indexterm zone="tripwire tripwire">
[1503942]329 <primary sortas="b-tripwire">tripwire</primary>
330 </indexterm>
331 </listitem>
332 </varlistentry>
333
[e5e7a1d]334 <varlistentry id="twadmin">
[1503942]335 <term><command>twadmin</command></term>
336 <listitem>
337 <para>administrative and utility tool used to perform
338 certain administrative functions related to
339 <application>Tripwire</application> files and configuration
340 options.</para>
[2ee0a026]341 <indexterm zone="tripwire twadmin">
[1503942]342 <primary sortas="b-twadmin">twadmin</primary>
343 </indexterm>
344 </listitem>
345 </varlistentry>
346
[e5e7a1d]347 <varlistentry id="twprint">
[1503942]348 <term><command>twprint</command></term>
349 <listitem>
350 <para>prints <application>Tripwire</application>
351 database and report files in clear text format.</para>
[2ee0a026]352 <indexterm zone="tripwire twprint">
[1503942]353 <primary sortas="b-twprint">twprint</primary>
354 </indexterm>
355 </listitem>
356 </varlistentry>
357
358 </variablelist>
359
360 </sect2>
[e40cb61]361
[f45b1953]362</sect1>
Note: See TracBrowser for help on using the repository browser.