glfs/basicnet/netutils/traceroute.xml
Bruce Dubbs 3bba7e231d XML Update -- Chapter 19
git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@2302 af4574ff-66df-0310-9fd7-8a98e5e911e0
2004-06-12 05:58:29 +00:00

110 lines
4.2 KiB
XML

<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
"http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
<!ENTITY % general-entities SYSTEM "../../general.ent">
%general-entities;
<!ENTITY traceroute-download-http "http://gd.tuwien.ac.at/platform/sun/packages/solaris/freeware/SOURCES/traceroute-&traceroute-version;.tar.gz">
<!ENTITY traceroute-download-ftp "ftp://ftp.ee.lbl.gov/traceroute-&traceroute-version;.tar.gz">
<!ENTITY traceroute-size "73 KB">
<!ENTITY traceroute-buildsize "464 KB">
<!ENTITY traceroute-time "0.02 SBU">
]>
<sect1 id="traceroute" xreflabel="Traceroute-&traceroute-version;">
<?dbhtml filename="traceroute.html"?>
<title>Traceroute-&traceroute-version;</title>
<sect2>
<title>Introduction to <application>Traceroute</application></title>
<para>The <application>Traceroute</application> package contains a program
which is used to display the network route that packets take to reach a
specified host. This is a standard network troubleshooting tool. If you find
yourself unable to connect to another system, traceroute can help pinpoint
the problem.</para>
<sect3><title>Package information</title>
<itemizedlist spacing='compact'>
<listitem><para>Download (HTTP): <ulink
url="&traceroute-download-http;"/></para></listitem>
<listitem><para>Download (FTP): <ulink
url="&traceroute-download-ftp;"/></para></listitem>
<listitem><para>Download size: &traceroute-size;</para></listitem>
<listitem><para>Estimated Disk space required:
&traceroute-buildsize;</para></listitem>
<listitem><para>Estimated build time:
&traceroute-time;</para></listitem></itemizedlist>
</sect3>
</sect2>
<sect2>
<title>Installation of <application>Traceroute</application></title>
<para>Install <application>Traceroute</application> by running the following
commands:</para>
<screen><userinput><command>mv Makefile.in Makefile.in.bak &amp;&amp;
sed 's/-o bin/-o root/' Makefile.in.bak &gt; Makefile.in &amp;&amp;
./configure --prefix=/usr &amp;&amp;
make &amp;&amp;
make install &amp;&amp;
make install-man</command></userinput></screen>
</sect2>
<sect2>
<title>Command explanations</title>
<para><screen><command>sed 's/-o bin/-o root/'...</command></screen>
Adjusts the <filename>Makefile</filename> so that the program is installed
with user root instead of user bin (which doesn't exist on a default
<acronym>LFS</acronym> system).</para>
<para><command>make install</command>: Installs <command>traceroute</command>
with <acronym>SUID</acronym> set to root in the <filename>/usr/sbin</filename> directory. This makes it
possible for all users to execute <command>traceroute</command>. For absolute
security, turn off the <acronym>SUID</acronym> bit in <command>traceroute</command>'s file
permissions with the command:</para>
<screen><command>chmod 0755 /usr/sbin/traceroute</command></screen>
<para>The risk is that if a security problem such as a buffer overflow was
ever found in the <application>Traceroute</application> code, a regular user
on your system could gain root access if the program is
<acronym>SUID</acronym> root. Of course, removing
the <acronym>SUID</acronym> permission also makes it impossible for users other than
root to utilize <command>traceroute</command>, so decide what's right for your
individual situation.</para>
<para>Our aim is to be completely <acronym>FHS</acronym> compliant, so if
you do leave the <command>traceroute</command> binary
<acronym>SUID</acronym> root, then you
should move <filename>traceroute</filename> to <filename>/usr/bin</filename>
with the following command:</para>
<screen><command>mv /usr/sbin/traceroute /usr/bin</command></screen>
<para>This ensures that the binary is in the path for non-root users.</para>
</sect2>
<sect2>
<title>Contents</title>
<para>The <application>Traceroute</application> package contains <userinput>traceroute</userinput>.</para>
</sect2>
<sect2><title>Description</title>
<sect3><title>traceroute</title>
<para><command>traceroute</command> does basically what it says: it traces the
route your packets take from the host you are working on to another host on a
network, showing all the intermediate steps (gateways) along the way.</para>
</sect3>
</sect2>
</sect1>