Como os administradores devem ler os emails do root?

61

Qual é a maneira do Ubuntu para os administradores de sistema receberem notificações do sistema, que geralmente assumem a forma de email enviado para a conta raiz?

Exemplos de tais notificações são a saída de tarefas cron ou notificações RAID degradadas .

Em uma instalação praticamente padrão do Ubuntu 10.04, não consigo encontrar nenhuma maneira de algo acontecer com o correio do root que não seja depositado /var/mail/root. Como os usuários devem 1. descobri-lo e 2. lê-lo assim que chega?

Observo que em uma verruga, o instalador adicionado root: myusernamea /etc/aliases. Então, na época, o usuário que instalou o sistema se ele leu o correio local. Parece que houve uma regressão em algum lugar ao longo do caminho. Ainda assim, essa não era uma solução completa, porque não se espera que os usuários do Ubuntu estejam cientes de que possuem correio local e devem configurar seu cliente de correio para lê-lo.

ADICIONADO : dadas as respostas atuais, um usuário do servidor deve ser capaz de lidar, desde que esteja ciente do problema. Justo. Mas considere J. Random Desktop User, que não sabe usar uma linha de comando e só sabe clicar no ícone da caixa de correio para ler seus e-mails. Como ele pode ser notificado de que seu sistema deseja lhe contar alguma coisa? (Permita uma intervenção única de um usuário mais competente, se isso for inevitável.)

Gilles 'SO- parar de ser mau'
fonte
11
Eu consegui KMail para ler o meu correio local usando alguns hacks muito estranhas que eu encontrei, mas desde que a atualização para 11.10 Estou perdido
Dirk Hartzer Waldeck
Recentemente, fiz um longo tutorial sobre esse assunto, embora relacionado a Thunderbird: consulte askubuntu.com/questions/192572/…
@ Mik That, com alguma coisa sobre a instalação do postfix na parte superior, daria uma boa resposta aqui.
Gilles 'SO- stop be evil' em
@Gilles Obrigado, embora eu provavelmente tenha que reduzir ou excluir a resposta na outra pergunta, para que não haja duplicação.
@ Mik Não, seria bom repassar substancialmente a mesma resposta (não exatamente, pois aqui você precisaria começar instalando um MTA). As perguntas não são duplicadas: há respostas aqui que não funcionariam na outra pergunta e vice-versa. Acontece que às vezes 90% de uma resposta pode ser reciclada para outra pergunta, tudo bem.
Gilles 'SO- stop be evil'

Respostas:

33

Encorajado nos comentários de Gilles , adaptei e ampliei outra resposta:

(Estou executando o Ubuntu 12.04.1 LTS, mas o processo de configuração geral deve ser aplicado ao Ubuntus anterior e futuro)


A primeira coisa a fazer é instalar um MTA (Mail Transfer Agent) para que o email possa ser retransmitido para um MUA (User User Agent), como Thunderbird. Isso é necessário apenas porque estamos lidando com o correio local e queremos poder enviá-lo e recebê-lo; com contas normais do tipo gmail remoto, apenas um agente do usuário Thunderbirdé necessário.

Eu uso postfix, o que em si é uma alternativa sendmail, do qual existem versões comerciais e de código aberto. Mais informações sobre os recursos do postfix estão no site oficial e os usuários podem achar que as listas de discussão contêm informações úteis se surgirem problemas.

Então, para instalar o programa, execute

sudo apt-get install postfix

Você pode configurá-lo quando estiver instalado ou recusar a oferta e, posteriormente, executar

sudo dpkg-reconfigure postfix

para criar o importante arquivo de configuração ( /etc/postfix/main.cfg). Se você editar manualmente esse arquivo, o que não é necessariamente recomendado, execute sudo newaliasese sudo service postfix restartdepois aplique as alterações.

Postfixé bastante simples de configurar, embora você possa ter algumas configurações específicas que deseja aplicar. Na primeira tela que você vê abaixo, você deve escolher a opção local para o seu e-mail:

insira a descrição da imagem aqui

Em seguida, na próxima tela, escolha seu 'nome de email'; geralmente é o mesmo que /etc/hostname. Você pode aceitar os padrões para a maioria das telas a seguir.

insira a descrição da imagem aqui

Quando ele menciona /etc/aliasese o destinatário Root e Postmaster (como acima), você pode preencher seu nome de usuário, mas verifique se o arquivo de alias é o que deveria estar lendo a próxima seção deste tutorial.

Primeiro, como também recomendado nesta discussão , você /etc/aliasesdeve ser assim se estiver configurado corretamente:

postmaster:    root
root:   mike 

Caso contrário, edite-o com sudo nano /etc/aliasese, em seguida, execute sudo newaliasese sudo service postfix restartpara que a configuração seja atualizada. Postfix'sO recurso de aliases permite que o email seja redirecionado; portanto, a configuração é muito importante para o restante deste tutorial.

Como também observado no link acima , você precisa criar um .forwardarquivo que contém seu nome de usuário e host local: por exemplo, mike@localhostpara que o correio raiz seja encaminhado a você. Para fazer isso, digite estes comandos:

sudo touch /root/.forward

e depois corra

sudo nano /root/.forward

para colocar seu usuário: por exemplo, mike@localhostno arquivo e salve-o.

Além disso , achei necessário adicionar seu usuário ao grupo de emails para Thunderbirdacessar os arquivos de email:

sudo adduser $USER mail

e efetue logout e logon para que as alterações entrem em vigor. Não há necessidade chownou chmodnenhum arquivo, como alguns artigos podem sugerir, e adicionar seu usuário ao grupo de email é uma prática muito melhor e evita qualquer alteração direta das permissões no sistema de arquivos raiz.


