gnutls-serv(1)

Från Wiki.linux.se -Linux wikipedia på Svenska.
Hoppa till navigering Hoppa till sök


NAMN

gnutls-serv – GnuTLS-server

SYNOPSIS

gnutls-serv [-flaggor]
            [-flagga [värde]]
            [--optionsnamn[[=| ]värde]]

Alla argument måste vara optioner.

BESKRIVNING

gnutls-serv är ett serverprogram som lyssnar efter inkommande TLS-anslutningar.

Programmet är avsett för testning och diagnostik, inte som en allmän produktionsserver.

Det kan bland annat användas som:

  • enkel TLS-server
  • enkel HTTPS-server
  • echo-server
  • DTLS-server över UDP
  • testserver för X.509, PSK, SRP och råa publika nycklar

OPTIONER

-d nummer, --debug= nummer

Aktivera felsökning.
Argumentet måste vara ett heltal mellan 0 och 9999.
Värdet anger felsökningsnivån.

--sni-hostname= sträng

Ange serverns värdnamn för SNI-utökningen, Server Name Indication.
Om klienten skickar ett annat värdnamn i ClientHello skickar servern en varning av typen unrecognized_name.

--sni-hostname-fatal

Skicka en fatal varning om SNI-värdnamnet inte matchar.

--alpn= sträng

Aktivera ett ALPN-protokoll på servern.
Optionen kan anges obegränsat antal gånger.

--alpn-fatal

Skicka en fatal varning om inget ALPN-namn matchar.

--noticket

Acceptera inte sessionsbiljetter.

--earlydata

Acceptera early data.

--maxearlydata= nummer

Ange största mängd early data som accepteras.
Tillåtet intervall är 1 till 2147483648.

--nocookie

Kräv inte cookie för DTLS-sessioner.

-g, --generate

Skapa Diffie-Hellman-parametrar.

-q, --quiet

Undertryck vissa meddelanden.

--nodb

Använd inte någon databas för sessionsåterupptagning.

--http

Kör som HTTP-server.

--echo

Kör som echo-server.

--crlf

Ersätt inte CRLF med LF i echo-läge.

-u, --udp

Använd DTLS, Datagram TLS, över UDP.

--mtu= nummer

Ange MTU för DTLS.
Tillåtet intervall är 0 till 17000.

--srtp-profiles= sträng

Erbjud angivna SRTP-profiler.

-a, --disable-client-cert

Begär inte klientcertifikat.
Kan inte användas tillsammans med --require-client-cert.

-r, --require-client-cert

Kräv klientcertifikat.
Före GnuTLS 3.6.0 innebar denna option även verifiering.
Från och med 3.6.0 verifieras certifikatet inte automatiskt.

--verify-client-cert

Om klienten skickar ett certifikat ska det verifieras.
Certifikatet krävs inte, men anslutningen stängs om ett skickat certifikat är ogiltigt.

--compress-cert= sträng

Ange en stödd metod för certifikatkomprimering.
Optionen kan anges obegränsat antal gånger.

-b, --heartbeat

Aktivera heartbeat-stöd.
Klienten pingas regelbundet med heartbeat-meddelanden.

--x509fmtder

Läs certifikat i DER-format.

--priority= sträng

Ange prioriteringssträng för TLS-algoritmer och protokoll.

Fördefinierade uppsättningar inkluderar:

PERFORMANCE
NORMAL
SECURE128
SECURE256

Standard är:

NORMAL

Se GnuTLS-manualens avsnitt om prioriteringssträngar.

--dhparams= fil

Ange fil med DH-parametrar.

--x509cafile= sträng

Ange certifikatfil eller PKCS #11-URL för betrodda CA-certifikat.

--x509crlfile= fil

Ange CRL-fil.

--pgpkeyfile= fil

Ange PGP-nyckelfil.
Denna option är föråldrad.

--x509keyfile= sträng

Ange privat X.509-nyckelfil eller PKCS #11-URL.
Optionen kan anges flera gånger.
Nyckeln måste motsvara certifikatet som anges med --x509certfile.
När flera nycklar och certifikat används ska varje nyckel följas av motsvarande certifikat, eller tvärtom.

--x509certfile= sträng

Ange X.509-certifikatfil eller PKCS #11-URL.
Optionen kan anges flera gånger.
Certifikatet måste motsvara nyckeln som anges med --x509keyfile.

--x509dsakeyfile

Alias för --x509keyfile.
Föråldrad.

--x509dsacertfile

Alias för --x509certfile.
Föråldrad.

--x509ecckeyfile

Alias för --x509keyfile.
Föråldrad.

--x509ecccertfile

