Удостоверяване

DR-Terminal поддържа три метода за автентикация: парола, частен ключ и FIDO2 (YubiKey) ключ за сигурност.

Парола

Най-простият път. Парола, въведена за запазена връзка, попада в защитеното хранилище на платформата — никога в JSON конфигурация. Ако полето за парола е празно, приложението пита всеки път, когато се свързвате.

Резервен вариант публичен ключ → парола: когато сървърът отхвърли публичен ключ (напр. той не е в authorized_keys), DR-Terminal автоматично пита за паролата на същия потребител, вместо да прекъсне връзката.

Частен ключ

Приемат се ключове във формат OpenSSH, PKCS#1, PKCS#8, ssh.com или PuTTY PPK (v2/v3) — форматът се разпознава автоматично, така че .ppk ключ работи без предварително конвертиране. Можете да:

Ако ключът е криптиран с парола (passphrase), DR-Terminal я пита при първото използване на ключа и след това я пази само в паметта — като ssh-agent, по едно отключване за всяко стартиране на приложението; затварянето на приложението заключва отново всеки ключ. Импортираните криптирани ключове остават в оригиналната си криптирана форма в защитеното хранилище. Поддържаме много алгоритми — RSA, ECDSA (P-256, P-384, P-521), Ed25519, Ed25519-SK, ECDSA-SK (FIDO).

Генератор на ключове

Settings → Security има съветник Generate SSH key. Изберете типа (напр. ed25519), задайте passphrase (незадължително — тя защитава ключа дори в защитеното хранилище) и ключът се запазва локално. Коментарът на ключа по подразбиране е ${user}@${host}@DR-Terminal — удобно за разпознаване на ключа на сървъра. Публичният ключ може да се копира в клипборда за ~/.ssh/authorized_keys на сървъра.

Ключовете в списъка могат да се преименуват на място; ако избраното от вас име съвпадне със съществуващо, приложението автоматично добавя (2).

Конвертор на ключове

Settings → Security → SSH keys → Convert пресериализира частен ключ между всеки често използван формат — изберете източник (съхранен ключ, файл или поставен текст) и целеви формат, след което копирайте, споделете или запазете резултата.

Формати, в двете посоки:

ФорматЧетенеЗапис
OpenSSH (BEGIN OPENSSH PRIVATE KEY)
PKCS#8 (BEGIN PRIVATE KEY)
PKCS#1 (BEGIN RSA PRIVATE KEY, само RSA)
PuTTY PPK — v2 и v3

Входът може да бъде PEM (текст), PuTTY PPK или суров двоичен DER — форматът се разпознава автоматично. Типове ключове: RSA, Ed25519 и ECDSA (P-256/384/521).

PKCS#1 описва само RSA ключове, затова тази цел се предлага само когато източникът е RSA ключ.

Превключване на връзка с парола към ключ

Не е нужно да редактирате authorized_keys на ръка. За запазена връзка с парола DR-Terminal предлага насочено надграждане на две места:

И двете изпълняват един и същ поток: изберете съхранен ключ или генерирайте нов, DR-Terminal качва публичния ключ на сървъра през съществуващия вход с парола, тества дали автентикацията с ключ наистина работи и едва тогава превключва запазената връзка към автентикация с ключ. Ако тестът се провали, връзката остава непроменена.

Ключ за сигурност (FIDO2 / YubiKey)

DR-Terminal обработва ed25519-sk и ecdsa-sk ключове — и можете да ги генерирате от вътре в приложението. Не е необходим външен ssh-keygen.

Генериране на ключ, обезпечен с YubiKey, в DR-Terminal

  1. Settings → Security → SSH keys → Generate SSH key.
  2. Включете превключвателя Security key. Изберете алгоритъма — Ed25519-SK (препоръчително) или ECDSA-SK.
  3. Докоснете вашия YubiKey при подкана. Приложението иска от токена да създаде нова идентификация и подписва публичния ключ.
  4. Ключът се съхранява в мениджъра на ключове на DR-Terminal. Копирайте публичния ключ и го поставете в ~/.ssh/authorized_keys на целевия сървър.

Windows Hello: на Windows подканата за FIDO2 PIN е нативният диалог на Windows Hello (PIN / пръстов отпечатък / лице), а не вътрешен диалог.

Резидентните ключове (съхранени в самия YubiKey) премахват нуждата да носите файла с ключа — цялата тайна живее в токена. Ключовете, генерирани в DR-Terminal, са нерезидентни: данните за идентификацията (credential handle) се пазят в мениджъра на ключове и са необходими заедно с токена.

Използване на съществуващ SK ключ

Ако вече имате id_ed25519_sk / id_ecdsa_sk, генериран другаде (напр. чрез ssh-keygen -t ed25519-sk), импортирайте го през същия мениджър на ключове — DR-Terminal третира импортираните и генерираните SK ключове по един и същ начин.

При свързване

DR-Terminal изисква докосване на вашия ключ. Индикаторът мига — докоснете го. iOS поддържа NFC и USB-C (YubiKey 5Ci и по-нови). Android — NFC + USB (OTG). Desktop използва нативни FIDO2 API-та (Windows Hello, macOS, Linux чрез libfido2).

Previous
SSH връзки
Next
Терминал