Может telnet или netcat с клиентами общаться через SSL?

Я хотел бы протестировать клиентские соединения с IMAP через SSL, HTTPS и другие безопасные текстовые интернет-протоколы через SSL/TLS, так же, как я бы использовал telnet или netcat, если бы они не были туннелированы по безопасному протоколу. Есть ли способ заставить telnet или netcat пройти SSL/TLS, такой как с каналом или альтернативной программой?

28
задан sleske
07.03.2023 4:20 Количество просмотров материала 2794
Распечатать страницу

4 ответа

клиента Telnet/Netcat нет-это две отдельные программы, и есть по крайней мере 10 различных клиентов Telnet и по крайней мере 6 различных версий Netcat (оригинал с netcat, netcat с гну, в OpenBSD с netcat, сканированиях НКАТ; забыл остальные).

предпочитаемые инструменты приходят от самих библиотек TLS. Они могут быть немного громоздким, хотя.

  • GnuTLS имеет инструмент клиента TLS на Linux:

    gnutls-cli imap.gmail.com -p 993
    

    использовать -s для STARTTLS; вам нужно будет вручную ввести необходимые команды протокола и нажать CtrlD когда будете готовы.

    поддерживает IPv6, по умолчанию проверяет сертификаты серверов.

  • OpenSSL имеет клиентское средство TLS:

    openssl s_client -connect imap.gmail.com:993
    

    это доступно для всех операционных систем. STARTTLS поддерживается через -starttls imap или -starttls smtp "параметры", и программы автоматически обсудит его. (Хотя он отбрасывает первоначальный ответ сервера после этого, но обычно все в порядке.)

    только версия ≥ 1.1 поддерживает IPv6.

    только версия ≥ 1.0.2 (IIRC) проверяет сертификат сервера по умолчанию; более старые версии требуют спецификации capath вручную.

(Я хотел бы также иметь инструменты для тестирования NSS и SChannel, но не смог найти их.)

программы используют те же библиотеки, но, возможно, меньше ручек настройки. Некоторые даже пропускают проверки сертификатов по умолчанию...

  • socat:

    socat openssl:imap.gmail.com:993 stdio
    

    readline режим может быть использован для удобства:

    socat ssl:imap.gmail.com:993 readline
    

    STARTTLS не поддерживается.

  • ncat из nmap поддерживает TLS (но не STARTTLS):

    ncat --ssl imap.gmail.com 993
    
  • некоторые клиенты Telnet, такие как то telnet-ssl пакет на Debian, также поддерживает TLS:

    telnet-ssl -z ssl imap.gmail.com 993
    

    STARTTLS может быть активирован с помощью starttls С Ctrl] меню escape.

118
отвечен grawity 2023-03-08 12:08

вы можете посмотреть openssl s_client, например,

# openssl s_client -connect dummy.com:8443
5
отвечен dchampion 2023-03-08 14:25

Да, есть программа под названием stunnel

Он имеет файл конфигурации,

вы говорите ему, какой порт слушать, какой порт пересылать.

Он работает на стороне клиента или на стороне сервера, или оба.

Так может получиться, что сервер не поддерживает SSL, в один, что делает.

или клиент, который не поддерживает ssl, фактически в тот, который это делает.

или как клиент и сервер с SSL соединение.

2
отвечен barlop 2023-03-08 16:42

там же sclient (git) если вам нужна кросс-платформенная поддержка (например, Windows).

создайте локальный сервер, который разворачивает tls для example.com

$ sclient example.com:443 localhost:3000
> [listening] example.com:443 <= localhost:3000

сделать запрос на example.com с telnet

$ telnet localhost 3000
  Trying 127.0.0.1...
  Connected to localhost.
  Escape character is '^]'.
> GET / HTTP/1.1
> Host: example.com
> Connection: close 
> 
> 
1
отвечен CoolAJ86 2023-03-08 18:59

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх