Новичок о sFtp и аутентификации через ключевые файлы. Здесь моя проблема;

1- У меня есть сертификат .p12 (предоставляется владельцем хоста); который я использовал openssl, чтобы извлечь из него файл с закрытым ключом (.pem).

2-Использование этого файла; Я пытался войти через WinSCP клиент; и поскольку WinSCP не поддерживает файлы .pem; Я конвертировал файл в формат .ppk.

3-Когда я пытаюсь войти в систему с моим .ppk файлом; кажется, что хост не отказывается от моего ключевого файла; но все равно запрашивает пароль (которого у меня нет, потому что аутентификация только через файлы ключей). Поэтому я не уверен, где я поступил неправильно и почему сервер все еще запрашивает у меня пароль, поэтому я застрял с сообщением "Требуется дополнительная аутентификация".

Вот мои логи WinSCP клиента, когда я пытаюсь войти в систему:

. Looking up host "xxxxx.yyyy" for SSH connection
. Connecting to xx.xxx.xxx.xxx port 22
. We claim version: SSH-2.0-WinSCP_release_5.11
. Server version: SSH-2.0-SSHD
. Using SSH protocol version 2
. Have a known host key of type rsa2
. Doing Diffie-Hellman group exchange
. Doing Diffie-Hellman key exchange with hash SHA-256
. Host key fingerprint is:
. ssh-rsa 2048 xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx
. Verifying host key rsa2 0x....
. Host key matches cached key
. Initialised AES-256 SDCTR client->server encryption
. Initialised HMAC-SHA1 client->server MAC algorithm
. Initialised AES-256 SDCTR server->client encryption
. Initialised HMAC-SHA1 server->client MAC algorithm
. Reading key file "C:\OpenSSL-Win64\bin\private.ppk"
! Using username "myusername".
. Server offered these authentication methods: password,publickey,keyboard-interactive
. Offered public key
. Offer of public key accepted
! Authenticating with public key "imported-openssh-key"
. Sent public key signature
! Further authentication required

1 ответ1

0

Стандартный протокол SSH/SFTP не использует сертификаты. Только простая пара ключей.

В OpenSSH есть собственная реализация, которая позволяет использовать сертификаты:
https://cvsweb.openbsd.org/cgi-bin/cvsweb/src/usr.bin/ssh/PROTOCOL.certkeys?annotate=HEAD

Но это реализуется только набором инструментов OpenSSH (и клиент, и сервер).

WinSCP, FileZilla или PuTTY (и другие) не поддерживают этот проприетарный метод аутентификации.

Но ваш сервер, похоже, не является OpenSSH. Таким образом, информация о том, что у вас есть сертификат, может быть неверной.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .