Exim-4.96
      
      
        
          Introdução ao Exim
        
        
          O pacote "Exim" contém um "Mail
          Transport Agent" escrito pela Universidade de Cambridge, lançado
          sob a Licença Pública "GNU".
        
        
          Esse pacote é conhecido por construir e funcionar adequadamente
          usando uma plataforma LFS 11.3.
        
        
          Informação do Pacote
        
        
        
          Transferências Adicionais
        
        
        
          Dependências do "Exim"
        
        
          Exigidas
        
        
          libnsl-2.0.0 e PCRE-8.45
        
        
          Opcionais
        
        
          TDB (alternativa ao
          GDBM, construído no LFS), Cyrus
          SASL-2.1.28, libidn-1.41, Linux-PAM-1.5.2, MariaDB-10.6.12 ou
          MySQL, OpenLDAP-2.6.4, GnuTLS-3.8.0,
          PostgreSQL-15.2, SQLite-3.40.1, um ambiente gráfico,
          Heimdal
          GSSAPI e OpenDMARC
        
        
          Observações de Usuário(a): https://wiki.linuxfromscratch.org/blfs/wiki/exim
        
       
      
        
          Instalação do Exim
        
        
          Antes de construir o "Exim", como
          o(a) usuário(a) "root", você
          deveria criar o grupo e o(a) usuário(a) "exim" os quais executarão o processo de segundo
          plano "exim":
        
        groupadd -g 31 exim &&
useradd -d /dev/null -c "Processo de Segundo Plano Exim" -g exim -s /bin/false -u 31 exim
        
          Configure o "Exim" com os
          seguintes comandos:
        
        sed -e 's,^BIN_DIR.*$,BIN_DIRECTORY=/usr/sbin,'   \
    -e 's,^CONF.*$,CONFIGURE_FILE=/etc/exim.conf,' \
    -e 's,^EXIM_USER.*$,EXIM_USER=exim,'           \
    -e '/# SUPPORT_TLS=yes/s,^#,,'                   \
    -e '/# USE_OPENSSL/s,^#,,'                       \
    -e 's,^EXIM_MONITOR,#EXIM_MONITOR,' src/EDITME > Local/Makefile &&
printf "USE_GDBM = yes\nDBMLIB = -lgdbm\n" >> Local/Makefile &&
        
          Se você quiser adicionar suporte ao "Linux PAM", [então] execute também os
          seguintes comandos:
        
        sed -i '/# SUPPORT_PAM=yes/s,^#,,' Local/Makefile
echo "EXTRALIBS=-lpam" >> Local/Makefile
        
          Construa o "Exim" com o seguinte
          comando:
        
        make
        
          Esse pacote não vem com uma suíte de teste.
        
        
          Agora, como o(a) usuário(a) "root":
        
        
make install                                   &&
install -v -m644 doc/exim.8 /usr/share/man/man8 &&
install -v -d -m755    /usr/share/doc/exim-4.96 &&
install -v -m644 doc/* /usr/share/doc/exim-4.96 &&
ln -sfv exim /usr/sbin/sendmail                 &&
install -v -d -m750 -o exim -g exim /var/spool/exim
       
      
        
          Explicações do Comando
        
        
          sed -e ... >
          Local/Makefile: A maioria das opções de
          configuração do "Exim" é definida
          no "Local/Makefile", que é criado a
          partir do arquivo "src/EDITME". Esse
          comando especifica o conjunto mínimo de opções. As descrições das
          opções estão listadas abaixo.
        
        
          printf ... >
          Local/Makefile: Configurar essas variáveis permite
          usar o "GDBM" em vez do padrão "Berkeley DB". Remova esse comando
          se você tiver instalado "Base de Dados Berkeley-5.3.28".
        
        
          BIN_DIRECTORY=/usr/sbin:
          Isso instala todos os binários e conjuntos de comandos sequenciais
          do "Exim" em "/usr/sbin".
        
        
          CONFIGURE_FILE=/etc/exim.conf: Isso
          instala o principal arquivo de configuração do "Exim" em "/etc".
        
        
          EXIM_USER=exim: Isso
          informa ao "Exim" que, depois que
          o processo de segundo plano não mais precisar de privilégios de
          "root", o processo precisa
          transferir o processo de segundo plano para o(a) usuário(a)
          "exim".
        
        
          SUPPORT_TLS=yes: Isso
          permite suportar conexões "STARTTLS". Se usar essa opção, [então]
          você precisa selecionar se o "OpenSSL" ou o "GnuTLS" será usado (veja-se "src/EDITME").
        
        
          USE_OPENSSL_PC=openssl:
          Isso informa ao sistema de construção para usar o "OpenSSL" e encontrar as bibliotecas
          necessárias com o "pkg-config".
        
        
          #EXIM_MONITOR: Isso adia a
          construção do aplicativo monitor do "Exim", pois ele exige suporte ao "X Window System", comentando-se a linha
          "EXIM_MONITOR" no
          "Makefile". Se você deseja construir
          o aplicativo monitor, [então] omita esse comando "sed" e emita o seguinte comando
          antes de construir o pacote (modifique "Local/eximon.conf", se necessário): "cp exim_monitor/EDITME
          Local/eximon.conf".
        
        
          ln -sfv exim
          /usr/sbin/sendmail: Cria um link para "sendmail" para aplicativos que
          precisam dele. O "Exim" aceitará a
          maioria das opções de linha de comando do "Sendmail".
        
        
          install -v -m750 -o exim -g exim
          /var/spool/exim: Como "/var/spool" é propriedade do
          "root" e essa versão do "exim" elimina os privilégios de
          "root" antecipadamente, para
          executar como usuário(a) "exim",
          ele não consegue criar o diretório "/var/spool/exim". Como solução alternativa, ele é
          criado manualmente.
        
       
      
        
          Adicionando Funcionalidade Adicional
        
        
          Para utilizar alguns ou todos os pacotes de dependências, você
          precisará modificar "Local/Makefile"
          para incluir as diretivas e parâmetros apropriadas para vincular
          bibliotecas adicionais antes de construir o "Exim". O "Local/Makefile" é bastante comentado com
          instruções relativas a como fazer isso. Listadas abaixo estão
          informações adicionais para te ajudar a vincular esses pacotes de
          dependências ou adicionar funcionalidades adicionais.
        
        
          Se você deseja construir e instalar a documentação ".info", [então] consulte 
          https://exim.org/exim-html-4.96/doc/
          html/spec_html/ch04.html#SECTinsinfdoc.
        
        
          Se você deseja construir interfaces do "Exim" para chamar
          logiciário de verificação de vírus e de "spam" diretamente a partir
          de listas de controle de acesso, [então] descomente o parâmetro
          "WITH_CONTENT_SCAN=yes" e revise as
          informações encontradas em https://exim
          .org/exim-html-4.96/doc/html/spec_html/ch45.html.
        
        
          Para usar uma base de dados de estrutura de retaguarda diferente do
          "GDBM", vejam-se as instruções em
          
          https://exim.org/exim-html-4.96/doc/html/spec_html/ch04.
          html#SECTdb.
        
        
          Para funcionalidade "SSL", vejam-se as instruções em 
          https://exim.org/exim-html-4.96/doc/html/spec_html/ch04.html#SECTinctlsssl
          e https://exim.org/exim-html-4.96/doc/html/spec_html/ch42.html.
        
        
          Para a funcionalidade "tcpwrappers", vejam-se as instruções em
          
          https://exim.org/exim-html-4.96/doc/html/spec_html/ch04.html#SECID27.
        
        
          Para informações relativas a adicionar mecanismos de autenticação
          para a construção, vejam-se os capítulos 33—41 de https://exim.org/exim-html-4.96/doc/html/spec_html/index.html
          .
        
        
          Para informações relativas a vincular o "Linux-PAM", consulte as instruções 
          https://exim.org/exim-html-4.96/doc/html/spec_html/ch11.html#SECTexpcond.
        
        
          Para informações relativas a vincular bibliotecas de mecanismo de
          base de dados usadas para pesquisas de nome do Exim, vejam-se as instruções em https://exim.org/exim-html-4.96/doc/html/
          spec_html/ch09.html.
        
        
          Se você deseja adicionar suporte "Readline" ao "Exim" quando invocado no modo “expansão de teste”
          ("-be"), [então] vejam-se as
          informações na seção "-be" de 
          https://exim.org/exim-html-4.96/doc/html/spec_html/ch05.html#id2525974
          .
        
        
          Você possivelmente deseje modificar a configuração padrão e enviar
          arquivos de registro para o "syslog" em vez do diretório padrão
          "/var/spool/exim/log". Vejam-se as
          informações em 
          https://exim.org/exim-html-4.96/doc/html/spec_html/ch-log_files.html.
        
        
          Muitas informações também podem ser encontradas na Wiki do Exim.
        
       
      
        
          Configurando o Exim
        
        
          
            Arquivos de
            Configuração
          
          
            /etc/exim.conf e /etc/aliases
          
         
        
          
            Informação de Configuração
          
          
            Revise o arquivo "/etc/exim.conf" e
            modifique quaisquer configurações para atender às suas
            necessidades. Observe que a configuração padrão assume que o
            diretório "/var/mail" é escrevível
            mundialmente, mas tem o bit "sticky" configurado. Se você quiser
            usar a configuração padrão, [então] emita como o(a) usuário(a)
            "root":
          
          chmod -v a+wt /var/mail
          
            Um arquivo "/etc/aliases" padrão
            (nada além de comentários) é instalado durante a instalação do
            pacote se esse arquivo não existir em seu sistema. Crie os
            apelidos necessários e inicie o processo de segundo plano
            "Exim" usando os seguintes
            comandos:
          
          cat >> /etc/aliases << "EOF"
postmaster: root
MAILER-DAEMON: root
EOF
/usr/sbin/exim -bd -q15m
          
            
            
              Nota
            
            
              Para proteger um arquivo "/etc/aliases" existente, o comando acima
              anexa esses apelidos a ele. Esse arquivo deveria ser verificado
              e os apelidos duplicados removidos, se presentes.
            
           
          
            O comando "/usr/sbin/exim -bd
            -q15m" inicia o processo de segundo plano
            "Exim" com um intervalo de
            quinze (15) minutos no processamento da fila de mensagens. Ajuste
            esse parâmetro para atender aos teus desejos.
          
         
        
          
            Configuração do Linux PAM
          
          
            Se tiver construído o "Exim" com
            suporte ao "Linux PAM", [então]
            você precisa criar um arquivo de configuração "PAM" para fazê-lo funcionar corretamente com
            o BLFS.
          
          
            Emita o seguinte comando como o(a) usuário(a) "root" para criar o arquivo de configuração
            para o "Linux PAM":
          
          cat > /etc/pam.d/exim << "EOF"
# Inicia /etc/pam.d/exim
auth    include system-auth
account include system-account
session include system-session
# Termina /etc/pam.d/exim
EOF
         
        
          
            Conjunto de Comandos
            Sequenciais de Inicialização
          
          
            Para iniciar automaticamente o "exim" na inicialização, instale
            o conjunto de comandos sequenciais de
            iniciação "/etc/rc.d/init.d/exim"
            incluso no pacote "blfs-bootscripts-20230101"
            "":
          
          make install-exim
          
            O script de inicialização também inicia o processo de segundo
            plano "Exim" e despacha um
            processo executor de fila a cada quinze (15) minutos. Modifique o
            parâmetro "-q<time interval>" em
            "/etc/rc.d/init.d/exim", se
            necessário para a tua instalação.
          
         
       
      
        
          Conteúdo
        
        
          
            
              Aplicativos Instalados:
              exicyclog, exigrep, exim, exim-4.96-2,
              exim_checkaccess, exim_dbmbuild, exim_dumpdb, exim_fixdb,
              exim_lock, exim_tidydb, eximstats, exinext, exipick, exiqgrep,
              exiqsumm, exiwhat e, opcionalmente, eximon, eximon.bin e
              sendmail (link simbólico)
            
            
              Bibliotecas Instaladas:
              Nenhum(a)
            
            
              Diretórios Instalados:
              /usr/share/doc/exim-4.96 e
              /var/spool/exim
            
           
         
        
          
            Descrições Curtas
          
          
            
              
              
            
            
              
                | 
                   
                    exicyclog
                   
                 | 
                
                   
                    circula arquivos de registro do "Exim"
                   
                 | 
              
              
                | 
                   
                    exigrep
                   
                 | 
                
                   
                    pesquisa arquivos de registro do "Exim"
                   
                 | 
              
              
                | 
                   
                    exim
                   
                 | 
                
                   
                    é um link simbólico para o processo de segundo plano
                    "MTA" "exim-4.96-2"
                   
                 | 
              
              
                | 
                   
                    exim-4.96-2
                   
                 | 
                
                   
                    é o processo de segundo plano do agente de transporte de
                    mensagens "Exim"
                   
                 | 
              
              
                | 
                   
                    exim_checkaccess
                   
                 | 
                
                   
                    declara se um dado endereço de destinatário a partir de
                    um dado dispositivo é aceitável ou não
                   
                 | 
              
              
                | 
                   
                    exim_dbmbuild
                   
                 | 
                
                   
                    cria e reconstrói bases de dados do "Exim"
                   
                 | 
              
              
                | 
                   
                    exim_dumpdb
                   
                 | 
                
                   
                    escreve o conteúdo das bases de dados do "Exim" na saída gerada padrão
                   
                 | 
              
              
                | 
                   
                    exim_fixdb
                   
                 | 
                
                   
                    modifica dados em bases de dados do "Exim"
                   
                 | 
              
              
                | 
                   
                    exim_lock
                   
                 | 
                
                   
                    tranca um arquivo de caixa de mensagens
                   
                 | 
              
              
                | 
                   
                    exim_tidydb
                   
                 | 
                
                   
                    remove registros antigos de bases de dados do
                    "Exim"
                   
                 | 
              
              
                | 
                   
                    eximstats
                   
                 | 
                
                   
                    gera estatísticas de mensagens a partir de arquivos de
                    registro do "Exim"
                   
                 | 
              
              
                | 
                   
                    exinext
                   
                 | 
                
                   
                    consulta tempos de re tentativa do dispositivo remoto
                   
                 | 
              
              
                | 
                   
                    exipick
                   
                 | 
                
                   
                    seleciona mensagens baseadas em vários critérios
                   
                 | 
              
              
                | 
                   
                    exiqgrep
                   
                 | 
                
                   
                    é um utilitário para listagem seletiva de filas
                   
                 | 
              
              
                | 
                   
                    exiqsumm
                   
                 | 
                
                   
                    produz um resumo das mensagens na fila de mensagens
                   
                 | 
              
              
                | 
                   
                    exiwhat
                   
                 | 
                
                   
                    consulta executando processos "Exim"
                   
                 | 
              
              
                | 
                   
                    eximon
                   
                 | 
                
                   
                    é um conjunto de comandos sequenciais de "shell" de
                    inicialização para "eximon.bin" usado para
                    configurar as variáveis de ambiente exigidas antes de
                    executar o aplicativo
                   
                 | 
              
              
                | 
                   
                    eximon.bin
                   
                 | 
                
                   
                    é um aplicativo monitor que exibe informações atuais em
                    uma janela do "X" e
                    também contém uma interface de menu para as opções de
                    administração de linha de comando do "Exim"
                   
                 |