Sikkerhed og data
Betroede værter (known_hosts)
Den første forbindelse til en vært fanger dens fingeraftryk af den offentlige nøgle (SHA-256) og gemmer det, efter du bekræfter. Efterfølgende forbindelser sammenligner fingeraftrykket — hvis det nogensinde ændres, får du en tydelig advarsel.
Administrer listen i Settings → Security → Trusted hosts — hver post viser værten, nøglealgoritmen (Ed25519, RSA, ECDSA…) og fingeraftrykket og kan fjernes.
Hvordan forbindelsen beskyttes
DR-Terminal bruger sin egen SSH-implementering, hærdet mod aktive angribere og fjendtlige servere:
- Værtsnøglen kontrolleres under håndtrykket, før noget hemmeligt sendes. Hvis en mand-i-midten (man-in-the-middle) præsenterer den forkerte nøgle, afbrydes forbindelsen ved nøgleudvekslingen — din adgangskode eller private nøgle forlader aldrig enheden.
- Kun stærke algoritmer, som standard. Ældre, nedgraderingssårbare algoritmer — SHA-1-signaturer og -MAC'er,
ssh-rsa, 1024-bit Diffie-Hellman — er slået fra. Forbindelser bruger moderne nøgleudveksling (Curve25519, ECDH, Diffie-Hellman ≥ 2048-bit), ciphers (AES-GCM, ChaCha20-Poly1305, AES-CTR) og værtsnøgletyper (Ed25519, ECDSA, RSA-SHA2). En server, der kun tilbyder noget svagere, kan ikke forbinde. - Ingen tavs nedgradering. Den signatur, serveren bruger, skal matche det, der blev forhandlet, så den kan ikke falde tilbage til en svagere bag din ryg.
- Terrapin (CVE-2023-48795) er afbødet gennem streng nøgleudveksling.
- Modstandsdygtig over for en fjendtlig eller fejlbehæftet server. Pakkelængder, meddelelsesfelter og kanalvinduer, der kommer fra netværket, kontrolleres alle for grænser, så en ondsindet server ikke kan få appen til at gå ned eller udtømme dens hukommelse — ikke engang før du godkender.
Disse beskyttelser er slået til automatisk. Du interagerer kun med dem via prompten om betroede værter ovenfor.
Eksporterede nøgler
Når du konverterer eller eksporterer en privat nøgle (SSH keys → Convert) og angiver en adgangssætning, bruger krypteringen en stærk nøgleafledningsfunktion, der vælges pr. format — bcrypt til OpenSSH, PBKDF2 til PKCS#8, Argon2id til PuTTY PPK v3 — og hver salt og IV kommer fra en kryptografisk sikker tilfældighedsgenerator. Konverteren læser og skriver OpenSSH, PKCS#8, PKCS#1 og PuTTY PPK (v2/v3), fra både PEM og binær DER.
Hvor hemmeligheder lever
Adgangskoder, private nøgler og adgangssætninger bliver aldrig serialiseret til forbindelses-JSON. De går direkte til platformens sikre lager:
- Android — EncryptedSharedPreferences, understøttet af hardware-Keystore.
- iOS — Keychain (biometribeskyttet, hvis du har aktiveret det).
- Desktop — AES-256-GCM-krypteret fil, nøgle afledt af brugerprofilen.
Krypteret konfigurationssikkerhedskopi
Settings → Configuration → Export backup opretter en adgangskodebeskyttet .drterminal-fil. Den indeholder: forbindelser (med loginoplysninger), grupper, betroede værter, SSH-nøgler, SFTP-bogmærker, kommandohistorik, fremhævningsregler, snippets, serielle profiler og Telnet-profiler, terminalens udseende og indstillinger samt (på mobil) konfigurationen af DevOps-tastaturet. Import backup gendanner det samme bundt — nyttigt ved flytning mellem maskiner.
Format: JSON krypteret med AES-256-GCM. Adgangskoden gemmes aldrig i filen — den afleder kun krypteringsnøglen (PBKDF2, 100 000 iterationer af SHA-256).
Importér ~/.ssh/config
På Desktop kan du masseimportere værter fra en eksisterende OpenSSH-konfiguration. Importøren fortolker Host-, HostName-, User-, Port-, IdentityFile- og ProxyJump-poster og tilføjer dem som gemte forbindelser. Nøglefiler refereret af IdentityFile indlæses fra disk i SecureStorage.
Logniveauer
I Settings → Terminal → File log level vælger du, hvad der når frem til ~/.dr-terminal/logs/ (Desktop) eller tilsvarende på mobil. Standard: ERROR — minimal støj. Til diagnostik skift til DEBUG.