Kategorie: Uncategorized

Puppet 5: Abgelaufene Zertifikate austauschen

Auf dem Puppet Master: Sollten die CSRs nicht mehr vorliegen, diese auf Basis der bisherigen Zertifikate neu erstellen und die alten Zertifikate umbenennen:

root@puppetmaster.example.net:/var/lib/puppet/ssl# openssl x509 -x509toreq -in ca/ca_crt.pem -signkey ca/ca_key.pem -out ca/ca_csr.pem

root@puppetmaster.example.net:/var/lib/puppet/ssl# openssl x509 -x509toreq -in certs/puppetmaster.example.net.pem -signkey private_keys/puppetmaster.example.net.pem -out certificate_requests/puppetmaster.example.net_csr.pem

root@puppetmaster.example.net:/var/lib/puppet/ssl# mv ca/ca_crt.pem ca/ca_crt.pem_old

root@puppetmaster.example.net:/var/lib/puppet/ssl# mv certs/puppetmaster.example.net.pem certs/puppetmaster.example.net.pem_old

Neue Zertifikate erstellen:

cat > extension.cnf <<_EOT_
[CA_extensions]
basicConstraints = critical,CA:TRUE
nsComment = "Puppet Ruby/OpenSSL Internal Certificate"
keyUsage = critical,keyCertSign,cRLSign
subjectKeyIdentifier = hash
_EOT_
root@puppetmaster.example.net:/var/lib/puppet/ssl# openssl x509 -req -days 3650 -in ca/ca_csr.pem -signkey ca/ca_key.pem -out ca/ca_crt.pem -extfile extension.cnf -extensions CA_extensions

root@puppetmaster.example.net:/var/lib/puppet/ssl# openssl x509 -req -days 3650 -in certificate_requests/puppetmaster.example.net_csr.pem -CA ca/ca_crt.pem -CAkey ca/ca_key.pem -CAserial ca/serial -out certs/puppetmaster.example.net.pem

Je Puppet Agent auf dem Server:

puppet ca destroy puppetclient.example.net

Auf jedem Puppet Client (Agent):

rm -r /var/lib/puppet/ssl && puppet agent --test

Je Puppet Agent auf dem Server:

puppet ca list
puppet ca sign puppetclient.example.net

Getestet mit Version 5.5.10
Quelle

Nextcloud Setup & Use Cases

Use CaseNextcloud App
(Server Add-on)
macOSiOSBrowser Add-on
(Brave / Firefox / Chrome)
File SyncNextcloud AppNextcloud App
Calendar Sync
(CalDAV)
CalendarNative Calendar AppNative Calendar App
Contacts Sync
(CardDAV)
ContactsNative Contacts AppNative Contacts App
Tasks Sync
(CalDAV)
TasksNative Reminders AppNative Reminders App
Notes Synctxt/md-Files (Sync via Nextcloud App)1Writer (1)
Password SyncKeePassXCStrongbox (1, 2)KeePassXC-Browser
Bookmark SyncBookmarksFloccusFloccus
RSS Sync / NewsreaderNewsNextnews
SurveysPolls
URL ShortenerShareRenamer (3)
Text Replacement & Keyboard ShortcutKeyboard Maestro

(1) WebDAV
(2) Potenzielle Alternativen: KeePassium, KeePass Touch
(3) Stand 01/2024 nicht funktional

Mit MacOS auf Serielle Konsole zugreifen

Um sich per Terminal mit einem USB-auf-RS232-Kabel zu verbinden (Konsole) wird auf dem Mac keine extra Software benötigt, sondern hier kann screen genutzt werden.

screen /dev/tty.usbserial-AB0JM0Y9

Es können auch Parameter wie Baud-Rate, Bits und weiteres als Kommagetrente-Liste nach dem Device angegeben werden:

<baud_rate>
Usually 300, 1200, 9600 (default) or 19200. This affects transmission as well as receive speed.

cs8 or cs7
Specify the transmission of eight (or seven) bits per byte.

ixon or -ixon
Enables (or disables) software flow-control (CTRL-S/CTRL-Q) for sending data.

ixoff or -ixon
Enables (or disables) software flow-control for receiving data.

istrip or -istrip
Clear (or keep) the eight bit in each received byte.

Beispiel:

screen /dev/tty.usbserial-AB0JM0Y9 9600,cs8,ixon,ixoff,-istrip

sudo ohne Passwort

Für manche (unsichere!) Fälle kann es nützlich sein, einen user mit sudo-Rechten ohne Passwortaufforderung auszustatten.

How (sometimes not) to do:

Für den Benutzer „foo“ eine Datei in folgendem Verzeichnis anlegen:

/etc/sudoers.d/foo

foo ALL=(ALL) NOPASSWD: ALL

Kurze Erklärung zum Aufbau der Datei:

<wer> <auf welchem Host>=(<als welcher Benutzer>) <darf was ausführen>

VMware ESXi 6.0: Zertifikate eigener CA installieren

/etc/vmware/ssl/webclient.cnf vorbereiten:

[ req ]
default_bits = 4096
default_keyfile = rui.key
distinguished_name = req_distinguished_name
encrypt_key = no
prompt = no
string_mask = nombstr
req_extensions = v3_req
[ v3_req ]
basicConstraints = CA:FALSE
keyUsage = digitalSignature, keyEncipherment, dataEncipherment
extendedKeyUsage = serverAuth, clientAuth
subjectAltName = DNS:"$FQDN", DNS:"$HOSTNAME", IP:"$IP"
[ req_distinguished_name ]
countryName = "$COUNTRY"
stateOrProvinceName = "$PROVINCE"
localityName = "$CITY"
0.organizationName = "$COMPANY"
organizationalUnitName = "IT"
commonName = "$FQDN"
[ alt_names ]
DNS.1 = "$FQDN"
DNS.2 = "$HOSTNAME"
IP.1 = "$IP"

Per SSH im Ordner /etc/vmware/ssl/ den Private Key und CSR erstellen:

openssl genrsa -out /etc/vmware/ssl/rui.key 4096

openssl req -new -nodes -out /etc/vmware/ssl/rui.csr -keyout /etc/vmware/ssl/rui.key -config /etc/vmware/ssl/webclient.cnf

Zertifikat lokal oder über den CSR mittels eigener CA erstellen und unter /etc/vmware/ssl/rui.crt ablegen:

openssl x509 -req -days 365 -in /etc/vmware/ssl/rui.csr -signkey /etc/vmware/ssl/rui.key -out /etc/vmware/ssl/rui.crt -extensions v3_req -extfile /etc/vmware/ssl/webclient.cnf

Bei eigener CA: Root und Intermediate Certificate unter /etc/vmware/ssl/castore.pem ablegen.

Dienste neustarten:

services.sh restart

Quelle