Enviando e-mail localmente após o backup para monitoramento
Publicado por Kleyton Maia (última atualização em 29/07/2015)
[ Hits: 6.459 ]
Homepage: http://kadron74.blogspot.com/
Configurar Postfix/Sendmail para usar em scripts enviando e-mails em determinado momento.
O primeiro passo é ter instalado o Postfix e o Sendmail, em nosso exemplo foi usado o Red Hat 6.4 que já vem com esses pacotes instalados...
Configurar o Postfix para fazer relay de e-mails encaminhando para o servidor de correio já existente da empresa, certifique-se de que o correio está habilitado para permitir o relay através desses hosts. Como normalmente os servidores estão na mesma DMZ deve funcionar corretamente ou crie as regras para esta liberação.
Postfix em modo null client
No modo null client a máquina somente manda e-mail, ela não receberá e-mails da rede, e não entregará e-mails localmente (contas de home users).
No exemplo abaixo vamos entender que o domínio é exemplo.com e o nome da máquina é hostname.exemplo.com.
Como normalmente o exemplo mostra somente os parâmetros que não são deixados nas configurações padrões:
Editamos o aqruivo /etc/postfix/main.cf onde:
myhostname = hostname.exemplo.com
myorigin = $mydomain
relayhost = $mydomain
inet_interfaces = loopback-only
mydestination =
Descrição:
Linha 1: Define o myhostname para hostname.exemplo.com, no caso do nome da máquina não ser um nome fully-qualified (nome qualificado). Use o comando "post-conf -d myhostname" para achar o nome da máquina.
Linha 2: O myhostname no seu conteúdo também define o valor padrão para o parâmetro mydomain (aqui, "mydomain = exemplo.com").
Linha 3: Nesta linha enviará o e-mail como "[email protected]" (ao invés de "[email protected]").
Linha 4: Encaminhar todos os e-mails para o servidor de e-mail responsável pelo domínio "exemplo.com". Isso previne dos e-mails ficarem presos neste servidor, especifique outro hostname ou IP caso não tenha o registro MX configurado.
Linha 5: Não aceitar e-mails vindo da rede.
Line 6: Desabilita entrega de e-mails locais. Todos os e-mails vão para o servidor especificado na linha 4.
Após isso usando o Sendmail podemos chamar o envio de e-mail...
Sendo assim montamos o script para recolher alguns dados e enviar por e-mail:
No exemplo abaixo checo o conteúdo de duas pastas e envio no corpo e-mail para análise de qual conteúdo foi feito backup, no meu caso esse script foi colocado no crontab após a rotina de backup e eu recebo por email o que foi feito.
#!/bin/sh # # #Variaveis de ambiente FROM="[email protected]" TO="[email protected]" # Aqui o assunto da mensagem com a data SUBJECT="Backup XPTO Concluido $(date "+dia %d de %b de %Y as %r")" #Aqui ele coloca na variavel o conteudo dos diretorios de onde sao salvos os bkps #Neste meu exemplo um diretorio esta local e outro esta remoto MSG=$(tree -l -h -C -D --charset x /Backup/local/) MSG2=$(tree -l -h -C -D --charset x /mnt/BKP_REMOTO/) MSG3=$(du -hs /mnt/BKP_REMOTO/) cat <<EOF | /usr/sbin/sendmail -t From: $FROM To: $TO Subject: $SUBJECT Bom dia , enviando as tarefas de backups executadas. Resultado no Backup Local: $MSG Resultado no Backup Remoto: $MSG2 Tamanho Total do Backup: $MSG3 ________________________________________________________ Sh versao 12.28 - Kleyton Maia EOF #
Criptografando arquivos para enviar pra sua nuvem
Limpeza dos dados do rConfig (ferramenta open-source de gerenciamento de configuração
Backup Database MySQL Automatizado
Nenhum comentário foi encontrado.
Rodando um aplicativo em modo Kiosk no Ubuntu Linux 20.04
Instalação do Gentoo em HD Externo para dual boot com Windows
Instalação do OCS Inventory (última versão, 2.9.2 - 2022) no Debian 11
VOIP - Interceptando tráfego de pacotes
Sistemas de proteção de acesso a dados do seu HD, será efetivo?
Arduino IDE não reconhece portas USB no Ubuntu 22.04
Passando parâmetros do cliente SSH para o GIT
Auto indentar linhas selecionadas no Vim
Som estourado ou falhando na Steam com Proton
Habilitando a compilação JIT (Just In Time) para o PHP8 no Ubuntu
Como botar Windows 10 no pen drive pelo Linux mint (9)
Como bloquear todas as portas usando iptables e posteriormente liberar... (1)
Criar um script que renomeie o arquivo com data anterior e move para o... (1)
Suspender não funciona, trava e exibe uma tela de erro no notebook del... (0)