Capítulo 6. Aplicações de rede

Índice

6.1. Exploradores web
6.1.1. Configuração do explorador
6.2. O sistema de mail (correio electrónico)
6.2.1. Bases dos serviços de mail modernos
6.2.2. A estratégia de configuração de mail para estação de trabalho
6.3. Agente de transporte de mail (MTA)
6.3.1. A configuração do exim4
6.3.2. A configuração do postfix com SASL
6.3.3. A configuração do endereço de mail
6.3.4. Operações MTA básicas
6.4. Agente utilizador de mail (MUA)
6.4.1. MUA básico — Mutt
6.5. O adquiridor de mail remoto e utilitário de reencaminhamento
6.5.1. configuração do getmail
6.5.2. configuração do fetchmail
6.6. Agente de entrega de mail (MDA) com filtro
6.6.1. configuração do maildrop
6.6.2. configuração do procmail
6.6.3. Re-entregar o conteúdo da mbox
6.7. Servidor POP3/IMAP4
6.8. O servidor de impressão e utilitário
6.9. O servidor de acesso remoto e utilitário (SSH)
6.9.1. Bases do SSH
6.9.2. Reencaminhamento de portos para SMTP/POP3 em túnel
6.9.3. Ligar sem palavras-passe remotas
6.9.4. Lidar com clientes SSH alienígenas
6.9.5. Configurar o ssh-agent
6.9.6. Como desligar o sistema remoto em SSH
6.9.7. Depurar problemas no SSH
6.10. Outras aplicações de servidor de rede
6.11. Outros clientes de aplicação de rede
6.12. Os diagnósticos dos daemons do sistema

Após estabelecer a ligação de rede (veja Capítulo 5, Configuração de rede), você pode correr varias aplicações de rede.

6.1. Exploradores web

Existem muitos pacotes de exploradores web para aceder a conteúdos remotos com Hypertext Transfer Protocol (HTTP).

Tabela 6.1. Lista de exploradores web

pacote popcon tamanho tipo descrição do explorador web
iceweasel * V:27, I:48 5725 X Mozilla Firefox sem marca
iceape-browser * V:0.7, I:1.5 103 , , Mozilla sem marca, removido devido a questões de segurança bug#505565
epiphany-browser * V:14, I:36 2025 , , GNOME, HIG compliant, Epiphany
galeon * V:0.6, I:0.9 1776 , , GNOME, Galeon, substituído pelo Epiphany
konqueror * V:5, I:12 3177 , , KDE, Konqueror
w3m * V:24, I:86 1911 texto w3m
lynx * I:19 252 , , Lynx
elinks * V:1.9, I:5 1365 , , ELinks
links * V:2, I:7 1165 , , Links (apenas texto)
links2 * V:0.6, I:3 2972 gráficos Links (gráficos de consola sem X)

6.1.1. Configuração do explorador

Você poderá ser capaz de usar os seguintes strings especiais de URL para alguns exploradores para confirmar as suas definições.

  • "about:"

  • "about:config"

  • "about:plugins"

Debian oferece muitos pacotes com plugins de explorador livres na área de arquivo main os quais podem lidar não apenas com Java (plataforma de software) e Flash mas também com ficheiros MPEG, MPEG2, MPEG4, DivX, Windows Media Video (.wmv), QuickTime (.mov), MP3 (.mp3), Ogg/Vorbis, DVDs, VCDs, etc. Debian também oferece programas de ajuda para instalar pacotes de plugins de explorador não livres nas áreas de arquivo contrib ou non-free.

Tabela 6.2. Lista de pacotes plugin de exploradores

pacote popcon tamanho área descrição
icedtea6-plugin * V:0.9, I:1.8 21 main plugin de Java baseado em OpenJDK e IcedTea
sun-java6-plugin * I:10 NOT_FOUND non-free plugin de Java para o Java SE 6 da Sun (apenas i386)
mozilla-plugin-gnash * I:2 96 main plugin de Flash baseado no Gnash
flashplugin-nonfree * V:1.4, I:21 136 contrib Ajudante de plugin de Flash para instalar o reprodutor de Flash da Adobe (apenas i386, amd64)
mozilla-plugin-vlc * V:2, I:3 181 main Plugin de multimédia baseado no reprodutor de média VLC
totem-mozilla * V:18, I:33 585 main Plugin de multimédia baseado no reprodutor de média Totem do GNOME
gecko-mediaplayer * V:0.8, I:1.1 652 main Plugin de multimédia baseado no MPlayer (GNOME)
nspluginwrapper * V:1.0, I:2 472 contrib Um wrapper para correr plugins i386 do Netscape em arquitectura amd64

[Dica] Dica

Apesar do uso dos pacotes Debian em cima ser mais fácil, os plugins do explorador podem ainda ser adicionados manualmente ao instalar os "*.so" nos directórios de plugins (ex. "/usr/lib/iceweasel/plugins/") e reiniciando os exploradores.

Alguns sites web recusam a ligação baseando-se na string user-agent do seu explorador. Você pode contornar esta situação ao enganar a string user-agent. Por exemplo, você pode fazer isto ao adicionar a seguinte linha em ficheiros de configuração do utilizador como o "~/.gnome2/epiphany/mozilla/epiphany/user.js" ou "~/.mozilla/firefox/*.default/user.js".

user_pref{"general.useragent.override","Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0)"};

Alternativamente, você pode adicionar ou reiniciar esta variável ao escrever "about:config" no URL e clicar com o botão direito no conteúdo mostrado.

[Cuidado] Cuidado

Uma string user-agent enganada pode causar maus efeitos colaterais com o java.

6.2. O sistema de mail (correio electrónico)

[Cuidado] Cuidado

Se você está a configurar um servidor de mail para trocar mail directamente com a Internet, deverá fazer melhor do que ler esta documentação elementar.

[Nota] Nota

Os exemplos seguintes de configuração são válidos apenas para a estação de trabalho móvel típica em ligações de consumidor de Internet.

6.2.1. Bases dos serviços de mail modernos

De modo a conter problemas de spam (correio não desejado nem solicitado), muitos ISPs que disponibilizam as ligações à Internet dos consumidores, estão a implementar contra medidas.

  • O serviço smarthost para os seus clientes enviarem mensagens usa o porto submissão de mensagem (587) especificado em rfc4409 com a palavra-passe (serviço SMTP AUTH) especificada em rfc4954.

  • As ligações SMTP no porto 25 a partir das suas máquinas de rede internas (excepto o servidor de saída de mail do próprio ISP) para a Internet estão bloqueadas.

  • As ligações SMTP no porto 25 ao servidor de mail chegado do ISP a partir de algumas máquinas de redes externas suspeitas estão bloqueadas. (As ligações a partir de máquinas na gama de endereços IP dinâmicos usados pelo dial-up e outras ligações de consumidores de Internet são as primeiras a serem bloqueadas.)

Quando configurar o seu sistema de mail ou resolver problemas de entrega de mail, você deve considerar estas novas limitações.

à luz destas situações e limitações hostis da Internet, alguns ISPs de mail de Internet independentes tais como o Yahoo.com e Gmail.com oferecem o serviço de mail seguro que pode ser acedido a partir de qualquer lugar na Internet usando o Transport Layer Security (TLS) e o seu antecessor, Secure Sockets Layer (SSL).

  • O serviço smarthost para os seus clientes enviarem mensagens usa o porto SMTP/SSL (465) ou o porto de submissão de mensagens (587) com a palavra-passe (serviço SMTP AUTH).

  • O mail de chegada está acessível no porto 995 TLS/POP3 com POP3.

[Cuidado] Cuidado

Não é realista correr um servidor SMTP numa rede de classe de consumidor para enviar mail directamente para a máquina remota. Os mails serão muito provavelmente rejeitados. Você tem de usar algum serviço smarthost oferecido pelo seu ISP de ligação ou ISPs de mail independentes. Para simplicidade, Eu assumo que o smarthost está localizado em "smtp.nome-de-máquina.domínio", requer SMTP AUTH, e usa o porto de submissão de mensagens (587) no texto seguinte.

6.2.2. A estratégia de configuração de mail para estação de trabalho

A configuração de mail mais simples é aquela onde o mail é enviado para o smarthost do ISP e recebido do servidor POP3 do ISP pelo próprio MUA (veja Secção 6.4, “Agente utilizador de mail (MUA)”). Este tipo de configuração é popular com MUA baseado em GUI cheiro de funcionalidades como o icedove(1), evolution(1), etc. Se precisar de filtrar o mail pelos seus tipos, você usa a função de filtragem do MUA. Para este caso, o MTA local (veja Secção 6.3, “Agente de transporte de mail (MTA)”) precisa apenas de fazer entregas locais.

A configuração de mail alternativa é onde o mail é enviado via MTA local para o smarthost do ISP e recebido do POP3 do ISP via adquiridor de mail (veja Secção 6.5, “O adquiridor de mail remoto e utilitário de reencaminhamento”) para a mailbox local. Se você precisar de filtrar o mail pelos seus tipos, use o MDA com filtro (veja Secção 6.6, “Agente de entrega de mail (MDA) com filtro”) para filtrar o mail em caixas separadas. Este tipo de configuração é popular com MUA baseado em consola simples como o mutt(1), gnus(1), etc., apesar de ser possível com qualquer MUA (veja Secção 6.4, “Agente utilizador de mail (MUA)”). Para este caso, o MTA local (veja Secção 6.3, “Agente de transporte de mail (MTA)”) precisa de fazer ambos a entrega ao smarthost e a entrega local. Como as estações de serviço móveis não têm um FQDN válido, você tem de configurar o MTA local para esconder e enganar o nome de mail local real no mail de saída para evitar erros de entrega de mail (veja Secção 6.3.3, “A configuração do endereço de mail”).

[Dica] Dica

Você pode desejar configurar o MUA/MDA para usar Maildir para armazenar as mensagens de email algures sob o seu directório home.

6.3. Agente de transporte de mail (MTA)

Para uma estação de trabalho normal, a escolha popular para Agente de Transporte de Mail (MTA) é ou o pacote exim4-* ou o postfix. A escolha é sua.

Tabela 6.3. Lista de pacotes básicos relacionados com agente de transporte de mail para estação de trabalho

pacote popcon tamanho descrição
exim4-daemon-light * V:61, I:68 1190 Agente de transporte de mail Exim4 (MTA: predefinido em Debian)
exim4-base * V:63, I:70 1486 Documentação do Exim4 (texto) e ficheiros comuns
exim4-doc-html * I:0.4 3440 Documentação do Exim4 (html)
exim4-doc-info * I:0.2 556 Documentação do Exim4 (info)
postfix * V:16, I:18 3306 Agente de transporte de mail Postfix (MTA: alternativo)
postfix-doc * I:1.6 3409 Documentação do Postfix (html+texto)
sasl2-bin * V:1.7, I:4 431 Implementação Cyrus SASL API (postfix suplementar para SMTP AUTH)
cyrus-sasl2-doc * I:1.2 247 Cyrus SASL - documentação

Apesar da contagem de votos do popcon do exim4-* parecer ser várias vezes mais popular que a do postfix, isto não quer dizer que o postfix não é popular com os programadores de Debian. O sistema de servidor Debian usa ambos exim4 e postfix. A análise dos cabeçalhos de mail dos envios para a lista de mail dos programados de Debian proeminentes também indica que ambos estes MTAs são populares.

Os pacotes exim4-* são conhecidos por ter pequeno consumo de memória e serem muito flexíveis na sua configuração. O pacote postfix é conhecido por ser compacto, rápido, simples, e seguro. Ambos vêm com ampla documentação e são bons em qualidade e licença.

Existem muitas escolhas para pacotes de agente de transporte de mail (MTA) com capacidades e objectivos diferentes no arquivo Debian.

Tabela 6.4. Lista de escolhas para pacotes de agente de transporte de mail (MTA) no arquivo Debian.

pacote popcon tamanho capacidade e focagem
exim4-daemon-light * V:61, I:68 1190 completo
postfix * V:16, I:18 3306 completo (segurança)
exim4-daemon-heavy * V:1.4, I:1.6 1324 completo (flexibilidade)
sendmail-bin * V:1.6, I:1.7 1940 completo (apenas se você já está familiarizado)
nullmailer * V:0.7, I:0.9 444 nu, nenhum mail local
ssmtp * V:1.2, I:1.6 8 nu, nenhum mail local
courier-mta * V:0.09, I:0.09 1722 muito completo (interface web, etc.)
xmail * V:0.07, I:0.09 688 leve
masqmail * V:0.03, I:0.04 736 leve
esmtp * V:0.07, I:0.16 180 leve
esmtp-run * V:0.05, I:0.08 64 leve (extensão de compatibilidade do sendmail para esmtp)
msmtp * V:0.3, I:0.8 232 leve
msmtp-mta * V:0.10, I:0.13 30 leve (extensão de compatibilidade do sendmail para msmtp)

6.3.1. A configuração do exim4

Para mail de Internet com smarthost, você (re)configura o pacote exim4-* como o seguinte.

$ sudo /etc/init.d/exim4 stop
$ sudo dpkg-reconfigure exim4-config

Seleccione "mail enviado por smarthost; recebido via SMTP ou fetchmail" para "Configuração geral do tipo de mail".

Regule "nome de mail do sistema:" para a sua predefinição como o FQDN (veja Secção 5.1.2, “A resolução de nome de máquina”).

Regule "Endereço IP onde escutar ligações SMTP recebidas:" para a sua predefinição como "127.0.0.1 ; ::1".

Desconfigure o conteúdo de "Outros destinos para o qual o mail é aceite:".

Desconfigure o conteúdo de "Máquinas para retransmitir mail para:".

Regule "Endereço IP ou nome de máquina do smarthost de envio:" para "smtp.nome-de-máquina.domínio:587".

Seleccione "<Não>" para "Esconder o nome de mail local para o mail enviado?". (Em vez disso, use "/etc/email-addresses" como em Secção 6.3.3, “A configuração do endereço de mail”.)

Responda a "Manter um número mínimo de consultas DNS (Marcar-a-Pedido)?" como uma das seguintes.

  • "Não" se o sistema está ligado à Internet enquanto arranca.

  • "Sim" se o sistema não está ligado à Internet enquanto arranca.

Defina o "Método de entrega para mail local:" para "formato mbox em /var/mail".

Seleccione "<Sim>" para "Dividir configuração em pequenos ficheiros?:".

Crie entradas de palavra-passe para o smarthost ao editar "/etc/exim4/passwd.client".

$ sudo vim /etc/exim4/passwd.client
 ...
$ cat /etc/exim4/passwd.client
^smtp.*\.nome_de_máquina\.domínio:nome_de_máquina@nome_de_máquina.domínio:palavra-passe

Inicie o exim4 com o seguinte.

$ sudo /etc/init.d/exim4 start

o nome de máquina em "/etc/exim4/passwd.client" não deve ser o alias. Você verifica o nome de máquina real com o seguinte.

$ host smtp.hostname.dom
smtp.hostname.dom é um alias para smtp99.hostname.dom.
smtp99.hostname.dom possui o endereço 123.234.123.89

Eu uso expressões regulares em "/etc/exim4/passwd.client" para contornar o problema do alias. Provavelmente o SMTP AUTH funciona mesmo que o ISP mova a máquina apontada pelo alias.

[Cuidado] Cuidado

Você tem de executar update-exim4.conf(8) após actualizar manualmente os ficheiros de configuração do exim4 em "/etc/exim4/".

[Cuidado] Cuidado

O arranque do exim4 demora muito tempo se foi escolhido "Não" (valor predefinido) na pergunta debconf de "Manter o número de consultas DNS no mínimo (Marcar-a-pedido)?" e o sistema não está ligado à Internet durante o arranque.

[Nota] Nota

Por favor leia o guia oficial em "/usr/share/doc/exim4-base/README.Debian.gz" e update-exim4.conf(8).

[Dica] Dica

O ficheiro de personalização local "/etc/exim4/exim4.conf.localmacros" pode ser criado para definir MACROs. Por exemplo, o serviço de mail do Yahoo diz-se requerer "MAIN_TLS_ENABLE = true" e "AUTH_CLIENT_ALLOW_NOTLS_PASSWORDS = yes" nele.

[Dica] Dica

Se você está a procurar um MTA leve que respeite "/etc/aliases" para o seu PC portátil, deve considerar configurar o exim4(8) com "QUEUERUNNER='queueonly'", "QUEUERUNNER='nodaemon'", etc. em "/etc/default/exim4".

6.3.2. A configuração do postfix com SASL

Para o mail de Internet vi smarthost, você deve primeiro ler a documentação do postfix e páginas chave do manual.

Tabela 6.5. Lista dos manuais importantes do postfix

comando função
postfix(1) Programa de controlo do postfix
postconf(1) Utilitário de configuração do postfix
postconf(5) Parâmetros de configuração do postfix
postmap(1) Manutenção da tabela de buscas do Postfix
postalias(1) Manutenção da base de dados de alias do Postfix

Você (re)configura os pacotes postfix e sasl2-bin como se segue.

$ sudo /etc/init.d/postfix stop
$ sudo dpkg-reconfigure postfix

Escolha "Internet com smarthost".

Defina "SMTP relay host (blank for none):" para "[smtp.hostname.dom]:587" e configure-o como o seguinte.

$ sudo postconf -e 'smtp_sender_dependent_authentication = yes'
$ sudo postconf -e 'smtp_sasl_auth_enable = yes'
$ sudo postconf -e 'smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd'
$ sudo postconf -e 'smtp_sasl_type = cyrus'
$ sudo vim /etc/postfix/sasl_passwd

Crie entradas de palavra-passe para o smarthost.

$ cat /etc/postfix/sasl_passwd
[smtp.hostname.dom]:587     nome_utilizador:palavra_passe
$ sudo postmap hush:/etc/postfix/sasl_passwd

Arranque o postfix com o seguinte.

$ sudo /etc/init.d/postfix start

Aqui o uso de "[" e "]" no diálogo do dpkg-reconfigure e "/etc/postfix/sasl_passwd" assegura que não se verifica o registo MX mas usa directamente o nome de máquina exacto especificado. Veja "Activar autenticação SASL no cliente SMTP do Postfix" em "usr/share/doc/postfix/html/SASL_README.html".

6.3.3. A configuração do endereço de mail

Existem alguns ficheiros de configuração de endereços de mail para transporte, entrega e agentes de utilizador de mail.

Tabela 6.6. Lista de ficheiros de configuração relacionados com endereços de mail

ficheiro função aplicação
/etc/mailname nome de máquina predefinido para mail (saída) Específico de Debian, mailname(5)
/etc/email-addresses nome de máquina para enganar o mail de saída ficheiros_de_configuração-exim4(5) específicos do exim(8)
/etc/postfix/generic nome de máquina para enganar o mail de saída específico do postfix(1), activado após a execução do comando postmap(1).
/etc/aliases alias de nome de conta para mail recebido geral, activado após a execução do comando newaliases(1).

O mailname no ficheiro "/etc/mailname" é normalmente um nome de domínio totalmente qualificado (FQDN) que resolve para um dos endereços IP do anfitrião. Para a estação de trabalho móvel que não tem um nome de máquina com endereço IP resolvível, regule este mailname para o valor de "hostname -f". (Esta é uma escolha segura e funciona para ambos exim4-* e postfix.)

[Dica] Dica

O conteúdo de "/etc/mailname" é usado por muitos programas não-MTA para o seu comportamento predefinido. Para o mutt, defina as variáveis "hostname" e "from" no ficheiro ~/muttrc para sobrepor o valor mailname. Para programas no pacote devscripts, como o bts(1) e dch(1), exporte as variáveis de ambiente "$DEBFULLNAME" e "$DEBEMAIL" para o sobrepor.

[Dica] Dica

O pacote popularity-contest normalmente envia mail a partir da conta de root com FQDN. Você precisa de definir MAILFROM em /etc/popularity-contest.conf como descrito no ficheiro /usr/share/popularity-contest/default.conf. Caso contrário, o seu mail será rejeitado pelo servidor SMTP do smarthost. Apesar de isto ser um tédio, esta aproximação é mais segura do que reescrever o endereço fonte para todos os mails do root pelo MTA e deve ser usado para outros daemons e scripts do cron.

Ao definir o mailname para "hostname -f", o spoofing do endereço de mail da fonte via MTA pode ser realizado com o seguinte.

  • ficheiro "/etc/email-addresses" para exim4(8) como explicado em exim4-config_files(5)

  • ficheiro "/etc/postfix/generic" para postfix(1) como explicado no generic(5)

Para postfix, são necessários os seguintes passos extra.

# postmap hash:/etc/postfix/generic
# postconf -e 'smtp_generic_maps = hash:/etc/postfix/generic'
# postfix reload

Você pode testar a configuração do endereço de email usando o seguinte.

  • exim(8) com as opções -brw, -bf, -bF, -bV, …

  • postmap(1) com a opção -q

[Dica] Dica

O exim vem com vários programas utilitários como o exiqgrep(8) e exipick(8). Veja "dpkg -L exim4-base|grep man8/" para os comandos disponíveis.

6.3.4. Operações MTA básicas

Existem várias operações MTA básicas. Algumas podem ser executadas via interface de compatibilidade do sendmail(1).

Tabela 6.7. Lista de operações MTA básicas

comando exim comando postfix descrição
sendmail sendmail lê mails da entrada standard e prepara a entrega (-bm)
mailq mailq lista a lista de espera de mail com estado e ID de lista de espera (-bp)
newaliases newaliases inicializa a base de dados e alias (-I)
exim4 -q postqueue -f enxagua mails em espera (-q)
exim4 -qf postsuper -r ALL deferred; postqueue -f enxagua todos mails
exim4 -qff postsuper -r ALL; postqueue -f enxagua até mails congelados
exim4 -Mg queue_id postsuper -h queue_id congela uma mensagem pelo seu ID de lista de espera
exim4 -Mrm queue_id postsuper -d queue_id remove uma mensagem pelo seu ID de lista de espera
N/D postsuper -d ALL remove todas as mensagens

[Dica] Dica

Poderá ser uma boa ideia enxaguar todos os mails por um script em "/etc/ppp/ip-up.d/*".

6.4. Agente utilizador de mail (MUA)

Se você subscrever uma lista de mail relacionada com Debian, poderá ser boa ideia usar um MUA como o mutt e o gnus que são de facto standards para o participante e para se saber comportar como se espera.

Tabela 6.8. Lista de agentes utilizador de mail (MUA)

pacote popcon tamanho tipo
iceweasel * V:27, I:48 5725 Programa GUI X (sem marca Mozilla Firefox)
evolution * V:17, I:37 5149 Programa GUI X (parte da suite groupware)
icedove * V:6, I:12 39877 Programa GUI X (sem marca Mozilla Thunderbird)
mutt * V:27, I:85 6176 programa de terminal de caracteres provavelmente usado com o vim
gnus * V:0.05, I:0.2 6453 programa de terminal de caracteres sob (x)emacs

6.4.1. MUA básico — Mutt

Personalize "~/.muttrc" como se segue para usar o mutt como agente de utilizador de mail (MUA) em combinação com o vim.

#
# User configuration file to override /etc/Muttrc
#
# spoof source mail address
set use_from
set hostname=example.dom
set from="Name Surname <username@example.dom>"
set signature="~/.signature"

# vim: "gq" to reformat quotes
set editor="vim -c 'set tw=72 et ft=mail'"

# "mutt" goes to Inbox, while "mutt -y" lists mailboxes
set mbox_type=Maildir           # use qmail Maildir format for creating mbox
set mbox=~/Mail                 # keep all mail boxes in $HOME/Mail/
set spoolfile=+Inbox            # mail delivered to $HOME/Mail/Inbox
set record=+Outbox              # save fcc mail to $HOME/Mail/Outbox
set postponed=+Postponed        # keep postponed in $HOME/Mail/postponed
set move=no                     # do not move Inbox items to mbox
set quit=ask-yes                # do not quit by "q" only
set delete=yes                  # always delete w/o asking while exiting
set fcc_clear                   # store fcc as non encrypted

# Mailboxes in Maildir (automatic update)
mailboxes `cd ~/Mail; /bin/ls -1|sed -e 's/^/+/' | tr "\n" " "`
unmailboxes Maillog *.ev-summary

## Default
#set index_format="%4C %Z %{%b %d} %-15.15L (%4l) %s"
## Thread index with senders (collapse)
set index_format="%4C %Z %{%b %d} %-15.15n %?M?(#%03M)&(%4l)? %s"

## Default
#set folder_format="%2C %t %N %F %2l %-8.8u %-8.8g %8s %d %f"
## just folder names
set folder_format="%2C %t %N %f"

Adicione o seguinte ao "/etc/mailcap" or "~/.mailcap" para mostrar mail em HTML e anexos do MS Word 'inline'.

text/html; lynx -force_html %s; needsterminal;
application/msword; /usr/bin/antiword '%s'; copiousoutput; description="Microsoft Word Text"; nametemplate=%s.doc
[Dica] Dica

O Mutt pode ser usado como o cliente IMAP e o conversor de formato de mailbox. Você pode etiquetar as mensagens com "t", "T", etc. Estas mensagens etiquetadas podem ser copiadas com ";C" entre diferentes mailboxes e apagadas com ";d" numa acção única.

6.5. O adquiridor de mail remoto e utilitário de reencaminhamento

Apesar do fetchmail(1) ter sido o standard de facto para adquiridor de mail remoto em GNU/Linux, o autor agora gosta do getmail(1). Se você deseja rejeitar mail antes de o descarregar para poupar largura de banda, o mailfilter ou o mpop podem ser úteis. Independentemente de quais utilitários de adquirir mails sejam usados, é boa ideia configurar o sistema para entregar os mails adquiridos a um MDA, como o maildrop, via pipe.

Tabela 6.9. Lista de adquiridores de mail remoto e utilitários de reencaminhamento

pacote popcon tamanho descrição
fetchmail * V:1.9, I:4 2600 adquiridor de mail (POP3, APOP, IMAP) (antigo)
getmail4 * V:0.2, I:0.9 597 adquiridor de mail (POP3, IMAP4, e SDPS) (simples, seguro e de confiança)
mailfilter * V:0.00, I:0.05 340 adquiridor de mail (POP3) com capacidade de filtragem por expressões regulares
mpop * V:0.01, I:0.06 227 adquiridor de mail (POP3) e MDA com capacidade de filtragem

6.5.1. configuração do getmail

A configuração do getmail(1) está descrita em documentação do getmail.Aqui estão as minhas definições para aceder a múltiplas contas POP3 como utilizador.

Crie "/usr/local/bin/getmails" como o seguinte.

#!/bin/sh
set -e
if [ -f $HOME/.getmail/running ]; then
  echo "getmail já está a correr ... (se não, remova $HOME/.getmail/running)" >&2
  pgrep -l "getmai[l]"
  exit 1
else
  echo "getmail não está a correr ... " >&2
fi
if [ -f $HOME/.getmail/stop ]; then
  echo "não correr o getmail ... (se não, remova $HOME/.getmail/stop)" >&2
  exit
fi
if [ "x$1" = "x-l" ]; then
  exit
fi
rcfiles="/usr/bin/getmail"
for file in $HOME/.getmail/config/* ; do
  rcfiles="$rcfiles --rcfile $file"
done
date -u > $HOME/.getmail/running
eval "$rcfiles $@"
rm $HOME/.getmail/running

Configure-o como o seguinte.

$ sudo chmod 755 /usr/local/bin/getmails
$ mkdir -m 0700 $HOME/.getmail
$ mkdir -m 0700 $HOME/.getmail/config
$ mkdir -m 0700 $HOME/.getmail/log

Crie ficheiros de configuração "$HOME/.getmail/config/pop3_name" para cada conta POP3 como o seguinte.

[retriever]
type = SimplePOP3SSLRetriever
server = pop.exemplo.com
username =  nome_pop3@exemplo.com
password = secreta

[destination]
type = MDA_external
path = /usr/bin/maildrop
unixfrom = True

[options]
verbose = 0
delete = True
delivered_to = False
message_log = ~/.getmail/log/pop3_name.log

Configure-o como o seguinte.

$ chmod 0600 $HOME/.getmail/config/*

Agenda o "/usr/local/bin/getmails" para correr a cada 15 minutos com o cron(8) ao executar "sudo crontab -e -u <nome_de_utilizador>" e adicionando o seguinte à entrada cron do utilizador.

5,20,35,50 * * * * /usr/local/bin/getmails --quiet
[Dica] Dica

Os problemas do acesso POP3 podem não vir do getmail. Alguns serviços populares POP3 livres podem estar a violar o protocolo POP3 e o seu filtro de SPAM pode não ser perfeito. Por exemplo, pode estar a apagar as mensagens logo após receber o comando RETR antes de receber o comando DELE e pode colocar mensagens em quarentena na caixa do Spam. Você deve minimizar os danos ao configura-los para arquivar as mensagens acedidas e não as apagar. Veja também "Algum mail não foi descarregado".

6.5.2. configuração do fetchmail

A configuração do fetchmail(1) é definida por "/etc/default/fetchmail", "/etc/fetchmailrc" e "$HOME/.fetchmailrc". Veja o seu exemplo em "/usr/share/doc/fetchmail/examples/fetchmailrc.example".

6.6. Agente de entrega de mail (MDA) com filtro

A maioria dos programas MTA, como o postfix e exim4, funcionam como MDA (mail delivery agent). Eles são MDAs especializados com capacidades de filtragem.

Apesar do procmail(1) ter sido o standard de facto para MDA com filtro em GNU/Linux, o autor agora gosta do maildrop(1). Seja quais os utilitários de filtragem usados, é boa ideia configurar o sistema para entregar os mails filtrados a uma Maildir de estilo qmail.

Tabela 6.10. Lista de MDA com filtro

pacote popcon tamanho descrição
procmail * V:20, I:85 368 MDA com filtro (antigo)
mailagent * V:0.3, I:4 1692 MDA com filtro Perl
maildrop * V:0.2, I:0.7 1000 MDA com linguagem de filtragem estruturada

6.6.1. configuração do maildrop

A configuração do maildrop(1) está descrita em documentação do maildropfilter. Aqui está um exemplo de configuração para "$HOME/.mailfilter".

# Local configuration
MAILROOT="$HOME/Mail"
# set this to /etc/mailname contents
MAILHOST="example.dom"
logfile $HOME/.maildroplog

# rules are made to override the earlier value by the later one.

# mailing list mails ?
if (     /^Precedence:.*list/:h || /^Precedence:.*bulk/:h )
{
    # rules for mailing list mails
    # default mailbox for mails from mailing list
    MAILBOX="Inbox-list"
    # default mailbox for mails from debian.org
    if ( /^(Sender|Resent-From|Resent-Sender): .*debian.org/:h )
    {
        MAILBOX="service.debian.org"
    }
    # default mailbox for mails from bugs.debian.org (BTS)
    if ( /^(Sender|Resent-From|Resent-sender): .*@bugs.debian.org/:h )
    {
        MAILBOX="bugs.debian.org"
    }
    # mailbox for each properly maintained mailing list with "List-Id: foo" or "List-Id: ...<foo.bar>"
    if ( /^List-Id: ([^<]*<)?([^<>]*)>?/:h )
    {
        MAILBOX="$MATCH2"
    }
}
else
{
    # rules for non-mailing list mails
    # default incoming box
    MAILBOX="Inbox-unusual"
    # local mails
    if ( /Envelope-to: .*@$MAILHOST/:h )
    {
        MAILBOX="Inbox-local"
    }
    # html mails (99% spams)
    if ( /DOCTYPE html/:b ||\
         /^Content-Type: text\/html/ )
    {
        MAILBOX="Inbox-html"
    }
    # blacklist rule for spams
    if ( /^X-Advertisement/:h ||\
         /^Subject:.*BUSINESS PROPOSAL/:h ||\
         /^Subject:.*URGENT.*ASISSTANCE/:h ||\
         /^Subject: *I NEED YOUR ASSISTANCE/:h )
    {
        MAILBOX="Inbox-trash"
    }
    # whitelist rule for normal mails
    if ( /^From: .*@debian.org/:h ||\
         /^(Sender|Resent-From|Resent-Sender): .*debian.org/:h ||\
         /^Subject: .*(debian|bug|PATCH)/:h )
    {
        MAILBOX="Inbox"
    }
    # whiltelist rule for BTS related mails
    if ( /^Subject: .*Bug#.*/:h ||\
         /^(To|Cc): .*@bugs.debian.org/:h )
    {
        MAILBOX="bugs.debian.org"
    }
    # whitelist rule for getmails cron mails
    if ( /^Subject: Cron .*getmails/:h )
    {
        MAILBOX="Inbox-getmails"
    }
}

# check existance of $MAILBOX
`test -d $MAILROOT/$MAILBOX`
if ( $RETURNCODE == 1 )
{
    # create maildir mailbox for $MAILBOX
    `maildirmake $MAILROOT/$MAILBOX`
}
# deliver to maildir $MAILBOX
to "$MAILROOT/$MAILBOX/"
exit
[Atenção] Atenção

Ao contrário do procmail, o maildrop não cria automaticamente os directórios maildir em falta. Você tem de os criar manualmente com antecedência usando o maildirmake(1) como no exemplo "$HOME/.mailfilter".

6.6.2. configuração do procmail

Aqui está uma configuração semelhante com "$HOME/.procmailrc" para procmail(1).

MAILDIR=$HOME/Maildir
DEFAULT=$MAILDIR/Inbox/
LOGFILE=$MAILDIR/Maillog
# sem dúvida mails com mau aspecto: despeja-os no lixo e termina
:0
* 1^0 ^X-Advertisement
* 1^0 ^Subject:.*BUSINESS PROPOSAL
* 1^0 ^Subject:.*URGENT.*ASISSTANCE
* 1^0 ^Subject: *I NEED YOUR ASSISTANCE
X-trash/

# Entrega de mensagens da lista de mail
:0
* 1^0 ^Precedence:.*list
* 1^0 ^Precedence:.*bulk
* 1^0 ^List-
* 1^0 ^X-Distribution:.*bulk
{
:0
* 1^0 ^Return-path:.*debian-devel-admin@debian.or.jp
jp-debian-devel/

:0
* ^Resent-Sender.*debian-user-request@lists.debian.org
debian-user/

:0
* ^Resent-Sender.*debian-devel-request@lists.debian.org
debian-devel/

:0
* ^Resent-Sender.*debian-announce-request@lists.debian.org
debian-announce

:0
mailing-list/
}

:0
Inbox/

6.6.3. Re-entregar o conteúdo da mbox

Você precisa de entregar manualmente os mails às caixas de correio organizadas no seu directório home a partir de "/var/mail/<nome_de_utilizador>" se o seu directório home ficar cheio e o procmail(1) falhar. Após regular o espaço do disco no directório home, corra o seguinte.

# /etc/init.d/${MAILDAEMON} stop
# formail -s procmail </var/mail/<nome_de_utilizador>
# /etc/init.d/${MAILDAEMON} start

6.7. Servidor POP3/IMAP4

Se você vai correr um servidor privado numa LAN, deve considerar correr um servidor POP3 / IMAP4 para entregar mail aos clientes da LAN.

Tabela 6.11. Lista de Servidores POP3/IMAP4

pacote popcon tamanho tipo descrição
qpopper * V:0.8, I:4 636 POP3 Servidor POP3 Qualcomm avançado BSD
courier-pop * V:1.4, I:1.9 102 POP3 Servidor de mail courier - Servidor POP3 (apenas formato maildir)
ipopd * V:0.08, I:0.13 152 POP3 O servidor POP2 e POP3 da Universidade de Washington
cyrus-pop3d-2.2 * V:0.12, I:0.2 21 POP3 Sistema de mail cyrus (suporte de POP3)
xmail * V:0.07, I:0.09 688 POP3 Servidor de mail ESMTP/POP3
courier-imap * V:2, I:2 529 IMAP Servidor de mail courier - Servidor IMAP (apenas formato maildir)
uw-imapd * V:0.6, I:3 220 IMAP O servidor IMAP da Universidade de Washington
cyrus-imapd-2.2 * V:0.3, I:0.4 21 IMAP Sistema de mail cyrus (suporte de IMAP)

6.8. O servidor de impressão e utilitário

No antigo sistema tipo Unix, o Line printer daemon do BSD era o standard. Como o formato de impressão standard do software livre é o PostScript nos sistemas tipo Unix, um sistema de filtragem foi usado juntamente com o Ghostscript para activar a impressão em impressoras não-PostScript.

Recentemente, o Common UNIX Printing System (CUPS) é o novo standard de facto. O CUPS usa Internet Printing Protocol (IPP). O IPP é agora suportado por outros SOs como o Windows XP e o Mac OS X e tornou-se no novo standard de facto para várias plataformas para impressão remota com capacidade de comunicação bidireccional.

O formato de dados de impressão standard para a aplicação no sistema Debian é o PostScript (PS) o qual é uma linguagem de descrição de página. Os dados em formato PS são fornecidos ao interpretador de PostScript Ghostscript para produzir os dados de impressão específicos da impressora. Veja Secção 11.3.1, “Ghostscript”.

Graças à funcionalidade de auto-conversão dependente do formato de ficheiro do sistema CUPS, simplesmente fornecer quaisquer dados ao comando lpr deverá gerar a saída de impressão esperada. (No CUPS, o lpr pode ser activado ao instalar o pacote cups-bsd.)

O sistema Debian tem alguns pacotes notáveis para os servidores e utilitários de impressão.

Tabela 6.12. Lista de servidores de impressoras e utilitários

pacote popcon tamanho porto descrição
lpr * V:1.7, I:2 460 impressora (515) BSD lpr/lpd (daemon de impressora de linha)
lprng * V:0.4, I:1.1 2764 , , , , (Avançado)
cups * V:36, I:48 5741 IPP (631) Servidor CUPS de Impressão em Internet
cups-client * V:13, I:50 465 , , Comandos de impressão do System V para o CUPS: lp(1), lpstat(1), lpoptions(1), cancel(1), lpmove(8), lpinfo(8), lpadmin(8), …
cups-bsd * V:8, I:45 154 , , comandos de impressão BSD para o CUPS: lpr(1), lpq(1), lprm(1), lpc(8)
cups-driver-gutenprint * V:11, I:44 1252 Não aplicável Drivers de impressoras para o CUPS

[Dica] Dica

Você pode configurar o sistema CUPS ao apontar o seu explorador web para "http://localhost:631/" .

6.9. O servidor de acesso remoto e utilitário (SSH)

O Secure SHell (SSH) é o modo seguro de efectuar ligações na Internet. Uma versão livre do SSH chamada OpenSSH está disponível nos pacotes openssh-client e openssh-server em Debian.

Tabela 6.13. Lista de servidores de acesso remoto e utilitários

pacote popcon tamanho ferramenta descrição
openssh-client * V:55, I:99 2302 ssh(1) Cliente de shell segura
openssh-server * V:67, I:81 790 sshd(8) Servidor de shell segura
ssh-askpass-fullscreen * V:0.08, I:0.3 92 ssh-askpass-fullscreen(1) pede ao utilizador uma frase passe para ssh-add (GNOME2)
ssh-askpass * V:0.7, I:5 156 ssh-askpass(1) pede ao utilizador uma frase passe para ssh-add (X simples)

[Cuidado] Cuidado

Veja Secção 4.7.3, “Medidas de segurança extra para a Internet” se o seu SSH for acessível a partir da Internet.

[Dica] Dica

Por favor use o programa screen(1) para activar a sobrevivência do processo de shell remota à interrupção da ligação (veja Secção 9.1, “O programa screen”).

6.9.1. Bases do SSH

[Atenção] Atenção

o "/etc/ssh/sshd_not_to_be_run" não pode estar presente se desejar correr o servidor OpenSSH.

SSH tem dois protocolos de autenticação.

Tabela 6.14. Lista de protocolos e métodos de autenticação do SSH

