postfix: impossibilitato a Telnet nella porta 25 su centos 6.7


0

introduzione

  1. Nuova droplet digitalocean con Centos 6.7 i686 (Centos-release-6-7.el6.centos.12.3.i686)

  2. Nginx 1.1.13 (generato dal codice sorgente):

  3. Cyrus:

    $ sudo yum install cyrus-sasl cyrus-imapd
    $ sudo vi vi /etc/cyrus.conf: 
     -> https://gist.github.com/c80609a/7190c4981365447063ce2e06a517d9fd
    $ sudo vi /etc/sasl2/smtpd.conf:
     -> pwcheck_method: auxprop
     -> auxprop_plugin: sasldb
     -> mech_list: PLAIN LOGIN CRAM-MD5 DIGEST-MD5 
     ...
    $ sudo chkconfig --level 345 cyrus-imapd on
    $ sudo service cyrus-imapd start
    $ sudo service cyrus-imapd status
     -> cyrus-imapd (pid  1851) is running...
    
  4. POSTFIX (postfix-2.6.6-6.el6_7.1.i686)

    $ sudo yum install postfix
    $ sudo vi /etc/postfix/master.cf
    -> https://gist.github.com/c80609a/07b397d2baa7455896bb704aa2a7479a 
    $ sudo vi /etc/postfix/main.cf
    -> https://gist.github.com/c80609a/831168401df84b395c393b09a3cda384 
    $ sudo vi /etc/postfix/virtual: webmaster@site.org webmaster\@site.org
    $ sudo postmap /etc/postfix/virtual 
    $ sudo touch /etc/postfix/body_checks 
    $ sudo service postfix stop
    $ sudo service postfix reload
    $ sudo postfix upgrade-configuration
    $ sudo service postfix start
    $ sudo service postfix status
    master (pid  16811) is running...
    $ sudo postfix status
    postfix/postfix-script: the Postfix mail system is running: PID: 16811  
    
  5. Aggiunti due record (digitalocean.com - & gt; login - & gt; networking):

    A mail 95.85.24.200
    MX 5 mail.site.org.
    
  6. Mail inviata con successo:

    $ echo 'test' | mail -s 'test' my@mail.ru
    

I problemi

  1. Connessione Telnet rifiutata:

    $ telnet localhost 25
    Trying ::1...
    telnet: connect to address ::1: Connection refused
    Trying 127.0.0.1...
    Connected to localhost.
    Escape character is '^]'.
    

    Prova l'host di Google - OK:

    $ telnet gmail-smtp-in.l.google.com 25
    Trying 74.125.136.26...
    Connected to gmail-smtp-in.l.google.com.
    Escape character is '^]'.
    220 mx.google.com ESMTP t6si2618629wjt.255 - gsmtp
    quit
    221 2.0.0 closing connection t6si2618629wjt.255 - gsmtp
    Connection closed by foreign host.
    
  2. Uscita netstat inaspettata ( l'ultima colonna non è definita ):

    $ netstat -ln |grep :25
    tcp        0      0 0.0.0.0:25                  0.0.0.0:*                   LISTEN
    

    Risultato atteso:

    tcp        0      0 0.0.0.0:25                  0.0.0.0:*                   LISTEN      16811/master
    

Come posso risolvere questi problemi?


1
Ma ottieni una connessione sulla porta 25 in base al tuo post? Solo non sulla tua interfaccia IPv6. L'ultimo output indica anche che è associato alla porta 25 per gli indirizzi IPv4. Sei sicuro che il tuo server sia configurato per rispondere alle richieste IPv6 e abbia un indirizzo IPv6 pubblico valido?
Seth

1
@Seth, grazie per la domanda! Ho abilitato l'interfaccia IPv6 per la mia droplet, mi ha aiutato a capire il mio problema.
c80609a

Risposte:


1

La connessione rifiutata si ottiene solo su IPv6, sull'indirizzo IPv4 (127.0.0.1) si ottiene una connessione. Se si desidera abilitare IPv6, è necessario aggiungere la seguente riga in main.cf:

inet_protocols = ipv4, ipv6

Per quanto riguarda l'output netstat, è necessario utilizzare il -p passa a mostrare i nomi dei processi, confronta:

mtak@dc2:~$ netstat -ln | grep 25
tcp        0      0 0.0.0.0:25       0.0.0.0:*            LISTEN     
tcp6       0      0 :::25            :::*                 LISTEN     

e

mtak@dc2:~$ sudo netstat -pln | grep 25
tcp        0      0 0.0.0.0:25    0.0.0.0:*   LISTEN      3102/master     

Ho appena aggiunto inet_protocols menzionato sopra e abilitato ipv6 per il droplet e riavviare il server. Ottengo una connessione e comandi di tipo (come quit ) ma non viene visualizzata alcuna risposta e output di risposta (ctrl + x, ctrl + q non funziona, ~ 90 secondi di attesa e ritorno di bash).
c80609a

Il problema è stato risolto. In totale i miei errori sono: invece di telnet localhost 25 Devo usare 'telnet mail.site.com 25' (secondo posfix main.cf parametro myhostname ); per mostrare i nomi dei processi nell'output di netstat ho bisogno di usare il -p.
c80609a
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.