GOSTARIA DE UM PASSO A PASSO PARA CONFIGURAR O SENDMAIL PELO LINUXCONF. ### 5.1 e anteriores ### Este passo a passo foi montado baseado no livro Guia do Servidor da Conectiva. Para configurar o Sendmail pelo linuxconf execute os seguintes procedimentos: Abra o linuxconf [root@localhost]# linuxconf Para adicionar o módulo do configurador do Sendmail Arquivos de controle e sistema Configurar os módulos do Configurador Linux Escolha a opção: mailconf [X] configuração do servidor de mail (Sendmail) Peça pela opção aceitar e sair. Na parte: Ambiente de Rede Sendmail - sistema de envio de emails Nas opções de básico, entre na opção: Informações básicas Veja as opções: (Cada linha, está comentada de suas funções) Apresentar seu sistema como : <domínio> [X]Aceitar email para <domínio> Servidor de email : Roteador de email : Protocolo roteador de email : smtp
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
GOSTARIA DE UM PASSO A PASSO PARA CONFIGURAR O SENDMAIL PELO LINUXCONF.
### 5.1 e anteriores ###
Este passo a passo foi montado baseado no livro Guia do Servidor da Conectiva.
Para configurar o Sendmail pelo linuxconf execute os seguintes procedimentos:
Abra o linuxconf
[root@localhost]# linuxconf
Para adicionar o módulo do configurador do Sendmail
Arquivos de controle e sistema Configurar os módulos do Configurador Linux
Escolha a opção:
mailconf [X] configuração do servidor de mail (Sendmail)
Peça pela opção aceitar e sair.
Na parte:
Ambiente de Rede
Sendmail - sistema de envio de emails
Nas opções de básico, entre na opção:
Informações básicas
Veja as opções: (Cada linha, está comentada de suas funções)
Apresentar seu sistema como : <domínio> [X]Aceitar email para <domínio> Servidor de email : Roteador de email : Protocolo roteador de email : smtp
(Mesmo que o email venha de máquinas diferentes de sua empresa, você pode querer esconder esse fato e apresentar os emails como se eles tivessem vindo de apenas uma
máquina ou domínio. Se você está configurando o servidor principal de uma empresa, você deve selecionar aceitar email para dominio. No Servidor de email, coloque a máquina+domino que será o servidor de email, e em protocolo a mesma máquina. Se sua configuração for simples deixe em branco)
funcionalidades [ ] confirmar nomes completos de usuários [X] Ativar controle de envio (spammers) Tamanho máximo das mensagens:( )no limite ____________ [ ] Não tentar enviar imediatamente Processar consulta a cada(min):( ) manual 1 ( ) Usar a shell especial smrsh Maximum recipients per msg (o) Defaults _____________
(Habilite a opção de Ativar controle de envio, evitando assim que usem o servidor smtp para spam. No tamanho das mensagens coloque o valor máximo que as mensagens irão ter. na próxima opção evita que o sendmail envie imediatamente as mensagens, e na opção seguinte qual será o tempo de intervalo de envio.)
Funcionalidades por DNS [ ] Esperar pelo DNS [ ] não usar DNS
(O Sendmail faz um uso pesado do DNS. Máquinas sem conexão direta com a Internet (mesmo atrás de um firewall) podem querer desativar o uso do DNS. Por outro lado, máquinas com uma conectividade normal do DNS devem forçar o uso do DNS)
Diversos [X] Não usar batch para email UUCP Tamanho máx para mensagens UUCP: 20000 Entrega Local para usuários : root Não mascara origem de: : root Usuários Autorizados : root daemon uucp Banco de roteamento especiais : [ ] Formato do banco de roteamentos: hash Agente de entrega local : [ ]Suporte a Cliente Bogus(HELO)
(Quando usa-se UUCP repetidamente, as mensagens são normalmente requisitadas e entregues em intervalos regulares. Marque para processá-las imediatamente, recomendado para tráfego pouco intenso) Entrega para usuários locais: Coloque o nome dos usuários para quem quer ignorar a definição de Servidor de email. As mensagens sempre serão guardadas localmente para estes usuários. Essa funcionalidade é normalmente usada para pseudo-usuários administrativos (root por exemplo). A opção não mascara usa-se para saber qual o
usuário e de qual máquina ele mandou. O Agente de entrega refere-se a utilitários de entrega, ex: Procmail. use a opção deixar o linuxconf localizar. Deixe o resto em branco)
Apelidos do domínio Apelidos para o seu sistema:
( Coloque nesta opção outros domínios que o sr. quer que seu sistema aceite)
Confirme. Para uma configuração básica do Sendmail, só os primeiros itens são necessário, com
isso seu sistema já estará trabalhando, faltando apenas descomentar o pop no intetd e startar o
inet e o sendmail.
A seguir, instruções das outras opções do Sendmail:
Opção ---> Roteamento especial (domínio)
Adicionar
Destino : Repetidor : [ ]Gerenciar subdomínio da mesma forma Transporte : (Em muitos sistemas, é útil habiltar para informar ao sendmail qual a rota de envio das mensagens)
Opção --->Roteamento complexo (usuário)
Adicionar
[ ] esta regra está ativa Para: Original : PAra: Novo : Reenviar para servidor(opc) : Transporte : smtp Comentário :
(Serve para apontar um email de usuário@dominio para <outrosusário@outrodomínio>)
Opção --->Regras de mascaramento
Adicionar
[ ] esta regra está ativa De: Original : De: Novo :
(Você pode definir regras de transformação simples que serão aplicadas a todos os emails
enviados pelo sendmail. No geral, você especifica um De: e como este De: deve ser convertido.)
Opção --->Domínio Virtual de Email
Adicionar
Domínio Virtual : Destino de retorno : Alocar UID de : Limitar a caixa do usuário para (kb): [ ] Match User full name Filter program + args (opc): Arquivos de Aplelidos:
Apelidos opcionais
(Domínios virtuais de email são um jeito de se gerenciar listas independentes de usuários no mesmo servidor. Cada domínio virtual tem seu próprio arquivo de senhas, seu próprio diretório de email e seu próprio arquivo de apelidos. Para cada domínio virtual de email, o Configurador Linux irá definir:
Para adicionar o módulo do configurador do Sendmail
Arquivos de controle e sistema->Configurar os módulos do Configurador Linux
Escolha a opção:
mailconf [X] configuração do servidor de mail (Sendmail)
Peça pela opção aceitar e fechar.
Em:
Ambiente de Rede-> Sendmail - sistema de envio de emails
Nas opções de básico, entre na opção:
Informações básicas
Veja as opções: (Cada linha, está comentada de suas funções)
#Apresentar seu sistema como : domínio # [X]Aceitar email para domínio #Servidor de email : #Roteador de email : #Protocolo do roteador de email : smtp #---------------------------------------------------------- (Mesmo que o email venha de máquinas diferentes de sua empresa, você pode querer esconder esse fato e apresentar os emails como se eles tivessem vindo de apenas uma máquina ou domínio. Se você está configurando o servidor principal de uma empresa, você deve selecionar aceitar email para dominio. No Servidor de email, coloque a máquina+domino que será o servidor de email, e em protocolo a mesma máquina. Se sua configuração for simples deixe em branco) #-------------------funcionalidades--------------------------- # [ ] confirmar nome completo # do usuário # [X] Ativar controle de envio # (spammers) # [ ] usar RealTime Blackhole List (RBL) # [ ] Habilitar o comando VERIFY SMTP # [ ] Habilitar o comando EXPN SMTP #
#------------------------entrega------------------------------- # #Tamanho máximo das mensagens: ( )sem limite ____________ # [X] Não tentar enviar # imediatamente #Processar consulta a cada(min): ( ) manual 1 # [ ] Usar o shell especial smrsh #Máx de destinatários por msg. (o) Padrões _____________ (Habilite a opção de Ativar controle de envio, evitando assim que usem o servidor smtp para spam. No tamanho das mensagens coloque o valor máximo que as mensagens irão ter. na próxima opção evita que o sendmail envie imediatamente as mensagens, e na opção seguinte qual será o tempo de intervalo de envio.) #_-------------------Funcionalidades por DNS--------------- # [ ] Esperar pelo DNS # [ ] Não usar DNS (O Sendmail faz um uso pesado do DNS. Máquinas sem conexão direta com a Internet (mesmo atrás de um firewall) podem querer desativar o uso do DNS. Por outro lado, máquinas com uma conectividade normal do DNS devem forçar o uso do DNS) #-------------------Diversos--------------------------- # [X] Não usar batch para email UUCP #Tamanho máx para mensagens UUCP: 20000 #Entrega Local para usuários : root #Não mascara origem de: : root #Usuários Autorizados : root daemon uucp #Roteamento especial db. : [ ] Ativo #Roteamento especial formato db.: hash #Agente de entrega local : [ ]Suporte a Cliente Bogus(HELO) (Quando usa-se UUCP repetidamente, as mensagens são normalmente requisitadas e entregues em intervalos regulares. Marque para processá-las imediatamente, recomendado para tráfego pouco intenso) Entrega para usuários locais: Coloque o nome dos usuários para quem quer ignorar a definição de Servidor de email. As mensagens sempre serão guardadas localmente para estes usuários. Essa funcionalidade é normalmente usada para pseudo-usuários administrativos (root por exemplo). A opção não mascara usa-se para saber qual o usuário e de qual máquina ele mandou. O Agente de entrega refere-se a utilitários de entrega, ex: Procmail. use a opção deixar o linuxconf localizar. Deixe o resto em branco) #--------------------Apelidos do domínio-------------------- # Apelidos para o seu sistema: ( Coloque nesta opção outros domínios que o sr. quer que seu sistema aceite)
Confirme. Para uma configuração básica do Sendmail, só os primeiros itens são necessário, com isso seu sistema já estará trabalhando, faltando apenas descomentar o pop no intetd e startar o inet e o sendmail. A seguir, instruções das outras opções do Sendmail: Opção ---> Roteamento especial (domínio) -----> Adicionar #-------------------------------------------------- #Destino : #Repetidor : # [ ]Gerenciar subdomínio da mesma forma #Transporte : (Em muitos sistemas, é útil habiltar para informar ao sendmail qual a rota de envio das mensagens) #--------------------------------------------------- Opção --->Roteamento complexo (usuário) -------> Adicionar #-------------------------------------------------- # [ ] esta regra está ativa #Para: Original : #Para: Novo : #Reenviar para servidor(opc) : #Transporte : smtp #Comentário : (Serve para apontar um email de usuário@dominio para outrosusário@outrodomínio) Opção --->Regras de mascaramento -------> Adicionar #-------------------------------------------------- # [ ] esta regra está ativa #De: Original : #De: Novo : #Comentário : #-------------------------------------------------- (Você pode definir regras de transformação simples que serão aplicadas a todos os emails enviados pelo sendmail. No geral, você especifica um De: e como este De: deve ser convertido.) Opção --->Domínio Virtual de Email -------> Adicionar #---------------------------------------------------------- #Domínio Virtual (fdqn) : #-----------------Informações básicas---------------------- #Destino de retorno (opc) : #Alocar UID de :
#Limitar a caixa do usuário para (k): (o) Sem limite ______ #-------------------Funcionalidades------------------------ #Número máximo de usuários : (o) Sem limite ______ # [ ] Iguais ao nome completo #Filtro programa + arg (opc) : #Travar domínio [ ] Mails que chegam são rejeitados # [ ] Usuários não podem resgatar suas mensagens #--------------Arquivos de apelidos extra------------------ #Caminho do arquivo (absoluto) : #-------------------Apelidos do domínio-------------------- # # (Domínios virtuais de email são um jeito de se gerenciar listas independentes de usuários no mesmo servidor. Cada domínio virtual tem seu próprio arquivo de senhas, seu próprio diretório de email e seu próprio arquivo de apelidos. Para cada domínio virtual de email, o Configurador Linux irá definir: * /etc/vmail/passwd.domínio_virtual * /etc/vmail/shadow.domínio_virtual * /etc/vmail/aliases.domínio_virtual * /var/spool/vmail/domínio_virtual/ * /vhome/domínio_virtual/ onde domínio_virtual é um domínio, como foo.com.br por exemplo.) Opção --->Apelidos Para usuário -------> Adicionar #-------------------------------------------------- (Nesta opção definimos apelidos para os usuários ex: Usuário - Teste@conectiva e queremos que o mesmo tenha um outro email: teste2@conectiva. Usamos o apelido para acrescentar o teste2, e o usuário receberá as mensagens enviadas para teste2. Pode ser usada para pequenas listas de mail.)
E por fim, peça a opção gerar o arquivo CF. Após esta criação, saia do configurador linux e edite o inetd.conf para habilitar as funções de correio:
[root@localhost]# cd /etc [root@localhost]# mcedit inetd.conf
From: root <root@localhost> Message-Id: <200007281411.LAA02580@localhost> To: [email protected] Subject: Teste teste de dominio virtual de email [root@localhost]#
ESTOU RECEBENDO UMA MENSAGEM DE ERRO DE RELAY DENIED. COMO RESOLVER?
Este erro se deve à máquina utilizada para enviar e-mail não ter permissão de RELAY, ou seja,
transmitir a mensagem via seu servidor de e-mail.
Para resolver este problema, realize os seguintes passos para dar permissão a estas máquinas:
Entre no linuxconf:
[root@localhost]# linuxconf
Entre em Ambiente de rede-> Sendmail - sistema de envio de emails->repetir para por IP ->
Adicionar
Coloque o IP da máquina ou da rede que deseja-se habilitar o RELAY.
Depois saia do linuxconf ativando as mudancas e reinicialize o servico sendmail:
O arquivo do sendmail.cf já foi criado, agora basta somente você adicionar os usuários
de email, ou seja, abrir uma conta só de email, use linuxconf e crie uma conta. Depois de
criado esta nova conta de email você precisa configurar mais algumas coisas para que o
cliente possa usar o servidor de email para mandar,[RELAY] as mensagens. Nestas
configurações somente pessoas, domains ou IPs autorizados poderão mandar email,
evitando que terceiros não autorizados usem seu servidor de email para SPAM.
Edite o arquivo /etc/sendmail.cw para que o sendmail funcione com a sua rede interna:
[root@localhost]# mcedit /etc/sendmail.cw # sendmail.cw - include all aliases for your machine here. suaempresa.com.br RELAY ---> Seu Domain Name aqui. 200.200.221 RELAY ---> O IP da sua rede interna aqui localhost.localhost RELAY
Se o sendmail.cw não for configurado, você vai receber uma mensagem de RELAY
DENIED. Configurado o sendmail.cw o segundo passo seria criar o arquivo relay-domains.
Coloque o domain name da sua empresa, e o IP da sua rede interna:
Primeiro, vamos configurar o Sendmail, o mesmo pode ser configurado de várias formas, como
m4, linuxconf, etc. Neste documento, iremos configurar utilizando o linuxconf:
Abra o linuxconf
[root@localhost]# linuxconf
Entre na parte:
---->Ambiente de Rede ------> Sendmail - sistema de envio de e-mails
Nas opções de básico, entre na opção:
--------> Informações básicas
E deixe configurado da seguinte forma:
#-------------------------------------------------------------------------- #Apresentar seu sistema como : [seu servidor] # [X]Aceitar email para [domínio] #Servidor de email :[nome_do_servidor_local] #Roteador de email : #Protocolo roteador de email : smtp #-------------------funcionalidades----------------------------------------- # [ ] confirmar nomes completos # de usuários # [X] Ativar controle de envio # (spammers) #Tamanho máximo das mensagens:( )no limite ____________ # [*] Não tentar enviar # imediatamente #Processar consulta a cada(min):( ) manual 1 # ( ) Usar a shell especial smrsh #Maximum recipients per msg (o) Defaults _____________ -----------------------------------------------------------------------------
Confirme, e entre agora no menu:
Opção --->Regras de mascaramento -------> Adicionar #--------------------------------------------------------------------------- # [*] esta regra está ativa #De: Original :[email_interno] #De: Novo :[email_externo] #Comentário : #---------------------------------------------------------------------------
Desta forma, será garantido que seus email sairão com um endereço para reply válido, que será
sua conta no provedor.
Crie uma regra para cada usuário que envie mails para a internet.
Confirme e peça para gerar o arquivo de sendmail.cf
Saia do linuxconf, agora vamos configurar quais máquinas poderão enviar e_mail pelo seu
servidor, e evitar que outros utilizem seu servidor durante a conexão:
Edite o arquivo /etc/sendmail.cw para que o sendmail funcione com a sua rede interna:
[root@localhost]# mcedit /etc/sendmail.cw
# sendmail.cw - include all aliases for your machine here. suaempresa.com.br RELAY ---> Seu Domain Name aqui. 200.200.221 RELAY ---> O IP da sua rede interna aqui localhost.localhost RELAY
- Se o sendmail.cw não for configurado, você vai receber uma mensagem de RELAY DENIED.
Configurado o sendmail.cw o segundo passo seria criar o arquivo relay-domains.
Coloque o domain name da sua empresa, e o IP da sua rede interna:
[root@localhost]# mcedit /etc/relay-domains
192.168.0 RELAY -->seu ip interno de rede domain.com.br RELAY -- nome de seu servidor
OBS: Os espaços entre o ip e a palavra Relay são TABs, caso contrário, seu arquivo não
funcionará.
Salve, e edite o inetd.conf para habilitar as funções de correio:
[root@localhost]# cd /etc [root@localhost]# mcedit inetd.conf
Pronto, nosso servidor de email já está operacional, agora crie os usuários internos que terão
conta de email, uma maneira simples é com o comando adduser, proceda da seguinte forma:
[root@localhost]# adduser [usuario]
grave uma senha para o usuário:
[root@localhost]# passwd [usuario]
Verifique se seu servidor está operacional, configurando o leitor de email da estação, colocando as informações do usuário, e a parte de servidores pop3 e smtp da seguinte forma:
Mande uma mensagem para seu próprio usuário local , e verifique que o sr. está recebendo.
Configurando o Fetchmail
Agora, vamos pegar os e-mails da internet, para isso utilizamos o fetchmail:
O primeiro passo é criar um arquivo .fetchmailrc no home do usuário que fará este serviço.
A estrutura do arquivo é algo parecido com o exemplo abaixo:
#----início do arquivo .fetchmailrc -------------------------- set logfile "/var/log/fetchmaillog" set postmaster ""
set daemon 123 set bouncemail poll [provedor_internet] proto POP3 user [usuário] password "[senha]" is [usuário_local] here #--- fim do arquivo -------------------------------------------
A opção set daemon é a que será utilizada para os intervalos de checagem dos emails, o valor é
em segundos.
A opção set logfile é para criar um arquivo de log que será muito útil.
A linha que inicia com o pool é para baixar os emails de seu provedor no lugar da expressão
[provedor_internet] coloque o endereço do servidor pop de seu provedor em [usuário] e [senha]
coloque a conta com a senha da conta a internete na expressão [usuário_local] coloque quem é
o usuário de seu servidor.
Crie quantas forem necessárias.
Agora, é necessário rodar o fetchmail para que ele baixe as mensagens de seu provedor e envie
para seu servidor local para que seus usuários possam pegar as mensagens.
Uma maneira simples é agendar no crontab do usuário que executa o fetchmail, e informa de
quanto em quanto tempo o fetchmail será rodado. (para isso tire a opção set daemon de sua
configuração.
Outra forma, é colocar o fetchmail direto para acesso, colocando-o como daemon, para isso
execute no prompt:
[root@localhost]# fetchmail
A segunda parte chama o procmail, que é filtro, para o caso de duas pessoas internas utilizarem
o mesmo mail externo, como no caso de três vendedores utilizarem o mail externo
[email protected], assim é pedido para quem quiser enviar um mail para um dos
vendedores coloque no subject por exemplo:
Para o vendedor1.
Assim precisamos criar um arquivo procmailrc no home do usuário que chama o fetchmail.
Configurando o Procmail
O arquivo de configuração é algo parecido com:
-----------Ínicio do arquivo .procmail ------------- PATH=/bin:/usr/bin:/sbin:/usr/sbin:/usr/X11R6/bin INBOX=/home/[usuário]/mail/INBOX MAILDIR=/home/[usuário]/mail DEFAULT=$MAILDIR/INBOX LOGFILE=var/log/procmaillog :0 * ^Subject:.*vendedor1* ! [email protected] :0 * ^Subject:.*vendedor2* ! [email protected] # Este exemplo copia que contenham no Subject a palavra # vendedor1 ou 2 , e fará um bounce (repassará) para o # mail interno de cada vendedor. :0 * ^To:[email protected] ! [email protected] # Esta última regra é no caso de alguma mensagem não ser # pega pelos filtros acima seja mandada para uma conta denominada geral@. # É necessário que alguém verifique esta conta, para dar destina a estas # mensagens. #no final do arquivo coloque estas linhas: :0 $INBOX
Pronto, agora temos uma solução de servidor de email interno funcionando, bastará configurar
no seu script por discagem por demanda chamar o comando:
sendmail -q
Para que a cada conexão, sua fila de emails a serem enviados seja despachada.
Agora basta que seus usuários baixem as contas recebidas que estão no spool do seu servidor
local. E para mandarem, bastará digitar a mensagem, e mandá-las para o servidor local, que
este ao receber o comando sendmail -q irá despachar os mesmo para a internet.
Tudo o que está sendo executado e transmitido pelo sendmail pode ser verificado no arquivo de
log maillog, que geralmente fica em :
/var/log/mailog
Do fetchmail o log é gravado em:
/var/log/fetchmailog
e do Procmail em:
/var/log/procmaillog
Verifique estes arquivos para ter certeza que tudo funciona de acordo, ou no caso de problemas,