introdução
Postfix é um popular agente de transferência de E-Mail de código aberto (MTA) que pode ser usado para encaminhar e entregar e-mail em um sistema Linux. Estima-se que cerca de 25% dos servidores públicos de correio na internet executam Postfix.
neste guia, vamos ensiná-lo a se levantar e correr rapidamente com Postfix em um servidor Ubuntu 16.04.
pré-requisitos
para seguir este guia, deverá ter acesso a um utilizador não root com sudo
privilégios. Podes seguir o nosso Ubuntu 16.,04 guia de configuração inicial do servidor para criar o utilizador necessário.
A fim de configurar corretamente o Postfix, você precisará de um nome de domínio totalmente qualificado apontado no seu servidor Ubuntu 16.04. Você pode encontrar ajuda na configuração do seu nome de domínio com DigitalOcean seguindo este guia. Se você planeja aceitar o e-mail, você terá que se certificar de que você tem um registro MX apontando para o seu servidor de E-mail também.
para os propósitos deste tutorial, vamos assumir que você está configurando uma máquina que tem a FQDN de mail.example.com
.,
Passo 1: Instalar o Postfix
o Postfix está incluído nos repositórios predefinidos do Ubuntu, por isso a instalação é incrivelmente simples.
para iniciar, actualize o seu ID local
cache de pacotes e, em seguida, instale o software. Estaremos passando oDEBIAN_PRIORITY=low
variável ambiental em nosso comando de instalação para responder a avisos adicionais:
- sudo apt-get update
- sudo DEBIAN_PRIORITY=low apt-get install postfix
Use as seguintes informações para preencher o seu solicita corretamente para seu ambiente:
- tipo Geral de configuração de correio?,: Para isso, vamos escolher o Site da Internet, uma vez que isso corresponde às nossas necessidades de infra-estrutura.
- System mail name: este é o domínio de base usado para construir um endereço de E-mail válido quando apenas é dada a parte da conta do endereço. Por exemplo, o nome do host do nosso servidor é
mail.example.com
, mas nós provavelmente deseja definir o sistema de nome de email paraexample.com
assim que é dado o nome de usuáriouser1
, Postfix irá utilizar o endereço de.,
- root and postmaster mail recipient: This is the Linux account that will be forwarded mail addressed to
root@
andpostmaster@
. Usa a tua conta principal para isto. No nosso caso, sammy. - outros destinos para os quais aceitar o correio: isto define os destinos de correio que esta instância Postfix irá aceitar. Se você precisar adicionar quaisquer outros domínios que este servidor será responsável por receber, adicione estes aqui, caso contrário, o padrão deve funcionar bem.
- forçar as actualizações sincronizadas na fila de correio?,: Uma vez que você provavelmente está usando um sistema de arquivos journaled, não aceitar aqui.
- Redes Locais: esta é uma lista das redes para as quais o seu servidor de E-mail está configurado para transmitir as mensagens. O padrão deve funcionar para a maioria dos cenários. Se você optar por modificá-lo, certifique-se de ser muito restritivo em relação à gama de rede.limite de tamanho da caixa de correio: isto pode ser usado para limitar o tamanho das mensagens. Definir para ” 0 ” desactiva qualquer restrição de tamanho.,
- extensão de endereço Local: este é o carácter que pode ser usado para separar a parte regular do endereço de uma extensão (usado para criar nomes alternativos dinâmicos).
- protocolos de Internet para usar: Escolha se deve restringir a versão IP que o Postfix suporta. Vamos escolher “todos” para os nossos propósitos.
para ser explícito, estas são as definições que iremos usar para este guia:
Se necessitar de voltar a ajustar estas definições, poderá fazê-lo escrevendo:
- sudo dpkg-reconfigure postfix
as instruções serão pré-povoadas com as suas respostas anteriores.,
Quando você terminar, podemos agora fazer um pouco mais de configuração para configurar o nosso sistema como gostaríamos.
Passo 2: Ajustar a configuração do Postfix
de seguida, podemos ajustar algumas configurações que o pacote não nos pediu.para começar, podemos definir a caixa de correio. Vamos usar o formato Maildir, que separa as mensagens em arquivos individuais que são então movidos entre diretórios com base na ação do Usuário. A outra opção é o formato mbox (que não vamos cobrir aqui) que armazena todas as mensagens dentro de um único arquivo.,
iremos definir a variável home_mailbox
variável para que irá criar uma estrutura de directórios sob esse nome dentro da pasta pessoal do utilizador. O comando postconf
pode ser usado para pesquisar ou definir configurações de configuração. Configurar home_mailbox
digitando:
- sudo postconf -e 'home_mailbox= Maildir/'
em seguida, podemos definir a localização do virtual_alias_maps
tabela. Esta tabela mapeia contas de E-mail arbitrárias para contas do sistema Linux. Vamos criar esta tabela em /etc/postfix/virtual
., Mais uma vez, podemos usar o comando postconf
comando:
Passo 3: endereços de correio para contas Linux
a seguir, podemos configurar o ficheiro de mapas virtuais. Abra o ficheiro no seu editor de texto:
- sudo nano /etc/postfix/virtual
a tabela de mapas de nomes alternativos virtuais usa um formato muito simples. À esquerda, você pode listar todos os endereços que você deseja aceitar e-mail para. Depois, separado por espaços em branco, digite o usuário Linux que você gostaria que o correio entregue.,
Por exemplo, se você gostaria de aceitar e-mail em: e
e gostaria de ter esses e-mails entregues para o
sammy
usuário do Linux, você pode configurar o seu arquivo como este:
[email protected] [email protected] sammy
Depois de ter mapeado todos os endereços para o servidor apropriado contas, salve e feche o arquivo.,
podemos aplicar o mapeamento escrevendo:
- sudo postmap /etc/postfix/virtual
Reinicie o Postfix processo para ter certeza de que todos os nossos alterações foram aplicadas:
- sudo systemctl restart postfix
Passo 4: Ajustar o Firewall
Se você estiver executando o firewall UFW, conforme configurado no servidor inicial do guia de configuração, nós vamos ter para permitir uma exceção para o Postfix.
pode permitir ligações ao serviço escrevendo:
- sudo ufw allow Postfix
o componente do servidor Postfix está instalado e pronto. Em seguida, vamos configurar um cliente que pode lidar com o correio que o Postfix irá processar.,
Passo 5: Configurar o ambiente para corresponder à localização do correio
antes de instalarmos um cliente, devemos certificar-nos de que a nossa variável ambiental
está configurada correctamente. O cliente irá inspecionar esta variável para descobrir onde procurar o e-mail do Usuário.
Em ordem para a variável a ser definida independentemente de como você acessar a sua conta (por meio de ssh
su
su -
sudo
, etc.) precisamos definir a variável em alguns locais diferentes., Adicioná-lo-emos a /etc/bash.bashrc
e a um ficheiro dentro de /etc/profile.d
para ter a certeza que cada utilizador tem isto configurado.
para adicionar a variável Para esses arquivos, digite:
- echo 'export MAIL=~/Maildir' | sudo tee -a /etc/bash.bashrc | sudo tee -a /etc/profile.d/mail.sh
Para ler a variável em sua sessão atual, pode-fonte /etc/profile.d/mail.sh
arquivo:
- source /etc/profile.d/mail.sh
Passo 6: Instalar e Configurar o Cliente de Email
para interagir com o e-mail a ser entregue, vamos instalar o s-nail
pacote., Esta é uma variante do BSD xmail
cliente, que é rico em recursos, pode lidar com o formato Maildir corretamente, e é principalmente compatível para trás. A versão GNU de mail
tem algumas limitações frustrantes, como sempre salvar o e-mail lido para o formato mbox, independentemente do formato fonte.
Para instalar o s-nail
pacote, digite:
- sudo apt-get install s-nail
Nós deve ajustar algumas configurações., Abra o ficheiro /etc/s-nail.rc
no seu editor:
- sudo nano /etc/s-nail.rc
No fundo do ficheiro, adicione as seguintes opções:
. . .set emptystartset folder=Maildirset record=+sent
isto permitirá ao cliente Abrir mesmo com uma caixa de entrada vazia. Ele também irá definir o diretório Maildir
para o diretório interno folder
e então usar isso para criar um arquivo sent
mbox dentro desse, para armazenar o correio enviado.
Salve e feche o ficheiro quando terminar.,
Passo 7: inicializar a Maildir e testar o cliente
Agora, podemos testar o cliente para fora.
inicializar a estrutura de Directórios
a maneira mais fácil de criar a estrutura Maildir dentro do nosso directório pessoal é enviar – nos um e-mail. Podemos fazer isso com o comando mail
. Dado que o ficheiro sent
só estará disponível uma vez criada a Maildir, devemos desactivar a gravação para o nosso e-mail inicial. Podemos fazer isso passando a opção -Snorecord
.,
envie o e-mail por piping uma string para o comando mail
. Ajustar o comando para marcar o seu usuário de Linux como o destinatário:
- echo 'init' | mail -s 'init' -Snorecord sammy
Você deve obter a seguinte resposta:
OutputCan't canonicalize "/home/sammy/Maildir"
Isto é normal e vai apenas mostrar, durante esta primeira mensagem., Podemos verificar para certificar-se de que o diretório foi criado pelo olhando para o nosso ~/Maildir
diretório:
- ls -R ~/Maildir
Você deve ver a estrutura de diretório foi criado e que um novo arquivo de mensagem é ~/Maildir/new
diretório:
parece Que nosso e-mail foi entregue.,:
- h
Outputs-nail version v14.8.6. Type ? for help."/home/sammy/Maildir": 1 message 1 new>R 1 [email protected] Wed Dec 31 19:00 14/369 init
uma vez que esta mensagem não é muito útil, nós podemos eliminá-lo com d:
- d
Quit para voltar para o terminal digitando q:
- q
Enviar e-Mail com o Cliente
Você pode testar o envio de email digitando uma mensagem em um editor de texto:
- nano ~/test_message
Dentro, introduza algum texto que você gostaria para o email:
Hello,This is a test. Please confirm receipt!
Usando a tag cat
comando, pode enviar a mensagem para o mail
processo., Isto irá enviar a mensagem como seu usuário Linux por padrão. Você pode ajustar o campo “De” com o -r
opção se você deseja modificar esse valor para algo mais:
- cat ~/test_message | mail -s 'Test email subject line' -r from_field_account [email protected]
As opções acima são:
-
-s
: A linha de assunto do e-mail -
-r
: opcional mudar para o campo “De:” o campo do e-mail. Por padrão, o usuário Linux que você está conectado como será usado para preencher este campo. A opção-r
permite-lhe sobrepor isto., -
: a conta para onde enviar o e-mail. Altere esta para ser uma conta válida a que você tem acesso.
pode ver as suas mensagens enviadas dentro do seu clientemail
. Inicie o cliente interativo novamente digitando:
- mail
Depois, exibir as mensagens enviadas, escrevendo:
- file +sent
Você pode gerenciar emails enviados usando os mesmos comandos que você usa para e-mails recebidos.
conclusão
deve agora ter o Postfix configurado no seu servidor Ubuntu 16.04., Gerir servidores de E-mail pode ser uma tarefa difícil para os administradores iniciais, mas com esta configuração, você deve ter a funcionalidade básica de E-mail MTA para começar.
Deixe uma resposta