aboutsummaryrefslogtreecommitdiff
path: root/ru_RU.KOI8-R/articles/relaydelay/article.xml
blob: 14295a4d8fb364b40ecf2fd279cb8dbf8f88fb9a (plain) (blame)
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
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
<?xml version="1.0" encoding="koi8-r"?>
<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook XML V5.0-Based Extension//EN"
	"../../../share/xml/freebsd50.dtd">
<!--
     The FreeBSD Russian Documentation Project

     $FreeBSD$
     $FreeBSDru: frdp/doc/ru_RU.KOI8-R/articles/relaydelay/article.xml,v 1.2 2007/05/15 19:31:54 gad Exp $

     Original revision: r32632
-->
<article xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0" xml:lang="ru">
  <info><title>éÓÐÏÌØÚÏ×ÁÎÉÅ ÔÅÈÎÏÌÏÇÉÉ ÓÅÒÙÈ ÓÐÉÓËÏ× ×Ï &os;</title>
    

    <author><personname><firstname>ôÏÍ</firstname><surname>òÏÄÅÓ</surname></personname><affiliation>
	<address><email>trhodes@FreeBSD.org</email></address>
      </affiliation></author>

    <copyright>
      <year>2004</year>

      <holder>The &os; Documentation Project</holder>
    </copyright>

    <pubdate>$FreeBSD$</pubdate>

    <releaseinfo>$FreeBSD$</releaseinfo>

    <abstract>
      <para>üÔÁ ÓÔÁÔØÑ ÓÏÚÄÁÎÁ ÉÓËÌÀÞÉÔÅÌØÎÏ ÄÌÑ ÏÐÉÓÁÎÉÑ ÔÅÈÎÏÌÏÇÉÉ ÚÁÄÅÒÖËÉ
	ÐÅÒÅÄÁÞÉ ÓÏÏÂÝÅÎÉÊ ÎÁ ÐÏÞÔÏ×ÏÍ ÓÅÒ×ÅÒÅ &os;.  óÅÒ×ÅÒ Ó ÔÅÈÎÏÌÏÇÉÅÊ
	ÚÁÄÅÒÖËÉ ÐÅÒÅÄÁÞÉ (relaydelay) ÉÌÉ ÐÏÐÁÄÁÎÉÅÍ × ÓÅÒÙÊ ÓÐÉÓÏË
	(greylisting) ÓÎÉÖÁÅÔ ÕÒÏ×ÅÎØ ÓÐÁÍÁ ÐÒÏÓÔÏ ÚÁ ÓÞ£Ô ×ÙÄÁÞÉ
	ÄÉÁÇÎÏÓÔÉÞÅÓËÏÇÏ ÓÏÏÂÝÅÎÉÑ <errorname>TEMPFAIL</errorname> ÎÁ ËÁÖÄÏÅ
	×ÈÏÄÑÝÅÅ ÐÏÞÔÏ×ÏÅ ÓÏÏÂÝÅÎÉÅ.  óÍÙÓÌ ÜÔÏÊ ÔÅÈÎÏÌÏÇÉÉ ÚÁËÌÀÞÁÅÔÓÑ × ÔÏÍ,
	ÞÔÏ ÂÏÌØÛÉÎÓÔ×Ï ÓÐÁÍÅÒÏ× ÄÌÑ ×ÙÐÏÌÎÅÎÉÑ Ó×ÏÅÊ ÒÁÂÏÔÙ ÉÓÐÏÌØÚÕÀÔ
	ÓÏÂÓÔ×ÅÎÎÙÅ ÐÅÒÓÏÎÁÌØÎÙÅ ËÏÍÐØÀÔÅÒÙ É ÓÐÅÃÉÁÌÉÚÉÒÏ×ÁÎÎÏÅ ÐÒÏÇÒÁÍÍÎÏÅ
	ÏÂÅÓÐÅÞÅÎÉÅ.  îÁÓÔÏÑÝÉÊ ÐÏÞÔÏ×ÙÊ ÓÅÒ×ÅÒ ÄÏÌÖÅÎ ÐÏÍÅÝÁÔØ ÓÏÏÂÝÅÎÉÑ ×
	ÏÞÅÒÅÄØ É ÐÙÔÁÔØÓÑ ÄÏÓÔÁ×ÉÔØ ÅÇÏ ÐÏÚÖÅ.  ôÁËÉÍ ÏÂÒÁÚÏÍ, ÓËÏÒÅÅ ×ÓÅÇÏ,
	ÓÐÁÍÅÒ ÐÅÒÅÊÄ£Ô Ë ÓÌÅÄÕÀÝÅÍÕ ÈÏÓÔÕ ×ÍÅÓÔÏ ÔÏÇÏ, ÞÔÏÂÙ ÐÏÐÙÔÁÔØÓÑ ÓÎÏ×Á
	ÐÏÓÌÁÔØ ÜÌÅËÔÒÏÎÎÏÅ ÐÏÓÌÁÎÉÅ.  üÔÏ ÐÒÅËÒÁÓÎÁÑ ÉÄÅÑ; ÐÏ ËÒÁÊÎÅÊ ÍÅÒÅ,
	ÄÏ ÔÅÈ ÐÏÒ, ÐÏËÁ ÓÐÁÍÅÒÙ ÎÅ ÎÁÞÎÕÔ ÉÓÐÏÌØÚÏ×ÁÔØ ÐÒÏÇÒÁÍÍÎÏÅ
	ÏÂÅÓÐÅÞÅÎÉÅ, ËÏÔÏÒÏÅ ÂÕÄÅÔ ÏÂÅÓÐÅÞÉ×ÁÔØ ÐÏ×ÔÏÒ ÐÅÒÅÄÁÞÉ.  îÏ ËÁË ÉÍÅÎÎÏ
	ÜÔÏ ÒÁÂÏÔÁÅÔ?  éÔÁË, × ÐÒÏÃÅÓÓÅ ÐÒÉ£ÍÁ ÓÏÏÂÝÅÎÉÑ ÜÌÅËÔÒÏÎÎÏÊ ÐÏÞÔÙ
	<acronym>ID</acronym> ÓÏÏÂÝÅÎÉÑ ÓÏÈÒÁÎÑÅÔÓÑ × ÂÁÚÅ ÄÁÎÎÙÈ, Á × ËÁÞÅÓÔ×Å
	ÒÅÚÕÌØÔÁÔÁ ×ÏÚ×ÒÁÝÁÅÔÓÑ <errorname>TEMPFAIL</errorname> ×ÍÅÓÔÅ Ó
	ÜÌÅËÔÒÏÎÎÏÊ ÐÏÞÔÏÊ.  åÓÌÉ ÓÏÏÂÝÅÎÉÅ ÜÌÅËÔÒÏÎÎÏÊ ÐÏÞÔÙ ÐÏÓÙÌÁÅÔÓÑ
	ÐÏ×ÔÏÒÎÏ, ÔÏ <acronym>ID</acronym> ÓÏÏÂÝÅÎÉÑ ÂÕÄÅÔ Ó×ÅÒÑÔØÓÑ Ó
	<acronym>ID</acronym> ÓÏÏÂÝÅÎÉÊ, ÓÏÈÒÁΣÎÎÙÍÉ × ÂÁÚÅ ÄÁÎÎÙÈ.  åÓÌÉ ×
	ÂÁÚÅ ÄÁÎÎÙÈ ÏÎÏ ÓÕÝÅÓÔ×ÕÅÔ, ÔÏ ÐÏÓÌÁÎÉÀ ÜÌÅËÔÒÏÎÎÏÊ ÐÏÞÔÙ ÒÁÚÒÅÛÁÅÔÓÑ
	ÄÏÓÔÁ×ËÁ ÐÏ ÎÁÚÎÁÞÅÎÉÀ.  ÷ ÐÒÏÔÉ×ÎÏÍ ÓÌÕÞÁÅ <acronym>ID</acronym>
	ÓÏÈÒÁÎÑÅÔÓÑ, Á × ËÁÞÅÓÔ×Å ÒÅÚÕÌØÔÁÔÁ ×ÏÚ×ÒÁÔÉÔÓÑ
	<errorname>TEMPFAIL</errorname>.  üÔÏÔ ÃÉËÌ ÂÕÄÅÔ ÐÏ×ÔÏÒÑÔØÓÑ ÄÌÑ
	ËÁÖÄÏÇÏ ÓÏÏÂÝÅÎÉÑ, ÐÏÓÔÕÐÁÀÝÅÇÏ ÎÁ ÓÅÒ×ÅÒ.  ðÏ ÍÏÅÍÕ ÌÉÞÎÏÍÕ ÏÐÙÔÕ,
	ÜÔÏ ÄÅÊÓÔ×ÉÔÅÌØÎÏ ÏÔÓÅËÁÅÔ 90% ÓÐÁÍÁ.</para>
    </abstract>
  </info>

  <sect1>
    <title>âÁÚÏ×ÁÑ ÎÁÓÔÒÏÊËÁ</title>

    <para>îÁÍ ÐÏÔÒÅÂÕÅÔÓÑ <command>perl</command> Ó ÐÏÄÄÅÒÖËÏÊ ÍÎÏÇÏÐÏÔÏÞÎÏÇÏ
      ×ÙÐÏÌÎÅÎÉÑ.  õÓÔÁÎÏ×ÉÔÅ <package>lang/perl5.8</package>
      Ó ÕÓÔÁÎÏ×ÌÅÎÎÏÊ ÐÅÒÅÍÅÎÎÏÊ <varname>USE_THREADS=yes</varname>.  óÎÁÞÁÌÁ
      ÍÏÖÅÔ ÐÏÔÒÅÂÏ×ÁÔØÓÑ ÕÄÁÌÉÔØ ÔÅËÕÝÕÀ ×ÅÒÓÉÀ <command>perl</command>; ÎÁ
      ÎÅÏÂÈÏÄÉÍÏÓÔØ ÓÄÅÌÁÔØ ÜÔÏ ÕËÁÖÕÔ ÏÛÉÂËÉ × ÐÒÏÃÅÓÓÅ ÕÓÔÁÎÏ×ËÉ.</para>

    <note>
      <para>ðÒÉ ÜÔÏÍ ÐÏÔÒÅÂÕÅÔÓÑ, ÞÔÏÂÙ ×ÓÅ ÐÏÒÔÙ, ËÏÔÏÒÙÍ ÎÕÖÅÎ
	<command>perl</command>, ÂÙÌÉ ÐÅÒÅÓÔÒÏÅÎÙ É ÐÅÒÅÕÓÔÁÎÏ×ÌÅÎÙ;
	<package>ports-mgmt/portupgrade</package> ÈÏÒÏÛÏ ÄÌÑ
	ÜÔÏÇÏ ÐÏÄÈÏÄÉÔ.  ðÏ ËÒÁÊÎÅÊ ÍÅÒÅ, ÏÎ ÕËÁÖÅÔ, ËÁËÉÅ ÐÏÒÔÙ ÂÙÌÉ ÕÄÁÌÅÎÙ É
	ËÁËÉÅ ÎÅÏÂÈÏÄÉÍÏ ÐÅÒÅÕÓÔÁÎÏ×ÉÔØ.</para>
    </note>

    <para>ôÅÐÅÒØ ÞÔÏ ËÁÓÁÅÔÓÑ ÓÅÒ×ÅÒÁ ÂÁÚÙ ÄÁÎÎÙÈ;
      <application>MySQL</application> ÐÒÅËÒÁÓÎÏ ÐÏÄÈÏÄÉÔ ÄÌÑ ÔÁËÏÇÏ ÔÉÐÁ
      ÒÁÂÏÔÙ.  õÓÔÁÎÏ×ÉÔÅ <package>databases/mysql40-server</package> ×ÍÅÓÔÅ Ó <package>databases/p5-DBD-mysql40</package>.  ðÒÅÄÙÄÕÝÉÊ ÐÏÒÔ
      ÄÏÌÖÅÎ ÐÏÄÒÁÚÕÍÅ×ÁÔØ ÕÓÔÁÎÏ×ËÕ <package>databases/p5-DBI-137</package>, ÔÁË ÞÔÏ ÏÄÉÎ ÛÁÇ ÂÕÄÅÔ
      ÐÒÏÐÕÝÅÎ.</para>

    <para>õÓÔÁÎÏ×ÉÔÅ ÐÅÒÅÎÏÓÉÍÙÊ ÐÏÄËÌÀÞÁÅÍÙÊ ÓÅÒ×ÅÒÎÙÊ ÍÏÄÕÌØ ÎÁ ÂÁÚÅ
      <command>perl</command>, ÐÏÒÔ <package>net/p5-Net-Daemon</package>.  âÏÌØÛÉÎÓÔ×Ï ÕÓÔÁÎÏ×ÏË ÜÔÉÈ
      ÐÏÒÔÏ× ÄÏÌÖÎÙ ÐÒÏÈÏÄÉÔØ ÂÅÚ ÐÒÏÂÌÅÍ.  óÌÅÄÕÀÝÉÊ ÛÁÇ ÂÕÄÅÔ ÂÏÌÅÅ
      ÔÒÕÄÏ£ÍËÉÍ.</para>

    <para>ôÅÐÅÒØ ÕÓÔÁÎÏ×ÉÔÅ ÐÏÒÔ <package>mail/p5-Sendmail-Milter</package>.  îÁ ÍÏÍÅÎÔ ÎÁÐÉÓÁÎÉÑ
      ÜÔÏÇÏ ÄÏËÕÍÅÎÔÁ × ÆÁÊÌÅ <filename>Makefile</filename> ÉÍÅÌÁÓØ ÓÔÒÏËÁ,
      ÎÁÞÉÎÁÀÝÁÑÓÑ Ó <varname>BROKEN</varname>, ÐÒÏÓÔÏ ÕÂÅÒÉÔÅ ÉÌÉ
      ÚÁËÏÍÍÅÎÔÉÒÕÊÔŠţ.  ïÎÁ ÐÏÍÅÞÅÎÁ ÔÁË ÌÉÛØ ÐÏÔÏÍÕ, ÞÔÏ × &os; ÐÏ
      ÕÍÏÌÞÁÎÉÀ ÎÅ ×ËÌÀÞÁÌÓÑ É ÎÅ ÕÓÔÁÎÁ×ÌÉ×ÁÌÓÑ ÐÁËÅÔ <command>perl</command>
      Ó ÐÏÄÄÅÒÖËÏÊ ÍÎÏÇÏÐÏÔÏÞÎÏÇÏ ×ÙÐÏÌÎÅÎÉÑ.  ðÏÓÌÅ ÕÄÁÌÅÎÉÑ ÜÔÏÊ ÓÔÒÏËÉ ÏÎ
      ÄÏÌÖÅÎ ÓÔÒÏÉÔØÓÑ É ÕÓÔÁÎÁ×ÌÉ×ÁÔØÓÑ ÂÅÚ ÏÛÉÂÏË.</para>

    <para>óÏÚÄÁÊÔÅ ËÁÔÁÌÏÇ ÄÌÑ ÒÁÚÍÅÝÅÎÉÑ ×ÒÅÍÅÎÎÙÈ ËÏÎÆÉÇÕÒÁÃÉÏÎÎÙÈ
      ÆÁÊÌÏ×:</para>

    <screen>&prompt.root; <userinput>mkdir /tmp/relaydelay</userinput>
