Det viktigste om OpenSSL på kommandolinjen
Lær de viktigste OpenSSL-kommandoene for nøkkelgenerering, kryptering, hashing og inspeksjon av sertifikater.
Det viktigste om OpenSSL på kommandolinjen er en gratis leksjon i Cryptology Academy på CoddyKit. Dette er leksjon 1 av 4. Du kan lese hele leksjonen gratis nedenfor – og deretter øve praktisk i nettleseren med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i Cryptology Academy, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i Cryptology Academy inneholder totalt 4 leksjoner.
OpenSSL-versjon og bygginformasjon
Kommandoen "openssl version -a" viser OpenSSL-versjonen, byggedatoen, kompilatoren og konfigurerte alternativer. Det er viktig å kontrollere versjonen fordi kryptografiske funksjoner og standardinnstillinger varierer betydelig mellom OpenSSL 1.0.x, 1.1.x og 3.x. Mange eldre algoritmer er deaktivert som standard i nyere versjoner av sikkerhetshensyn.
Generere RSA-nøkler
Kommandoen "openssl genrsa -out private.pem 4096" genererer en 4096-biters privat RSA-nøkkel i PEM-format. Til produksjonsbruk er 2048 bit minimum, 3072 bit gir omtrent 128-biters sikkerhet, og 4096 bit gir en ekstra sikkerhetsmargin. Nøkler kan krypteres med AES når de lagres, ved å legge til "-aes256" i kommandoen. Da blir du bedt om en passfrase.
Generere EC-nøkler
Elliptiske kurvenøkler genereres i to trinn. Først genererer "openssl ecparam -name prime256v1 -genkey -noout -out ec_private.pem" en privat EC-nøkkel ved hjelp av P-256-kurven. Et alternativ er "openssl genpkey -algorithm EC -pkeyopt ec_paramgen_curve:P-384 -out ec_private.pem", som bruker det nyere genpkey-grensesnittet og foretrekkes for ny kode.
Vise nøkkeldetaljer
Nøkkelinnhold kan inspiseres med "openssl rsa -text -noout -in private.pem" for RSA-nøkler. Kommandoen viser modulus, offentlig eksponent og primfaktorer. For EC-nøkler viser "openssl ec -text -noout -in ec_private.pem" kurvenavnet og nøkkelverdien. Flagget "-noout" undertrykker PEM-kodet utdata.
Generere tilfeldige data
OpenSSL kan generere kryptografisk sikre tilfeldige byte: "openssl rand -hex 32" skriver ut 32 tilfeldige byte som heksadesimalt format (64 heksadesimale tegn), egnet for å generere symmetriske nøkler eller nonser. "openssl rand -base64 32" skriver ut base64-kodede tilfeldige byte. Dette bruker operativsystemets entropikilde (/dev/urandom på Unix-systemer).
Beregning av hashverdier
Kommandoen "openssl dgst" beregner meldingssammendrag: "openssl dgst -sha256 file.txt" beregner SHA-256-hashen til en fil. "openssl dgst -sha256 -hmac key file.txt" beregner en HMAC-SHA256. "openssl dgst -sha256 -sign private.pem -out sig.bin file.txt" oppretter en digital signatur for filen.
Kryptering av filer
Symmetrisk filkryptering bruker "openssl enc -aes-256-cbc -pbkdf2 -in plaintext.txt -out encrypted.bin". Flagget "-pbkdf2" bruker PBKDF2 til nøkkelavledning fra passordfrasen og erstatter den foreldede EVP_BytesToKey. Dekryptering: "openssl enc -d -aes-256-cbc -pbkdf2 -in encrypted.bin -out decrypted.txt". AEAD-moduser som AES-256-GCM foretrekkes i ny kode.
Konvertering mellom PEM- og DER-formater
Sertifikater og nøkler finnes i to kodingsformater. PEM er base64-kodet og har header-/footerlinjer (-----BEGIN CERTIFICATE-----), og brukes av de fleste Unix-verktøy. DER er binærkoding og brukes av Java og Windows. Konverter PEM til DER: "openssl x509 -inform PEM -outform DER -in cert.pem -out cert.der". Konverter DER til PEM: bytt om på -inform/-outform-flaggene.
Verifisering av signaturer
Verifisering av digitale signaturer gjøres med: "openssl dgst -sha256 -verify public.pem -signature sig.bin file.txt". Den offentlige nøkkelen må først trekkes ut: "openssl rsa -pubout -in private.pem -out public.pem". For sertifikatbasert verifisering: "openssl verify -CAfile ca.pem cert.pem" kontrollerer sertifikatet mot den angitte CA-kjeden.
Kontroll av sertifikatdetaljer
Sertifikatinspeksjon er en av de vanligste OpenSSL-oppgavene: "openssl x509 -text -noout -in cert.pem" viser alle sertifikatfeltene, blant annet subjekt, utsteder, gyldighetsdatoer, SAN-er og utvidelser. "openssl x509 -enddate -noout -in cert.pem" viser bare utløpsdatoen, noe som er nyttig i overvåkingsskript.
Tilkobling til TLS-servere
"openssl s_client -connect example.com:443 -servername example.com" oppretter en TLS-tilkobling og viser serverens sertifikatkjede, den forhandlede TLS-versjonen og cipher suite. Hvis "-showcerts" legges til, vises alle sertifikatene i kjeden. Dette er uvurderlig ved feilsøking av problemer med sertifikatkjeder, TLS-versjoner og OCSP stapling.
Kontroll av OpenSSL genrsa
Hva gjør kommandoen "openssl genrsa -aes256 -out private.pem 2048"?
Oppsummering av leksjonen: Grunnleggende om OpenSSL CLI
OpenSSL tilbyr kommandoer for nøkkelgenerering (genrsa, genpkey), formatkonvertering (PEM/DER), generering av tilfeldige data (rand), hashing og signering (dgst), filkryptering (enc), sertifikatinspeksjon (x509 -text), kjedeverifisering (verify) og TLS-feilsøking (s_client). Dette dekker det aller meste av daglige sertifikat- og kryptografioppgaver.
Lær deg Cryptology Academy med en AI-veileder – gratis
Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.
- Kurs
- 67
- Leksjoner
- 261
Ofte stilte spørsmål
Er leksjonen «Det viktigste om OpenSSL på kommandolinjen» gratis?
Ja – hele teksten i «Det viktigste om OpenSSL på kommandolinjen» er gratis å lese her på nettet. For å øve interaktivt med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt, og for å låse opp resten av Cryptology Academy-kurset, kan du oppgradere til CoddyKit PRO. Kurset i Cryptology Academy inneholder totalt 4 leksjoner.
Hva lærer jeg i «Det viktigste om OpenSSL på kommandolinjen»?
Lær de viktigste OpenSSL-kommandoene for nøkkelgenerering, kryptering, hashing og inspeksjon av sertifikater. Du øver på Cryptology Academy med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.
Trenger jeg erfaring for å begynne med Cryptology Academy?
Ingen tidligere erfaring er nødvendig. Cryptology Academy på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 1 av 4.
Hvor lang tid tar leksjonen «Det viktigste om OpenSSL på kommandolinjen»?
De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.
Kan jeg skrive og kjøre kode i denne Cryptology Academy-leksjonen?
Ja. Alle Cryptology Academy-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.
Alle leksjonene i dette kurset
- Det viktigste om OpenSSL på kommandolinjen
- Opprette og administrere sertifikatkjeder
- OCSP-stapling og Certificate Transparency
- Automatisering med Let's Encrypt og ACME-protokollen