
Ich habe ein ausstehendes Puppet-Zertifikat:
$ puppetserver ca list
Requested Certificates:
intern.mydomain.com (SHA256) 3C:82:85:ED:6C:30:54:79:7A:FC:41:00:63:33:E0:52:BE:AA:3B:3F:76:21:73:1E:0B:1D:5F:A4:9C:D5:92:AC
Beim Versuch, das Zertifikat zu signieren, erhalte ich die folgende Fehlermeldung:
$ puppetserver ca sign --certname intern.mydomain.com
Error:
When attempting to sign certificate request 'intern.mydomain.com', received
code: 500
body: Internal Server Error: java.nio.file.FileSystemException: /etc/puppetlabs/puppet/ssl/ca/serial6208651530228400767tmp: Operation not permitted
Was könnte das Problem sein? Das betroffene Verzeichnis sieht normal aus, die Datei in der Fehlermeldung wird erstellt und enthält lediglich die Zeichenfolge "0005":
$ ls -la /etc/puppetlabs/puppet/ssl/ca
total 68
drwxrwx--- 4 puppet puppet 4096 Sep 19 15:19 .
drwxrwx--x 8 puppet puppet 4096 Sep 19 15:17 ..
-rw-r--r-- 1 root root 1938 Jun 6 08:23 ca_crl.pem
-rw-r--r-- 1 root root 3862 Jun 6 08:23 ca_crt.pem
-rw-r----- 1 puppet puppet 3243 Jun 6 08:23 ca_key.pem
-rw-r----- 1 puppet puppet 800 May 16 13:33 ca_pub.pem
-rw-r----- 1 puppet puppet 1938 May 16 13:33 infra_crl.pem
-rw-r----- 1 puppet puppet 1 May 16 13:33 infra_inventory.txt
-rw-r----- 1 puppet puppet 1 May 16 13:33 infra_serials
-rw-r--r-- 1 root root 226 Jun 6 08:23 inventory.txt
drwxr-x--- 2 puppet puppet 4096 Sep 19 15:05 requests
-rw-r----- 1 puppet puppet 3247 May 16 13:33 root_key.pem
-rw-r--r-- 1 root root 4 Jun 6 08:23 serial
-rw------- 1 puppet puppet 4 Sep 19 15:14 serial3749210220972485837tmp
-rw------- 1 puppet puppet 4 Sep 19 15:09 serial4900578622956461009tmp
-rw------- 1 puppet puppet 4 Sep 19 15:19 serial6208651530228400767tmp
drwxr-x--- 2 puppet puppet 4096 Jun 6 08:23 signed
Irgendeine Idee? Interessant, dass ich vorhin (vor 3 Monaten) 3 andere Zertifikate unterzeichnen konnte, die problemlos funktionierten und ich das System in der Zwischenzeit nicht geändert habe.
Ich verwende die Puppetserver-Version 6.20.0.
Antwort1
Es war ein Berechtigungsproblem. Es scheint, dass die Fehlermeldung nicht korrekt war. Die Datei/etc/puppetlabs/puppet/ssl/ca/serialkonnte nicht von Puppet geschrieben werden. Der folgende Befehl löste das Problem:
$ chown -R puppet:puppet /etc/puppetlabs/puppet/ssl/ca