O novo servidor de e-mail não pode enviar e-mails, apenas recebe

4

Estou configurando um novo servidor de e-mail para minha empresa com Ubuntu Server 11.04 e postfix / dovecot. Eu sou novo nisso, então eu tenho alguns problemas. Estou recebendo isso funciona apenas para receving mails de qualquer endereço fora da lan e eu posso enviar apenas para o mesmo domínio. Se eu tentar enviar uma nova mensagem para um endereço externo (por exemplo, gmail), tenho Relay denied .

Então, meu servidor tinha 2 interfaces de rede, 1 para minha lan (192.168.1.xxx) e uma tinha um endereço IP estático público. Meu domínio, para testar o conteúdo, é enti.centropaghe.it e eu crio um registro MX para mail.enti.centropaghe.it

Meu objetivo é obter um servidor imap / smtp / pop3 funcionalmente completo, com autenticação em ambos os lados e enviar e-mail para todos os endereços:)

Eu postei um pouco do meu arquivo de configuração para que você possa digg ele:

/etc/postfix/main.cf

# See /usr/share/postfix/main.cf.dist for a commented, more complete version


# Debian specific:  Specifying a file name will cause the first
# line of that file to be used as the name.  The Debian default
# is /etc/mailname.
#myorigin = /etc/mailname

smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
biff = no

# appending .domain is the MUA's job.
append_dot_mydomain = no

# Uncomment the next line to generate "delayed mail" warnings
#delay_warning_time = 4h

readme_directory = no

# TLS parameters
smtpd_use_tls=yes
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache

# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for
# information on enabling SSL in the smtp client.

mydomain = enti.centropaghe.it
myhostname = mail.enti.centropaghe.it
mydestination = $myhostname, localhost.$mydomain, $mydomain, localhost
relayhost = $mydomain
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 192.168.1.0/24
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = $mydomain
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
default_transport = error
relay_transport = error
mail_spool_directory = /var/mail/

/etc/resolv.conf

search enti.centropaghe.it
nameserver 192.168.1.221 #is my dns server on my lan

/ etc / hosts

127.0.0.1       localhost.localdomain localhost
192.168.1.148   mail.enti.centropaghe.it darwin

dig enti.centropaghe.it mx

; <<>> DiG 9.7.3 <<>> enti.centropaghe.it mx
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 65356
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 3

;; QUESTION SECTION:
;enti.centropaghe.it.           IN      MX

;; ANSWER SECTION:
enti.centropaghe.it.    8381    IN      MX      10 mail.enti.centropaghe.it.

;; AUTHORITY SECTION:
centropaghe.it.         71334   IN      NS      dns2.telemar.it.
centropaghe.it.         71334   IN      NS      dns.telemar.it.

;; ADDITIONAL SECTION:
mail.enti.centropaghe.it. 7333  IN      A       213.178.198.62
dns.telemar.it.         28595   IN      A       213.178.196.1
dns2.telemar.it.        20154   IN      A       213.178.195.254

;; Query time: 1 msec
;; SERVER: 192.168.1.221#53(192.168.1.221)
;; WHEN: Wed Feb 29 15:24:47 2012
;; MSG SIZE  rcvd: 151

dig enti.centropaghe.it any

; <<>> DiG 9.7.3 <<>> enti.centropaghe.it any
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 58752
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 2, ADDITIONAL: 3

;; QUESTION SECTION:
;enti.centropaghe.it.           IN      ANY

;; ANSWER SECTION:
enti.centropaghe.it.    8342    IN      MX      10 mail.enti.centropaghe.it.
enti.centropaghe.it.    7266    IN      A       213.178.198.58

;; AUTHORITY SECTION:
centropaghe.it.         71295   IN      NS      dns2.telemar.it.
centropaghe.it.         71295   IN      NS      dns.telemar.it.

;; ADDITIONAL SECTION:
mail.enti.centropaghe.it. 7294  IN      A       213.178.198.62
dns.telemar.it.         28556   IN      A       213.178.196.1
dns2.telemar.it.        20115   IN      A       213.178.195.254

