Preface.
You've Been Hoodwinked!
Why You Want This Book.
How This Book Is Organized.
Why You Might Not Want This Book.
1. Introduction.
Linux as a Tool.
Defining Free.
Free Means Different Things to Different People.
Free Means Different Things in Different Licenses.
The IANAL Declaration.
The GPL.
The LGPL.
The BSD Licenses.
The Artistic License.
Public Domain.
Other Licenses.
The Great Schism.
Richard Stallman.
Eric Raymond and Bruce Perens.
What's a Pagan Boy to Do?
Get Comfortable with Source Code.
Compiling Software.
Imakefiles.
Basic Makefiles.
Autoconf.
How to Roll Your Own Kernel.
The /etc/lilo.conf File.
Running lilo.
The /boot Directory (Maybe).
Welcome to /usr/src/linux.
Friendly Kernel Configuration (menuconfig, xconfig).
Building the New Kernel.
Installing the New Kernel.
Booting the New Kernel.
Yikes! Or Booting the Old Kernel.
Finding Source.
Source Is Good!
Requirements.
Knowledge.
Hardware.
Software.
Web Sites.
2. Remote-Control Your Computer from Anywhere, Anytime, and Any Operating System, Even OS/2!
When X Doesn't Cut It.
X Basics.
Enter VNC.
XVNC-The Best of Both Worlds.
Using VNC with Linux.
3. Run a Whole Network with One IP Address.
Preamble.
What the Heck Is IP Masquerading?
NAT vs. IP Masquerade.
Stand-Alone Masqing Boxes.
The Modem-Connect IPMasq'd Network.
The Router-Connect IPMasq'd Network.
Kernel Configuration.
IPChains.
IPChains Rulesets.
Secure IPChains Rules.
Blocking Specific Ports.
Port Forwarding.
Actually Getting PORTFW Installed in the Kernel.
Compiling ipmasqadm.
Forwarding HTTP Traffic.
Rogue Spear Games.
Kernel 2.4 and IPMASQ.
Hardware Firewall/NAT Boxes.
Summary.
4. Soup Cans and String: Last-Ditch Communications Methods.
Problem 1: Parallel Line Internet Protocol (PLIP) Networking.
Parallel Port Basics.
The Four Kinds of Parallel Ports.
Two-Way Printer Port Cables.
Compiling the Linux Kernel to Support PLIP.
Changes Needed for PLIP.
Installing the New Kernel.
Setting Up the PLIP Tunnel.
Server-Side Setup.
Client-Side Interface.
Setting Up NAT (aka IP Masquerade).
Server-Side Setup.
Client-Side Setup.
Problem 2: Non-IP Dialup (getty).
The Whys.
The Hows.
The /etc/inittab File.
Setting Up a getty.
agetty.
mgetty.
Conclusion.
5 Samba: Talking to Windows Networks.
What Is SMB?
Setting Up Samba as a Client.
Discovering the Local Network.
Looking Up Machines with nmblookup.
Listing Shares.
Accessing Shares with smbclient.
Accessing Shares with smbsh and smbfs.
Accessing Shared Printers with smbprint.
Graphical Clients.
Replacing Those Workstations.
Let's Get Practical.
The Other Side of the Coin: Samba as a Server.
Per-Share Options.
smbpasswd.
Becoming a Server in an Existing Domain.
Windows 2000 Issues.
SWAT.
Caveats.
Summary.
References.
More about Netbios and SMB/CIFS.
Samba.
TkSmb.
xSMBrowser.
SMB2WWW.
Ghostscript.
6. Undernets.
The Needs.
The Answer.
The Structure.
Individual Empowerment.
Create the Group.
Change Group Ownership of the Web Directories.
Add Group Read and Write Permission to the Files.
Add setgid on the Web Directories (Optional).
The Maintenance.
CVS Basics.
Core Concepts.
The Repository.
CVS Commands.
Resolving Conflicts.
And Now, Back to Our Story.
The Outcome.
Summary/URLs/Bibliography.
7. E-Mail as a System Console.
Introduction.
MyDisconnected System.
Getting Connected.
Locking It Down.
The Project.
The Disclaimer.
Understanding E-Mail.
Fetchmail.
Fetchmail Configuration.
crontab.
Procmail.
Recipes.
The Script.
Gluing It All Together.
Securing Everything.
Using GnuPG to Handle Authorizations.
Using GnuPG to Encrypt the Results.
Putting It AllTogether.
Summary.
8. Build a Secure Web-Mail Service Supporting IMAP and SSL.
System Preparation.
Building the IMAP Server.
Configuring the SSL Libraries.
Building a Secure Web Server That Supports PHP4.
Installing Aeromail.
Testing the Server.
Using Aeromail.
Other Web-Mail Packages.
SquirrelMail.
IMP.
PIMP.
TWIG.
Resources.
PHP.
Apache.
SSL.
Sendmail.
9. Extending Apache.
Module Basics.
So What Do Modules Do?
The Apache API.
The Request Structure.
Resource Pools.
Commonly Used Functions.
Remote Monitoring.
Writing the Code.
Compiling it.
The Big Moment.
Summary.
References.
Apache.
10. Secure Your E-Mail with GPG.
Introduction.
Cryptographic Basics.
Generating Keys.
Using GPG to Sign and Encrypt Files.
Signing Files.
Encrypting and Signing Files.
Encryption without Signature: A Codicil.
Integrating GPG with Popular E-Mail Clients.
Elm.
Mutt.
Pine.
Kmail.
Mailx and Mail.
Netscape.
Summary.
11. Sniffing for Idiots (Pun Intended).
You Want Me to What?
Troubleshooting.
Offense.
Defense.
Tools.
Sniffit.
Dsniff.
Required Packages.
Dsniff Compilation.
Supersniffer.
TCPDump.
Ethereal.
Compiling Ethereal.
Floppy Linux (MuLinux), the Sniffing Station.
Countermeasures.
Antisniff.
Depth in Defense.
Summary.
12. All Along the Watchtower.
Introduction.
A Model of Network Attacks.
Types of Attack.
Phases of Network-Based Attacks.
Reconnaissance.
Compromise.
Obfuscation.
Entrenchment.
Prints and Fibers.
Tripwire.
What Is It?
How Does It Work?
A (Very) Brief History of Tripwire.
The Painful Details.
The /etc/tripwire/tw.config file.
Database Setup.
Database Maintenance.
Running Tripwire.
Tripwire Forensics.
Summary.
13. All Along the Watchtower, Part Deux.
Introduction.
Packet Monitoring, Logging, and Triggering.
Writing Snort Rules.
The Rule Header.
Action.
Protocol.
SourceAddress, sourcePort, destAddress, destPort.
Direction.
Rule Options.
Attack Profiles.
The Rules of the Game-The Snort Rules Library.
The Unbearable Lightness of False Positives.
Defending Your Home.
Running Snort.
Why You Should Know How to Do It Yourself.
What We Didn't Cover.
Summary.
References.
Snort.
14. Secure Connectivity.
Secure Shell (SSH).
File Transfer.
X11 Forwarding.
Telecommute through Aggressive Firewalls with SSH and Tunneling.
Beyond Login and File Transfer: SSH as Virtual Private Network.
The .ssh/config File.
Getting Out.
Step 1: Find Yourself anOpenSSH Server Outside.
Step 2: Check the Server Configuration.
Step 3: Check the Client Configuration.
Step 4: Secure Access to the Server Box.
Step 5: Secure Tunnel to an Insecure Service.
One Section That Will Pay for the Book.
Getting In.
Step 1: Find a Server Outside.
Step 2: Check the Server Configuration.
Step 3: Check the Client Configuration.
Step 4: Make the Connection from the Inside.
Step 5: Make the Connection from the Outside.
The Only Tunnel You Will Ever Need.
Maniacally Restrictive Firewalls.
Alternate Authentication Methods.
Nonrouting Networks.
What Is an HTTP Proxy?
Obscures Internal Network Details.
Deflects Some Browser-Based Attacks.
Site Blocking.
Employee Watching.
Tunneling.
The httptunnel Package.
Introduction.
Server-Side Setup (HTS).
Client-Side Setup (HTC).
Tunnels within Tunnels: SSH over httptunnel.
Truly Terrifying Tunneling.
Summary.
15. Tools You Should Know.
Introduction.
Regular Expressions.
Pipes and Redirection.
Files and More.
Vi.
Sed.
Dd.
Diff.
Od.
Ispell.
Tar.
G[un]zip.
B[un]zip2.
CVS.
Cut.
More.
Perl.
File.
Strings.
Shells and Such.
Bash.
Sudo.
Ssh.
Pidof.
Which.
Finding Stuff.
Grep.
Find.
Lsof.
Nslookup.
Nmap.
Wget.
Getting Help.
Man.
Info.
You've Got Spam.
Fetchmail.
Mailx.
Elm.
Mutt.
Tin.
Noteworthy GUI tools.
KDE and GNOME.
Blackbox.
The GIMP.
Dia.
XMMS.
xv.
MuLinux.
Web Sites You Shouldn't Live Without.
www.linux.com.
www.linuxdoc.org.
www.freshmeat.net.
www.sourceforge.net.
www.slashdot.org.
www.lwn.net.
www.google.com.
www.lokigames.com and www.linuxgames.com.
www.jabber.org.
Summary.
16. Use Your Palm-Connected Organizer.
Introduction.
The Handspring Visor: A Brief Digression.
Pilot-link.
Pilot-xfer.
Backup.
Sync.
Restore.
Pilot-manager.
Kpilot.
Jpilot.
Malsync.
Things That Don't Work.
17. Necessary Evils: Running MS Windows Programs.
Getting Wine.
Your wine.conf.
AOL's AIM Client.
Solitaire via Wine.
MS Word 97 via Wine.
Stars!
Total Annihilation, Wine, and Other DirectX Games.
Network Applications.
Serial- and Parallel-Port Support.
Summary.
18. Remote CD Burning.
Getting Linux to Grok Your IDE Burner.
mkisofs, cdda2wav, cdrecord.
Making the iso Image (or How I Learned to Master My Data).
Finding Your CD-R/CD-RW Drive.
Blanking a CD-RW.
Burning Data to a CD-R/CD-RW.
Verifying the Freshly Burned CD-R/CD-RW.
Duplicating Data CDs from the Command Line.
Using a GUI.
Duplicating Data CDs with X-CD-Roast.
Using X-CD-Roast to Verify the Freshly Burned CD-R/CD-RW.
Burning Audio CDs.
Making Bootable CDs.
80-min/700MB CDs.
Summary.
19. Audio Processing.
Types of Digital Audio.
RAW Format.
WAV Format.
MP3 (MPEG Layer 3) Format.
Ogg Vorbis Format.
Preparing Your System for Audio Work.
Input Gain, Output Volume, and Clipping.
Creating Audio Files from CDs.
Recording Your Own Audio.
Cut and Paste.
Sound Effects and Filtering.
Volume Adjustment.
Frequency Filtering: High-Pass, Low-Pass, Band-Pass "Graphic Equalizer".
Sound Effects: Chorus, Delay, Echo, Reverb, Stereo Offset.
Converting between File Formats.
Writing Your Own Audio CDs.
Saving Your Old Vinyl.
Preparation.
Cleaning.
System (Space, Tools, etc.).
Audio System.
Recording.
Software.
Cleaning Up.
Removing Clicks, Pops, and Hiss.
Trimming.
Preserving Your Work.
Audio CD Creation.
MP3 File Creation.
Summary.
References.
cdparanoia.
SOX (SOund eXchange).
bladeenc.
LAME (Lame Ain't an MP3 Encoder).
Ogg Vorbis.
FreeAmp.
cdrdao.
cdrecord.
20. Music Production.
Introduction.
What Is MIDI?
Computer Hardware.
MIDI Sequencing.
Making It Work.
Recording.
Musical Notation.
Software Synthesis.
Drum Machines.
Trackers.
Loop-Based Sequencers.
Multitrack Hard Disk Recorders.
Playing Your Masterpiece.
XMMS: The Cross-Platform Multimedia (MP3s, too) Player.
Increase Your Technogeek Appeal: Text-Only Commands!
Real-World Problems.
Script That Bad Mamma Jamma.
Summary.
21. Speech Synthesis.
Analyzing Speech Synthesis.
Tokenization.
Phrasing and Intonation.
Phonetics.
Waveform Generation.
Speech Synthesis Packages.
Rsynth.
Festival.
My Computer's First Word Was "Linux!"--Some Examples.
Check Your Internet Mail at Login.
The Lazy Man's File Browser.
Summary.
References.
Linux Access HOWTO.
RSynth.
Festival.
22. Image Processing.
Types of Image Formats.
Raster vs. Vector.
What about Compression?
Color Palettes.
A Smorgasbord: GIF, JPEG, PNG, TIFF, XPM, Etc..
The Future: MNG and JPEG2000.
Which Image Format Is Right?
Image-Processing Utilities.
The GIMP.
ImageMagick.
Creating Images.
Scanners.
Digital Cameras.
Image Retouching.
Cropping.
Brightness, Contrast, and Tone.
Color Adjustment.
Halftone Images.
Summary.
References.
Burn All GIFs.
PNG and MNG Specifications.
JPEG and JPEG2000 Specifications and Documents.
The GIMP.
ImageMagick.
xscanimage and SANE.
GPhoto.
23. 3D Graphics Production.
Introduction.
The Basics.
Raster Vector Painting.
Ray Tracing.
Front-Ends.
Modelers.
Animation.
3D Game Engines.
Introduction to PovRay.
Getting Our Feet Wet.
Special Effects.
Colors, Textures, and More.
Lighting.
Camera Positioning.
The 2D Logo.
The 3D Logo.
Getting Fancy.
More Tools.
Crystal Space.
MindsEye.
Blender.
Summary.
Testimonial.
24. Video Production.
Introduction.
Video4Linux.
The Formats.
The Video Hardware.
Frame Grabbers.
Video Cameras.
Webcams.
Your System.
The Video Software.
Drivers.
Capture and Playback Tools.
Nonlinear Editing Tools.
Making Your Video.
The Gopher.
The Story, Script, Screenplay, Whatever!
The Storyboard.
Lights, Camcorder, Action!
Your Studio Setup.
Capture Your Video.
Editing Clips.
Timeline.
Transitions.
Voice-Overs and Music.
Titles.
Final Rendering.
Commercial Music.
Video Playback.
XMMS.
qt-2.2.2.
SDL.
avifile-0.53.2.
AVI-XMMS-1.2.1.
Adding MPEG Support.
smpeg.
smpeg-XMMS.
RealPlayer.
Quicktime Movies.
Screenshots!
Publishing.
Videotape.
Creating a Video CD for Your VCD/DVD Player.
TechTV.
Summary.
25. Afterword.
About the Authors.
Michael Schwarz.
Jeremy Anderson.
Peter Curtis.
Steven Murphy.
Index. 0201734206T05172002