como altero a porta postfix de 25 para 587?

15

Eu sou noob total sobre Unix e CLI. depois de pesquisar por quase 6 horas, fiquei sabendo que deveria editar a porta postfix de 25 a 587 para que a função mail () do PHP funcionasse. e aqui está a solução que eu tenho http://www.linuxmail.info/postfix-change-port/, mas não tenho certeza de como alterá-lo. como já disse que sou um noob. qualquer ajuda sobre isso será apreciada.

UPDATE1:

solução grawity me dá o seguinte erro.

May  7 00:42:39 Ibrahim-Armars-MacBook-Pro postfix/pickup[4169]: DE2073F07C1: uid=501 from=<azhararmar>
May  7 00:42:39 Ibrahim-Armars-MacBook-Pro postfix/master[4185]: fatal: open lock file pid/master.pid: unable to set exclusive lock: Resource temporarily unavailable
May  7 00:42:39 Ibrahim-Armars-MacBook-Pro postfix/cleanup[4177]: DE2073F07C1: message-id=<[email protected]>
May  7 00:42:39 Ibrahim-Armars-MacBook-Pro postfix/qmgr[4168]: DE2073F07C1: from=<[email protected]>, size=525, nrcpt=1 (queue active)
May  7 00:42:40 Ibrahim-Armars-MacBook-Pro postfix/smtp[4179]: DE2073F07C1: to=<[email protected]>, relay=smtp.gmail.com[74.125.155.109]:587, delay=0.8, delays=0.01/0/0.79/0, dsn=4.7.5, status=deferred (TLS is required, but our TLS engine is unavailable)
May  7 00:42:41 Ibrahim-Armars-MacBook-Pro postfix/pickup[4169]: 5F2FC3F07C4: uid=501 from=<azhararmar>
May  7 00:42:41 Ibrahim-Armars-MacBook-Pro postfix/cleanup[4177]: 5F2FC3F07C4: message-id=<[email protected]>
May  7 00:42:41 Ibrahim-Armars-MacBook-Pro postfix/qmgr[4168]: 5F2FC3F07C4: from=<[email protected]>, size=525, nrcpt=1 (queue active)
May  7 00:42:42 Ibrahim-Armars-MacBook-Pro postfix/smtp[4179]: 5F2FC3F07C4: to=<[email protected]>, relay=smtp.gmail.com[74.125.155.109]:587, delay=0.79, delays=0.01/0/0.78/0, dsn=4.7.5, status=deferred (TLS is required, but our TLS engine is unavailable)
May  7 00:42:50 Ibrahim-Armars-MacBook-Pro postfix/master[4190]: fatal: open lock file pid/master.pid: unable to set exclusive lock: Resource temporarily unavailable

ATUALIZAÇÃO 2:

May  7 01:10:02 Ibrahim-Armars-MacBook-Pro postfix/master[4472]: fatal: open lock file pid/master.pid: unable to set exclusive lock: Resource temporarily unavailable
May  7 01:10:02 Ibrahim-Armars-MacBook-Pro postfix/pickup[4419]: 357F73F090F: uid=501 from=<azhararmar>
May  7 01:10:02 Ibrahim-Armars-MacBook-Pro postfix/cleanup[4430]: 357F73F090F: message-id=<[email protected]>
May  7 01:10:02 Ibrahim-Armars-MacBook-Pro postfix/qmgr[4420]: 357F73F090F: from=<[email protected]>, size=525, nrcpt=1 (queue active)
May  7 01:10:03 Ibrahim-Armars-MacBook-Pro postfix/smtp[4448]: certificate verification failed for smtp.gmail.com[74.125.155.109]:587: untrusted issuer /C=US/O=Equifax/OU=Equifax Secure Certificate Authority
Ibrahim Azhar Armar
fonte
A propósito, certifique-se de ter apenas uma cópia " master" em execução ...
user1686 6/11

Respostas:

9

De acordo com seus comentários sobre outras respostas, você precisa configurar o Postfix para usar o Gmail como host de retransmissão. Existem muitos tutoriais na Internet para isso; aqui está uma versão rápida.

Nota: Com esta configuração, todos os emails devem ser enviados usando seu endereço do Gmail como "De".

  1. Desfazer todas as suas alterações em master.cf.

  2. Em main.cf, adicione estas configurações:

    # This tells Postfix to hand off all messages to Gmail, and never do direct delivery.
    relayhost = [smtp.gmail.com]:587
    
    # This enables TLS (SMTPS) certificate verification, because Gmail has a valid one.
    smtp_tls_security_level = verify
    smtp_tls_CAfile = /etc/ssl/certs/ca-certificates.crt
    smtp_tls_session_cache_database = btree:/var/run/smtp_tls_session_cache
    
    # This tells Postfix to provide the username/password when Gmail asks for one.
    smtp_sasl_auth_enable = yes
    smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
    smtp_sasl_security_options = noanonymous
    
  3. Em /etc/postfix/sasl_passwd, adicione seu nome de usuário e senha do Gmail, desta forma:

    [smtp.gmail.com]:587    [email protected]:mypassword
    
  4. Compile o sasl_passwdarquivo em um banco de dados:

    postmap /etc/postfix/sasl_passwd
    
  5. Finalmente recarregue a configuração principal do Postfix:

    postfix reload
    
user1686
fonte
Estou tentando, vou voltar para você com resultado. muito obrigado.
Ibrahim Azhar Armar
Eu segui exatamente o mesmo que você mencionou. colocado todos os códigos no arquivo main.cf no topo do arquivo e criou um arquivo sasl_passwd ainda me dá o erro acima
Ibrahim Azhar Armar
Parece que você não configurou corretamente o SSL (criptografia) no seu sistema. Para ajudá-lo, as pessoas precisariam conhecer seu sistema operacional (por exemplo, Ubuntu, Fedora, Debian?) E se houver algum pacote SSL instalado. Quanto vale a pena, eu tenho o PostFix configurado em meu próprio sistema para usar o host de retransmissão do meu ISP e funciona muito bem.
CarlF
@Ibrahim: Pode haver dois problemas lá. 1) A configuração smtp_tls_CAfile provavelmente está incorreta: eu a escrevi com base em um sistema Linux, esquecendo que você está no OS X. Tente comentar (prefixe a linha com a #) e abaixe o nível de segurança de verifypara encrypt. Recarregue o Postfix. 2) Se isso não resolver o problema, pode ser que o Postfix tenha sido construído sem o suporte ao TLS. É improvável, mas possível ...
user1686 6/11
s / esquecendo / não sabendo /. Ficou confuso lá.
User1686
14

Se você única quer em execução na porta 587 (e eu não tenho certeza que você, eu acho que você quer executar em ambos 25 e 587), em seguida, encontrar a linha em /etc/postfix/master.cf que se parece com isso:

smtp      inet  n       -       n       -       -       smtpd

E mude para ficar assim:

587      inet  n       -       n       -       -       smtpd

Se você deseja que ele seja executado nas duas portas, adicione a segunda linha após a primeira, em vez de substituí-la.

Wes Hardaker
fonte
Eu editei os arquivos master.cf usando o sudo. o valor foi atualizado, eu reiniciei o computador também, mas ainda leva a porta 25 como valor padrão. o que poderia estar errado? :(
Ibrahim Azhar Armar
ok, os valores estão sendo definidos como padrão depois de algum tempo, não sei por que, mesmo quando adiciono os valores e os salvo usando: wq no vim, ele volta ao valor padrão várias vezes.
Ibrahim Azhar Armar
@Ibrahim: Eu acho que você esqueceu de mencionar algo. Você está tentando fazer com que todos os emails passem por um único servidor smtp.something.com:587?
User1686
1
@ Wes: FYI, master.cfjá contém uma entrada para esta porta; está rotulado submission.
User1686
1
@Ibrahim: Nesse caso, você precisará configurar o Postfix para usar o Gmail como host de retransmissão. Vou postar instruções em uma resposta separada - por enquanto, reverter todas as alterações para master.cf.
User1686