Às vezes, no entanto, tudo o que você precisa fazer é enviar uma mensagem simples apenas de texto, e você nem sempre pode iniciar um aplicativo da GUI ou fazer login em uma interface do webmail para fazer o trabalho. Em tais situações, é útil saber como enviar e -mail da linha de comando Linux, e este artigo explica como fazer exatamente isso.
Antes de começarmos
Antes de descrevermos as maneiras mais inteligentes de enviar email da linha de comando Linux, o que você pode esperar aprender lendo este artigo:
Você vai aprender Para enviar mensagens de e -mail através do servidor SMTP do seu provedor de e -mail para qualquer endereço de email.
Você não vai aprender Como configurar seu servidor de e -mail e usá -lo para enviar mensagens de email diretamente.
Por que não? Porque ninguém aceitaria e -mails enviados do seu servidor de e -mail de qualquer maneira. Como você sabe, o spam é um grande problema quando se trata de e -mail, e praticamente todos os provedores de serviços de e -mail e servidores de correio agora incluem pelo menos proteção básica de spam que faz com que todos os e -mails de fontes duvidosas sejam rejeitadas.
Um usuário ávido do Linux com um servidor de e -mail DIY é considerado uma fonte duvidosa de email. Além disso, a maioria dos provedores de serviços de internet bloqueia a porta 25, que é a porta padrão usada para conexões SMTP, para que você provavelmente nem seria capaz de enviar mensagens em primeiro lugar.
Em vez de passar por todo o trabalho de fazer um servidor de e -mail doméstico funcionar, é muito mais fácil usar um serviço de email como o Gmail, que usaremos para este artigo.
Se você ainda não o fez, faça login na sua conta do Gmail e permita o acesso IMAP da guia de encaminhamento e POP/IMAP nas configurações. Você também deve permitir aplicativos que usam tecnologia de login menos segura.
Método #1: Mutt
Mutt é um venerável cliente de e -mail. Foi criado em 1995 por Michael Elkins, e vem recebendo atualizações a uma taxa constante desde então. Apesar de sua natureza de linha de comando, o Mutt suporta muitos recursos úteis, incluindo macros do teclado, PGP/MIME, encadeamento de mensagens, anexos e muito mais. Você pode usá -lo com qualquer serviço de email que forneça acesso POP3 ou IMAP.
Primeiro, você precisa instalar o MUTT nos repositórios da sua distribuição:
$ sudo apt install mutt
Então você pode lançar o Mutt:
$ mutt
Você será solicitado a criar um diretório de email. Escolha "Sim" para criá -lo. Mutt deve iniciar e dizer que nenhuma caixa de correio está aberta. Agora que você confirmou que Mutt está funcionando, é hora de criar alguns diretórios básicos e o principal arquivo de configuração, chamado MutTrc.
$ mkdir -p ~//.Mutt/cache/cabeçalhos
$ mkdir ~/.mutt/cache/corpos
$ touch ~//.Mutt/Certificados
$ touch ~//.mutt/muttrc
Agora, abra o arquivo de configuração em seu editor de texto favorito e copie e cole a seguinte configuração (altere as configurações padrão para aqueles que correspondem à sua conta de email do Gmail):
# Smtp
set smtp_url = "smtp: // nome de usuá[email protected]: 587/"
Definir smtp_pass = $ imap_pass
Definir ssl_force_tls = sim
# IMAP
Definir imap_user = nome de usuá[email protected]
Definir imap_pass = senha
Definir SpoolFile = IMAPS: // IMAP.Gmail.com/caixa de entrada
Definir pasta = IMAPS: // IMAP.Gmail.coma
Set Record = "IMAPS: // IMAP.Gmail.com/[gmail]/enviado correio "
Set adiado = "IMAPS: // IMAP.Gmail.com/[gmail]/rascunhos "
Definir mBox = "IMAPS: // IMAP.Gmail.com/[gmail]/All Mail "
Definir header_cache = "~//.Mutt/cache/cabeçalhos "
Definir message_cachedir = "~//.mutt/cache/corpos "
Definir certificado_file = "~//.Mutt/Certificados "
# EDITOR
set editor = "nano"
Agora você pode lançar o Mutt, e ele deve buscar automaticamente seus e -mails para você. Para enviar sua primeira mensagem de e -mail da linha de comando, pressione “M” no seu teclado. Escolha não recordar uma mensagem adiada e inserir o endereço de e -mail do destinatário, o assunto da mensagem de email e, finalmente, o corpo da mensagem.
Antes de Mutt enviar a mensagem de email, ele permitirá que você a modifique e anexe um arquivo. Depois de ficar feliz com isso, você pode pressionar "y" para enviá -lo. É assim que é fácil enviar um e -mail da linha de comando Linux!
Método #2: AERC
Provavelmente não vai surpreender você aprender que Mutt não é o único cliente de email da linha de comando para Linux, embora seja certamente o mais popular. Embora estivesse além do escopo deste artigo para descrever todos os clientes de email da linha de comando para Linux, há mais dois clientes que queremos que você conheça, começando com a AERC.
Projetado para ser eficiente e extensível, o AERC traz para o suporte da tabela para várias contas, o Keybindings de estilo Vim, um navegador interativo da Web do terminal capaz de renderizar e-mails html e muito mais.
O melhor de tudo é que o AERC é consideravelmente mais fácil de configurar do que o vira -lata, mas há uma chance de que não seja incluído nos repositórios da sua distribuição. Nesse caso, você pode compilá -lo seguindo as instruções sobre as instruções oficiais.
Quando você tem o AERC instalado em seu sistema, você pode iniciá -lo usando o comando "aerc". Aerc inclui um assistente de configuração útil para ajudá-lo a configurar sua conta-não precisa editar arquivos de configuração manualmente!
Depois de terminar de inserir informações básicas na conta e definir algumas configurações básicas, você pode ler o tutorial agrupado ou ir direto para sua caixa de entrada.
Para compor uma nova mensagem, tudo o que você precisa fazer é pressionar Shift + C.
Método 3: Swaks
Para enviar e -mail da linha de comando Linux da maneira mais inteligente possível, você precisa pensar fora da caixa e usar ferramentas de software de maneiras que elas não pretendiam ser usadas. O aplicativo Swaks é um testador de transações SMTP para todos os fins que pode ser usado para enviar mensagens de e-mail através do Gmail e outros provedores.
Comece instalando -o como faria com qualquer outro aplicativo:
$ sudo apt install Swaks
Agora, digite o seguinte comando (inclua seu próprio endereço do Gmail) para testar sua conexão:
$ swaks -t [email protected] -s smtp.Gmail.com: 587 -tls -a login [Enter]
Você será solicitado a inserir seu nome de usuário do gmail (seu endereço de e -mail) e sua senha. Você deve receber um endereço de e -mail de si mesmo, confirmando que o teste foi bem -sucedido. Para enviar uma mensagem de e -mail real, use a seguinte sintaxe:
$ swaks -para caixa de [email protected] -s smtp.Gmail.com: 587 -tls -au-AP --Anexar -d ./correspondência.TXT
É assim que você pode enviar uma mensagem de e -mail usando swaks com um único comando de terminal.
Método 4: SSMTP
O SSMTP é um programa de entrega de email destinado a entregar e -mails de um computador para um hub de e -mail (servidor SMTP). Isso significa que você pode usá -lo para enviar uma mensagem de e -mail para outra pessoa, mas você não pode usá -lo para receber uma mensagem de e -mail enviada por outra pessoa.
Você pode instalar o SSMTP instalando o pacote correspondente a partir de repositórios:
$ sudo apt install ssmtp
A configuração é feita editando o/etc/ssmtp/ssmtp.Configuration Arquivo de Configuration:
# O usuário que recebe todos os e -mails (uid < 1000, usually the admin)
raiz = nome de usuá[email protected]
# O servidor de email (onde o e -mail é enviado), a porta 465 ou 587 deve ser aceitável
# Veja também https: // suporte.Google.com/correio/resposta/78799
MailHub = Smtp.Gmail.com: 587
# O endereço de onde o e -mail parece vir para a autenticação do usuário.
reescritosaMain = gmail.com
# O nome do host completo. Deve ser formado corretamente, o nome de domínio totalmente qualificado ou o gmail rejeitará a conexão.
hostName = yourlocalhost.SeulocalDomain.tld
# Use SSL/TLS antes de iniciar a negociação
Tls_ca_file =/etc/ssl/certs/ca-certificados.Crt
Utetls = sim
UsestartTls = sim
# Usuário senha
AuthUser = nome de usuário
AuthPass = senha
AuthMethod = login
# Email 'do cabeçalho pode substituir o domínio padrão?
FromLineOverRide = Sim
Para enviar uma mensagem de e-mail, você precisa instalar o pacote MailUtils (Systems Based Systems) ou Mailx (Systems baseado em RHEL) para usar o comando Mail para passar sua mensagem de e-mail para o SSMTP que ele pode entregá-lo ao Gmail. Assim:
$ echo -e "Assunto: este é o sujeito \ n \ \ \ ntis é o corpo" | Usuário de [email protected]
Método 5: telnet
O último método que queremos ver é o mais nerd de todos, mas pode ser útil em algum momento da sua vida, então pelo menos estar ciente de sua existência é bom. Este método depende do Telnet, um protocolo cliente-servidor usado para estabelecer uma conexão apenas de texto remoto em uma rede.
O que é ótimo nesse método é que um cliente Telnet provavelmente já está instalado em sua distribuição Linux. O que não é tão grande é que há muitas etapas para passar. Como estamos usando o Gmail para os fins deste artigo, você precisa garantir que o cliente da Telnet suporta a criptografia SSL:
$ sudo apt install telnet-ssl
Você pode iniciar seu cliente Telnet e conectá -lo ao servidor SMTP do Gmail:
$ Telnet -z SSL SMTP.Gmail.com 465
Como seria indelicado não nos apresentar, você pode cumprimentar o servidor assim:
Helogoogle Helogogle
Se você recebeu uma resposta positiva, pode prosseguir com a autenticação:
AUTH LOGIN
Primeiro, digite seu nome de usuário codificado na base64 e depois digite sua senha, também codificada no base64. O servidor SMTP deve responder com “334 UGFZC3DVCMQ6” cada vez.
Agora é hora de especificar seu endereço de e -mail:
MAIL DE:
Em seguida, especifique o destinatário:
RCPT para:
Por fim, diga ao servidor SMTP que deseja escrever um email:
DADOS
Agora você pode entrar no assunto do seu e -mail e pressionar Enter para confirmar. Prossiga com o corpo do correio e pressione Enter para confirmar. Para fechar sua mensagem de e -mail, digite:
.
Você deve ver uma mensagem de confirmação que se parece: 250 2.0.0 OK 1630506266 N10SM56478EJK.86 - GSMTP
Digite o seguinte comando para encerrar sua conexão e enviar o email:
DESISTIR
Conclusão
Está enviando mensagens de email da linha de comando Linux impraticável? Talvez, mas você nunca sabe quando essa habilidade será útil. Mesmo se você nunca usar bem, pelo menos pode se sentir bem consigo mesmo, sabendo que se tornou um pouco mais avançado como usuário do Linux.