Guia do Linux/Avançado/Servidor telnet/Introdução

Introdução

editar

O serviço telnet é oferece o login remoto em seu computador, que lhe permite trabalhar conectado a distância como se estivesse em frente a ela. Ele substitui o rlogin e possui muitas melhorias em relação a ele, como o controle de acesso, personalização de seção e controle de terminal.

Versão

editar

É assumido que esteja usando a versão 0.17.16 do telnet. As explicações contidas aqui podem funcionar para versões posteriores, mas é recomendável que leia a documentação sobre modificações no programa (changelog) em busca de mudanças que alterem o sentido das explicações fornecidas aqui.

Características

editar
    • Conexão rápida (não utiliza transmissão de dados criptografada), recomendado para ambientes seguros.
    • Possui uma versão com suporte a criptografia via ssl.
    • Possui controle de acesso tcpd (usando /etc/hosts.allow e /etc/hosts.deny).
    • A maioria dos sistemas operacionais trazem este utilitário por padrão como sistema de acesso remoto a máquinas UNIX.
    • Suporte a terminais ANSI (cores e códigos de escape especiais para o console) e uma grande variedade de outros terminais.

Ficha técnica

editar

Pacotes:

    • telnet - Cliente telnet com suporte a autenticação.
    • telnetd - Servidor telnet com suporte a autenticação.
    • telnet-ssl - Cliente telnet com suporte a autenticação e ssl. Também suporta conexão a servidores telnet padrão quando o servidor não suporta ssl. Por padrão é tentada a conexão usando ssl, se esta falhar será assumida a transmissão em texto plano.
    • telnetd-ssl - Servidor telnet com suporte a autenticação e ssl. Também suporta conexão de clientes telnet padrão (sem suporte a ssl).

Utilitários:

    • in.telnetd - Servidor telnet
    • telnet - Cliente telnet padrão (quando o pacote telnet-ssl está instalado, é simplesmente um link para telnet-ssl).
    • telnet-ssl - Cliente telnet com suporte a ssl.

Requerimentos de Hardware

editar

Normalmente o servidor telnet é carregado via inetd, o que permite sua utilização em uma máquina com a quantidade mínima de memória RAM requerida para o funcionamento do kernel: 2 MB para kernels da série 2.2 e 4MB para kernels da série 2.4.

Arquivos de log criados pelo servidor telnet

editar

Mensagens do servidor telnet relacionadas com seções são enviadas para /var/log/daemon.log. Adicionalmente, as mensagens sobre autenticação (serviços de login) são registradas pelos módulos PAM em /var/log/auth.log.

Instalação

editar

apt-get install telnet telnetd ou apt-get install telnet-ssl telnetd-ssl. Os pacotes com o -ssl no final possuem suporte a criptografia ssl. Por padrão a porta usada para executar o serviço telnet é a 23 (ou outro número de porta definido no /etc/services). A instalação do servidor telnet é feita via inetd (no arquivo /etc/inetd.conf) e o controle de acesso ao serviço é feito através dos arquivos /etc/hosts.allow e /etc/hosts.deny (veja [ch-rede.html#s-rede-servicos-inetd Serviços iniciados através do inetd, Seção 4.7.2] e [ch-rede.html#s-rede-seg-tcpd O mecanismo de controle de acessos tcpd, Seção 4.8.3]). O servidor tem o nome in.telnetd e este deverá ser usado para ajustar o controle de acesso nos arquivos acima.

Iniciando o servidor/reiniciando/recarregando a configuração

editar

O arquivo que controla o funcionamento do servidor telnet é o /etc/inetd.conf e o controle de acesso sendo feito pelos arquivos /etc/hosts.allow e /etc/hosts.deny. Será necessário reiniciar o servidor inetd caso algum destes três arquivos seja modificado: killall -HUP inetd. A porta de operação padrão é a 23 e pode ser modificada no arquivo /etc/services.

Opções de linha de comando

editar

Opções de linha de comando do servidor telnetd:

    • -D nível_de_depuração - Permite especificar o que será registrado pelo servidor durante a conexão dos clientes telnet. As seguintes opções são suportadas:
      • options - Mostra detalhes sobre a negociação das opções de conexão.
      • report - Mostra detalhe de opções e o que está sendo feito.
      • netdata - Mostra os dados transferidos na conexão telnetd.
      • ptydata - Mostra os dados mostrados na pty.
    • -edebug - Ativa a depuração do código de criptografia apenas para o servidor telnet com suporte a ssl.
    • -h - Somente mostra os detalhes de configuração do seu PC após o usuário fornecer um nome/senha válidos.
    • -L [programa] - Utiliza o programa especificado para fazer o login do usuário (/usr/sbin/telnetlogin é o padrão).
    • -n - Não envia pacotes keep alive para verificar o estado da conexão. Desativando esta opção poderá fazer o servidor ficar rodando constantemente caso aconteça algum problema e o usuário não consiga se desconectar normalmente.
    • -S TOS - Ajusta o tipo de serviço usado na conexão para o valor especificado (veja [ch-fw-iptables.html#s-fw-iptables-mangle-TOS Especificando o tipo de serviço, Seção 10.5.1] para maiores detalhes sobre esta opção e os valores aceitos).

Estas opções deverão ser especificadas após o servidor in.telnetd no arquivo /etc/inetd.conf.