AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / ubuntu / Perguntas / 1468141
Accepted
bilogic
bilogic
Asked: 2023-05-16 23:20:30 +0800 CST2023-05-16 23:20:30 +0800 CST 2023-05-16 23:20:30 +0800 CST

Como o postfix intercepta o e-mail do root?

  • 772
  1. Um grande número de aplicativos, por exemplo, cron, etc, enviará e-mail para o root se houver erros.
  2. Eu vi alguns tutoriais que envolvem a instalação do postfix + um pouco de configuração para que sejam encaminhados para o Gmail ou alguma alternativa. Muito trabalho de configuração.
  3. Como o postfix detecta que há novos e-mails para root? Verificando alguma pasta? Ou?
  4. Em uma nova instalação do Ubuntu, o cron ainda pode enviar e-mail para o root. Como funciona?
  5. Desejo saber disso e interceptar esses e-mails para o root e, em seguida, encaminhá-los para o telegrama/webhook ou algo assim.

Possível? Quero dizer, como o postfix faz isso?

root
  • 3 3 respostas
  • 57 Views

3 respostas

  • Voted
  1. Best Answer
    Thomas Ward
    2023-05-18T22:52:13+08:002023-05-18T22:52:13+08:00

    O Postfix não "intercepta" os e-mails. Ele fornece sendmailas chamadas do sistema local para enviar e-mail rootpara cronjobs e outras tarefas de entrega de e-mail local. Por outro lado, uma compreensão profunda de como o Postfix processa e-mail é fundamental para uma de suas perguntas, então continue lendo.


    1. Um grande número de aplicativos, por exemplo, cron, etc, enviará e-mail para o root se houver erros.
    2. Eu vi alguns tutoriais que envolvem a instalação do postfix + um pouco de configuração para que sejam encaminhados para o Gmail ou alguma alternativa. Muito trabalho de configuração.

    Estas não são perguntas, então vou ignorar essas partes.


    1. Desejo saber disso e interceptar esses e-mails para o root e, em seguida, encaminhá-los para o telegrama/webhook ou algo assim.

    Em primeiro lugar, como eu disse, você não "intercepta" essas mensagens. Você configura o Postfix ou o MTA (Mail Server) em seu sistema para processar as mensagens de acordo. Nesse caso, você configuraria o Postfix para que as mensagens rootfossem canalizadas para o código personalizado que ele chama para processar as mensagens em itens que são colocados em um webhook ou que são entregues ao Telegram ou qualquer processo que você deseja usar. Esta é a única maneira de fazer esse trabalho.


    1. Em uma nova instalação do Ubuntu, o cron ainda pode enviar e-mail para o root. Como funciona?

    Uma nova instalação do Ubuntu instala a funcionalidade básica do mailer no sistema apenas para entrega de e-mail rootpara tarefas cronjob. Normalmente, este é algum aplicativo que fornece sendmaillocalmente. Os processos internos reais de como isso funciona variam com base em qual provedor para o sendmailscript/binário existe, mas como o Postfix faz isso, continue.


    1. Como o postfix detecta que há novos e-mails para root? Verificando alguma pasta? Ou?

    Sem entrar muito em profundidade, o Postfix possui vários componentes em seu design e arquitetura que lidam com correio em geral. Isso é melhor descrito e visível aqui no site principal do Postfix: https://www.postfix.org/OVERVIEW.html - Se você realmente quiser entender como os internos funcionam, eu começaria aqui nessa página e leria a página inteira pois realmente explica tudo em profundidade.

    Mas farei o meu melhor para incluir pedaços de lá.

    Para começar, a entrega de e-mails ocorre em vários mecanismos antes de atingir a fila de entrada, todos tratados como componentes 'ativos' do processo Postfix. Conforme evidenciado neste 'diagrama' das páginas do Postfix:

    Diagrama de entrega de correio

    As mensagens de e-mail da Internet, etc., são todas entregues a um processo de "limpeza". As mensagens entregues localmente normalmente usam a chamada sendmail(que o cron de fato chama!) , redirecionamento de contas com base na configuração do Postfix, etc.). Em seguida, ele vai para a fila de entrada, que é processada internamente pelos mecanismos de entrega do Postfix.postdropmaildrop

    Esse processador de limpeza alerta o gerenciador de filas do Postfix de que há coisas para coletar e, em seguida, o gerenciador de filas processa esses itens. No entanto, esses são componentes internos do Postfix e acontecem independentemente de o e-mail ser da Internet ou localmente.

    FINALMENTE, para qualquer entrega de e-mail, o Postfix entrega tudo para a incomingfila e alerta o gerente do sistema interno do Postfix de que há itens para revisar na fila. Isso acontece de forma transparente embora.

    Uma vez na fila de entrada, ele passa por mais processos antes de ser entregue:

    insira a descrição da imagem aqui

    FINALMENTE, com a entrega de correio local sendo processada por meio de local, virtualou pipechamadas - local é a entrega direta a uma caixa de correio nos locais da caixa de entrada configurados pelo Postfix (o padrão cai, /var/mail/USER/INBOXacredito, mas não me cite), e é isso que acontece para local entrega de correio rootpara cronjobs, etc.

    • 3
  2. Simon Banks
    2023-05-16T23:34:48+08:002023-05-16T23:34:48+08:00

    Obrigado por adicionar qual agente de e-mail é. Consulte 'man aliases' para ver o que o postfix diz sobre aliases de correio.

    /etc/aliases é um arquivo que contém uma lista de aliases de usuários que estão usando o sendmail para redirecionar emails.

    por exemplo

    root: mouser
    

    Criaria um alias para todos os e-mails direcionados ao usuário 'root' para o usuário 'mouser'.

    • 0
  3. raj
    2023-05-18T20:55:57+08:002023-05-18T20:55:57+08:00

    O Postfix não "intercepta" o e-mail. Para que o sistema seja capaz de lidar com qualquer e-mail, você precisa de um servidor de e-mail instalado. O Postfix é um desses servidores de correio (outros são, por exemplo, Exim ou sendmail).

    Quando o cron (ou qualquer outro aplicativo) deseja enviar e-mail, ele chama um servidor de e-mail para fazê-lo (tecnicamente, ele chama o /usr/sbin/sendmailbinário, que faz parte do servidor de e-mail). É assim que o Postfix (ou qualquer outro servidor de e-mail) "detecta" que há e-mail para manipular - é explicitamente solicitado pelo aplicativo a entregar esse e-mail.

    Sem um servidor de e-mail, o cron não será capaz de enviar nenhum e-mail e apenas registrará esse fato no arquivo de log. Em uma nova instalação do Ubuntu, não há servidor de e-mail instalado por padrão, e o cron não envia nenhum e-mail para o root (confirmado em várias máquinas nas quais instalei várias versões do Ubuntu) - é claro, desde que estejamos falando sobre o Ubuntu para desktop lançamentos (se você apenas mencionar "Ubuntu" sem nenhum adjetivo específico, presume-se que seja o lançamento padrão para desktop).

    No Ubuntu Server , provavelmente algum servidor de e-mail é instalado por padrão, portanto, o cron é capaz de enviar e-mail para o root. Como não uso o Ubuntu Server, não sei qual é o servidor de email. Você deve determinar qual é você mesmo, olhando a lista de pacotes instalados.

    Se você deseja instalar o Postfix, deve desinstalar o servidor de correio atualmente instalado (é possível que a instalação do Postfix o desinstale automaticamente, mas não tenho certeza), pois dois servidores de correio diferentes não podem coexistir na mesma máquina. A instalação do Postfix substituirá seu /usr/sbin/sendmailbinário atual de seu servidor de correio atual por um novo /usr/sbin/sendmailbinário que faz parte do Postfix. No entanto, você não precisa substituir seu servidor de correio atual pelo Postfix para encaminhar mensagens para qualquer outro lugar, porque praticamente todos os servidores de correio têm recursos de encaminhamento semelhantes. O /etc/aliasesarquivo descrito na outra resposta deve funcionar da mesma maneira, independentemente do servidor de email usado.

    Se você colocar a seguinte linha no seu /etc/aliasesarquivo:

    root: [email protected]
    

    ele encaminhará o e-mail do root para o Gmail, mas o Gmail pode não aceitar esse e-mail devido a vários motivos que não abordarei aqui (mas esses são os motivos pelos quais os tutoriais que você pode encontrar na Internet são tão complicados). O encaminhamento para outros serviços pode dar melhores resultados.

    Se você quiser que o e-mail do root seja processado por algum script (por exemplo, um script que o poste no Telegram), use a seguinte linha em /etc/aliases:

    root: |/path/to/your/script
    

    Finalmente, você deve levar em consideração que geralmente é fortemente desencorajado encaminhar o e-mail do root (é até mesmo escrito em um comentário no /etc/aliasesarquivo padrão). A conta root é tratada pelo servidor de e-mail como um destino de e-mail de "último recurso": se, por qualquer motivo, o e-mail não puder ser entregue ao destinatário ou devolvido ao remetente, ele será enviado para a conta root. Se você encaminhar o e-mail do root e ocorrer um erro durante o encaminhamento, você não obterá nenhum destino de "último recurso" e o e-mail será perdido.

    • 0

relate perguntas

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Existe um comando para listar todos os usuários? Também para adicionar, excluir, modificar usuários, no terminal?

    • 9 respostas
  • Marko Smith

    Como excluir um diretório não vazio no Terminal?

    • 4 respostas
  • Marko Smith

    Como descompactar um arquivo zip do Terminal?

    • 9 respostas
  • Marko Smith

    Como instalo um arquivo .deb por meio da linha de comando?

    • 11 respostas
  • Marko Smith

    Como instalo um arquivo .tar.gz (ou .tar.bz2)?

    • 14 respostas
  • Marko Smith

    Como listar todos os pacotes instalados

    • 24 respostas
  • Martin Hope
    Flimm Como posso usar o docker sem sudo? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    led-Zepp Como faço para salvar a saída do terminal em um arquivo? 2014-02-15 11:49:07 +0800 CST
  • Martin Hope
    ubuntu-nerd Como descompactar um arquivo zip do Terminal? 2011-12-11 20:37:54 +0800 CST
  • Martin Hope
    TheXed Como instalo um arquivo .deb por meio da linha de comando? 2011-05-07 09:40:28 +0800 CST
  • Martin Hope
    Ivan Como listar todos os pacotes instalados 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    David Barry Como determino o tamanho total de um diretório (pasta) na linha de comando? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher "Os seguintes pacotes foram retidos:" Por que e como resolvo isso? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford Como os PPAs podem ser removidos? 2010-07-30 01:09:42 +0800 CST

Hot tag

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve