Gostaria de testar conexões de clientes com IMAP sobre SSL, HTTPS e outros protocolos seguros da Internet baseados em texto sobre SSL / TLS, da mesma maneira que usaria telnet ou netcat se eles não estivessem encapsulados em um protocolo seguro. Existe uma maneira de fazer com que o telnet ou o netcat passem pelo SSL / TLS, como em um canal ou programa alternativo?
62
Respostas:
Não há cliente Telnet / Netcat - eles são dois programas separados e existem pelo menos 10 clientes Telnet diferentes e pelo menos 6 versões diferentes do Netcat (netcat original, GNU netcat, OpenBSD netcat, ncat do nmap; esqueceu o resto).
As ferramentas preferidas vêm das próprias bibliotecas TLS. Eles podem ser um pouco detalhados, no entanto.
O GnuTLS possui uma ferramenta cliente TLS no Linux:
Use
-s
para STARTTLS; você precisará inserir manualmente os comandos de protocolo necessários e pressionar CtrlDquando estiver pronto.Suporta IPv6, valida certificados de servidor por padrão.
O OpenSSL possui uma ferramenta cliente TLS:
Está disponível para todos os sistemas operacionais. STARTTLS é suportado via
-starttls imap
ou-starttls smtp
options, e o programa o negociará automaticamente. (Embora descarte a resposta inicial do servidor depois de fazer isso, mas geralmente é bom.)Somente a versão ≥ 1.1 suporta IPv6.
Somente a versão ≥ 1.0.2 (IIRC) valida o certificado do servidor por padrão; versões mais antigas requerem especificação -CApath manual.
Gostaria de ter também ferramentas para testar o NSS e o SChannel, mas não consegui encontrar nenhuma.
Os programas também usam as mesmas bibliotecas, mas podem ter menos botões de configuração. Alguns até ignoram as verificações de certificado de pares por padrão ...
socat :
O modo readline pode ser usado por conveniência:
STARTTLS não é suportado.
O ncat do nmap suporta TLS (mas não STARTTLS):
Alguns clientes Telnet, como o pacote telnet-ssl no Debian, também suportam TLS:
O STARTTLS pode ser ativado usando
starttls
-se no Ctrl]menu de escape.fonte
s_client
possui suporte para IPv6 na versão 1.1.s_client
possui um recurso "útil", onde as linhas que começam com R ou Q são tratadas como comandos (consulte o manual ). Use-ign_eof
para desativar isso. Além disso,s_client
continuará mesmo se a verificação falhar; você deve verificar se diz "Verificar código de retorno: 0 (ok)" e esperar que o servidor não tente falsificar esta mensagem. Melhor usargnutls-cli
se possível.-verify_return_error
para isso.Você pode querer olhar para openssl s_client , por exemplo
fonte
Sim, há um programa chamado stunnel
tem um arquivo de configuração,
você diz em qual porta escutar, em qual porta encaminhar.
funciona para o lado do cliente, servidor ou ambos.
para que ele possa transformar um servidor que não oferece suporte a ssl, efetivamente, um que suporte.
ou um cliente que não oferece suporte a SSL, efetivamente em um que oferece.
ou faça com que um cliente e um servidor tenham uma conexão SSL.
fonte
Também há sclient ( git ) se você precisar de suporte para várias plataformas (por exemplo, Windows).
Crie um servidor local que desembrulhe tls por exemplo.com
Faça um pedido para example.com com telnet
fonte