Home Map Index Search News Archives Links About LF
[Top bar]
[Bottom bar]
[an error occurred while processing this directive]
[æÏÔÏ Á×ÔÏÒÁ]
á×ÔÏÒ John Perr

ï Á×ÔÏÒÅ:

ðÏÌØÚÏ×ÁÔÅÌØ ïó Linux Ó 1994 Ç.; ÏÄÉÎ ÉÚ ÒÅÄÁËÔÏÒÏ× ÆÒÁÎÃÕÚÓËÏÊ ÓÅËÃÉÉ LinuxFocus.


óÏÄÅÒÖÁÎÉÅ:

Sendmail and Fetchmail: ÌÏËÁÌØÎÙÊ ÐÏÞÔÏ×ÙÊ ÓÅÒ×ÅÒ

[éÌÌÀÓÔÒÁÃÉÑ]

òÅÚÀÍÅ:

úÁÍÅÔËÁ ÒÁÓÓËÁÚÙ×ÁÅÔ Ï ËÏÎÆÉÇÕÒÉÒÏ×ÁÎÉÉ sendmail É fetchmail ÎÁ ËÏÍÐØÀÔÅÒÅ, ÉÓÐÏÌØÚÕÀÝÅÍ ÉÎÔÅÒÎÅÔ ÞÅÒÅÚ PPP ÓÏÅÄÉÎÅÎÉÅ. ôÁËÁÑ ËÏÎÆÉÇÕÒÁÃÉÑ ÐÏÚ×ÏÌÑÅÔ ÉÓÐÏÌØÚÏ×ÁÔØ ÌÀÂÏÊ ÐÏÞÔÏ×ÙÊ ËÌÉÅÎÔ Unix (ÎÅ ÔÏÌØËÏ Netscape). ïÔÐÒÁ×ÌÑÔØ É ÐÒÉÎÉÍÁÔØ ÓÏÏÂÝÅÎÉÑ ×ÏÚÍÏÖÎÏ ÐÒÉ ËÁÖÄÏÍ PPP ÓÏÅÄÉÎÅÎÉÉ.



 

÷×ÅÄÅÎÉÅ

äÌÑ ÕÐÒÁ×ÌÅÎÉÑ ÐÏÞÔÏÊ ÎÅÏÂÈÏÄÉÍÏ ÓËÏÎÆÉÇÕÒÉÒÏ×ÁÔØ MTA (Mail Transfer Agent). óÁÍÙÊ ÐÏÐÕÌÑÒÎÙÊ (É ÄÁ×ÎÏ ÉÓÐÏÌØÚÕÅÍÙÊ) - sendmail, ÎÏ ÓÕÝÅÓÔ×ÕÀÔ É ÄÒÕÇÉÅ : ÂÏÌÅÅ ÂÙÓÔÒÙÊ É ÐÒÏÓÔÏÊ × ËÏÎÆÉÇÕÒÉÒÏ×ÁÎÉÉ qmail É exim, ×ÈÏÄÑÝÉÊ × ÓÔÁÎÄÁÒÔÎÙÅ ÄÉÓÔÒÉÂÕÔÉ×Ù Debian. ÷ ÚÁÍÅÔËÅ ÒÁÓÓÍÏÔÒÉÍ sendmail É ËÏÎÆÉÇÕÒÁÃÉÏÎÎÙÊ ÐÁËÅÔ ÉÚ õÎÉ×ÅÒÓÉÔÅÔÁ âÅÒËÌÉ ÏÔ Eric Allman.
äÌÑ ÐÏÌÕÞÅÎÉÑ ÐÏÞÔÙ ÏÔ ISP (Internet Service Provider) ÎÅÏÂÈÏÄÉÍÏ ÎÁÓÔÒÏÉÔØ fetchmail, ÉÓÐÏÌØÚÕÀÝÉÊ ÐÒÏÔÏËÏÌÙ pop3 ÉÌÉ imap. íÏÖÎÏ ÔÁËÖÅ ÉÓÐÏÌØÚÏ×ÁÔØ uucp, ÎÏ × ÒÁÍËÉ ÚÁÍÅÔËÉ ÎÅ ×ÈÏÄÉÔ ÒÁÓÓÍÏÔÒÅÎÉÅ ÄÁÎÎÏÇÏ ÐÒÏÔÏËÏÌÁ.  

îÁÓÔÒÏÊËÁ

äÌÑ ÎÁÓÔÒÏÊËÉ sendmail ÎÅÏÂÈÏÄÉÍÏ ÕÓÔÁÎÏ×ÉÔØ ÓÌÅÄÕÀÝÉÅ ÐÁËÅÔÙ (rpm ÆÏÒÍÁÔ):

éÍÅÎÁ ÐÁËÅÔÏ× É ÎÏÍÅÒÁ ×ÅÒÓÉÊ ÍÏÇÕÔ ÒÁÚÌÉÞÁÔØÓÑ × ÚÁ×ÉÓÉÍÏÓÔÉ ÏÔ ÉÓÐÏÌØÚÕÅÍÏÇÏ ÄÉÓÔÒÉÂÕÔÉ×Á. îÁÉÂÏÌÅÅ ×ÁÖÎÙÅ ÐÅÒ×ÙÅ Ä×Á ÐÁËÅÔÁ.

éÓÐÏÌØÚÕÊÔÅ ÓÌÅÄÕÀÝÉÅ ÒÅËÏÍÅÎÄÁÃÉÉ ÄÌÑ ÎÁÓÔÒÏÊËÉ :

  1. ×Ï - ÐÅÒ×ÙÈ ÍÙ ÐÒÉÎÉÍÁÅÍ, ÞÔÏ:
  2. óÏÚÄÁÊÔÅ ÆÁÊÌ : /usr/lib/sendmail-cf/cf/config.mc
    # start of config.mc
    include(`../m4/cf.m4')dnl
    OSTYPE(`linux')dnl
    define(`SMTP_MAILER_FLAGS', `e9')dnl
    FEATURE(redirect)dnl
    FEATURE(nocanonify)dnl
    FEATURE(always_add_domain)dnl
    FEATURE(local_procmail)dnl
    GENERICS_DOMAIN(localhost.localdomain localhost localhost)
    FEATURE(genericstable)
    FEATURE(masquerade_envelope)dnl
    define(`confCF_VERSION',`dede's cf - 22/05/98')dnl
    define(`confCON_EXPENSIVE',`True')dnl
    define(`confME_TOO',`True')dnl
    define(`confCOPY_ERRORS_TO',`Postmaster')dnl
    define(`confDEF_CHAR_SET',`ISO-8859-1')dnl
    define(`confMIME_FORMAT_ERRORS',`True')dnl
    define(`SMART_HOST',`smtp8:[smtp.isp.net]')dnl
    define(`confTO_QUEUEWARN',`24h')
    MAILER(local)
    MAILER(smtp)
    # End of config.mc
    

    óÔÒÏËÁ define(`SMART_HOST'.... ËÏÎÆÉÇÕÒÉÒÕÅÔ sendmail ÄÌÑ ÏÔÐÒÁ×ËÉ ×ÓÅÊ ×ÎÅÛÎÅÊ ÐÏÞÔÙ ÞÅÒÅÚ ISP ×ÍÅÓÔÏ ÐÒÑÍÏÊ ÄÏÓÔÁ×ËÉ.
  3. ôÁËÖÅ ÓÏÚÄÁÊÔÅ ÆÁÊÌ /etc/genericstable:
    dede:   toto@isp.net
    root:   toto@isp.net
    news:   toto@isp.net
    
  4. ðÒÏ×ÅÒØÔÅ, ÞÔÏ /etc/alias ÓÏÄÅÒÖÉÔ ÓÔÒÏËÉ :
    MAILER-DAEMON:  postmaster
    postmaster:     root
    
  5. éÚÍÅÎÉÔÅ ÉÌÉ ÓÏÚÄÁÊÔÅ ÆÁÊÌ /etc/nsswitch.conf ËÁË ÐÏËÁÚÁÎÏ ÎÉÖÅ:
    passwd:     files  
    shadow:     files  
    group:      files  
    hosts:      files   dns
    services:   files
    networks:   files
    protocols:  files
    rpc:        files
    ethers:     files
    netmasks:   files     
    bootparams: files
    netgroup:   
    publickey:  
    automount:  files 
    aliases:    files 
    
    (ëÁÖÄÁÑ ÚÁÐÉÓØ, ËÒÏÍÅ "host", ÄÏÌÖÎÁ ÓÏÄÅÒÖÁÔØ ÔÏÌØËÏ "files")

  6. óÏÚÄÁÊÔÅ /etc/sendmail.cf :
    m4 config.mc > /etc/sendmail.cf
    Ó ÐÒÁ×ÁÍÉ ÄÏÓÔÕÐÁ :
    -rw------- 1 root root 26468 mai 12 22:52 /etc/sendmail.cf

  7. óÏÚÄÁÊÔÅ ÂÁÚÕ ÐÒÅÏÂÒÁÚÏ×ÁÎÉÑ ÁÄÒÅÓÏ× :
    /usr/bin/sendmail -bi -oA/etc/genericstable
    æÁÊÌ /etc/genericstable.db ÄÏÌÖÅÎ ÂÙÔØ ÓÏÚÄÁÎ.

  8. ðÅÒÅÞÉÔÁÊÔÅ ÔÁÂÌÉÃÕ ÐÓÅ×ÄÏÎÉÍÏ× :
    newaliases

  9. æÁÊÌ /etc/hosts ÄÏÌÖÅÎ ÓÏÄÅÒÖÁÔØ ÓÌÅÄÕÀÝÕÀ ÓÔÒÏËÕ:
    127.0.0.1 localhost.localdomain localhost localhost

  10. ðÅÒÅÚÁÇÒÕÚÉÔÅ sendmail :
    kill `head -1 /var/run/sendmail.pid`
    /usr/bin/sendmail -bd -os
     

    ôÅÓÔÉÒÏ×ÁÎÉÅ sendmail

    îÁÓÔÒÏÊËÁ sendmail ÚÁËÏÎÞÅÎÁ. ôÅÐÅÒØ ÐÒÏ×ÅÄÅÍ ÔÅÓÔÉÒÏ×ÁÎÉÅ, ÞÔÏÂÙ ÂÙÔØ Õ×ÅÒÅÎÎÙÍÉ, ÞÔÏ ×ÓÅ ÒÁÂÏÔÁÅÔ :
    óÏÚÄÁÊÔÅ ÆÁÊÌ test.mail :

    Subject: test local
    first line of my message
    (ÐÕÓÔÁÑ ÓÔÒÏËÁ ÏÂÑÚÁÔÅÌØÎÁ)


    É ×ÙÐÏÌÎÉÔÅ :
    /usr/bin/sendmail -v dede < test.mail

    îÁ ÜËÒÁÎÅ ÄÏÌÖÎÙ ÐÏÑ×ÉÔØÓÑ ÓÌÅÄÕÀÝÉÅ ÓÔÒÏËÉ :

    dede... Connecting to local
    dede... Sent
    

    úÁÇÒÕÚÉÔÅ ÐÏÞÔÏ×ÕÀ ÐÒÏÇÒÁÍÍÕ É ÐÒÏ×ÅÒØÔÅ ÐÏÞÔÕ.

    îÁÓÔÒÏÊËÁ Netscape ÄÌÑ ÞÔÅÎÉÑ ÌÏËÁÌØÎÏÊ ÐÏÞÔÙ:


    íÏÖÎÏ ÉÓÐÏÌØÚÏ×ÁÔØ ËÏÍÁÎÄÕ chmod 777, ÎÏ × ÜÔÏÍ ÓÌÕÞÁÅ ÍÏÇÕÔ ×ÏÚÎÉËÎÕÔØ ÐÒÏÂÌÅÍÙ Ó ÂÅÚÏÐÁÓÎÏÓÔØÀ ÄÁÎÎÙÈ. ëÏÍÁÎÄÁ chmod 1777 ÏÚÎÁÞÁÅÔ, ÞÔÏ ÔÏÌØËÏ ×ÌÁÄÅÌÅà ÆÁÊÌÁ ÍÏÖÅÔ ÕÄÁÌÉÔØ ÅÇÏ, Á ÎÅ ×ÓÅ, ËÔÏ ÉÍÅÅÔ ÐÒÁ×Ï ÚÁÐÉÓÉ × ËÁÔÁÌÏÇ.

    ôÅÐÅÒØ ×ÁÛ ËÏÍÐØÀÔÅÒ ÄÏÓÔÁ×ÌÑÅÔ ÐÏÞÔÕ ÎÅÐÏÓÒÅÄÓÔ×ÅÎÎÏ Netscape, ÄÁÖÅ ÅÓÌÉ ×Ù ÎÅ Ó×ÑÚÙ×ÁÅÔÅÓØ Ó Internet. ëÏÎÅÞÎÏ, ×ÏÚÍÏÖÎÏ ÉÓÐÏÌØÚÏ×ÁÎÉÅ É ÄÒÕÇÉÈ ÐÏÞÔÏ×ÙÈ ËÌÉÅÎÔÏ× : XFmail, emacs, mutt, pine etc...  

    îÁÓÔÒÏÊËÁ fetchmail

    ðÅÒÅÄ ÉÓÐÏÌØÚÏ×ÁÎÉÅÍ ÎÁÛÅÇÏ ÎÏ×ÏÇÏ ÐÏÞÔÏ×ÏÇÏ ÓÅÒ×ÅÒÁ × Internet,ÎÅÏÂÈÏÄÉÍÏ ÎÁÓÔÒÏÉÔØ fetchmail ÄÌÑ ÐÏÌÕÞÅÎÉÑ ÐÏÞÔÙ ÏÔ ISP:
    óÏÚÄÁÊÔÅ ÆÁÊÌ .fetchmailrc × /home/dede:

    poll pop.isp.net protocol POP3
            user toto is dede 
            password XXXXXXX
    

    ÇÄÅ toto É XXXXX ×ÁÛ ÌÏÇÉÎ É ÐÁÒÏÌØ ÄÌÑ ÒÅÇÉÓÔÒÁÃÉÏÎÎÏÊ ÚÁÐÉÓÉ ÎÁ pop3.isp.net. ðÒÉ ÎÁÌÉÞÉÉ ÎÅÓËÏÌØËÉÈ ÐÏÞÔÏ×ÙÈ ÑÝÉËÏ× - ÓÏÚÄÁÊÔÅ ÐÏÄÏÂÎÕÀ ÓÔÒÏËÕ ÄÌÑ ËÁÖÄÏÇÏ.
    äÌÑ ËÏÒÒÅËÔÎÏÊ ÒÁÂÏÔÙ fetchmail ÎÅÏÂÈÏÄÉÍÏ ÕÓÔÁÎÏ×ÉÔØ ÓÌÅÄÕÀÝÉÅ ÐÒÁ×Á ÄÏÓÔÕÐÁ ÄÌÑ ÆÁÊÌÁ .fetchmailrc :

    -rw-------   1 dede   dede   189 oct  6 21:45 /home/dede/.fetchmailrc
    

    äÌÑ ÔÅÓÔÉÒÏ×ÁÎÉÑ × Internet ×ÙÐÏÌÎÉÔÅ ÓÌÅÄÕÀÝÉÅ ÄÅÊÓÔ×ÉÑ :

    ïÎÏ ÐÏÑ×ÉÔÓÑ × ÐÏÞÔÏ×ÏÊ ÏÞÅÒÅÄÉ ËÏÇÄÁ ×Ù ×ÙÐÏÌÎÉÔÅ ËÏÍÁÎÄÕ : mailq. äÁÌÅÅ ÐÏÄËÌÀÞÉÔÅÓØ Ë ISP É ÏÔÐÒÁרÔÅ ÓÏÏÂÝÅÎÉÅ.
    /usr/bin/sendmail -q
    

    ëÏÍÁÎÄÁ sendmail -q ÏÔÐÒÁ×ÌÑÅÔ ÓÏÏÂÝÅÎÉÅ, ÎÁÈÏÄÑÝÅÅÓÑ × ÏÞÅÒÅÄÉ. þÅÒÅÚ ÎÅËÏÔÏÒÏÅ ×ÒÅÍÑ ÚÁÇÒÕÚÉÔÅ fetchmail É ÐÒÉÍÉÔÅ ÓÏÏÂÝÅÎÉÅ, ÐÒÉÛÅÄÛÅÅ ÚÅÒËÁÌØÎÏÇÏ ÐÏÞÔÏ×ÏÇÏ ÁÄÒÅÓÁ. ðÏÓÌÅ ÐÏÌÕÞÅÎÉÑ ×ÓÅÈ ÓÏÏÂÝÅÎÉÊ ÍÏÖÎÏ ÐÒÅÒ×ÁÔØ Ó×ÑÚØ.  

    á×ÔÏÍÁÔÉÚÁÃÉÑ

    ðÏÓÌÅ ÏËÏÎÞÁÔÅÌØÎÏÊ ÕÓÔÁÎÏ×ËÉ ÎÁÓÔÒÏÉÍ Á×ÔÏÍÁÔÉÞÅÓËÏÅ ×ÙÐÏÌÎÅÎÉÅ ÄÌÑ ËÁÖÄÏÇÏ ÓÏÅÄÉÎÅÎÉÑ.

    ðÒÉ ÉÓÐÏÌØÚÏ×ÁÎÉÉ PPP - ÓÏÅÄÉÎÅÎÉÑ ÆÁÊÌÙ /etc/ppp/ip-up É ip-down ÉÓÐÏÌÎÑÀÔÓÑ ËÁÖÄÙÊ ÒÁÚ ÐÒÉ ÕÓÔÁÎÏ×ÌÅÎÉÉ ÉÌÉ ÐÒÅËÒÁÝÅÎÉÉ ÓÅÁÎÓÁ Ó×ÑÚÉ. õÂÅÄÉÔÅÓØ, ÞÔÏ ÓÌÅÄÕÀÝÉÅ ÓÔÒÏËÉ ÐÒÉÓÕÔÓÔ×ÕÀÔ × ÆÁÊÌÁÈ, ÅÓÌÉ ÎÅÔ - ÓÏÚÄÁÊÔÅ ÉÈ :
    [ -x /etc/ppp/ip-down.local ] && /etc/ppp/ip-down.local $*
    ÷ ÆÁÊÌ /etc/ppp/ip-up ÄÏÂÁ×ÌÑÅÔÓÑ :
    [ -x /etc/ppp/ip-up.local ] && /etc/ppp/ip-up.local $*

    äÁÌÅÅ ÆÁÊÌÙ /etc/ppp/ip-up É ip-down ÚÁÇÒÕÖÁÀÔ ÆÁÊÌÙ ip-up.local É ip-down.local :

    #!/bin/bash
    # /etc/ppp/ip-up.local
    
    #Record connection parameters
    echo `date` $4 $5 ppp-on >> /etc/ppp/history
    tail -n 1 connect-errors >> /etc/ppp/history
    
    # Send waiting mail
    echo Sending mail... > /dev/console
    /usr/sbin/sendmail -q
    echo Mail sent.  > /dev/console
    
    # Get mail waiting on the pop server
    echo Getting mail... > /dev/console
    fetchmail  > /dev/console 2>&1
    echo Got mail.  > /dev/console
    
    #End
    exit 0
    # end of /etc/ppp/ip-up.local
    

    ïÓÎÏ×ÎÙÍÉ Ñ×ÌÑÀÔÓÑ ÓÔÒÏËÉ sendmail -q É fetchmail. ïÓÔÁÌØÎÙÅ ×Ù×ÏÄÑÔ ÓÏÏÂÝÅÎÉÑ Ï ÐÏÌÕÞÅÎÉÉ ÐÏÞÔÙ ÎÁ ËÏÎÓÏÌØ É ×ÅÄÕÔ ÚÁÐÉÓØ ÓÏÅÄÉÎÅÎÉÊ × ÆÁÊÌÅ /etc/ppp/history.

    #!/bin/bash
    # /etc/ppp/ip-down.local
    
    #Record connection parameters
    echo `date` ppp-off >> /etc/ppp/history
    
    #end
    exit 0
    # end of /etc/ppp/ip-down.local
    

    üÔÉ ÆÁÊÌÙ ÉÓÐÏÌÎÑÀÔÓÑ Ó ÐÒÉ×ÉÌÅÇÉÅÊ root, ÐÏÜÔÏÍÕ ÎÅÏÂÈÏÄÉÍÏ ÓÏÚÄÁÔØ ËÏÐÉÀ ÆÁÊÌÁ .fetchmailrc × ÐÁÐËÅ /root.

    ðÒÉ ÎÁÌÉÞÉÉ ÐÏÓÔÏÑÎÎÏÇÏ ÓÏÅÄÉÎÅÎÉÑ Ó Internet ÍÏÖÎÏ ÎÁÓÔÒÏÉÔØ sendmail ÔÁËÉÍ ÏÂÒÁÚÏÍ, ÞÔÏÂÙ ÏÔÐÒÁ×ËÁ ÐÏÞÔÙ ÏÓÕÝÅÓÔ×ÌÑÌÁÓØ ÒÅÇÕÌÑÒÎÏ :
    ëÏÍÁÎÄÁ sendmail -bd -q10m ÄÌÑ ÏÔÐÒÁ×ËÉ ÐÏÞÔÙ ËÁÖÄÙÅ 10 ÍÉÎÕÔ.
    äÌÑ ÐÏÌÕÞÅÎÉÑ ÐÏÞÔÙ ËÁÖÄÙÅ 10 ÍÉÎÕÔ (600 ÓÅËÕÎÄ) ÎÅÏÂÈÏÄÉÍÏ ×ÙÐÏÌÎÉÔØ ËÏÍÁÎÄÕ : fetchmail -d 600

    ïÂÙÞÎÏ ÜÔÉ ËÏÍÁÎÄÙ ×ÙÐÏÌÎÑÀÔÓÑ × ÚÁÇÒÕÚÏÞÎÙÈ ÆÁÊÌÁÈ × ËÁÔÁÌÏÇÁÈ /etc/rc ÉÌÉ /etc/rc.d/ (× ÚÁ×ÉÓÉÍÏÓÔÉ ÏÔ ËÏÎÆÉÇÕÒÁÃÉÉ).  

    úÁËÌÀÞÅÎÉÅ

    ÷ ÄÁÎÎÏÊ ËÏÎÆÉÇÕÒÁÃÉÉ ÐÏÞÔÁ ÏÔÐÒÁ×ÌÑÅÔÓÑ ÉÚ ÏÞÅÒÅÄÉ É ÐÒÉÎÉÍÁÅÔÓÑ ÏÔ ISP. íÏÖÎÏ ÉÓÐÏÌØÚÏ×ÁÔØ ÐÒÏÇÒÁÍÍÙ (ÎÁÐÒÉÍÅÒ : xbiff or xmailbox) ÄÌÑ ÏÐÏ×ÅÝÅÎÉÑ Ï ÎÁÌÉÞÉÉ ÐÏÞÔÙ. ðÏÞÔÕ ÍÏÖÎÏ ÓÏÒÔÉÒÏ×ÁÔØ É ÆÉÌØÔÒÏ×ÁÔØ ÐÒÏÇÒÁÍÍÏÊ procmail. ï ÜÔÏÍ ÍÏÖÎÏ ÐÒÏÞÉÔÁÔØ × ÚÁÍÅÔËÅ ÎÁÐÉÓÁÎÎÏÊ Angel Lopez × îÏÑÂÒØÓËÏÍ (1997 Ç.) ×ÙÐÕÓËÅ ÖÕÒÎÁÌÁ.  

    óÓÙÌËÉ

    äÏËÕÍÅÎÔÁÃÉÑ ÐÏ sendmail É fetchmail :
    Webpages maintained by the LinuxFocus Editor team
    © John Perr
    LinuxFocus.org 2000

    Click here to report a fault or send a comment to Linuxfocus
    Translation information:
    fr -> -- John Perr
    fr -> en John Perr
    en -> ru Kirill Poukhliakov

    2000-07-05, generated by lfparser version 1.5