Usando o telnet para obter o cabeçalho do site

7

Eu tenho pergunta, é possível obter o cabeçalho do site usando o telnet? Website parece com este domain.name.server.com/~USER (apenas exemplo). E eu quero pegar o cabeçalho por telnet.

telnet domain.name.server.com/~USER 80 < - não funciona

telnet domain.name.server.com 80 funciona, mas eu neet a get ~ user. Existe alguma possibilidade de fazer isso?

    
por MyUnix 21.10.2015 / 14:08

4 respostas

19

Use telnet domain.name.server.com 80 então

HEAD /~USER HTTP/1.1
Host: domain.name.server.com

(Então você tem que pressionar Enter mais uma vez.)

Agora, ele deve mostrar o cabeçalho desta página.

Para um exemplo da vida real:

$ telnet unix.stackexchange.com 80                 
Trying 198.252.206.16...
Connected to unix.stackexchange.com.
Escape character is '^]'.
HEAD /questions/237635/using-telnet-to-get-website-header HTTP/1.1
Host: unix.stackexchange.com

HTTP/1.1 200 OK
Cache-Control: public, no-cache="Set-Cookie", max-age=60
Content-Length: 70679
Content-Type: text/html; charset=utf-8
Expires: Wed, 21 Oct 2015 19:27:43 GMT
Last-Modified: Wed, 21 Oct 2015 19:26:43 GMT
Vary: *
X-Frame-Options: SAMEORIGIN
X-Request-Guid: dbf9d0f6-0ca4-423f-98f0-4cdf2bf51bf1
Set-Cookie: prov=08886524-c640-40ad-a0ee-246db3219228; domain=.stackexchange.com; expires=Fri, 01-Jan-2055 00:00:00 GMT; path=/; HttpOnly
Date: Wed, 21 Oct 2015 19:26:43 GMT

Connection closed by foreign host.
    
por 21.10.2015 / 14:50
2

Se você puder usar wget em vez de telnet, poderá obter todos os cabeçalhos com um único comando:

wget -q -S -O - domain.name.server.com/~USER | : 2>&1
  • -q desativa o envio de mensagens de log normal
  • -S ativa o registro de cabeçalhos no servidor
  • -O - direciona o conteúdo do arquivo baixado para STDOUT
  • | : canaliza o conteúdo do arquivo baixado para o utilitário no-op : . Isso efetivamente impede o download de todo o arquivo, o que é vantajoso se for um arquivo grande
  • 2>&1 (opcional) redireciona os cabeçalhos registrados para o STDOUT

Por exemplo:

$ wget -q -S -O - unix.stackexchange.com/questions/237635/using-telnet-to-get-website-header | :
  HTTP/1.1 200 OK
  Cache-Control: public, no-cache="Set-Cookie", max-age=49
  Content-Type: text/html; charset=utf-8
  Expires: Wed, 21 Oct 2015 21:22:21 GMT
  Last-Modified: Wed, 21 Oct 2015 21:21:21 GMT
  Vary: *
  X-Frame-Options: SAMEORIGIN
  X-Request-Guid: 5ac03697-68fa-4be5-9f32-2905ec3eff38
  Set-Cookie: prov=5d9866f4-9d98-4587-a7cc-f6ea5cd76075; domain=.stackexchange.com; expires=Fri, 01-Jan-2055 00:00:00 GMT; path=/; HttpOnly
  Date: Wed, 21 Oct 2015 21:21:32 GMT
  Content-Length: 76585
$ 
    
por 21.10.2015 / 23:18
1

Curl é uma maneira sucinta de visualizar cabeçalhos HTTP também:

curl -v http://unix.stackexchange.com/questions/237635/using-telnet-to-get-website-header
    
por 22.10.2015 / 00:04
-1

Você também pode fazer isso por meio de https, usando openssl em vez de telnet. Há um exemplo em tutorial que publiquei recentemente:

openssl s_client -connect domain.name.server.com:443
HEAD /~USER HTTP/1.0
Host: domain.name.server
    
por 09.09.2017 / 14:58

Tags