Installing Ethereal on UNIX

 < Day Day Up > 



In this section we will cover two methods of installing Ethereal: the Red Hat Package Manager and the Sun Solaris packages. The next section will focus on building Ethereal from source. Now that libpcap is installed, we will step through the process of installing Ethereal 0.10.0a and 0.10.0 on two UNIX-based systems, Red Hat Linux 9.0 and Solaris 9.0, respectively. The Red Hat Linux version of Ethereal was repackaged as version 0.10.0a due to some problems with the help files. Let’s get started installing Ethereal!

Installing Ethereal from the RPMs

Installing the Ethereal software from the RPM can be a very tricky process because of dependencies. Now that libpcap is installed, the step-by-step process below can be used to install Ethereal on Red Hat 9.0. We have also included the Ethereal RPMs on the accompanying CD-ROM. Remember, there might be newer versions that have been released since the writing of this book, and you can download the latest Ethereal RPM from the local archives at www.ethereal.com. Make sure that you are getting the proper RPM for your system, Red Hat Linux 9.0 in our case. Before you begin, you will need to have root privileges to install an RPM. Make sure you are logged in as root, or switch to root by typing su root, press Enter, and type the appropriate root password.

You will notice that there are quite a few different RPMs for Ethereal. We will not be using all of them for our installation, although they are all included on the accompanying CD-ROM in case you need them. The list below provides a short description of each RPM:

  • ethereal-base-0.10.0a-1.RH9.i386.rpm This package is the base for Ethereal and contains the command-line utilities, plugins, and documentation for Ethereal. The graphical user interface is packaged separately in the GTK+ package.

  • ethereal-base-net-snmp-0.10.0a-1.RH9.i386.rpm This package is also the base for Ethereal and contains the command-line utilities, plugins, and documentation for Ethereal. However it depends on the Net-SNMP libraries. The graphical user interface is packaged separately in the GTK+ package.

  • ethereal-base-no-snmp-0.10.0a-1.RH9.i386.rpm This package is very similar to the ethereal-base-net-snmp-0.10.0a-1.RH9.i386.rpm. However, it does not depend on the Net-SNMP library.

  • ethereal-debuginfo-0.10.0a-1.RH9.i386.rpm This package provides debug information for Ethereal. Debug information is useful when developing applications that use this package or when debugging this package.

  • ethereal-gnome-0.10.0a-1.RH9.i386.rpm This package contains an Ethereal icon for Gnome 1.2 and desktop integration files.

  • ethereal-gtk+-0.10.0a-1.RH9.i386.rpm This package contains the Ethereal GUI.

  • ethereal-gtk+-net-snmp-0.10.0a-1.RH9.i386.rpm This package contains the Ethereal GUI and depends on the Net-SNMP libraries.

  • ethereal-gtk+-no-snmp-0.10.0a-1.RH9.i386.rpm This package is very similar to the ethereal-gtk+-net-snmp-0.9.16-1.RH9.i386.rpm. However, it does not depend on the Net-SNMP library.

  • ethereal-kde-0.10.0a-1.RH9.i386.rpm This package contains Ethereal icons for KDE2 and desktop integration files.

  • ethereal-usermode-0.10.0a-1.RH9.i386.rpm This package contains Ethereal integration to the usermode execution package. It is required by the Gnome and KDE packages.

Let’s begin the Ethereal installation process:

  1. Open a terminal window by right clicking on the desktop and choosing New Terminal.

  2. We will need to install two SNMP files for dependency reasons. Install the UCD-SNMP RPM by typing rpm -ivh --nodeps /mnt/_cdrom/snmp/ucd-snmp-4.2.3-1.i386.rpm and pressing Enter. The --nodeps option indicates that we are installing this package regardless of the dependencies.

  3. Next, install the Net-SNMP RPM by typing rpm -ivh --nodeps --force /mnt/cdrom/snmp/net-snmp-5.0.9-3.i386.rh9.rpm and pressing Enter. We are installing both packages because the Ethereal base packages complains about dependencies for each: libnetsnmp.so.5, which is in Net-SNMP, and ucd-snmp. We need to install Net SNMP with the --force option because it recognizes that UCD SNMP is already installed, and exits with errors.

  4. Now that all dependencies have been met we can go ahead with the installation of the Ethereal base package. Type rpm -ivh /mnt/_cdrom/ethereal/linux/ethereal-base-0.10.0a-1.RH9.i386.rpm and press Enter.

  5. Remember, the base package installs the supporting software, such as Tethereal, but not the actual Ethereal executable. We need to install the graphical environment package to get Ethereal. Type rpm -ivh /mnt/_cdrom/ethereal/linux/ethereal-gtk+-0.10.0a-1.RH9.i386.rpm and press Enter.

  6. Technically, Ethereal is now installed in the /usr/sbin directory and can be run by typing ethereal at the command prompt. If you don’t want to install the Gnome support you may stop here. We are going to continue with the Gnome support by installing one of its dependencies first. Type rpm -ivh /mnt/cdrom/ethereal/linux/ethereal-usermode-0.10.0a-1.RH9.i386.rpm and press Enter.

  7. Now we will install the final package for Gnome. Type rpm -ivh /mnt/cdrom/ethereal/linux/ethereal-gnome-0.10.0a-1.RH9.i386.rpm and press Enter.