Protocolo SSH Método SSH descrição
SSH-1 "RSAAuthentication" autenticação de utilizador baseada em chave de identificação RSA
, , "RhostsAuthentication" autenticação baseada em ".rhosts" (insegura, desactivada)
, , "RhostsRSAAuthentication" autenticação de máquina baseada em ".rhosts" combinada com chave de máquina RSA (desactivada)
, , "ChallengeResponseAuthentication" autenticação challenge-response RSA
, , "PasswordAuthentication" autenticação baseada em palavra-passe
SSH-2 "PubkeyAuthentication" autenticação do utilizador baseada em chave pública
, , "HostbasedAuthentication" autenticação de máquina baseada em "~/.rhosts" ou "/etc/hosts.equiv" combinada com chave pública de autenticação da máquina cliente (desactivada)
, , "ChallengeResponseAuthentication" autenticação challenge-response
, , "PasswordAuthentication" autenticação baseada em palavra-passe

[Cuidado] Cuidado

Tenha cuidado com estas diferenças se você não estiver a usar um sistema Debian.

Veja "/usr/share/doc/ssh/README.Debian.gz", ssh(1), sshd(8), ssh-agent(1), e ssh-keygen(1) para detalhes.

Os ficheiros de configuração chave são os seguintes.

Tabela 6.15. Lista de ficheiros de configuração do SSH

ficheiro de configuração descrição do ficheiro de configuração
/etc/ssh/ssh_config Predefinições do cliente SSH, veja ssh_config(5)
/etc/ssh/sshd_config Predefinições do servidor SSH, veja sshd_config(5)
~/.ssh/authorized_keys chaves SSH públicas predefinidas que os clientes usam para ligar a esta conta neste servidor SSH
~/.ssh/identity chave SSH-1 RSA secreta do utilizador
~/.ssh/id_rsa chave SSH-2 RSA secreta do utilizador
~/.ssh/id_dsa chave SSH-2 DSA secreta do utilizador

[Dica] Dica

Veja ssh-keygen(1), ssh-add(1) e ssh-agent(1) para como usar chaves SSH secretas e públicas.

[Dica] Dica

Certifique-se de verificar as configurações ao testar a ligação. Em caso de problemas, use "ssh -v".

[Dica] Dica

Você pode mudar a frase-passe para encriptar chaves SSH secretas locais mais tarde com "ssh-keygen -p".

[Dica] Dica

Você pode adicionar opções às entradas em "~/.ssh/authorized_keys" para limitar máquinas e correr comandos específicos. Veja sshd(8) para mais detalhes.

O seguinte inicia uma ligação ssh(1) a partir de um cliente.

Tabela 6.16. Lista de exemplos de arranque do cliente SSH

comando descrição
ssh nome_utilizador@máquina.domínio.externo ligar com modo predefinido
ssh -v nome_utilizador@máquina.domínio.externo ligar com modo predefinido com mensagens de depuração
ssh -1 nome_utilizador@máquina.domínio.externo força a ligação com SSH versão 1
ssh -1 -o RSAAuthentication=no -l nome_utilizador máquina.domínio.externo força o uso de palavra-passe com SSH versão 1
ssh -o PreferredAuthentications=password -l nome_utilizador máquina.domínio.externo força o uso de palavra-passe com SSH versão 2

Se você usar o mesmo nome de utilizador nas máquinas local e remota, pode eliminar a escrita de "username@". Mesmo que você use um nome de utilizador diferente nas máquinas local e remota, pode eliminá-lo usando "~/.ssh/config". Para o serviço Debian Alioth com nome de conta "foo-guest", você regula o "~/.ssh/config" para conter o seguinte.

Host alioth.debian.org svn.debian.org git.debian.org
    User foo-guest

Para o utilizador, as funções do ssh(1) são uma telnet(1) mais inteligente e segura. Ao contrário do comando telnet, o comando ssh não bombeia no caractere de escape do telnet (predefinição inicial CTRL-]).

6.9.2. Reencaminhamento de portos para SMTP/POP3 em túnel

Para estabelecer um pipe para ligação ao porto 25 do servidor remoto a partir do porto 4025 da máquina local, e para o porto 110 do servidor remoto a partir do porto 4110 da máquina local através de ssh, execute na máquina local como se segue.

# ssh -q -L 4025:remote-server:25 4110:remote-server:110 username@remote-server

Este é um modo seguro de fazer ligações a servidores SMTP/POP3 pela Internet. Configure a entrada "AllowTcpForwarding" para "yes" em "/etc/ssh/sshd_config" na máquina remota.

6.9.3. Ligar sem palavras-passe remotas

Pode-se evitar ter que se lembrar as palavras passe para sistemas remotos ao usar "RSAAuthentication" (protocolo SSH-1) ou "PubkeyAuthentication" (protocolo SSH-2).

No sistema remoto, configure as respectivas entradas, "RSAAuthentication yes" ou "PubkeyAuthentication yes", em "/etc/ssh/sshd_config".

Crie chaves de autenticação localmente e instale a chave pública no sistema remoto como o seguinte.

  • "RSAAuthentication": chave RSA para SSH-1 (descontinuado porque foi substituído.)

$ ssh-keygen
$ cat .ssh/identity.pub | ssh utilizador1@remoto "cat - >>.ssh/authorized_keys"
  • "PubkeyAuthentication": chave RSA para SSH-2

$ ssh-keygen -t rsa
$ cat .ssh/id_rsa.pub | ssh utilizador1@remoto "cat - >>.ssh/authorized_keys"
  • "PubkeyAuthentication": chave DSA para SSH-2 (descontinuado porque é lento.)

$ ssh-keygen -t dsa
$ cat .ssh/id_dsa.pub | ssh utilizador1@remoto "cat - >>.ssh/authorized_keys"
[Dica] Dica

O uso de chave DSA para SSH-2 está descontinuado porque a chave é pequena e é lento. Não existem mais razões para se contornar a patente RSA usando DSA porque já expirou. DSA significa Digital Signature Algorithm e é lento. Veja também DSA-1571-1.

[Nota] Nota

Para que "HostbasedAuthentication" funcione em SSH-2, você tem de ajustar as definições de "HostbasedAuthentication" para "yes" em ambos "/etc/ssh/sshd_config" na máquina servidor e "/etc/ssh/ssh_config" ou "~/.ssh/config" na máquina cliente.

6.9.4. Lidar com clientes SSH alienígenas

Existem alguns clientes SSH livres disponíveis para outras plataformas.

Tabela 6.17. Lista de clientes SSH para outras plataformas

