CA-Zertifikat mit Elliptic Curve Cryptography (ECC) Key auf dem Raspberry Pi für 10 Jahre erzeugen


Hier hatte ich beschrieben, wie ein 521-Bit private Elliptic Curve Cryptography (ECC) Key erzeugt werden kann. Mit diesem privaten Key können wir auch leicht eine CA-Zertifikat erzeugen. Einfach in dem Verzeichnis mit dem privaten Key ein:

openssl req -new -x509 -days 3650 -extensions v3_ca -key private-key.pem -out ecc-cacert.pem

eingeben und diese Fragen beantworten (oder einfach Return, dann wir der default verwendet).
Zuerst zweimal das gleich gutes Passwort eingeben. Wichtig ist auf jeden Fall der Common Name (e.g. server FQDN or YOUR name) Z.B. www.wenzlaff.de oä. und dann:

Und schon liegt ein CA-Zertifikat in der Datei ecc-cacert.pem.

Die kann mit cat ecc-cacert.pem angesehen werden: „CA-Zertifikat mit Elliptic Curve Cryptography (ECC) Key auf dem Raspberry Pi für 10 Jahre erzeugen“ weiterlesen

Wie können auf einem Raspberry Pi mit „apt list“ alle möglichen Packages updates angezeigt werden?

Mit
apt list –upgradable

Ausgabe z.B.

Es wird da leider nicht zwischen sicherheits und normalen updates unterschieden.

Ein

apt list

ohne Parameter gibt alle möglichen Packages.

Ein apt list –installed gibt dann alle auf dem Pi installierten Packages. Die kann man evl. in eine Datei schreiben mit

apt list –installed > installierte-packages.txt

Die Warnung die da kommt, kann man ignorieren.

Wenn man nach dem Namen eines Package sucht, einfach den Namen anhängen. Z.b. suchen wir nach vim

apt list vim
Listing… Done
vim/stable 2:8.1.0875-5 armhf

ArchUnit 0.20.1 Quicktest am Beispiel der Blockchain oder “Das ist historisch gewachsen” war gestern

Heute gilt „die Umsetzung von Architekturvorgaben lässt sich testen!“. Und das sogar mit JUnit 5! Cool.

ArchUnit
Wenn auch nur eine IllegalArgumentException gefixt wurde, mal gleich auf die aktuelle ArchUnit Version updaten. Ja, es läuft noch alles. „ArchUnit 0.20.1 Quicktest am Beispiel der Blockchain oder “Das ist historisch gewachsen” war gestern“ weiterlesen

Bitcoin (XBT) >38k wg. Amazon? – dann mal gleich ein private ECC Key auf dem Pi mit neuem OpenSSL 3.0.0-beta1 generieren

Ein 521-Bit private Elliptic Curve Cryptography (ECC) Key mit secp521r1 erzeugen. Kleiner geht auch 😉

Ganz einfach:

openssl ecparam -out private-key.pem -name secp521r1 -genkey

Ausgabe des keys mit cat private-key.pem z.B.: „Bitcoin (XBT) >38k wg. Amazon? – dann mal gleich ein private ECC Key auf dem Pi mit neuem OpenSSL 3.0.0-beta1 generieren“ weiterlesen

OpenSSL 3.0.0 beta selbst compilieren auf einem Raspberry Pi in ca. 1-2 Stunden

Auf einem Raspberry Pi kann leicht in ca. 1-2 Stunden die aktuellste OpenSSL 3.0.0 beta installiert werden.

Also dann mal erst das Archiv runterladen und die Checksumme prüfen, wie hier beschrieben.

Welche Algos. werden unterstüzt in diese Version? openssl dgst -list

Welche Verschlüsselungen werden in dieser Version unterstüzt? openssl enc -list

Checksumme SHA256 für OpenSSL mit shasum oder OpenSSL überprüfen

Wer die Beta 3.0.0 Version von OpenSSL lädt, kann die Checksumme nach dem Download so überprüfen:

OpenSSL nicht nur mit dem Raspberry Pi oder wie können Zertifikate selbst signiert werden mit eigener selbst-signierter Root-CA?

OpenSSL ist ein in C entwickeltes Kryptographiewerkzeug für das Secure Socket Layer (SSL). Es enthält das Mehrzweck-Befehlszeilenwerkzeug /usr/bin/openssl. Das Programm eignet sich für kryptographische Operationen wie:

  • Erzeugung von RSA-, DH- und DSA-Schlüssel-Parametern
  • Erzeugung von X.509-Zertifikaten, CSRs und CRLs
  • Berechnung von kryptographischen Einweg-Hashfunktionen
  • Ver- und Entschlüsselung mit Chiffren
  • Prüfung von SSL-/TLS-Clients und -Servern
  • Bearbeitung von S/MIME-signierter oder verschlüsselter E-Mail

Welche Version ist auf dem Raspberry Pi installiert? Ein „OpenSSL nicht nur mit dem Raspberry Pi oder wie können Zertifikate selbst signiert werden mit eigener selbst-signierter Root-CA?“ weiterlesen

Java: Array von Dubletten und null entfernen mit HashSet und zurück

Gesund oder Krank - Impfbeginn in Deutschland

Ergebnis: „Java: Array von Dubletten und null entfernen mit HashSet und zurück“ weiterlesen

Dynamische Fuzzy-Suche mit Fuse.js in Json Daten mit React App TWArztSuche

Eine Suche in Datenbeständen ist keine einfache Sache! Mit Fuse.js ist ein Suche mit Fuzzylogik möglich. Fuse.js ist eine mächtige Lib ohne viele Abhängigkeiten.

Eine suche mit Fuzzylogik ist eine unscharfe Suche und wird z. B. in der Automatisierungstechnik, Medizintechnik, Unterhaltungselektronik, KI, Fahrzeugtechnik und anderen Bereichen der Regelungstechnik verwendet. Zum Beispiel suchen wir nach dem Ort: Hameln und es werden uns auch Ergebnisse aus Hannover angezeigt. Beide beginnen mit Ha.

Wir programmieren mal Beispielsweise eine Arztsuche mit einfache Gui, wie bei Google, mit nur einem Eingabefeld. So soll die Seite aussehen, und ein Eintrag ist auch gleich die Online-Hilfe:

Das Ergebnis, wenn wir z.B. nach Anästhesie suchen sieht dann so aus bei den 5 Beispiel Datensätzen: „Dynamische Fuzzy-Suche mit Fuse.js in Json Daten mit React App TWArztSuche“ weiterlesen

Onion Webseite mit Elliptische Kurve Curve25519 absichern

Hier nun noch ein Level von Sicherheit mit dem Raspberry Pi. Wie hier beschrieben kann eine Website leicht für jedermann mit eigener onion Domain im Darknet bereitgestellt werden. Die Seiten können nun aber auch noch mit einen Curve25519-Key gesichert werden, so das nur Nutzer die den Key haben auf die Seiten zugreifen können. Wenn man dann z.B. die Adresse

http://tokc2fifswouszmp4jy3ejizmchy4damvhmdug5crvkvfgmymbejkqqd.onion

aufruft, erscheint im Browser, oben links ein Schloß. Wenn man darauf klickt erscheint der Dialog:

Hier wird dann der private Schlüssel, den man vom Bereitsteller erhalten hat eingegeben. Für diese Seite ist es der Schlüssel:

JDSQ2RRI2SLYCN4SG6ZBP4DHE4TEHZG26EJS5R6FYBPH6AU3FVEA

Jeder der diesen privaten Schlüssel hat, kann nun auf die Seiten zugreifen. Wer das falsche Passwort eingibt, kann nicht auf die Seite zugreifen: „Onion Webseite mit Elliptische Kurve Curve25519 absichern“ weiterlesen

Watchdog für einen CO2-Ampel Server oder andere per NodeRed

Hier mal kurz noch ein Beispiel-Flow mit NodeRed um einen Server oder so zu überwachen und wenn er sich nicht in einen bestimmten Zeitraum meldet wird eine Pushover Nachricht an ein Handy versand. Bei mir wird ein CO2-Ampel-Server der auf einem anderen Raspberry Pi läuft damit überprüft. Der sendet jede Minute den CO2 Wert in ppm. Wenn nach 10 Minuten Timeout nichts kommt, wird die Meldung an mein Handy gesendet. Aber nur maximal nur einmal die Stunde, will ja wenn er ausfällt nicht alle 10 Minugen eine Meldung bekommen, das währe dann zuviel des guten.

Hier der Java-Script Flow zum kostenlosen Download:… „Watchdog für einen CO2-Ampel Server oder andere per NodeRed“ weiterlesen

Tip: Copyright-Anzeige nach SSH Login anpassen/löschen

Beim Anmelden mit SSH auf den Raspberry Pi wird jedes mal diese Meldung ausgegeben.

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.

Das Nervt! Die habe ich gelöscht und durch eine für mich sinnvolle Bezeichnung welches Gerät es ist angepasst. So kann ich beim anmelden leichter sehen, mit welchem Gerät ich mich verbunden haben. Dazu einfach mit

die Datei wie gewünscht bearbeiten.

Ich habe da z.B. nur eingetragen: Raspberry Pi Zero Nr. 18 😉

SSH Anmeldung an dem Raspberry Pi ohne Passwort mit Elliptische Kurve – ed25519 Key


Wenn man vom Mac (Windows geht natürlich auch) aus auf einen entfernten Raspberry Pi 4 B zugreifen will, kann man das auch ohne jedesmal ein Passwort eingeben zu müssen. Dafür kann das moderne ed25519 Key Verfahren verwendet werden.

Dazu muss auf dem Pi ein .ssh Verzeichnis mit einer authorized_keys Datei angelegt werden:

Dann in der /etc/ssh/sshd_config des Pi die folgenden Einträge setzen: … „SSH Anmeldung an dem Raspberry Pi ohne Passwort mit Elliptische Kurve – ed25519 Key“ weiterlesen

Webserver Sicherheit überprüfen mit nikto

Wer einen eigenen Webserver laufen hat, kann mit nikto einen Sicherheitscann ausführen.

Nikto ist ein in Perl geschriebener Open Source Web Server Scanner. Nikto testet Web Server auf über 7800 potentiell schädliche Dateien und Programme und prüft über 1250 Server-Versionen auf ihre Aktualität und weist bei über 270 Server-Versionen auf bekannte Sicherheitslücken hin. Der Scanner prüft Header und versucht ausserdem, ausnutzbare Fehler und Defaults in der Webserver-Konfiguration aufzudecken. Nikto schickt ca. 7800 GET-Requests an den Webserver, um auf das Vorhandensein unsicherer Inhalte zu prüfen, richtet also keinen Schaden an.

Der ist schnell auf dem Raspberry Pi installiert mit:

sudo apt-get install nikto

Es wir die v2.1.5 installiert. Das kann mit
nikto -Version überprüft werden. Es wird die ausgegeben: „Webserver Sicherheit überprüfen mit nikto“ weiterlesen