Under Construction

Hinzufügen von nicht-volatilen Dateien

Für das Hinzufügen von nicht-volatilen Dateien zur TSD muss eine digitale Signatur des Dateiinhalts generiert werden. Dazu wird eine Private-Key Datei und ein zugehöriges Zertifikat mit dem Public-Key benötigt. Wir verwenden die in den vorausgehenden Unterkapiteln erzeugten Private-Key Dateien und Zertifikate.

Um einen Eintrag mit digitaler Signatur einer Datei der TSD hinzuzufügen, müssen Private-Key, Zertifkat und der absolute Pfad der Datei angegeben werden. Besitzt die Private-Key Datei kein Passwort, kann das folgende Kommando verwendet werden:

# trustchk -s privkey_pwrcmps -v cert_pwrcmps -a /opt/pwrcmps/bin/myscript.ksh
#

Der Eintrag in der TSD für die Datei /opt/pwrcmps/bin/myscript.ksh sieht dann wie folgt aus:

# trustchk -q /opt/pwrcmps/bin/myscript.ksh
/opt/pwrcmps/bin/myscript.ksh:
        type = FILE
        owner = root
        group = system
        mode = 755
        size = 34
        hash_value = 17331f6772e71e4f25da5b5b56b563f52f3ace8e2b961d00039c4022de436529
        cert_tag = 37663639
        signature = a6b95af33238fe09aa8811bde252ce4172de1e59235c4640a48bcc72248b69d16ea1bb5f86ccb10848886f6421819b08795c0574878272e29171647af7a906f18235bcf4787c4ba86b24645188fc649e384afca54da4e2971d982970d582ad5956f0bfac2ece266b7043643818c09584a64c8707e765eb446aaee033d7257a45

#

Dateityp, Eigentümer, Zugriffsrechte und Größe werden beim Hinzufügen des Eintrags einfach von der Datei übernommen. Der Hash-Wert (hash_value) und die Signatur werden berechnet und ebenfalls hinzugefügt. Das verwendete Zertifikat wird über die Seriennummer des Zertifikats (cert_tag) referenziert. Das Zertifikat wird beim Hinzufügen eines TSD Eintrags automatisch in das Verzeichnis /etc/security/certificates kopiert (falls es dort nicht schon abgelegt wurde). Als Dateiname wird die Seriennummer des Zertifikats verwendet:

# openssl x509 -in /etc/security/certificates/37663639 -noout -serial
serial=37663639
#

Ist die Private-Key Datei durch ein Passwort geschützt, dann schlägt das obige Kommando zum Hinzufügen fehl:

# trustchk -s privkey_pwrcmps -v cert_pwrcmps -a /opt/pwrcmps/bin/myscript.ksh
trustchk: Key file not accessible,Signature calculation failed
trustchk: Error adding stanza: /opt/pwrcmps/bin/myscript.ksh
#


Im Unterschied zum Kommando openssl fragt das Kommando trustchk nicht automatisch bei Bedarf nach einem Passphrase. Ist eine Private-Key Datei durch einen Passphrase geschützt, muss zusätzlich die Option „-P“ (passphrase) verwendet werden:

# trustchk -s privkey_pwrcmps -v cert_pwrcmps -P -a /opt/pwrcmps/bin/myscript.ksh
Enter the passphrase to protect key file: XXXXXXXX
#