;; Query time: 0 msec
;; SERVER: 192.168.1.221#53(192.168.1.221)
;; WHEN: Wed Feb 29 15:25:27 2012
;; MSG SIZE  rcvd: 167

/var/log/mail.log

Feb 29 17:11:10 darwin postfix/smtpd[8207]: warning: 213.178.xxx.xxx: hostname ip.213.178.xxx.xxx.telemar.it verification failed: Name or service not known
Feb 29 17:11:10 darwin postfix/smtpd[8207]: connect from unknown[213.178.xxx.xxx]
Feb 29 17:11:10 darwin postfix/smtpd[8207]: NOQUEUE: reject: RCPT from unknown[213.178.xxx.xxx]: 554 5.7.1 <[email protected]>: Relay access denied; from=<[email protected]> to=<[email protected]> proto=ESMTP helo=<[192.168.1.138]>
Feb 29 17:11:13 darwin postfix/smtpd[8207]: disconnect from unknown[213.178.xxx.xxx]

postconf -n

alias_database = hash:/etc/aliases
alias_maps = hash:/etc/aliases
append_dot_mydomain = no
biff = no
config_directory = /etc/postfix
inet_interfaces = all
mail_spool_directory = /var/mail/
mailbox_size_limit = 0
mydestination = $myhostname, localhost.$mydomain, $mydomain, localhost
mydomain = enti.centropaghe.it
myhostname = mail.enti.centropaghe.it
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 192.168.1.0/24
myorigin = $mydomain
readme_directory = no
recipient_delimiter = +
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
smtpd_tls_cert_file = /etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file = /etc/ssl/private/ssl-cert-snakeoil.key
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtpd_use_tls = yes

Espero que seja tudo. Se você precisar de mais alguma coisa, me avise.

Atualizar

Com as últimas modificações, agora usando o endereço IP interno do smtp posso enviar email para endereço externo. Mas não funciona usando mail.enti.centropaghe.it

    
por Kreker 29.02.2012 / 15:27

1 resposta

3

Do seu main.cf:

default_transport (default: smtp) Você usou: default_transport = erro

The default mail delivery transport and next-hop destination for destinations that do not match $mydestination, $inet_interfaces, $proxy_interfaces, $virtual_alias_domains, $virtual_mailbox_domains, or $relay_domains

Bem, isso acontece. Remova esta linha. Você deseja usar o SMTP para enviar e-mails que não sejam do seu domínio. No momento, você se obrigou a realizar apenas entregas locais (qualquer mensagem que seja enviada para qualquer lugar fora dessa máquina não será aceita). É por isso que você pode receber e-mails, mas nada que não seja aceito por esse host é encaminhado.

relayhost (default: empty) Você usou: relayhost = $ mydomain

The next-hop destination of non-local mail; overrides non-local domains in recipient addresses. This information is overruled with relay_transport...

Isso definitivamente afeta as coisas. A menos que você tenha um servidor SMTP diferente ouvindo em enti.centropaghe.it que você quer que todos os e-mails sejam enviados, seu e-mail está indo a lugar nenhum. Você provavelmente deve remover essa linha.

relay_transport (default: relay) Você usou: relay_transport = erro

The default mail delivery transport and next-hop destination for remote delivery to domains listed with $relay_domains. In order of decreasing precedence, the nexthop destination is taken from $relay_transport, $sender_dependent_relayhost_maps, $relayhost, or from the recipient domain

Não vejo $ relay_domains, por isso sugiro remover isso.

Atualizar

Ah, cavalo de cor diferente. Esta linha abaixo diz quem pode retransmitir. Sua mensagem de erro é proveniente de um host que começa com 213.178 . Como não há entrada para ela e você tem outra forma de autenticação para retransmissão, ela é negada. Talvez você queira adicionar uma entrada cobrindo o seu intervalo de rede atribuído?

mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 192.168.1.0/24

Deixe-me saber como isso funciona para você.

    
por 29.02.2012 / 16:03

Tags