sendmail-8.17.1

Introdução ao sendmail

O pacote "sendmail" contém um "Mail Transport Agent" ("MTA").

Esse pacote é conhecido por construir e funcionar adequadamente usando uma plataforma LFS 11.3.

Informação do Pacote

Dependências do "sendmail"

Exigidas

OpenLDAP-2.6.4 (cliente)

Recomendadas

Opcionais

ghostscript-10.00.0 (para criar a documentação em "PDF"), Procmail-3.22 (a configuração proposta abaixo exige que o "procmail" esteja presente em tempo de execução) e nph

Observações de Usuário(a): https://wiki.linuxfromscratch.org/blfs/wiki/sendmail

Instalação do sendmail

Antes de construir o "sendmail", crie o(a) usuário(a), grupo e diretório necessários com os seguintes comandos emitidos como o(a) usuário(a) "root":

groupadd -g 26 smmsp                               &&
useradd -c "Processo de Segundo Plano Sendmail" -g smmsp -d /dev/null \
        -s /bin/false -u 26 smmsp                  &&
chmod -v 1777 /var/mail                            &&
install -v -m700 -d /var/spool/mqueue
[Nota]

Nota

Veja-se o arquivo "sendmail/README" da árvore do fonte para informações relativas a vincular pacotes opcionais à construção. Use o exemplo abaixo, que adiciona suporte para "SASL", "StartTLS" ("OpenSSL") e "OpenLDAP", como um ponto de partida. Claro, modifique-o para atender às tuas necessidades específicas.

