Comando telnet do Linux
O programa telnet é uma interface de usuário para o protocolo TELNET .
Descrição
O comando telnet é usado para comunicação interativa com outro host usando o protocolo TELNET. Ele começa no modo de comando, onde imprime um prompt de comando telnet (” telnet> “).
Se o telnet for chamado com um argumento de host , ele executará um comando aberto implicitamente (consulte a seção Comandos abaixo para obter detalhes).
Sintaxe
telnet [-468ELadr] [-S tos ] [-b address ] [-e escapechar ] [-l user ] [-n tracefile ] [ host [ porta ]]
Opções
-4 | Forçar resolução de endereço IPv4 . |
-6 | Forçar resolução de endereço IPv6 . |
-8 | Solicitar operação de 8 bits . Esta opção causa uma tentativa de negociar a opção BINARY TELNET para entrada e saída. Por padrão, o telnet não é “limpo de 8 bits” (não reconhece codificações de caracteres de 8 bits , como Unicode ). |
-E | Desativa a funcionalidade de caractere de escape ; isto é, define o caractere de escape como “nenhum caractere”. |
-L | Especifica um caminho de dados de 8 bits na saída. Essa opção faz com que a opção BINARY TELNET seja negociada na saída. |
-a | Tentativa de login automático . Atualmente, isso envia o nome de usuário através da variável USER da opção ENVIRON, se suportado pelo sistema remoto. O nome de usuário é recuperado através da chamada do sistema getlogin . |
-b endereço | Use bind no soquete local para vinculá-lo a um endereço local específico. |
-d | Define o valor inicial da alternância de depuração para TRUE . |
-r | Emule o rlogin . Nesse modo, o caractere de escape padrão é um til . Além disso, a interpretação do caractere de escape é alterada: um caractere de escape seguido de um ponto faz com que o telnet se desconecte do host remoto. A ^ Z (Control-Z) em vez de um ponto suspende o telnet e um ^] (colchete Control-close, o caractere de escape padrão do telnet ) gera um prompt de telnet normal . Esses códigos são aceitos apenas no início de uma linha. |
-S tos | Define a opção IP TOS (tipo de serviço) da conexão telnet para o valor tos . |
-e escapechar | Define o caractere de escape para escapechar . Se nenhum personagem é fornecido, será usado nenhum caractere de escape. Entrar o caractere de escape, enquanto causas ligadas telnet a cair para o modo de comando. |
-l usuário | Especificar usuário como o usuário se conectar como no sistema remoto. Ao enviar o nome especificado como o USUÁRIO variável de ambiente , por isso requer que o sistema remoto apoiar o TELNET ENVIRON opção. Esta opção implica a -a opção, e também pode ser usado com o aberto comando. |
-n tracefile | Abre um arquivo de rastreamento para registrar informações de rastreamento. Veja o comando set tracefile abaixo. |
host | Especifica um host para entrar em contato pela rede. |
port | Especifica um número da porta ou nome do serviço a ser contatado. Se não especificado, a porta telnet ( 23 ) é usada. |
Protocolo
Depois que uma conexão é aberta, o telnet tentará ativar a opção TELNET LINEMODE . Se isso falhar, o telnet reverterá para um dos dois modos de entrada: “caractere de cada vez” ou “linha antiga por linha”, dependendo do suporte do sistema remoto.
Quando o LINEMODE está ativado, o processamento de caracteres é feito no sistema local, sob o controle do sistema remoto. Quando a edição de entrada ou o eco de caracteres devem ser desativados, o sistema remoto retransmitirá essas informações. O sistema remoto também retransmitirá as alterações para quaisquer caracteres especiais que ocorram no sistema remoto, para que possam ter efeito no sistema local.
No modo “caractere de cada vez”, a maioria dos textos digitados é imediatamente enviada ao host remoto para processamento.
No modo “linha antiga por linha”, todo o texto é repetido localmente e (normalmente) somente as linhas concluídas são enviadas ao host remoto. O “caractere de eco local” (inicialmente ” ^ E “) pode ser usado para desativar e ativar o eco local (isso seria usado principalmente para inserir senhas sem que a senha ecoasse).
Se o LINEMODE opção é ativada, ou se as localchars alternar é VERDADEIRO (o padrão para “velha linha por linha”; veja abaixo), o usuário quit , intr , e flush personagens estão presos no local, e enviado como sequências de protocolo Telnet para o lado remoto. Se o LINEMODE já foi ativado, o susp e o eof do usuário também são enviados como seqüências do protocolo TELNET e a saída é enviada como um TELNET ABORT em vez de BREAK . Existem opções (consulte ativar / desativar autoflush e ativar / sincronizar automaticamente, abaixo) que fazem com que essa ação libere a saída subsequente para o terminal (até que o host remoto reconheça a sequência TELNET ) e libere a entrada anterior do terminal (no caso de quit e intr ).
Comandos
Os seguintes comandos telnet estão disponíveis. Prefixos exclusivos são entendidos como abreviações.
auth argumento… | O comando auth controla a opção de protocolo TELNET AUTHENTICATE . Se o telnet foi compilado sem autenticação, o comando auth não será suportado. Os argumentos válidos são os seguintes:
Observe que a versão atual do telnet não suporta autenticação. |
||||||||||||||||||||||||||||||||||||||||
close | Feche a conexão com o host remoto, se houver, e retorne ao modo de comando. | ||||||||||||||||||||||||||||||||||||||||
display argumento … | Exiba todos ou alguns dos valores set e toggle (veja abaixo). | ||||||||||||||||||||||||||||||||||||||||
encrypt argumento … | O comando encrypt controla a opção de protocolo TELNET ENCRYPT . Se o telnet foi compilado sem criptografia , o comando encrypt não será suportado.
Os argumentos válidos são os seguintes:
Observe que a versão atual do telnet não suporta criptografia. |
||||||||||||||||||||||||||||||||||||||||
environ argumentos… | O comando environ é usado para propagar variáveis de ambiente através do link telnet usando a opção de protocolo TELNET ENVIRON . Todas as variáveis exportadas do shell são definidas, mas apenas as variáveis DISPLAY e PRINTER estão marcadas para serem enviadas por padrão. A variável USER está marcada para ser enviada se as opções de linha de comando -a ou -l forem usadas.
Os argumentos válidos para o comando environ são:
|
||||||||||||||||||||||||||||||||||||||||
logout | Envie a opção de protocolo TELNET LOGOUT para o host remoto. Este comando é semelhante a um comando close . Se o host remoto não suportar a opção LOGOUT , nada acontecerá. Mas, se o fizer, esse comando deve fazer com que ele feche a conexão. Se o lado remoto também suportar o conceito de suspender a sessão de um usuário para posterior recolocação, o comando logout indica que a sessão deve ser encerrada imediatamente. | ||||||||||||||||||||||||||||||||||||||||
mode type | O tipo é uma das várias opções, dependendo do estado da sessão. telnet pede ao host remoto para entrar no modo solicitado. Se o host remoto disser que pode, esse modo entra em vigor. As opções de tipo são as seguintes:
|
||||||||||||||||||||||||||||||||||||||||
open host [[-l] user][– port] | Abra uma conexão com o host nomeado . Se nenhum número de porta for especificado, o telnet tentará contatar um daemon de telnet na porta padrão ( 23 ). A especificação do host pode ser um nome de host ou endereço IP. A opção -l pode ser usada para especificar um nome de usuário a ser passado para o sistema remoto, como a opção de linha de comando -l .
Ao conectar-se a portas diferentes da porta telnet , o telnet não tenta negociações do protocolo telnet. Este método de conexão possibilita a conexão a serviços que não suportam o protocolo telnet sem causar confusão. A negociação de protocolo pode ser forçada colocando um travessão antes do número da porta. Depois de estabelecer uma conexão, quaisquer comandos associados ao host remoto em / etc / telnetrc e o arquivo .telnetrc do usuário são executados, nessa ordem. O formato dos arquivos telnetrc é o seguinte: As linhas que começam com # e as linhas em branco são tratadas como comentários (ignorados). O resto do arquivo deve consistir em nomes de host e sequências de comandos telnet para usar com esse host. Os comandos devem ser um por linha, recuados por espaços em branco; linhas que começam sem espaço em branco são interpretadas como nomes de host. As linhas que começam com o nome de host especial ‘ DEFAULT ‘ serão aplicadas a todos os hosts. Nomes de host incluindo ‘ DEFAULT ‘ podem ser seguidos imediatamente por dois pontos e um número de porta ou string. Se uma porta for especificada, ela deve corresponder exatamente ao que está especificado na linha de comando. Se nenhuma porta foi especificada na linha de comando, o valor ‘ telnet‘ é usado. Ao conectar-se a um determinado host, os comandos associados a esse host são executados. |
||||||||||||||||||||||||||||||||||||||||
quit | Feche qualquer sessão aberta e saia do telnet . Uma condição de fim de arquivo na entrada, quando no modo de comando, também acionará essa operação. | ||||||||||||||||||||||||||||||||||||||||
send argumentos… | Envie uma ou mais sequências de caracteres de protocolo telnet especiais para o host remoto. A seguir estão os códigos que podem ser especificados (mais de um pode ser usado em um comando):
|
||||||||||||||||||||||||||||||||||||||||
set tipo do argumento
unset tipo do argumento |
O comando set irá definir qualquer uma das variáveis de telnet para um valor específico ou como TRUE . O valor especial off desativa a função associada à variável. Este comando é equivalente a usar o comando unset . O comando unset desabilitará ou ajustará para FALSE qualquer uma das variáveis especificadas. Os valores das variáveis podem ser interrogados com o comando display . As variáveis que podem ser set ou unset , mas não ativadas, são listadas aqui. Além disso, qualquer uma das variáveis para o comando de alternância pode ser explicitamente set ou unset .
|
||||||||||||||||||||||||||||||||||||||||
slc state | O comando slc (definir caracteres locais) é usado para definir ou alterar o estado dos caracteres especiais quando a opção TELNET LINEMODE está habilitada. Caracteres especiais são caracteres mapeados para sequências de comandos TELNET (como ip ou quit ) ou caracteres de edição de linha (como erase e kill ). Por padrão, os caracteres especiais locais são exportados.
estado pode ser um dos seguintes:
|
||||||||||||||||||||||||||||||||||||||||
status | Mostra o status atual do telnet . Este comando inclui o nome do host remoto, se houver, bem como o modo atual. | ||||||||||||||||||||||||||||||||||||||||
toggle argumentos … | Alterne (entre TRUE e FALSE ) vários sinalizadores que controlam como o telnet responde aos eventos. Esses sinalizadores podem ser definidos explicitamente como TRUE ou FALSE usando os comandos set e unset . Mais de um sinalizador pode ser alternado ao mesmo tempo. O estado desses sinalizadores pode ser examinado com o comando display. Sinalizadores válidos são:
|
||||||||||||||||||||||||||||||||||||||||
z | Suspenda o telnet . Este comando funciona apenas quando o usuário está usando o C Shell ( csh ). | ||||||||||||||||||||||||||||||||||||||||
! [ comando ] | Execute um único comando em uma subshell no sistema local. Se o comando for omitido, um subshell interativo é chamado. | ||||||||||||||||||||||||||||||||||||||||
? [ comando ] | Obter ajuda. Sem argumentos, o telnet imprime um resumo da ajuda. Se um comando for especificado, o telnet imprimirá as informações de ajuda para esse comando. |
Ambiente
O telnet usa pelo menos as variáveis de ambiente HOME , SHELL , DISPLAY e TERM . Outras variáveis de ambiente podem ser propagadas para o outro lado através da opção TELNET ENVIRON .
arquivos
/ etc / telnetrc | valores globais de inicialização do telnet |
~ / .telnetrc | valores de inicialização de telnet personalizados pelo usuário |
Exemplos
telnet myhost.com
Tenta abrir uma conexão com o host remoto myhost.com . Se uma conexão for estabelecida, o host solicitará um nome de login e senha.
telnet -l nome_do_usuário myhost.com 5555
Tenta abrir uma conexão com o host remoto myhost.com na porta 5555 , usando o nome de login myusername . Se for bem-sucedido, o host solicitará a senha do meu nome de usuário.
telnet
Abre um prompt local de telnet> , onde você pode inserir qualquer um dos comandos listados acima . Por exemplo, inserindo o seguinte comando no prompt:
telnet> abra myhost.com
… tentará abrir uma conexão com myhost.com , como no nosso primeiro exemplo.
Comandos relacionados
rlogin – inicia uma sessão em um sistema remoto.
ssh – Faça login em um sistema remoto com segurança.