&prompt.root; <userinput>cd /tmp/relaydelay</userinput></screen>

    <para>ôÅÐÅÒØ, ËÏÇÄÁ Õ ÎÁÓ ÉÍÅÅÔÓÑ ×ÒÅÍÅÎÎÙÊ ËÁÔÁÌÏÇ ÄÌÑ ÒÁÂÏÔÙ, ËÏÍÁÎÄÅ
      <command>fetch</command> ÎÕÖÎÏ ÐÅÒÅÄÁÔØ ÓÌÅÄÕÀÝÉÅ
      <acronym>URL</acronym>-ÁÄÒÅÓÁ:</para>

    <screen>&prompt.root; <userinput>fetch http://projects.puremagic.com/greylisting/releases/relaydelay-0.04.tgz</userinput>
&prompt.root; <userinput>fetch http://lists.puremagic.com/pipermail/greylist-users/attachments/20030904/b8dafed9/relaydelay-0.04.bin</userinput></screen>

    <!-- úáíåþáîéå äìñ ôïíá òïäåóá: òáúíåýáôø ðòïçòáííîïå ïâåóðåþåîéå úäåóø
	 ñ÷ìñåôóñ ðìïèïê éäååê îá ôïô óìõþáê, åóìé ëáëïê-îéâõäø íõäáë úáíåîéô
	 åçï.  îá÷åòîïå, ñ äïìöåî úááòèé÷éòï÷áôø óëòéðôù é ïóôáìøîõà ûîñçõ. -->

    <para>ôÅÐÅÒØ ÎÅÏÂÈÏÄÉÍÏ ÒÁÓÐÁËÏ×ÁÔØ ÉÓÈÏÄÎÙÊ ËÏÄ:</para>

    <screen>&prompt.root; <userinput>gunzip -c relaydelay-0.04.tgz | tar xvf -</userinput></screen>

    <para>îÁ ÜÔÏÔ ÍÏÍÅÎÔ ×Ï ×ÒÅÍÅÎÎÏÍ ËÁÔÁÌÏÇÅ ÄÏÌÖÎÏ ÏËÁÚÁÔØÓÑ ÎÅÓËÏÌØËÏ
      ÆÁÊÌÏ×.  ôÅÐÅÒØ ÎÅÏÂÈÏÄÉÍÁÑ ÉÎÆÏÒÍÁÃÉÑ ÍÏÖÅÔ ÐÅÒÅÄÁ×ÁÔØÓÑ ÓÅÒ×ÅÒÕ ÂÁÚÙ
      ÄÁÎÎÙÈ ÉÍÐÏÒÔÉÒÏ×ÁÎÉÅÍ Å£ ÉÚ ÆÁÊÌÁ <filename>mysql.sql</filename>:</para>

    <screen>&prompt.root; <userinput>mysql &lt; relaydelay-0.04/mysql.sql</userinput></screen>

    <para>õÓÔÁÎÏ×ÉÔÅ ÐÁÔÞ <filename>relaydelay.bin</filename> ÄÌÑ ÏÓÔÁÌØÎÙÈ
      ÆÁÊÌÏ×, ÚÁÐÕÓÔÉ× ÔÁËÕÀ ËÏÍÁÎÄÕ:</para>

    <screen>&prompt.root; <userinput>patch -d /tmp/relaydelay/relaydelay-0.04 &lt; relaydelay.bin</userinput></screen>

    <para>ïÔÒÅÄÁËÔÉÒÕÊÔÅ ÆÁÊÌÙ <filename>relaydelay.conf</filename> É
      <filename>db_maintenance.pl</filename>, ÄÏÂÁ×É× × ÎÉÈ ËÏÒÒÅËÔÎÏÅ ÉÍÑ
      ÐÏÌØÚÏ×ÁÔÅÌÑ É ÐÁÒÏÌØ ÄÌÑ óõâä <application>MySQL</application>.  åÓÌÉ
      óõâä ÂÙÌÁ ÐÏÓÔÒÏÅÎÁ É ÕÓÔÁÎÏ×ÌÅÎÁ ÔÁË, ËÁË ÏÐÉÓÁÎÏ ×ÙÛÅ, ÔÏ × ÎÅÊ
      ÏÔÓÕÔÓÔ×ÕÀÔ ÐÏÌØÚÏ×ÁÔÅÌÉ É ÐÁÒÏÌÉ.  üÔÁ ÓÉÔÕÁÃÉÑ ÄÏÌÖÎÁ ÂÙÔØ ÉÓÐÒÁ×ÌÅÎÁ
      ÄÏ ÐÅÒÅ×ÏÄÁ ÓÉÓÔÅÍÙ × ÐÒÏÍÙÛÌÅÎÎÕÀ ÜËÓÐÌÕÁÔÁÃÉÀ, ÞÔÏ ÏÐÉÓÁÎÏ ×
      ÄÏËÕÍÅÎÔÁÃÉÉ Ë óõâä É ×ÙÈÏÄÉÔ ÚÁ ÒÁÍËÉ ÄÁÎÎÏÊ ÓÔÁÔØÉ.</para>

    <para>óÍÅÎÉÔÅ ÒÁÂÏÞÉÊ ËÁÔÁÌÏÇ ÎÁ <filename>relaydelay-0.04</filename>:</para>

    <screen>&prompt.root; <userinput>cd relaydelay-0.04</userinput></screen>

    <para>óËÏÐÉÒÕÊÔÅ ÉÌÉ ÐÅÒÅÍÅÓÔÉÔÅ ËÏÎÆÉÇÕÒÁÃÉÏÎÎÙÅ ÆÁÊÌÙ × ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÉÅ
      ËÁÔÁÌÏÇÉ:</para>

    <screen>&prompt.root; <userinput>mv db_maintenance.pl relaydelay.pl /usr/local/sbin</userinput>
&prompt.root; <userinput>mv relaydelay.conf /etc/mail</userinput>
&prompt.root; <userinput>mv relaydelay.sh /usr/local/etc/rc.d/</userinput></screen>

    <para>ðÒÏÔÅÓÔÉÒÕÊÔÅ ÐÏÌÕÞÉ×ÛÕÀÓÑ ËÏÎÆÉÇÕÒÁÃÉÀ, ×ÙÐÏÌÎÉ× ÔÁËÕÀ
      ËÏÍÁÎÄÕ:</para>

    <screen>&prompt.root; <userinput>sh /usr/local/etc/rc.d/relaydelay.sh start</userinput></screen>

    <note>
      <para>üÔÏÔ ÆÁÊÌ ÎÅ ÂÕÄÅÔ ÓÕÝÅÓÔ×Ï×ÁÔØ, ÅÓÌÉ ÐÒÅÄÙÄÕÝÉÅ ËÏÍÁÎÄÙ &man.mv.1;
	ÎÅ ÂÙÌÉ ×ÙÐÏÌÎÅÎÙ.</para>
    </note>

    <para>åÓÌÉ ×Ó£ ÏÔÒÁÂÏÔÁÌÏ ËÏÒÒÅËÔÎÏ, ÔÏ × ËÁÔÁÌÏÇÅ <filename>/var/log</filename> ÄÏÌÖÅÎ ÐÏÑ×ÉÔØÓÑ ÎÏ×ÙÊ ÆÁÊÌ,
      <filename>relaydelay.log</filename>.  ÷ Î£Í ÄÏÌÖÅÎ ÎÁÈÏÄÉÔØÓÑ ÔÅËÓÔ,
      ÐÏÄÏÂÎÙÊ ÓÌÅÄÕÀÝÅÍÕ:</para>

    <programlisting>Loaded Config File: /etc/mail/relaydelay.conf
Using connection 'local:/var/run/relaydelay.sock' for filter relaydelay
DBI Connecting to DBI:mysql:database=relaydelay:host=localhost:port=3306
Spawned relaydelay daemon process 38277.
Starting Sendmail::Milter 0.18 engine.</programlisting>

    <para>åÓÌÉ ÆÁÊÌ ÎÅ ÐÏÑ×ÉÌÓÑ, ÔÏ ÞÔÏ-ÔÏ ÓÒÁÂÏÔÁÌÏ ÎÅÐÒÁ×ÉÌØÎÏ, ÐÅÒÅÓÍÏÔÒÉÔÅ
      ÜËÒÁÎÎÕÀ ÄÉÁÇÎÏÓÔÉËÕ ÉÌÉ ÐÒÏÓÍÏÔÒÉÔÅ ÖÕÒÎÁÌØÎÙÊ ÆÁÊÌ
      <filename>messages</filename> ÎÁ ÐÒÅÄÍÅÔ ÐÏÑ×ÌÅÎÉÑ ÎÏ×ÏÊ
      ÉÎÆÏÒÍÁÃÉÉ.</para>

    <para>ïÂßÅÄÉÎÉÔÅ ×Ó£ ×ÍÅÓÔÅ, ÄÏÂÁ×É× ÓÌÅÄÕÀÝÕÀ ÓÔÒÏËÕ × ÆÁÊÌ
      <filename>/etc/mail/sendmail.mc</filename> ÉÌÉ ÓÐÅÃÉÆÉÞÎÙÊ ÄÌÑ ×ÁÛÅÊ
      ÓÉÓÔÅÍÙ <filename>mc</filename>-ÆÁÊÌ:</para>

    <programlisting>INPUT_MAIL_FILTER(`relaydelay', `S=local:/var/run/relaydelay.sock, T=S:1m;R:2m;E:3m')dnl</programlisting>

    <para>ðÅÒÅÓÔÒÏÊÔÅ É ÐÅÒÅÕÓÔÁÎÏ×ÉÔÅ ÆÁÊÌÙ × ËÁÔÁÌÏÇÅ
      <filename>/etc/mail</filename> É ÐÅÒÅÚÁÐÕÓÔÉÔÅ
      <command>sendmail</command>.  ëÏÒÏÔËÁÑ ËÏÍÁÎÄÁ <command>make</command>
      <buildtarget>restart</buildtarget> ÄÏÌÖÎÁ ÓÄÅÌÁÔØ ×Ó£ ÎÅÏÂÈÏÄÉÍÏÅ.</para>

    <para>óÇÒÕÚÉÔÅ ÓËÒÉÐÔ ÎÁ ÑÚÙËÅ <command>perl</command>, ÒÁÚÍÅÝ£ÎÎÙÊ ÐÏ
      ÁÄÒÅÓÕ <link xlink:href="http://lists.puremagic.com/pipermail/greylist-users/2003-November/000327.html">http://lists.puremagic.com/pipermail/greylist-users/2003-November/000327.html</link>
      É ÓÏÈÒÁÎÉÔÅ ÅÇÏ × ËÁÔÁÌÏÇ <filename>relaydelay-0.04</filename>.  ÷ ÓÌÅÄÕÀÝÅÍ ÐÒÉÍÅÒÅ ÜÔÏÔ
      ÓËÒÉÐÔ ÏÂÏÚÎÁÞÁÅÔÓÑ ËÁË <filename>addlist.pl</filename>.</para>

    <para>ïÔÒÅÄÁËÔÉÒÕÊÔÅ ÆÁÊÌ <filename>whitelist_ip.txt</filename>,
      ÍÏÄÉÆÉÃÉÒÏ×Á× ÅÇÏ ÔÁË, ÞÔÏÂÙ × ÎÅÇÏ ÂÙÌÉ ×ËÌÀÞÅÎÙ
      <acronym>IP</acronym>-ÁÄÒÅÓÁ ÓÅÒ×ÅÒÏ×, ËÏÔÏÒÙÅ ÄÏÌÖÎÙ ÉÍÅÔØ ×ÏÚÍÏÖÎÏÓÔØ
      ÉÇÎÏÒÉÒÏ×ÁÔØ ÆÉÌØÔÒÙ <application>relaydelay</application>.  ôÏ ÅÓÔØ ÜÔÏ
      ÄÏÍÅÎÙ, ÐÒÉ ÐÏÌÕÞÅÎÉÉ ÜÌÅËÔÒÏÎÎÏÊ ÐÏÞÔÙ ÏÔ ËÏÔÏÒÙÈ ÄÉÁÇÎÏÓÔÉÞÅÓËÏÅ
      ÓÏÏÂÝÅÎÉÅ <errorname>TEMPFAIL</errorname> ×ÙÄÁ×ÁÔØÓÑ ÎÅ ÂÕÄÅÔ.</para>

    <para>ëÁË ÐÒÉÍÅÒ ÍÏÖÎÏ ÐÒÉ×ÅÓÔÉ:</para>

    <programlisting>192.168.   # My internal network.
66.218.66       # Yahoo groups has unique senders.</programlisting>

    <para>æÁÊÌ <filename>blacklist_ip.txt</filename> ÄÏÌÖÅÎ ÉÍÅÔØ ÐÏÈÏÖÅÅ
      ÎÁÚÎÁÞÅÎÉÅ, ÎÏ Ó ÏÂÒÁÔÎÙÍÉ ÐÒÁ×ÉÌÁÍÉ.  õËÁÖÉÔÅ × ÜÔÏÍ ÆÁÊÌÅ
      <acronym>IP</acronym>-ÁÄÒÅÓÁ, ËÏÔÏÒÙÅ ÄÏÌÖÎÙ ÏÔ×ÅÒÇÁÔØÓÑ ÂÅÚ ×ÙÄÁÞÉ
      ÄÉÁÇÎÏÓÔÉÞÅÓËÏÇÏ ÓÏÏÂÝÅÎÉÑ <errorname>TEMPFAIL</errorname>.  üÔÏÔ
      ÐÅÒÅÞÅÎØ ÄÏÍÅÎÏ× ÎÉËÏÇÄÁ ÎÅ ÐÏÌÕÞÉÔ ÄÁÖÅ ×ÏÚÍÏÖÎÏÓÔØ ÓÏÏÂÝÉÔØ Ï ÔÏÍ, ÞÔÏ
      ÏÎÉ Ñ×ÌÑÀÔÓÑ ÒÅÁÌØÎÏ ÓÕÝÅÓÔ×ÕÀÝÉÍÉ ÐÏÞÔÏ×ÙÍÉ ÓÅÒ×ÅÒÁÍÉ.</para>

    <para>üÔÉ ÆÁÊÌÙ ÔÅÐÅÒØ ÄÏÌÖÎÙ ÂÙÔØ ÉÍÐÏÒÔÉÒÏ×ÁÎÙ × ÂÁÚÕ ÄÁÎÎÙÈ ÐÏÓÒÅÄÓÔ×ÏÍ
      ÓËÒÉÐÔÁ <filename>addlist.pl</filename>, ËÏÔÏÒÙÊ ÂÙÌ ÐÏÌÕÞÅÎ ÎÅÓËÏÌØËÉÍÉ
      ÓÔÒÏËÁÍÉ ×ÙÛÅ:</para>

    <screen>&prompt.root; <userinput>perl addlist.pl -whitelist 9999-12-31 23:59:59 &lt; whitelist_ip.txt</userinput>
&prompt.root; <userinput>perl addlist.pl -blacklist 9999-12-31 23:59:59 &lt; blacklist_ip.txt</userinput></screen>

    <para>äÌÑ ×ËÌÀÞÅÎÉÑ ÔÅÈÎÏÌÏÇÉÉ <application>relaydelay</application> ÐÒÉ
      ËÁÖÄÏÊ ÚÁÇÒÕÚËÅ ÓÉÓÔÅÍÙ, ÄÏÂÁ×ØÔÅ ÓÔÒÏÞËÕ
      <option>relaydelay_enable="YES"</option> × ÆÁÊÌ
      <filename>/etc/rc.conf</filename>.</para>

    <para>öÕÒÎÁÌØÎÙÊ ÆÁÊÌ <filename>/var/log/relaydelay.log</filename> ÄÏÌÖÅÎ
      ÐÏÓÔÅÐÅÎÎÏ ÐÏÐÏÌÎÑÔØÓÑ ÕÄÁÞÎÙÍÉ ÐÒÏÈÏÖÄÅÎÉÑÍÉ.  ÷ ÚÁ×ÉÓÉÍÏÓÔÉ ÏÔ ÚÁÇÒÕÚËÉ
      ×ÁÛÅÇÏ ÐÏÞÔÏ×ÏÇÏ ÓÅÒ×ÅÒÁ, ×ÓËÏÒÅ ÄÏÌÖÎÙ ÐÏÑ×ÉÔØÓÑ ÓÔÒÏÞËÉ, ÐÏÄÏÂÎÙÅ
      ÓÌÅÄÕÀÝÉÍ.</para>

    <programlisting>=== 2004-05-24 21:03:22 ===
Stored Sender: &lt;someasshole@flawed-example.com&gt;
Passed Recipient: &lt;local_user@pittgoth.com&gt;
  Relay: example.net [XXX.XX.XXX.XX] - If_Addr: MY_IP_ADDRESS
  RelayIP: XX.XX.XX.XX - RelayName: example.net - RelayIdent:  - PossiblyForged: 0
  From: someasshole@flawed-example.com - To: local_user
  InMailer: esmtp - OutMailer: local - QueueID: i4P13Lo6000701111
  Email is known but block has not expired.  Issuing a tempfail.  rowid: 51
  IN ABORT CALLBACK - PrivData: 0&lt;someasshole@flawed-example.com&gt;</programlisting>

    <para>÷ ÆÁÊÌ <filename>/etc/newsyslog.conf</filename> ÔÅÐÅÒØ ÍÏÖÎÏ ÄÏÂÁ×ÉÔØ
      ÓÌÅÄÕÀÝÕÀ ÓÔÒÏËÕ, ËÏÔÏÒÁÑ ÏÂÅÓÐÅÞÉ×ÁÅÔ ÒÏÔÁÃÉÀ ÖÕÒÎÁÌÏ×
      <filename>relaydelay.log</filename> ÐÒÉ ÄÏÓÔÉÖÅÎÉÉ ÒÁÚÍÅÒÁ × 100
      <acronym>ëÂÁÊÔ</acronym>:</para>

    <screen>/var/log/relaydelay.log                 644  3     100  *     Z</screen>

    <!-- XXX ë ËÁËÏÍÕ ÔÅËÓÔÕ ÏÔÎÏÓÉÔÓÑ ÜÔÏ ÚÁÍÅÞÁÎÉÅ? -->
    <note>
      <para>÷ ËÁËÏÊ-ÔÏ ÍÏÍÅÎÔ ÐÏÑ×ÌÑÌÁÓØ ÏÛÉÂËÁ Ï ÎÅÐÏÌÎÏÍ ÏÐÒÅÄÅÌÅÎÉÉ
	ÐÅÒÅÍÅÎÎÙÈ <command>perl</command> × ÆÁÊÌÅ
	<filename>/etc/mail/relaydelay.conf</filename>.  åÓÌÉ ÔÅ Ä×Å ÐÅÒÅÍÅÎÎÙÅ
	ÒÁÓËÏÍÍÅÎÔÉÒÏ×ÁÎÙ, ÔÏ ËÏÎÆÉÇÕÒÁÃÉÏÎÎÙÊ ÆÁÊÌ ÍÏÖÅÔ ÂÙÔØ ÏÂÒÁÂÏÔÁÎ
	ÎÏÒÍÁÌØÎÏ.  ðÒÏÓÔÏ ÎÅ ÚÁÂÕÄØÔÅ ÕÂÒÁÔØ ÉÈ ÉÚ ËÏÍÍÅÎÔÁÒÉÅ× ÄÏ ÔÏÇÏ, ËÁË
	ÎÁÞÁÔØ ÒÁÂÏÔÕ Ó ÔÅÈÎÏÌÏÇÉÅÊ <command>relaydelay</command>.</para>
    </note>
  </sect1>
</article>