218 lines
8.8 KiB
HTML
218 lines
8.8 KiB
HTML
<!--startcut ======================================================= -->
|
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
|
|
<html>
|
|
<head>
|
|
<META NAME="generator" CONTENT="lgazmail v1.1pre6">
|
|
<TITLE>The Answer Guy 29: 'sendmail' Log Jams and Capacity Problems</TITLE>
|
|
</head>
|
|
|
|
<BODY BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#A000A0"
|
|
ALINK="#FF0000">
|
|
<!--endcut ========================================================= -->
|
|
<H4>"Linux Gazette...<I>making Linux just a little more fun!</I>"
|
|
</H4>
|
|
<P> <hr> <P>
|
|
|
|
<!-- =============================================================== -->
|
|
<H1 align="center"><A NAME="answer">
|
|
<img src="../gx/dennis/qbubble.gif" alt="" border="0" align="middle">
|
|
<a href="./index.html">The Answer Guy</a>
|
|
<img src="../gx/dennis/bbubble.gif" alt="" border="0" align="middle">
|
|
</A></H1> <BR>
|
|
<H4 align="center">By James T. Dennis,
|
|
<a href="mailto:linux-questions-only@ssc.com">linux-questions-only@ssc.com</a><BR>
|
|
Starshine Technical Services,
|
|
<A HREF="http://www.starshine.org/">http://www.starshine.org/</A> </H4>
|
|
<p><hr><p>
|
|
<H3><img src="../gx/dennis/qbub.gif" alt="(?)" width="50" height="28"
|
|
align="left" border="0">'<tt>sendmail</tt>' Log Jams and Capacity
|
|
Problems</H3>
|
|
<h4 align="center">running extra '<tt>sendmail -q</tt>' processes</h4>
|
|
<p><strong>From Robert Cotran on 28 Apr 1998
|
|
|
|
<br><br>
|
|
Hi there. You seem to know your stuff about Linux. I've been running
|
|
it for two years. I have a little server at home. I was at first
|
|
running Slackware, I'm not running RedHat 5.0. Here's my problem. After
|
|
a while of running, my <tt>sendmail</tt> jams up. It doesn't let in any
|
|
mail and it doesn't send out any queued mail. It's the strangest
|
|
thing. And I had the same problem running Slackware. I figured that
|
|
RedHat (having more updated programs) would be OK, but it's not. After
|
|
a while, any queued messages just stay stuck in the <tt>/var/spool/mqueue</tt>
|
|
dir, and incoming connections on port 25 are either REAL slow, or not
|
|
possible. After rebooting however, all the queued mail zips out, and
|
|
incoming connections are fine again. Sorry to bug you, but I just
|
|
figured you might have an idea. Thanks for any help you can give me!
|
|
|
|
<br><br>
|
|
Rob
|
|
|
|
</strong></p>
|
|
<blockquote><img src="../gx/dennis/bbub.gif" width="50" height="28" alt="(!)"
|
|
align="left" border="0">
|
|
You don't say what sort of volume your trying to bump through
|
|
there or what sort of connection you have to the net. So
|
|
I'll have to assume the worst.
|
|
|
|
<br><br>
|
|
When I was postmaster/sysadmin of a very high volume site
|
|
I found that I needed to occasionally run extra copies of
|
|
the command '<tt>sendmail -q</tt>' concurrently to help reduce the
|
|
backlog in the queue. This command simply makes '<tt>sendmail</tt>'
|
|
to one sweep through its queue (mostly outgoing) and
|
|
look for items that are ready for a retry.
|
|
|
|
<br><br>
|
|
'<tt>sendmail</tt>' has locking mechanisms (those <tt>x*</tt> and
|
|
<tt>l*</tt> files) to prevent concurrency issues. So this is a
|
|
safe procedure.
|
|
|
|
<br><br>
|
|
Typically I find that it's the DNS requests that bog down
|
|
the processing, so running a
|
|
<a href="http://sunsite.unc.edu/LDP/HOWTO/DNS-HOWTO-3.html"
|
|
>caching nameserver</a> on the localhost and making it the primary
|
|
entry in your <tt>/etc/resolv.conf</tt> can be a big win.
|
|
|
|
<br><br>
|
|
A trick I've used when a system gets temporarily really
|
|
overloaded is to tar/gzip up a bunch of <tt>qf*</tt> and
|
|
<tt>df*</tt> file pairs (queue control and data) --- ftp that
|
|
to another system and extract them into a new directory. Then I
|
|
have that system run several queue run processes in
|
|
parallel to the other. This is particularly handy
|
|
if the other system has a separate pipe (connection
|
|
to the Internet).
|
|
|
|
<br><br>
|
|
In Robert Harker's '<tt>sendmail</tt>' Seminar (which I took
|
|
a few months ago) he describe a "requeue" mailer.
|
|
This is an advanced technique that he would use to
|
|
requeue some mail into a separate, low priority,
|
|
queue directory. The idea is to prevent a relatively
|
|
small number of messages to sites that are dead or
|
|
down, and messages to bogus addresses (from your users'
|
|
typos, etc) from clogging things up for the other
|
|
70 or 80 percent that could be expedited.
|
|
|
|
<br><br>
|
|
Another thing to seriously consider and investigate
|
|
is whether you're site is being used as a spammer's
|
|
relay. If your SMTP processing load has suddenly and
|
|
drastically increased then you might have had some of
|
|
your systems "hijacked" by spammers.
|
|
|
|
<br><br>
|
|
To understand this a little bit of explanation is in order. The
|
|
Internet was founded in spirit of co-operation so '<tt>sendmail</tt>'
|
|
was designed and configured (for the last 20 years) to accept mail
|
|
from anyone, to anyone. It would gladly relay mail at the request
|
|
of any MTA (mail transport agent).
|
|
|
|
<br><br>
|
|
This was practical and reasonable --- since mail that
|
|
needs multiple hops to get somewhere (say from department
|
|
to hub/gateway, to other site's hub, to recipient's
|
|
department and thence to recipient's home host) shouldn't
|
|
need to carry "authentication" information for every
|
|
leg of its journey.
|
|
|
|
<br><br>
|
|
However 'spammers' use this openness to send a few copies
|
|
of a message with hundreds or thousands of recipients listed
|
|
for each. This allows someone with a 28.8 modem to chew up
|
|
thousands of gigabit hours of bandwidth over the entire 'net.
|
|
|
|
<br><br>
|
|
In any event you can find some instructions on how to use
|
|
the recent configuration options in '<tt>sendmail</tt>' to prevent
|
|
some of this abuse. Look at
|
|
<a href="http://www.sendmail.com/">http://www.sendmail.com/</a>
|
|
for info on the new 8.9 release which supports a number
|
|
of anti-spam features for details. (As you might expect
|
|
this site also has lots of other sendmail information as
|
|
does the older and now slightly out-of-date
|
|
<a href="http://www.sendmail.org/">http://www.sendmail.org/</a>).
|
|
Sendmail 8.9 includes support for a <tt>FEATURE</tt> (m4 macro set)
|
|
that links you into the "Real-Time Black Hole List"
|
|
(<a href="http://maps.vix.com/rbl/">RBL</a>) that is maintained by
|
|
Paul Vixie (author of DNS BIND/<tt>named</tt> and of the Vixie
|
|
'<tt>cron</tt>' among other things).
|
|
|
|
<br><br>
|
|
Like all sendmail <tt>FEATURE</tt>'s this is optional.
|
|
|
|
<br><br>
|
|
For information information about the RBL look at
|
|
<a href="http://maps.vix.com/rbl/">http://maps.vix.com/rbl/</a>
|
|
|
|
<br><br>
|
|
For more information about the fight against spam look at:
|
|
<a href="http://www.cauce.org/">http://www.cauce.org/</a>
|
|
|
|
<br><br>
|
|
For the best free support on the net for sendmail related issues
|
|
subscribe to the
|
|
<a href="news:comp.mail.sendmail">comp.mail.sendmail</a> newsgroup.
|
|
|
|
</blockquote>
|
|
|
|
<!--================================================================-->
|
|
<P> <hr> <P>
|
|
<H5 align="center"><a href="http://www.linuxgazette.com/copying.html"
|
|
>Copyright ©</a> 1998, James T. Dennis <BR>
|
|
Published in <I>Linux Gazette</I> Issue 29 June 1998</H5>
|
|
<P> <hr>
|
|
<!--================================================================-->
|
|
<p align="center"><table width="95%"><tr align="center">
|
|
<td rowspan="4"><A HREF="lg_answer29.html"><IMG
|
|
SRC="../gx/dennis/answernew.gif"
|
|
ALT="[ Answer Guy Index ]"i
|
|
align="left"></A></td>
|
|
</tr><tr align="center">
|
|
|
|
<!-- begins -->
|
|
<td><A HREF="tag_versions.html">versions</A></td>
|
|
<td><A HREF="tag_lilo.html">lilo</A></td>
|
|
<td><A HREF="tag_virtdom.html">virtdom</a></td>
|
|
<td><A HREF="tag_kernel.html">kernel</A></td>
|
|
<td><A HREF="tag_winmodem.html">winmodem</a></td>
|
|
<td><A HREF="tag_basicmail.html">basicmail</a></td>
|
|
<td><A HREF="tag_betterbak.html">betterbak</a></td>
|
|
</tr><tr align="center">
|
|
|
|
<td><A HREF="tag_shadow.html">shadow</a></td>
|
|
<td><A HREF="tag_dell.html">dell</a></td>
|
|
<td><A HREF="tag_dumbterm.html">dumbterm</a></td>
|
|
<td><A HREF="tag_whylinux.html">whylinux</a></td>
|
|
<td><A HREF="tag_redhat.html">redhat</a></td>
|
|
<td><A HREF="tag_netcard.html">netcard</a></td>
|
|
<td><A HREF="tag_macrovir.html">macrovir</a></td>
|
|
</tr><tr align="center">
|
|
|
|
<td><A HREF="tag_newlook.html">newlook</a></td>
|
|
<td><A HREF="tag_tacacs.html">tacacs</a></td>
|
|
<td><A HREF="tag_sendmail.html">sendmail</a></td>
|
|
<td><A HREF="tag_dialdppp.html">dialdppp</a></td>
|
|
<td><A HREF="tag_ppp233.html">ppp233</a></td>
|
|
<td><A HREF="tag_msmail.html">msmail</a></td>
|
|
<td><A HREF="tag_procmail.html">procmail</a></td>
|
|
<!-- ends -->
|
|
</tr></table>
|
|
|
|
</P> <hr> <P>
|
|
<!--================================================================-->
|
|
<A HREF="./index.html"><IMG SRC="../gx/indexnew.gif"
|
|
ALT="[ Table Of Contents ]"></A>
|
|
<A HREF="../index.html"><IMG SRC="../gx/homenew.gif"
|
|
ALT="[ Front Page ]"></A>
|
|
<A HREF="lg_bytes29.html"><IMG SRC="../gx/back2.gif"
|
|
ALT="[ Previous Section ]"></A>
|
|
<A HREF="./hamilton.html"><IMG SRC="../gx/fwd.gif"
|
|
ALT="[ Next Section ]"></A>
|
|
<!--startcut ======================================================= -->
|
|
</body>
|
|
</html>
|
|
<!--endcut ========================================================= -->
|
|
|