Você não pode usar ssh
, pois os clientes SSH aguardam por algum banner do servidor, antes de prosseguir com a verificação da chave do host do servidor, ... O protocolo SSH não tem nada a ver com HTTP:
$ telnet localhost 222
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
SSH-2.0-OpenSSH_7.0
Você pode consultar seu servidor da Web usando telnet
, pois ele permite que você grave mensagens em texto sem formatação em um soquete.
Outro cliente TCP (e UDP) "genérico" popular (e servidor) seria nc
:
$ nc localhost 222
SSH-2.0-OpenSSH_7.0
$ nc webserver 80
GET /
<?xml version="1.0" encoding="UTF-8"?>
[...]
Atualização, em resposta a telnet também é um protocolo diferente de http, mas por que podemos usar http sobre telnet, mas não sobre ssh
O cliente telnet
é independente de protocolo. Ele permite que você leia / escreva, tendo conectado a um servidor TCP.
Sendo o HTTP um protocolo baseado em mensagens de texto simples, você pode facilmente forjar consultas HTTP usando telnet
ou nc
.
Em resposta a O que o 'banner do servidor' pelo qual os clientes SSH aguardam antes de prosseguir com a verificação da chave de host do servidor?
O cliente SSH não é um protocolo agnóstico. A primeira coisa que seu cliente ssh fará depois de estabelecer sua sessão com seu servidor TCP é aguardar uma mensagem de banner, que deve identificar a versão do servidor OpenSSH. Então, checando a chave do host, eventualmente autenticando, o que deve abrir um shell, ... O cliente ssh é relevante somente conectando-se aos servidores ssh.