File: tag_sendmail.html

package info (click to toggle)
lg-issue29 2-2
  • links: PTS
  • area: main
  • in suites: potato
  • size: 1,840 kB
  • ctags: 365
  • sloc: java: 758; makefile: 36; sh: 4
file content (217 lines) | stat: -rw-r--r-- 9,029 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
<!--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="./lg_toc29.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:answerguy@ssc.com">answerguy@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/ssc.copying.html"
	>Copyright &copy;</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="[&nbsp;Answer&nbsp;Guy&nbsp;Index&nbsp;]"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="./lg_toc29.html"><IMG SRC="../gx/indexnew.gif" 
	ALT="[&nbsp;Table&nbsp;Of&nbsp;Contents&nbsp;]"></A> 
<A HREF="../index.html"><IMG SRC="../gx/homenew.gif" 
	ALT="[&nbsp;Front&nbsp;Page&nbsp;]"></A>
<A HREF="lg_bytes29.html"><IMG SRC="../gx/back2.gif" 
	ALT="[&nbsp;Previous&nbsp;Section&nbsp;]"></A>
<A HREF="./hamilton.html"><IMG SRC="../gx/fwd.gif" 
	ALT="[&nbsp;Next&nbsp;Section&nbsp;]"></A>
<!--startcut =======================================================  -->
</body>
</html>
<!--endcut =========================================================  -->