Agora para a Thunderbirdconfiguração. Vá para editar> configurações da conta> ações da conta> adicione outra conta> selecione spoolmail Unix e, na próxima tela, coloque seu nome de usuário na primeira caixa e coloque yourusername@localhostna segunda caixa.

insira a descrição da imagem aqui insira a descrição da imagem aqui

Agora, acesse sua nova conta em configurações da conta, selecione configurações do servidor e selecione o diretório local como /var/mailou /var/mail/username(se estiver configurado), como na imagem abaixo.

insira a descrição da imagem aqui

De acordo com as instruções deste artigo, você precisará configurar o servidor smtp se desejar testar a conta enviando um email para root@localhoste clicando em receber email no Thunderbird para recebê-lo, pois o email raiz está sendo redirecionado para youruser@localhost.

Vá para configurações da conta> servidor de saída e escolha adicionar um novo. As configurações devem ser como na captura de tela abaixo:

insira a descrição da imagem aqui

Agora, finalmente teste sua conta compondo um e-mail root@localhoste, alguns segundos depois, clicando em receber e-mails em sua conta. Você deve ver um email como este:

insira a descrição da imagem aqui

Alguns programas ou logs precisarão ser configurados para que eles enviem emails para o root, mas isso pode ser decidido conforme a necessidade. Esperamos que este artigo seja útil, pois nem sempre é fácil configurar Thunderbirdpara receber emails locais.

Comunidade
fonte
Trabalha para o dia 17.04, não toquei nos grupos.
precisa
21

Se este for um servidor, sugiro fortemente que você crie um alias raiz para um endereço de e-mail real, para que você receba seu e-mail aos administradores. É tão fácil quanto adicionar

# Person who should get root's mail
root:   [email protected]

até o final de / etc / aliases

Como alternativa, você pode configurar o correio como alias do seu nome de usuário local e, ao fazer login, receberá a mensagem "Você tem correio", que pode ser verificado usando o mailcomando ou instalando pine / mutt / alpine ou algo semelhante no servidor ..

Richard Holloway
fonte
11
Obrigado, essa é uma explicação boa o suficiente para um administrador de servidor, suponho. Mas como explico isso ao J. Random, usuário da área de trabalho, que definitivamente não usará a linha de comando, mas gostaria de saber se seus discos estão falhando?
Gilles 'SO- stop be evil'
11
Sua pergunta começa: "Qual é a maneira do Ubuntu para os administradores de sistema receberem notificações do sistema ...". Mas de qualquer maneira, para usuários de desktop, para ficar de olho nas mensagens do sistema, eles poderiam usar o gnome-system-log para visualizar os logs (que já estão instalados no Ubuntu Desktop padrão como parte do pacote gnome-utils) ou adicionar "root: nome de usuário "até o final de / etc / aliases. Eu concordo que esta seja uma solução fraca e talvez um bug deva ser gerado para que esse recurso seja adicionado novamente, pois não há uma maneira GUI de fazer isso em uma instalação padrão do Ubuntu.
Richard Holloway
O alias para administradores de servidor é o melhor. Você também pode sudo su - depois use um cliente CLI. Mas se você estiver administrando seriamente uma caixa, faça o alias. Usuários normais não precisam ver este e-mail. Eles têm outros meios para mensagens de notificação. Se eles quiserem, eles podem criar o alias. Faz todo o sentido que isso seja desativado por padrão.
Coteyr
Depois de configurar um alias, existe uma maneira de encaminhar todos os emails que já existem?
John John
Parece não haver um /etc/aliasesarquivo. Isso requer a execução de um servidor de email para que ele seja gerado?
Thufir
11

Pessoalmente, estou usando um agente de correio chamado nullmailer. Ele atua como um proxy de email e transfere todos os emails enviados para o root para um endereço de email de sua escolha.

Você precisa definir suas configurações nos arquivos conf em / etc / nullmailer. Basicamente: forneça seu endereço e credenciais para o fornecedor de e-mail e o endereço em que você deseja receber os e-mails raiz.

Você pode instalá-lo com

sudo apt-get install nullmailer

Você pode obter mais informações sobre sua configuração aqui: http://jviz.research.iat.sfu.ca/wiki/index.php?title=HOWTO_Setup_Nullmailer

Little Jawa
fonte
+1 obrigado pelo link (e pelo conceito minúsculo do MTA incorporado nele) #
142610
2

Atualmente, não há notificação ao usuário de que existe uma caixa de correio local raiz, porque user! = rootSe você precisou verificar a caixa de correio, pode digitar o seguinte: sudo mailpara iniciar o aplicativo de correio na raiz.

Você também pode fazer login como root nesse servidor. Para desbloquear a senha root, basta digitar: sudo passwde digite uma nova senha para root.

Marco Ceppi
fonte
11
Com um usuário de teste no 10.04 usando a interface baseada em gnome padrão ou a interface padrão do kde ou a interface padrão do lxde, não vejo nenhum tipo de notificação de que existe algo /var/mail/$USER.
Gilles 'SO- stop be evil'
1

Uma alternativa - arquivo todos os emails raiz em alguns arquivos e excluo o email original.

Eu crono um script (aqui está a parte principal) -

#!/bin/bash
if `/usr/bin/mail -e`; then
   /usr/bin/mail --print 2>&1 > /tmp/email_${date +"%Y-%m-%d_%H.%M").log
   echo ‘d *’ | /usr/bin/mail -N > /dev/null
fi
exit 0

Isso mantém as coisas arrumadas e eu posso ficar de olho nisso. Eu poderia enviar um arquivo de correio diário para um ID de email externo, etc ...

Eu e
fonte