Provided by: rlinetd_0.9.3-1_amd64 bug

NOME

       rlinetd.conf - ficheiro de configuração do rlinetd

DESCRIÇÃO

       rlinetd.conf guarda informação de configuração para o rlinetd. Existe um pequeno número de
       construções de nível de topo semelhantes, diferindo principalmente em quais  opções  podem
       ser significativamente usadas com elas.

       Todas  as  strings  são citadas com o caractere ". Em algumas situações (ex. as directivas
       log, exec, e chroot), há um número de variáveis que podem ser substituídas numa string.
       A menos que declarado em contrário, todos os números têm de ser positivos.

       service "name" {
              ...
       }

              Esta construção descreve um serviço. O parâmetro name é apenas para conveniência de
              nomeação,  serve simplesmente para distinguir mensagens de relatórios e fornece uma
              predefinição para opções que podem aceitar logicamente um nome como um argumento.

              enabled
                     Esta construção permite facilitar o activar  e  desactivar  de  serviços.  O
                     argumento  pode  ser  ou  yes ou no. O valor predefinido é yes. Definir isto
                     para no desactiva serviços.

                     Exemplo:
                       enabled no;

              port
                     Isto lista os portos onde o serviço deve estar disponível. Os  portos  podem
                     ser  listados  numa  string  ou  formato  numérico.  Se  especificado,  isto
                     predefine para o nome do serviço a menos que o serviço seja um serviço  RPC,
                     que neste caso o valor do porto será atribuído dinamicamente pelo sistema.

                     Exemplo:
                       port "telnet", "rcmd", 56, 99;

              interface
                     Isto especifica a quais interfaces os portos escutados devem ser associados.
                     Recebe uma lista de endereços  IP  como  um  argumento,  correspondente  aos
                     endereços  configurados das interfaces requeridas. Se esta palavra-chave não
                     for dada ou quando o valor especial any é atribuído a  ela,  o  serviço  irá
                     unir-se a todas as interfaces disponíveis.

                     Exemplos:
                       interface 192.168.1.1, 192.168.1.2;

                       interface any;

              exec
                     Isto  especifica  a  invocação  do  serviço.  Pode  ser  feito  um número de
                     substituições dentro da string, por favor veja Modificadores  de  String  em
                     baixo.

                     Exemplo:
                       exec "/usr/sbin/in.telnetd -d";

              server
                     Isto especifica o binário a ser executado, se diferente de exec.

                     Exemplo:
                       server "/usr/sbin/tcpd";

              protocol
                     Isto  especifica  o  protocolo  socket a usar quando escuta em portos para o
                     serviço. O argumento pode ser ou tcp ou udp.  A definição  predefinida  para
                     esta variável é tcp.

                     Exemplo:
                       protocol tcp;

              user
                     Isto  especifica  o  id de utilizador sob qual este serviço deve correr. Irá
                     aceitar um argumento em formato ou simbólico ou numérico. A menos  que  seja
                     fornecido  group  (veja  em  baixo),  o id de grupo é também definido para o
                     grupo primário do utilizador.

                     Exemplo:
                       user "nobody";

              group
                     Isto especifica o id de grupo sob qual este serviço deve correr. Irá aceitar
                     um argumento em formato ou simbólico ou numérico.

                     Exemplo:
                       group "system";

              backlog
                     Isto  é  um  argumento  de  backlog  que  será  passado à chamada de sistema
                     listen(2).

                     Exemplo:
                       backlog 30;

              instances
                     Isto especifica o número máximo de instâncias de serviço que podem correr em
                     simultâneo. A predefinição para esta variável é 40.

                     Exemplo:
                       instances 50;

              wait
                     Esta directiva emula o comportamento de inetd(8)  wait. O argumento pode ser
                     ou yes ou no.  O valor predefinido é  no.   Definir  isto  para  yes  também
                     reinicia o valor da opção instances para 1.

                     Exemplo:
                       wait yes;

              nice
                     Isto  especifica  a  prioridade de processo para correr este serviço como. O
                     argumento é passado directamente para a chamada de sistema setpriority(2). O
                     valor pode ser negativo.

                     Exemplo:
                       nice -5;

              rpc
                     Isto  especifica  que o serviço deve ser registado com o mapeador portmap(8)
                     do sistema como um serviço RPC. Aceita  uma  lista  de  argumentos  como  se
                     segue.

                     rpc {
                            name "string"; version 3,6,9-15,22;
                     }

                     O parâmetro name é opcional, e predefine para nome do serviço.

              chroot
                     Isto  especifica  o  directório raiz para o serviço. A string argumento pode
                     aceitar modificadores como detalhado em Modificadores de String em baixo.

                     Exemplo:
                       chroot "/tftpboot/%O";

              log
                     Esta directiva recebe dois argumentos. O primeiro  tem  de  ser  ou  o  nome
                     simbólico de uma directiva log anteriormente especificada (vem em baixo), ou
                     ou a palavra syslog sem citação.  Se for a última, a mensagem será registada
                     via  chamada  ao  syslog(3).  O  segundo  argumento é a mensagem que irá ser
                     registada, sujeita aos modificadores detalhados em Modificadores  de  String
                     em baixo.

                     Exemplo:
                       log syslog "Service from %O complete";

              tcpd
                     Esta  directiva  faz  com  que  sejam  aplicados  controlos  de  acesso como
                     especificados por tcp_wrappers. Isto tem  o  mesmo  efeito  que  invocar  um
                     serviço  com  o  argumento  server  de  /usr/sbin/tcpd  (ou  com o que o seu
                     programa tcpd(8) é mantido), mas guarda  o  passo  adicional  de  iniciar  o
                     programa.  Irá  aceitar até dois argumentos adicionais. O primeiro é um nome
                     de serviço para aplicar contra as suas regras, e o segundo  é  um  bloco  de
                     instruções para executar se corresponderem. Se não for especificado um nome,
                     recorre ao nome do serviço. Se o bloco de instruções não for  definido,  usa
                     por predefinição 'exit;'.

                     Exemplos:
                       tcpd "in.telnetd";

                       tcpd { exec "/usr/local/bin/winnuke %O"; }

                       tcpd "pointless" { echo "Hi guys, come on in."; }

                       tcpd "defiant" { echo "500 Access denied from %O."; exit; }

              exit
                     Esta  directiva  é  apenas  útil num argumento de bloco de instruções para a
                     directiva tcpd. Note bem - não  a  usar  (e  não  especificar  alguma  outra
                     directiva  de  terminação,como  o  exec)   irá  resultar em que o serviço vá
                     correr para sempre.

                     Exemplo:
                       exit;

              capability
                     Esta directiva especifica as capacidades que este serviço  deve  ter  quando
                     corre.  O  argumento  é  uma  string  que  é  passada  directamente  para  o
                     cap_from_text(3).   Sabemos,  é  uma  descrição  muito   pobre,   mas   esta
                     funcionalidade   é  de  utilidade  limitada  e  ao  menos  leia  o  ficheiro
                     README.capabilities.

                     Exemplo:
                       capability "cap_setuid=ep";

              rlimit
                     Esta  directiva  recebe  dois  argumentos.  O  primeiro  é  um  símbolo  que
                     especifica  o  tipo de limite requerido. Estes estão listados mais abaixo. O
                     segundo argumento toma um de dois formatos.  Pode  ser  ou  um  único  valor
                     numérico,  que neste caso ambos os limites soft e hard do recurso em questão
                     irão ser definidos para este valor. Alternativamente, pode ser uma lista  no
                     formato:

                     rlimit type {
                            soft x; hard y;
                     }

                     Neste  caso  os  limites  hard e soft serão definidos de modo apropriado. Em
                     ambos casos, pode ser especificada a palavra unlimited  em vez de  um  valor
                     numérico,  assim  removendo  qualquer  restrição.  Os  valores  são passados
                     directamente  ao  syscall  setrlimit(2),  e  deve  ser  especificado   nesse
                     contexto.

                     Tipos:
                       cpu, fsize, data, stack, core, rss, nproc, nofile, memlock

                     Exemplo:
                       rlimit cpu 15;

              initgroups
                     O argumento pode ser ou yes ou no.  Esta directiva faz com que initgroups(3)
                     seja chamado no arranque do serviço, o que define os grupos suplementares do
                     serviço de acordo com o ficheiro /etc/group.

                     Exemplo:
                       initgroups yes;

              family
                     Esta  directiva especifica a família de protocolos a que o rlinetd deve unir
                     sockets neste serviço. Actualmente, isto pode ser ou ipv4 ou  ipv6.  Se  não
                     especificado, isto recorre a algo apropriado para o sistema.

                     Exemplo:
                       family ipv6;

              banner
                     Esta directiva permite-lhe despejar um ficheiro como saída de uma ligação.

                     Exemplo:
                       banner "/etc/nologin";

              echo
                     Esta  directiva  permite-lhe  enviar  uma  linha gerada dinamicamente para a
                     ligação.

                     Exemplo:
                       echo "500 Service denied from your IP (%O)";

              filter
                     Esta directiva permite-lhe especificar um programa Linux Socket Filter a ser
                     associado cm o socket que escuta. Estes podem ser gerados com uma ferramenta
                     como o lsfcc(1).

                     Exemplo:
                       filter "/usr/local/lib/rlinetd/filters/privport";

              chargen
                     Esta directiva faz ciclos internos, enviando dados para qualquer ligação. Se
                     não  for dado um argumento, ecoa um subconjunto de caracteres de escrita. No
                     entanto, pode ser especificado um nome de ficheiro como  um  argumento,  que
                     neste caso o conteúdo desse ficheiro é enviado em ciclo infinito.

                     Exemplo:
                       chargen "/usr/local/lib/spam";

       log "name" {
              ...
       }

              Esta  construção descreve um alvo para relatórios. O parâmetro name é usado como um
              argumento para a directiva log nas configurações de service.

              path
                     Isto descreve o nome de ficheiro para este ficheiro de registo (logfile).

                     Exemplo:
                       path "/var/log/service.log";

              mode
                     Isto especifica as permissões de ficheiro para o logfile. É requerido que  o
                     argumento seja numérico, e é predefinido para 0640 se não for especificado.

                     Exemplo:
                       mode 0600;

              user
                     Isto  especifica o uid de um logfile, e pode ser especificado ou como um uid
                     numérico, ou como um nome de utilizador.

                     Exemplo:
                       user "adm";

              group
                     Isto especifica o gid de um logfile, e pode ser especificado ou como um  gid
                     numérico, ou como um nome de grupo.

                     Exemplo:
                       group "adm";

       defaults {
              ...
       }

              Esta  construção  recebe os mesmo parâmetros que uma declaração service, mas em vez
              de  especificar  um  serviço,  define  predefinições   para   todos   os   serviços
              especificados subsequentemente.

       directory "path" "match" "ignore";
              Esta  construção  especifica  um  directório  que  contem ficheiros de configuração
              adicionais para serem analisados. A análise destes ficheiros adicionais não  começa
              até  que  o  ficheiro  actual  esteja  completo.  Os  argumentos match e ignore são
              opcionais, e se especificados, são usados para filtrar os ficheiros no  directório.
              Os  nomes de ficheiros devem corresponder à expressão regular match, de dada, e não
              devem corresponder à expressão regular ignore,  se  dada.  Os  nomes  de  ficheiros
              começados com um ponto ('.') são saltados em todos os casos. Os directórios não são
              lidos recursivamente.

   Modificadores de Strings
       Existe um número de variáveis que  podem  ser  substituídas  em  argumentos  para  algumas
       directivas.  Embora  elas  possam  ser  usadas nos mesmo lugares, a informação acedida por
       algumas fica indisponível em certos casos.

       %O     O endereço IP fonte da ligação.

       %P     O porto fonte da ligação.

       %C     O tempo total de CPU usado.

       %U     O tempo de utilizador de CPU usado.

       %S     O tempo de CPU do sistema.

       %r     Tamanho máximo de conjunto residual.

       %m     Tamanho da memória partilhada.

       %d     tamanho de dados não partilhados.

       %s     tamanho de pilha não partilhada.

       %f     Reclamações da página.

       %F     Falhas da página.

       %p     Trocas.

       %i     Operações de entrada de bloco.

       %o     Operações de saída de bloco.

       %n     Mensagens enviadas.

       %c     Mensagens recebidas.

       %k     Sinais recebidos.

       %w     Comutações de contexto voluntárias.

       %W     Comutações de contexto involuntárias.

       %e     Código de saída.

       %t     Tempo de execução.

       %M     O tempo actual expressado em segundos  desde  a  época  1980,  despejado  como  uma
              palavra de 32 bit de ordem de rede. Isto não tem absolutamente nenhum uso para além
              de implementar a funcionalidade time do tipo inetd.

       %I     A hora e data actual, num formato ctime(3) bonito.

VEJA TAMBÉM

       rlinetd(8), hosts_access(5)

AUTOR

       Este manual foi escrito por Mikolaj J. Habryn <dichro-doc@rcpt.to>.  Modificado por Robert
       Luberda <robert@debian.org>.