Domine o Telnet: Solucione problemas de rede com este guia completo!

O Telnet é um protocolo de rede amplamente conhecido que possibilita a conexão virtual a um computador remoto. Desenvolvido em 1969, este protocolo tem uma longa história.

Hoje em dia, o SSH (Secure Shell) substituiu o Telnet. O SSH também é um protocolo de comunicação em rede que permite que administradores de redes e sistemas se conectem a computadores remotos de forma segura.

Quanto ao Telnet, seu uso principal agora é para solucionar problemas e testar conexões. Aprender os comandos Telnet pode ser muito útil para a gestão de redes.

Neste artigo, vamos explorar o comando Telnet em detalhes, abordando seu funcionamento e como usá-lo para solucionar problemas de conexão. Vamos começar.

O que é Telnet?

Telnet é um protocolo de rede, cujo nome significa Teletype Network. Ele oferece uma interface de linha de comando para a comunicação com servidores remotos. Administradores de sistemas e redes utilizam a comunicação terminal a terminal do Telnet para obter controle remoto e realizar várias ações, como a configuração inicial de dispositivos.

Para utilizar o protocolo Telnet, é necessário o Telnet Client. Este cliente permite que os usuários acessem e utilizem aplicações em sistemas remotos através de TCP/IP. O cliente Telnet se comunica com um aplicativo de servidor Telnet para realizar as operações. Além disso, o Telnet Client está disponível em todos os sistemas operacionais modernos, como Windows, Linux e macOS.

Nota: Neste artigo, quando mencionarmos “Telnet”, estaremos nos referindo ao “Cliente Telnet”, salvo indicação em contrário.

O Telnet é seguro?

Quando foi criado em 1969, a segurança não era uma prioridade na execução de tarefas de rede. Por isso, o Telnet não utiliza nenhum tipo de criptografia. Devido à sua falta de segurança, não é recomendado para conexões com clientes remotos através da rede TCP/IP. Fazer isso expõe seus dados a hackers, que podem interceptar informações não criptografadas. O SSH é uma ótima alternativa que oferece um método seguro de conexão remota a servidores.

Como o Telnet funciona?

O funcionamento do protocolo Telnet pode ser visualizado da seguinte maneira:

Como o Telnet opera.

O Telnet é uma comunicação baseada em texto que estabelece um sistema de comunicação interativa bidirecional (protocolo cliente-servidor). Ele emprega uma conexão de oito bits para a transmissão de dados. Além disso, é necessário um teclado e um monitor conectados ao terminal para usar o Telnet.

Você digita um comando no seu terminal para se conectar a um computador remoto. Uma vez conectado, o Telnet oferece controle sobre o servidor, incluindo seus arquivos e processos.

Para se conectar a um servidor remoto, o usuário deve digitar “Telnet” no prompt de comando. A sintaxe é:

telnet hostname port

Após uma conexão bem-sucedida, é possível utilizar o prompt do Telnet para inserir mais comandos.

O Telnet pode ser utilizado para:

  • Verificar portas abertas
  • Editar arquivos e executar programas
  • Configurar dispositivos de rede, como switches e roteadores

Para encerrar a sessão, é preciso digitar “quit” no prompt do Telnet.

Como ativar o cliente Telnet no Windows/Linux e macOS

O cliente Telnet está disponível em todas as principais plataformas e sistemas operacionais. No entanto, pode ser necessário instalá-lo ou ativá-lo antes de utilizá-lo.

#1. Windows

Se você utiliza o Windows 7 ou versões superiores (8, 10, 11) ou Windows Vista, pode ativar o cliente Telnet seguindo os passos abaixo:

  • Acesse o menu Iniciar e pesquise por Painel de Controle. Também é possível abrir o Painel de Controle pressionando Win + R e digitando “control”.
  • Selecione “Programas” > “Programas e Recursos”.
  • No painel esquerdo, selecione “Ativar ou desativar recursos do Windows”.
  • Marque a caixa ao lado de “Cliente Telnet” e pressione “OK”.
  • Clique em “Fechar” quando o Windows mostrar a mensagem de que as alterações foram concluídas.

Ativando o Telnet no Windows

Observação: O cliente Telnet pode ser utilizado imediatamente, sem a necessidade de reiniciar o computador.

#2. Linux

Assim como no Windows, o Linux também não vem com o Telnet pré-instalado.

Para instalar o Telnet no Ubuntu, utilize o seguinte comando:

# sudo apt-get install telnet

Nota: O comando pode variar dependendo da sua distribuição Linux.

#3. macOS

O macOS também oferece suporte ao Telnet. Para instalá-lo, é preciso usar o Homebrew. Caso o Homebrew não esteja instalado, você pode instalá-lo executando o seguinte comando:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Você será solicitado a inserir a senha de administrador para autorizar a instalação.

Com o Homebrew instalado, execute o seguinte comando para instalar o Telnet no macOS:

brew install telnet

Utilizando o Telnet para testar e solucionar problemas de conexões de rede

Embora o Telnet não seja a melhor opção para conexões remotas, ele ainda é útil para testar e solucionar problemas de conexão de rede.

Antes de prosseguirmos, vamos analisar rapidamente a sintaxe do Telnet:

telnet <endereço IP do servidor/host> <porta>

Nesta sintaxe, o endereço IP do servidor/host é o servidor ao qual se deseja conectar, e a porta é o número da porta TCP.

Por exemplo, para se conectar ao servidor example.com na porta 80, digite o seguinte comando:

telnet example.com 80

Para solucionar problemas, é importante conhecer o endereço IP/nome do servidor remoto e o número da porta com antecedência.

Vamos começar.

Solucionando problemas de servidores web