Verify the installation by typing ethereal and pressing Enter. You should see the Ethereal GUI appear on your screen.

The following output shows how to install the Ethereal RPMs and their dependencies:

[root@localhost root]# rpm -ivh --nodeps /mnt/cdrom/snmp/ucd-snmp-4.2.3-1.i386.rpm Preparing...        ########################################### [100%]    1:ucd-snmp       ########################################### [100%] [root@localhost root]# rpm -ivh --nodeps --force /mnt/cdrom/snmp/net-snmp-5.0.9-3.i386.rh9.rpm Preparing...        ########################################### [100%]    1:net-snmp       ########################################### [100%] [root@localhost root]# rpm -ivh /mnt/cdrom/ethereal/linux/ethereal-base-0.10.0a-1.RH9.i386.rpm Preparing...        ########################################### [100%]    1:ethereal-base  ########################################### [100%] [root@localhost root]# rpm -ivh /mnt/cdrom/ethereal/linux/ethereal-gtk+-0.10.0a-1.RH9.i386.rpm Preparing...        ########################################### [100%]    1:ethereal-gtk+  ########################################### [100%] [root@localhost root]# rpm -ivh /mnt/cdrom/ethereal/linux/ethereal-usermode-0.10.0a-1.RH9.i386.rpm Preparing...        ########################################### [100%]    1:ethereal-usermode  ########################################### [100%] [root@localhost root]# rpm -ivh /mnt/cdrom/ethereal/linux/ethereal-gnome-0.10.0a-1.RH9.i386.rpm Preparing...        ########################################### [100%]    1:ethereal-gnome ########################################### [100%]

The Gnome Ethereal package installs a nice icon for your desktop shortcut at /usr/share/pixmaps/ethereal.png. From the X Windows interface, use the Nautilus File Manager to browse to the /usr/sbin directory. Right-click ethereal and choose Make Link. The link will appear on the screen and it will be highlighted. Right-click link to ethereal and choose Properties. Click the Select Custom Icon button. Browse down through the list of icons and choose the ethereal.png icon. Click OK. Click Close in the link to ethereal properties box. Now that you are back to the /usr/sbin folder, you can click the new link to ethereal icon and drag it to the desktop. You now have a desktop shortcut, with a very cool icon!

Note 

When you need to find a particular dependency file and determine which package it belongs to, do a search on www.rpmfind.net for the filename. This will usually tell you what package, and what version contains that file.

start sidebar
Notes from the Underground…
Libcrypto Problems?

Several open source tools tend to fail to install because of various libcrypto errors. During our installation testing, this didn’t happen on Red Hat 9.0, but it did happen on Red Hat 8.0. The base Ethereal package was complaining about a dependency on libcrypto.so.4. This library is part of the OpenSSL package and stored in the /lib directory. While, you technically don’t need OpenSSL, you do need the librcrypto.so.4 file. To solve this problem you can do one of three things: download and install the appropriate version of OpenSSL, create a symbolic link to a current libcrypto file that you already have, or extract the libcrypto file from OpenSSL and then create a symbolic link. Here is how to accomplish each of these:

  • Install the OpenSSL RPM using the following command: rpm –ivh openssl-0.9.7a-23.i386.rpm. This will place the libcrypto.so.0.9.7a file in the /lib directory. Follow the steps in #2 to create a symbolic link

  • If you already have a libcrypto file in your /lib directory, you can create a symbolic link to it for libcrypto.so.4 (or whichever version the installation requires). Do this with the following command: ln -s /lib/libcrypto.so.0.9.7a /lib/libcrypto.so.4.

  • You also can extract the libcrypto file from the OpenSSL package with the following command: rpm2cpio openssl-0.9.7a-2.i386.rpm | cpio -id ./lib/libssl.so.0.9.7a ./lib/libcrypto.so.0.9.7a. It will create a lib subdirectory in your current directory. You will then need to copy it over to the real /lib directory with the following command: cp lib/libcrypto.so.0.9.7a /lib. Finally, follow the steps in #2 to create a symbolic link.

    Sometimes the RPM installation will still complain about the dependency even after you have created the symbolic link. If this is the only thing preventing the installation, perform the installation with the --nodeps option.

end sidebar

Installing the Solaris Ethereal Package

Installing Ethereal from the Solaris packages is a very quick and easy process. We have included the Ethereal Solaris package, and supporting packages, on the accompanying CD-ROM. Remember, there might be newer versions that have been released since the writing of this book, and you can download the latest versions from the local archive at www.ethereal.com. Make sure that you are getting the proper package for your system, Solaris 9.0 for Sparc systems in our case. Before you begin, you will need to have root privileges to install the packages. Make sure you are logged in as root, or switch to root by typing su root, press Enter, and type the appropriate root password. We will now step through the process of installing the Ethereal package, but first we need to take care of some dependency issues.

  1. Open a terminal window by right clicking the desktop and choosing Tools | Terminal.

  2. Install the Glib package by typing pkgadd -d /cdrom/syngress/gtk+_glib/glib-1.2.10-sol9-sparc-local and pressing Enter. Confirm the installation of the SMCglib package by pressing Enter.

  3. Install the GTK+ package by typing pkgadd -d /cdrom/syngress/_gtk+_glib/gtk+-1.2.10-sol9-sparc-local and pressing Enter. Confirm the installation of the SMCgtk package by pressing Enter.

  4. Install the Ethereal package by typing pkgadd -d /cdrom/syngress/_ethereal/solaris/ethereal-0.10.0-solaris2.9-sparc-local and pressing Enter. Output will appear on the screen confirming the installation of the ethereal package. Press Enter to accept and proceed. You may get a message about installing conflicting files. These are attribute changes only, so you can accept the installation by typing y and pressing Enter. When the installation is complete, you should see a message stating that the installation was successful.

Ethereal is installed in the /usr/local/bin directory, which you may need to add to your path. You can verify the installation by typing ethereal and pressing Enter. You should see the Ethereal GUI appear on your screen.

Note 

Most Solaris packages install in the /usr/local/bin directory. You will need to make sure this directory is part of your PATH environment variable. To see your current PATH setting, type echo $PATH and press Enter. To add the /usr/local/bin directory, type PATH=$PATH:/usr/local/bin and press Enter.

The following output shows the whole process of installing Ethereal and the supporting packages:

# pkgadd -d /cdrom/syngress/gtk+_glib/glib-1.2.10-sol9-sparc-local The following packages are available:   1  SMCglib     glib                  (sparc) 1.2.10 Select package(s) you wish to process (or 'all' to process all packages). (default: all) [?,??,q]: <enter> Processing package instance <SMCglib> from </cdrom/syngress/gtk+_glib/glib-1.2.10-sol9-sparc-local> glib (sparc) 1.2.10 The GLib Team [output removed] Installation of <SMCglib> was successful. # pkgadd -d /cdrom/syngress/gtk+_glib/gtk+-1.2.10-sol9-sparc-local The following packages are available:   1  SMCgtk     gtk+                 (sparc) 1.2.10 Select package(s) you wish to process (or 'all' to process all packages). (default: all) [?,??,q]: <enter> Processing package instance <SMCgtk> from </cdrom/syngress/gtk+_glib/gtk+-1.2.10-sol9-sparc-local> gtk+ (sparc) 1.2.10 The GTK Team [output removed] Installation of <SMCgtk> was successful. # pkgadd -d /cdrom/syngress/ethereal/solaris/ethereal-0.10.0-solaris2.9 sparc-local The following packages are available:   1  ethereal     ethereal 0.10.0                   (sparc) 0.10.0 Select package(s) you wish to process (or 'all' to process all packages). (default: all) [?,??,q]: <enter> Processing package instance <ethereal> from </cdrom/syngress/ethereal/solaris/ethereal-0.10.0-solaris2.9-sparc-local> ethereal 0.10.0 (sparc) 0.10.0 Ethereal Development Team ## Executing checkinstall script. ## Processing package information. ## Processing system information. ## Verifying disk space requirements. ## Checking for conflicts with packages already installed. The following files are already installed on the system and are being used by another package: * /usr/local <attribute change only>   /usr/local/bin <attribute change only>   /usr/local/lib <attribute change only>   /usr/local/man <attribute change only>   /usr/local/man/man1 <attribute change only>   /usr/local/share <attribute change only> * - conflict with a file which does not belong to any package. Do you want to install these conflicting files [y,n,?,q] y ## Checking for setuid/setgid programs. Installing ethereal 0.10.0 as <ethereal> ## Installing part 1 of 1. /usr/local/bin/editcap /usr/local/bin/ethereal /usr/local/bin/idl2eth /usr/local/bin/mergecap /usr/local/bin/tethereal /usr/local/bin/text2pcap /usr/local/lib/ethereal/plugins/0.10.0/acn.la   /usr/local/lib/ethereal/plugins/0.10.0/acn.so /usr/local/lib/ethereal/plugins/0.10.0/artnet.la /usr/local/lib/ethereal/plugins/0.10.0/artnet.so /usr/local/lib/ethereal/plugins/0.10.0/asn1.la /usr/local/lib/ethereal/plugins/0.10.0/asn1.so /usr/local/lib/ethereal/plugins/0.10.0/coseventcomm.la /usr/local/lib/ethereal/plugins/0.10.0/coseventcomm.so /usr/local/lib/ethereal/plugins/0.10.0/cosnaming.la /usr/local/lib/ethereal/plugins/0.10.0/cosnaming.so /usr/local/lib/ethereal/plugins/0.10.0/docsis.la /usr/local/lib/ethereal/plugins/0.10.0/docsis.so /usr/local/lib/ethereal/plugins/0.10.0/enttec.la /usr/local/lib/ethereal/plugins/0.10.0/enttec.so /usr/local/lib/ethereal/plugins/0.10.0/gryphon.la /usr/local/lib/ethereal/plugins/0.10.0/gryphon.so /usr/local/lib/ethereal/plugins/0.10.0/lwres.la /usr/local/lib/ethereal/plugins/0.10.0/lwres.so /usr/local/lib/ethereal/plugins/0.10.0/megaco.la /usr/local/lib/ethereal/plugins/0.10.0/megaco.so /usr/local/lib/ethereal/plugins/0.10.0/mgcp.la /usr/local/lib/ethereal/plugins/0.10.0/mgcp.so /usr/local/lib/ethereal/plugins/0.10.0/pcli.la /usr/local/lib/ethereal/plugins/0.10.0/pcli.so /usr/local/lib/ethereal/plugins/0.10.0/rdm.la /usr/local/lib/ethereal/plugins/0.10.0/rdm.so /usr/local/lib/ethereal/plugins/0.10.0/rtnet.la /usr/local/lib/ethereal/plugins/0.10.0/rtnet.so /usr/local/man/man1/editcap.1 /usr/local/man/man1/ethereal.1 /usr/local/man/man1/idl2eth.1 /usr/local/man/man1/mergecap.1 /usr/local/man/man1/tethereal.1 /usr/local/man/man1/text2pcap.1 /usr/local/man/man4/ethereal-filter.4 /usr/local/share/ethereal/diameter/dictionary.dtd /usr/local/share/ethereal/diameter/dictionary.xml /usr/local/share/ethereal/diameter/mobileipv4.xml /usr/local/share/ethereal/diameter/nasreq.xml /usr/local/share/ethereal/diameter/sunping.xml /usr/local/share/ethereal/manuf [ verifying class <none> ] Installation of <ethereal> was successful.

Note 

You have already seen the use of the pkgadd command on Solaris to install software. You can also type pkginfo to see a list of all installed packages. Sometimes this list is long, so it could take a while to scroll on the screen. If that is the case, pipe it to more by typing pkginfo | more. You can use the pkgrm command to remove a software package, for example pkgrm ethereal.



 < Day Day Up > 



Ethereal Packet Sniffing
Ethereal Packet Sniffing (Syngress)
ISBN: 1932266828
EAN: 2147483647
Year: 2004
Pages: 105
Authors: Syngress

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net