nc
não faz https. openssl s_client
é o mais próximo que você conseguirá. Faça algo assim:
$ cat request.txt | openssl s_client -connect server:443
Estou trabalhando em trabalhos de casa para minha faculdade. Tarefa é buscar página da web em HTTPS usando nc (netcat).
Para buscar uma página por HTTP, eu faço isso:
cat request.txt | nc -w 5 <someserver> 80
No request.txt eu tenho o pedido HTTP 1.1
GET / HTTP/1.1
Host: <someserver>
Agora ... Isso funciona bem. Como posso buscar uma página da web que usa HTTPS?
Eu recebo um certificado de página como este. E este é o ponto em que estou preso
openssl s_client -connect <someserver>:443
ncat --ssl
sudo apt-get install nmap
printf 'GET / HTTP/1.1\r\nHost: github.com\r\n\r\n' | ncat --ssl github.com 443
Mesmo no Superusuário: link
Testado no Ubuntu 18.04.
Você provavelmente quer usar o stunnel.
A GNU program allowing to encrypt arbitrary TCP connections inside Secure Sockets Layer (SSL).
É muito UNIX-y. Uma ótima ferramenta para uma tarefa simples.
Peça ajuda ao prof ou ao TA. Você nunca tentaria fazer HTTPS sobre netcat no mundo real ( openssl s_client
seria minha ferramenta de primeira escolha, mas há outras opções), então as chances de encontrar a resposta "certa" que o prof quer é pedir às pessoas no mundo real é baixo. Eu provavelmente passaria por todos os slides / anotações das palestras; Normalmente, esses tipos de perguntas "impossíveis" são realmente respondidas nas palestras e feitas apenas para ver quem realmente está prestando atenção nas aulas.