O Telnet oferece uma maneira simples de testar a conectividade com um servidor. Basta se conectar ao endereço IP do servidor/host e à porta que aceita a conexão.

Por exemplo, para se conectar a 23.45.75.22 na porta 532, execute o seguinte comando:

telnet 23.45.75.22 532

A partir deste ponto, duas coisas podem acontecer:

  • A conexão com o servidor é bem-sucedida. Você verá uma mensagem como “conectado ao servidor”, ou outra confirmação, ou será solicitado a inserir mais comandos.
  • A conexão com o servidor não é bem-sucedida. Neste caso, mensagens como “Falha na conexão” ou “Conexão recusada” podem ser exibidas.
  • O Telnet não retorna nenhuma mensagem.
  • Várias razões podem levar a falhas na conexão com um servidor remoto. Se o Telnet não retornar mensagens de erro, pode ser que um firewall ou antivírus esteja bloqueando a conexão, seja no seu lado ou no lado do servidor.

    Ao nos conectarmos a geefklare.com na porta 80, vemos uma conexão instantânea, aguardando mais comandos:

    telnet geefklare.com 80
    Connected to etechpt.com.com.
    Escape character is '^]'.

    Agora, digite o seguinte comando:

    GET / HTTP/1.1
    Host: etechpt.com.com

    A resposta será:

    HTTP/1.1 200 OK
    Date: Fri, 18 Nov 2022 04:40:33 GMT
    Content-Type: text/plain; charset=UTF-8
    Content-Length: 16
    X-Frame-Options: SAMEORIGIN
    Referrer-Policy: same-origin
    Cache-Control: private, max-age=0, no-store, no-cache, must-revalidate, post-check=0, pre-check=0
    [Saída adicional do servidor]

    Agora, vamos analisar uma tentativa de conexão falha:

    telnet 23.45.75.222 532
    Connecting To 23.45.75.222...Could not open a connection to the host on port 532: Connect failed

    Verificando se uma porta está aberta

    Se um servidor estiver acessível remotamente via Telnet, também é possível usá-lo para verificar se uma porta está aberta.

    Para verificar se uma porta no seu servidor está aberta, utilize o seguinte comando:

    telnet <endereço IP do servidor> <porta>

    Por exemplo, se o endereço IP do seu servidor é 23.45.47.53 e você deseja verificar a porta 532:

    telnet 23.45.47.53 532

    Se o comando for bem-sucedido, você verá uma tela em branco, o que indica que a porta está aberta. Se aparecer “conectando..” e, em seguida, uma mensagem de erro, isso significa que a porta não está aberta.

    Connection to 23.45.47.53:532 - fail
    Error #110 (Connection timed out)

    Solução de problemas de servidores de e-mail SMTP

    O protocolo Simple Mail Transfer Protocol (SMTP) gerencia a comunicação entre servidores de e-mail.

    Você pode usar o Telnet para solucionar problemas de servidores SMTP, verificando se eles estão recebendo e enviando mensagens. Isso é feito enviando solicitações de mensagens manuais para o servidor SMTP. Se tudo estiver funcionando corretamente, você receberá uma resposta.

    O Telnet permite testar a conexão STMP de duas formas:

  • Testar o fluxo de e-mails da internet para o seu servidor de e-mail.
  • Testar o fluxo de mensagens do seu servidor de e-mail para outro servidor.
  • Para executar uma troca de amostra, digite o seguinte comando no seu terminal:

    telnet mail.etechpt.com.com 25
    Trying 192.168.0.68…
    Connected to mail.etechpt.com.com
    Escape character is '^]'.
    220-mail.etechpt.com.com ESMTP Exim 4.7
    220-We do not authorize the use of this system to
    220 transport unsolicited and/or bulk e-mail.
    EHLO mail.etechpt.com.com
    250-etechpt.com.com Hello etechpt.com.com [192.168.3.200]
    250-AUTH PLAIN LOGIN
    
    QUIT

    Neste exemplo, os dois comandos inseridos pelo usuário foram:

  • EHLO mail.etechpt.com.com
  • QUIT
  • O comando EHLO identifica o nome de domínio antes do uso do comando MAIL FROM. O comando QUIT finaliza a sessão Telnet.

    Para comandos mais avançados, consulte o artigo sobre como usar o Telnet para testar a comunicação SMTP em servidores Exchange.

    Solução de problemas de servidores FTP

    Assim como os servidores SMTP e web, é possível solucionar problemas de servidores FTP usando o Telnet. Basta inserir o endereço IP do servidor FTP e conectar à porta 21.

    telnet ftp.etechpt.com.com 21

    Se a tentativa for bem-sucedida, você estará conectado ao servidor. Caso contrário, uma mensagem de erro será exibida.

    Error #0 (php_network_getaddresses: getaddrinfo failed: No address associated with hostname)

    Solução de problemas de SSH

    O SSH é a versão moderna de conexões seguras e substituiu o Telnet. Você pode utilizar o Telnet para verificar se um servidor está executando o SSH.

    Para isso, execute o comando Telnet com o endereço IP do servidor e a porta 22.

    telnet etechpt.com.com 22
    Trying 192.168.0.62…
    Connected to etechpt.com.com.
    Escape character is '^]'.
    SSH-2.0-OpenSSH_5.3

    Considerações Finais

    O Telnet continua sendo uma ferramenta útil nos dias atuais. Ele permite solucionar problemas de conexões de rede sem a necessidade de ferramentas complexas. Com o Telnet, é possível verificar a acessibilidade de um servidor web, confirmar se uma porta está aberta e solucionar problemas de conexões SSH e FTP.

    Você também pode verificar este artigo sobre como resolver o erro ‘comando telnet não encontrado’.