ambiente programa de SSH livre
Windows puTTY (http://www.chiark.greenend.org.uk/~sgtatham/putty/) (GPL)
Windows (cygwin) SSH em cygwin (http://www.cygwin.com/) (GPL)
Macintosh Clássico macSSH (http://www.macssh.com/) (GPL)
Mac OS X OpenSSH; use ssh na aplicação de Terminal (GPL)

6.9.5. Configurar o ssh-agent

É mais seguro proteger as suas chaves secretas de autenticação SSH com uma frase-passe. Se nenhuma frase-passe foi definida, use "ssh-keygen -p" para a definir.

Coloque a sua chave SSH pública (ex. "~/.ssh/id_rsa.pub") em "~/.ssh/authorized_keys" numa máquina remota usando uma ligação à máquina remota baseada em palavra-passe como descrito em cima.

$ ssh-agent bash
$ ssh-add ~/.ssh/id_rsa
Insira frase-passe para /home/<nome_de_utilizador>/.ssh/id_rsa:
Identidade adicionada: /home/<nome_de_utilizador>/.ssh/id_rsa (/home/<nome_de_utilizador>/.ssh/id_rsa)

Nenhuma palavra-passe necessária desde aqui até ao próximo comando.

$ scp foo <nome_utilizador>@máquina.remota:foo

Carregue em ^D (CTRL-D) para terminar a sessão do ssh-agent.

Para o servidor X, o script de arranque normal de Debian executa o ssh-agent como o processo pai. Portanto você apenas precisa de executar o ssh-add uma vez. Para mais, leia ssh-agent(1) e ssh-add(1).

6.9.6. Como desligar o sistema remoto em SSH

Você precisa de proteger o processo ao fazer "shutdown -h now" (veja Secção 1.1.8, “Como desligar o sistema”) a partir da terminação do SSH usando o comando at(1) (veja Secção 9.5.13, “Agendar tarefas uma vez”) com o seguinte.

# echo "shutdown -h now" | at now

Correr "shutdown -h now" numa sessão do screen(1) (veja Secção 9.1, “O programa screen”) é outro modo de fazer o mesmo.

6.9.7. Depurar problemas no SSH

Se estiver com problemas, verifique as permissões dos ficheiros de configuração e corra o ssh com a opção "-v".

Use a opção "-P" se você for o root e esteja a ter problemas com a firewall; isto evita o uso dos portos de servidor 1 -- 1023.

Se as ligações ssh a um site remoto subitamente deixarem de funcionar, pode ser o resultado de reparações pelo administrador do sistema, mais provável uma alteração na "chave_da_máquina" durante a manutenção do sistema. Após certificar-se que é este o caso e ninguém está a tentar falsificar a máquina remota com algum hack inteligente, pode-se recuperar a ligação ao remover a entrada "host_key" de "~/.ssh/known_hosts" na máquina local.

6.10. Outras aplicações de servidor de rede

Aqui estão outras aplicações de servidor de rede

Tabela 6.18. Lista de outras aplicações de servidor de rede

pacote popcon tamanho protocolo descrição
telnetd * V:0.3, I:0.8 156 TELNET Servidor TELNET
telnetd-ssl * V:0.09, I:0.2 220 , , . . (suporte a SSL)
nfs-kernel-server * V:11, I:20 531 NFS Partilha de ficheiros do Unix
samba * V:17, I:28 23212 SMB Partilha de ficheiros e impressoras do Windows
netatalk * V:2, I:5 3780 ATP Partilha de ficheiros e impressoras do Apple/Mac (AppleTalk)
proftpd-basic * V:5, I:6 3900 FTP Download de ficheiros geral
wu-ftpd * V:0.3, I:0.4 732 , , , ,
apache2-mpm-prefork * V:36, I:40 55 HTTP Servidor web geral
apache2-mpm-worker * V:6, I:7 55 , , , ,
squid * V:5, I:6 1984 , , servidor proxy web geral
squid3 * V:1.6, I:1.9 3644 , , , ,
slpd * V:0.11, I:0.2 180 SLP Servidor OpenSLP como servidor LDAP
bind9 * V:8, I:15 930 DNS Endereço IP para outras máquinas
dhcp3-server * V:2, I:7 64 DHCP Endereço IP do próprio cliente

Common Internet File System Protocol (CIFS) é o mesmo protocolo que Server Message Block (SMB) e é bastante usado pelo Microsoft Windows.

[Dica] Dica

See Secção 4.5.2, “O moderno sistema de gestão centralizado” for integration of server systems.

[Dica] Dica

The hostname resolution is usually provided by the DNS server. For the host IP address dynamically assigned by DHCP, Dynamic DNS can be set up for the hostname resolution using bind9 and dhcp3-server as described in http://wiki.debian.org/DDNS .

[Dica] Dica

O uso de servidor proxy como o squid é muito mais eficiente para poupar largura de banda que o uso de servidor mirror local com o conteúdo completo do arquivo Debian.

6.11. Outros clientes de aplicação de rede

Aqui estão outros clientes de aplicação de rede.

Tabela 6.19. Lista de clientes de aplicação de rede

pacote popcon tamanho protocolo descrição
netcat * I:17 40 TCP/IP Canivete suíço do TCP/IP
openssl * V:69, I:95 1053 SSL Binário Secure Socket Layer (SSL) e ferramentas criptográficas relacionadas
stunnel4 * V:0.5, I:2 532 , , Wrapper SSL universal
telnet * V:13, I:90 200 TELNET Cliente TELNET
telnet-ssl * V:0.2, I:1.3 260 , , . . (suporte a SSL)
nfs-common * V:48, I:81 675 NFS Partilha de ficheiros do Unix
smbclient * V:5, I:38 45868 SMB Cliente de partilha de ficheiros e impressoras do MS Windows
smbfs * V:4, I:21 47 , , Comandos de montar e desmontar para ficheiros remotos do MS Windows
ftp * V:9, I:86 132 FTP Cliente FTP
lftp * V:1.1, I:5 1709 , , , ,
ncftp * V:1.2, I:5 1308 , , Cliente FTP de écran completo
wget * V:38, I:99 2157 HTTP e FTP downloader de web
curl * V:7, I:26 310 , , , ,
bind9-host * V:42, I:93 174 DNS host(1) do bind9, "Prioridade: standard"
dnsutils * V:12, I:91 373 , , dig(1) do bind, "Prioridade: standard"
dhcp3-client * V:8, I:48 60 DHCP obter endereço IP
ldap-utils * V:1.9, I:7 667 LDAP obter dados de um servidor LDAP

6.12. Os diagnósticos dos daemons do sistema

O programa telnet activa ligação manual aos daemons do sistema e aos seus diagnósticos.

Para testar o serviço POP3 simples, tente o seguinte:

$ telnet mail.ispname.net pop3

Para testar o serviço POP3 com TLS/SSL activo de alguns ISPs, você precisa do cliente telnet com TLS/SSL activo pelos pacotes telnet-ssl or openssl.

$ telnet -z ssl pop.gmail.com 995
$ openssl s_client -connect pop.gmail.com:995

Os seguintes RFCs disponibilizam o conhecimento necessário para cada daemon de sistema.

Tabela 6.20. Lista de RFCs populares

RFC descrição
rfc1939 e rfc2449 serviço POP3
rfc3501 serviço IMAP4
rfc2821 (rfc821) serviço SMTP
rfc2822 (rfc822) Formato de ficheiro de mail
rfc2045 Multipurpose Internet Mail Extensions (MIME)
rfc819 serviço DNS
rfc2616 serviço HTTP
rfc2396 definição URI

A utilização de portos é descrita em "/etc/services".