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:
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:
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:
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’.