Alias för --x509certfile.
Föråldrad.

--rawpkkeyfile= sträng

Ange privat nyckelfil i PKCS #8- eller PKCS #12-format, eller en PKCS #11-URL, för rå publik nyckel.
Optionen kan anges flera gånger.
Nyckeln måste motsvara filen som anges med --rawpkfile.
För att förhandla råa publika nycklar måste motsvarande certifikattyper aktiveras i prioriteringssträngen, exempelvis med flaggor av typen:
CTYPE-CLI-*
CTYPE-SRV-*

--rawpkfile= sträng

Ange fil med rå publik nyckel.
Optionen kan anges flera gånger.
Måste användas tillsammans med --rawpkkeyfile.

--srppasswd= fil

Ange SRP-lösenordsfil.

--srppasswdconf= fil

Ange konfigurationsfil för SRP-lösenord.

--pskpasswd= fil

Ange PSK-lösenordsfil.

--pskhint= sträng

Ange identitetsledtråd för PSK.

--ocsp-response= sträng

Ange fil med OCSP-svar som ska skickas till klienten.
Optionen kan anges flera gånger.

--ignore-ocsp-response-errors

Ignorera fel när OCSP-svar ställs in.
GnuTLS försöker då inte matcha svaren mot certifikaten.

-p nummer, --port= nummer

Ange port som servern ska lyssna på.

-l, --list

Visa lista över stödda algoritmer och lägen.
Om en prioriteringssträng anges visas endast aktiverade chiffersviter.

--provider= fil

Ange bibliotek för PKCS #11-leverantör.
Detta åsidosätter standardinställningarna i:
/etc/gnutls/pkcs11.conf

--keymatexport= sträng

Ange etikett för export av nyckelmaterial.

--keymatexportsize= nummer

Ange storleken på det exporterade nyckelmaterialet.

--recordsize= nummer

Ange största poststorlek som annonseras.
Tillåtet intervall är 0 till 16384.

--httpdata= fil

Ange fil med data som ska användas som HTTP-svar.

--timeout= nummer

Ange timeout för servern.

--attime= tidsstämpel

Utför validering vid angiven tid i stället för systemtiden.

Tidsstämpeln kan anges som Unix-tid eller som läsbar datumsträng, exempelvis:

29 Feb 2004
2004-02-29

-v argument, --version= argument

Visa versionsinformation och avsluta.

Tillgängliga lägen:

v

Enkel versionsinformation.

c

Copyrightinformation.

n

Fullständig copyrighttext.

-h, --help

Visa användningsinformation och avsluta.

-!, --more-help

Visa utökad hjälp via en sidvisare.

EXEMPEL

Enkel anonym HTTPS-server

gnutls-serv --http --priority "NORMAL:+ANON-ECDH:+ANON-DH"

Den stöder endast anonyma chiffersviter, vilket många TLS-klienter vägrar använda.

Skapa en test-CA

certtool --generate-privkey > x509-ca-key.pem
echo 'cn = GnuTLS test CA' > ca.tmpl
echo 'ca' >> ca.tmpl
echo 'cert_signing_key' >> ca.tmpl

certtool --generate-self-signed \
  --load-privkey x509-ca-key.pem \
  --template ca.tmpl \
  --outfile x509-ca.pem

Skapa servercertifikat

Ändra värdet för dns_name till serverns riktiga värdnamn.

certtool --generate-privkey > x509-server-key.pem

echo 'organization = GnuTLS test server' > server.tmpl
echo 'cn = test.gnutls.org' >> server.tmpl
echo 'tls_www_server' >> server.tmpl
echo 'encryption_key' >> server.tmpl
echo 'signing_key' >> server.tmpl
echo 'dns_name = test.gnutls.org' >> server.tmpl

certtool --generate-certificate \
  --load-privkey x509-server-key.pem \
  --load-ca-certificate x509-ca.pem \
  --load-ca-privkey x509-ca-key.pem \
  --template server.tmpl \
  --outfile x509-server.pem

Skapa klientcertifikat

certtool --generate-privkey > x509-client-key.pem

echo 'cn = GnuTLS test client' > client.tmpl
echo 'tls_www_client' >> client.tmpl
echo 'encryption_key' >> client.tmpl
echo 'signing_key' >> client.tmpl

certtool --generate-certificate \
  --load-privkey x509-client-key.pem \
  --load-ca-certificate x509-ca.pem \
  --load-ca-privkey x509-ca-key.pem \
  --template client.tmpl \
  --outfile x509-client.pem

Konvertera klientcertifikat till PKCS #12

certtool --to-p12 \
  --load-ca-certificate x509-ca.pem \
  --load-privkey x509-client-key.pem \
  --load-certificate x509-client.pem \
  --outder \
  --outfile x509-client.p12

Skapa proxycertifikat

certtool --generate-privkey > x509-proxy-key.pem
echo 'cn = GnuTLS test client proxy' > proxy.tmpl

certtool --generate-proxy \
  --load-privkey x509-proxy-key.pem \
  --load-ca-certificate x509-client.pem \
  --load-ca-privkey x509-client-key.pem \
  --load-certificate x509-client.pem \
  --template proxy.tmpl \
  --outfile x509-proxy.pem

Starta HTTPS-server med X.509

gnutls-serv --http \
  --x509cafile x509-ca.pem \
  --x509keyfile x509-server-key.pem \
  --x509certfile x509-server.pem

Servern lyssnar som standard på port 5556.

Skapa ECDSA-nyckel och certifikat

certtool --generate-privkey --ecdsa > x509-server-key-ecc.pem

certtool --generate-certificate \
  --load-privkey x509-server-key-ecc.pem \
  --load-ca-certificate x509-ca.pem \
  --load-ca-privkey x509-ca-key.pem \
  --template server.tmpl \
  --outfile x509-server-ecc.pem

Server med SRP

gnutls-serv --http \
  --priority NORMAL:+SRP-RSA:+SRP \
  --srppasswdconf srp-tpasswd.conf \
  --srppasswd srp-passwd.txt

Server med PSK

gnutls-serv --http \
  --priority NORMAL:+ECDHE-PSK:+PSK \
  --pskpasswd psk-passwd.txt

Server med rå publik nyckel

gnutls-serv --http \
  --priority NORMAL:+CTYPE-CLI-RAWPK:+CTYPE-SRV-RAWPK \
  --rawpkfile srv.rawpk.pem \
  --rawpkkeyfile srv.key.pem

Råa publika nycklar innehåller inte identitetsinformation på samma sätt som X.509-certifikat. Autentisering måste därför göras på annat sätt.

Kombinerad server

gnutls-serv --http \
  --priority NORMAL:+PSK:+SRP:+CTYPE-CLI-RAWPK:+CTYPE-SRV-RAWPK \
  --x509cafile x509-ca.pem \
  --x509keyfile x509-server-key.pem \
  --x509certfile x509-server.pem \
  --x509keyfile x509-server-key-ecc.pem \
  --x509certfile x509-server-ecc.pem \
  --srppasswdconf srp-tpasswd.conf \
  --srppasswd srp-passwd.txt \
  --pskpasswd psk-passwd.txt \
  --rawpkfile srv.rawpk.pem \
  --rawpkkeyfile srv.key.pem

AVSLUTNINGSSTATUS

0

Programmet kördes utan fel.

1

Operationen misslyckades eller kommandosyntaxen var ogiltig.

SE ÄVEN

FÖRFATTARE

Manualsidan anger inga enskilda författare.

COPYRIGHT

Copyright 2020–2023 Free Software Foundation och andra.

Programmet distribueras enligt GNU General Public License, version 3 eller senare.

FEL

Felrapporter skickas till:

bugs@gnutls.org

KOLOFON

Denna sida är en del av projektet GnuTLS, GnuTLS Transport Layer Security Library. Information om projektet finns på http://www.gnutls.org/ Sidan hämtades från ett tar-arkiv på https://www.gnupg.org/ftp/gcrypt/gnutls/

den 24 maj 2026.

Om du upptäcker renderingsproblem i HTML-versionen av sidan, eller anser att det finns en bättre eller mer aktuell källa, kan du skicka e-post till:

man-pages@man7.org

HÄNVISAD FRÅN

KORT SAMMANFATTNING

gnutls-serv är en test- och diagnostikserver för TLS och DTLS.

Starta enkel HTTPS-testserver:

gnutls-serv --http \
  --x509keyfile server-key.pem \
  --x509certfile server-cert.pem

Starta på annan port:

gnutls-serv --http --port 8443 \
  --x509keyfile server-key.pem \
  --x509certfile server-cert.pem

Kör som DTLS-server:

gnutls-serv --udp --port 5556

Visa stödda algoritmer:

gnutls-serv --list

Programmet är främst avsett för tester, felsökning och utbildning.

Sidslut

Orginalhemsidan på Engelska https://man7.org/linux/man-pages/man1/gnutls-serv.1.html Det här är en maskinöversättning av Linux man sidor till svenska. Om du hittar fel är vi tacksamma om du rapporterar dem via formuläret som finns på https://www.linux.se/kontaka-linux-se/

Tack till Datorhjälp Stockholm som har sponsrat Linux.se med webbhotell.