cat >> devtools/Site/site.config.m4 << "EOF"
APPENDDEF(`confENVDEF',`-DSTARTTLS -DSASL -DLDAPMAP -DHASFLOCK')
APPENDDEF(`confLIBS', `-lssl -lcrypto -lsasl2 -lldap -llber -ldb')
APPENDDEF(`confINCDIRS', `-I/usr/include/sasl')
EOF

Instale o "sendmail" com os seguintes comandos:

cat >> devtools/Site/site.config.m4 << "EOF"
define(`confMANGRP',`root')
define(`confMANOWN',`root')
define(`confSBINGRP',`root')
define(`confUBINGRP',`root')
define(`confUBINOWN',`root')
EOF

sed -i 's|/usr/man/man|/usr/share/man/man|' \
    devtools/OS/Linux          &&

cd sendmail                     &&
sh Build                        &&
cd ../cf/cf                     &&
cp generic-linux.mc sendmail.mc &&
sh Build sendmail.cf

Esse pacote não vem com uma suíte de teste.

Agora, como o(a) usuário(a) "root":

install -v -d -m755 /etc/mail &&
sh Build install-cf &&

cd ../..            &&
sh Build install    &&

install -v -m644 cf/cf/{submit,sendmail}.mc /etc/mail &&
cp -v -R cf/* /etc/mail                              &&

install -v -m755 -d /usr/share/doc/sendmail-8.17.1/{cf,sendmail} &&

install -v -m644 CACerts FAQ KNOWNBUGS LICENSE PGPKEYS README RELEASE_NOTES \
        /usr/share/doc/sendmail-8.17.1 &&

install -v -m644 sendmail/{README,SECURITY,TRACEFLAGS,TUNING} \
        /usr/share/doc/sendmail-8.17.1/sendmail &&

install -v -m644 cf/README /usr/share/doc/sendmail-8.17.1/cf &&

for manpage in sendmail editmap mailstats makemap praliases smrsh
do
    install -v -m644 $manpage/$manpage.8 /usr/share/man/man8
done &&

install -v -m644 sendmail/aliases.5    /usr/share/man/man5 &&
install -v -m644 sendmail/mailq.1      /usr/share/man/man1 &&
install -v -m644 sendmail/newaliases.1 /usr/share/man/man1 &&
install -v -m644 vacation/vacation.1   /usr/share/man/man1

Instale o Guia de Instalação e Operações do "sendmail" com os seguintes comandos:

[Nota]

Nota

Remova "op.pdf" dos comandos "make" e "install" abaixo se você não tiver o "Ghostscript" instalado.

cd doc/op                                      &&
sed -i 's/groff/GROFF_NO_SGR=1 groff/' Makefile &&
make op.txt op.pdf

Agora, como o(a) usuário(a) "root":

install -v -d -m755 /usr/share/doc/sendmail-8.17.1 &&
install -v -m644 op.ps op.txt op.pdf /usr/share/doc/sendmail-8.17.1 &&
cd ../..

Explicações do Comando

cat > devtools/Site/site.config.m4 << "EOF": Isso cria um arquivo de configuração mudando algumas das configurações padrão.

sed ... devtools/OS/Linux: O "site.config.m4" não respeita uma mudança no diretório do manual, de forma que corrija-o nas definições do "OS".

sh Build; sh Build sendmail.cf; sh Build install-cf; sh Build install: o "sendmail" usa um conjunto de comandos sequenciais de construção baseado no "m4" para criar os vários "Makefiles". Esses comandos constroem e instalam o pacote.

for manpage in...;do...;done; install ...: As páginas de manual são instaladas já formatadas e o "man" as exibe um tanto distorcidas. Esses comandos substituem as páginas formatadas por páginas que o "man" consegue exibir adequadamente.

Configurando o sendmail

Arquivos de Configuração

/etc/mail/*

Informação de Configuração

[Nota]

Nota

Certifique-se de que você tenha um nome de domínio totalmente qualificado definido em "/etc/hosts" para o teu sistema antes de continuar.

Crie os arquivos "/etc/mail/local-host-names" e "/etc/mail/aliases" usando os seguintes comandos como o(a) usuário(a) "root":

echo $(hostname) > /etc/mail/local-host-names
cat > /etc/mail/aliases << "EOF"
postmaster: root
MAILER-DAEMON: root

EOF
newaliases

O arquivo de configuração principal do "sendmail", "/etc/mail/sendmail.cf", é complexo e não é destinado a ser editado diretamente. O método recomendado para mudá-lo é o de modificar "/etc/mail/sendmail.mc" e vários arquivos do "m4" e, em seguida, executar o processador de macro "m4" a partir de dentro de "/etc/mail" como segue:

cd /etc/mail &&
m4 m4/cf.m4 sendmail.mc > sendmail.cf

Uma explicação completa dos arquivos a modificar e os parâmetros disponíveis pode ser encontrada em "/etc/mail/README".

Unidade do systemd

Para automatizar a execução do "sendmail" na inicialização, instale a unidade "sendmail.service" inclusa no pacote "" "blfs-systemd-units-20220720":

make install-sendmail
[Nota]

Nota

A opção "-qNm" para o "sendmail", onde "N" é o número de minutos, controla a frequência com que o "sendmail" processará a fila de mensagens. Um padrão de cinco (05) minutos é usado na unidade do "systemd". Usuários(as) individuais de estações de trabalho possivelmente queiram configurar isso para tão baixo quanto um (01) minuto; grandes instalações que lidam com mais mensagens possivelmente queiram configurá-lo mais alto.

Conteúdo

Aplicativos Instalados: editmap, mailstats, makemap, praliases, sendmail, smrsh e vacation; links simbólicos para "/usr/sbin/sendmail": hoststat, mailq, newaliases e purgestat
Bibliotecas Instaladas: Nenhum(a)
Diretórios Instalados: /etc/mail, /usr/share/doc/sendmail-8.17.1 e /var/spool/clientmqueue

Descrições Curtas

editmap

consulta e edita arquivos de mapas do "sendmail"

hoststat

imprime a situação do dispositivo persistente do "sendmail"

mailstats

exibe estatísticas do "sendmail"

mailq

imprime um resumo das mensagens de correio de saída aguardando entrega

makemap

cria arquivos de mapa do "sendmail"

newaliases

reconstrói "/etc/mail/aliases.db" a partir do conteúdo de "/etc/mail/aliases"

praliases

exibe os apelidos atuais do "sendmail"

purgestat

faz com que o "sendmail" limpe (purgue) todas as informações dele de situação do dispositivo

sendmail

é o agente de transporte de mensagens "sendmail"

smrsh

é um "shell" restrito para o "sendmail"

vacation

é uma respostador automático de mensagens eletrônicas