Provided by:
manpages-pt_20040726-2_all 
NOME
services - lista de serviços da rede Internet
DESCRIÇÃO
services é um arquivo ASCII provendo um mapeamento amigável entre nomes
textuais para serviços da internet, e consignar suporte para números de
portas e tipo de protocolos. Todos programas de rede deveriam pesquisar
este arquivo para receber um número de porta (e protocolo) para seus
serviços. As rotinas da biblioteca C getservent(3), getservbyname(3),
getservbyport(3), setservent(3), e endservent(3) suportam a pesquisa
destes arquivos a partir de programas.
Números de portas são designadas pelo IANA (Internet Assigned Numbers
Authority), e atualmente a política deles é designar ambos os
protocolos TCP e UDP quando designando um número de porta. Então, a
maioria dos lançamentos deveriam ter duas entradas, mesmo que somente
para serviços TCP.
Números de portas abaixo de 1024 (tmabém chamada de portas ’de baixo
nível’) podem somente ser acessadas pelo root (veja bind(2), tcp(7),
and udp(7).) Isto é feito para clientes conectando portas de baixo
nível possam confiar que o serviço executado na porta é uma
implementação padrão, e não um serviço qualquer rodado por um usuário
da máquina. Os famosos números de portas especificados pela IANA são
normalmente localizados no espaço do superusuário.
A presença de um lançamento para um seviço no arquivo services não
significa necessariamente que o serviço esteja rodando atualmente na
máquina. Veja inetd.conf(5) para configurações de serviços da Internet
ofereçido. Note que nem todos os serviços de rede serão iniciados pelo
inetd(8), e assim podem não aparecer em inetd.conf(5). Em particular,
servidores de notícias (NNTP) e correio (SMTP) são muitas vezes
inicializados pelos scripts de boot do sistema.
O localização do arquivo services é definido por _PATH_SERVICES em
/usr/include/netdb.h. Isto é usualmente selecionado por /etc/services.
Cada linha descreve um serviço, e é da forma:
service-name port/protocol [aliases ...]
onde:
service-name
é um nome amigável para o serviço é conhecido por e procurado
sob. Ele é sensivel ao caso. Muitas vezes, o programa cliente
é nomeado depois do service-name.
port é o número da porta (em decimal) para uso deste serviço.
protocol é o tipo de protocolo para ser usado. Este campo deve estar
compatível com a entrada no arquivo protocols(5) tcp e udp.
aliases e um espaço opcional ou tabulação separa listas de outros
nomes para este serviço (mas veja a seção PROBLEMAS abaixo).
Novamente, os nome são sensíveis ao caso.
Espaços ou tabulações podem ser usadas para separar os campos.
Comentários são iniciados pelo sinal (#) e continuam até o final da
linha. Linhas em branco são ignoradas.
O service-name deveria iniciar na primeira coluna do arquivo, desde que
espaços iniciais não sejam tirados. service-names poderiam ter
qualquer caractere imprimível excluindo espaço ou tambulação, de
qualquer forma, um escolha conservadora de caracteres deveria ser usada
para minimizar problemas de interomperabilidade. Por exemplo: a-z, 0-9,
e hífen (-) poderiam ser sensível a seleção.
Linhas que não combinam com este formato não poderiam estar presente no
arquivo. (Atualmente, elas são silenciosamente omitidas por
getservent(3), getservbyname(3), and getservbyport(3). De qualquer
forma, este comportamento precisaria contar com ele.)
Conforme compatibilidade pregressa para as caracteristicas, a barra (/)
entre o número da porta e o nome do protocolo podem, na realidade, ser
uma barra ou uma vírgula (,). Uso da vírgula em modernas instalações
não é recomendado.
Este arquivo pode ser distribuído sobre uma rede usando um serviço de
nomeação como Yellow Pages/NIS or BIND/Hesiod.
Um exemplo do arquivo services pode parecer com:
netstat 15/tcp
qotd 17/tcp quote
msp 18/tcp # message send protocol
msp 18/udp # message send protocol
chargen 19/tcp ttytst source
chargen 19/udp ttytst source
ftp 21/tcp
# 22 - unassigned
telnet 23/tcp
PROBLEMAS
Havia um máximo de 35 aliases, devido a maneira que o código do
getservent(3) era escrito.
Linhas com mais caracteres que BUFSIZ (atualmente 1024) serão ignoradas
por getservent(3), getservbyname(3), e getservbyport(3). De qualquer,
isto também faz a próxima linha ter uma análise misturada.
ARQUIVOS
/etc/services
A lista de serviços da rede Internet
/usr/include/netdb.h
Definição de _PATH_SERVICES
VEJA TAMBÉM
getservent(3), getservbyname(3), getservbyport(3), setservent(3),
endservent(3), protocols(5), listen(2), inetd.conf(5), inetd(8).
Determindas RFC, mais recentemente RFC 1700, (AKA STD0002)
Guia de Serviços para Yellow Pages
Guia de Serviços para BIND/Hesiod
TRADUÇÃO E REVISÃO PARA A LÏNGUA PORTUGUESA
André L. Fassone Canova <lonelywolf@blv.com.br> (tradução) Roberto
Selbach Teixeira <robteix@zaz.com.br> (revisão)