Wie kann die git History der letzten Commit Messages angezeigt und eingefügt werden? Früher gab es da ein Icon in der Toolbar. Jetzt geht es über die Tastenfolge:
control + space (für Mac) und strg + space (für Win) wenn der Cursor im Commit-Messages Fenster steht. Dann mit den Pfeiltasten die gewünschte Meldung auswählen und mit Return/Enter bestätigen. Schon ist die Meldung eingefügt. Cool …
„I Am Not Satoshi Nakamoto“ oder wie kann eine lokale Blockchain erstellt werden und eine Transaktion mit Metamask durchgeführt werden
Wer eine lokale Blockhain erstellen will, kann das mit Ganache tun. Ganache ist auch mit den Bezeichnungen Trüffelmasse oder Pariser Creme als hochwertige Sahnecreme aus Kuvertüre und Rahm, die zum Füllen und Überziehen von Gebäck und Süßigkeiten verwendet wird bekannt.
Zurück zur lokalen Ethereum Blockchain. Mit dieser lokalen Blockchain werden die Entwicklungsprozesse sehr schnell. Ganache kommt als Kommandozeile (ganache-cli) und auch als GUI für Windows, Mac und Linux daher.
Was machen wir?
1. Install der lokalen Blockchain Ganache
2. Ganach local Netzwerk in MetaMask anlegen
3. Account in MetaMask anlegen
4. Eine Transaktion mit MetaMask auf lokaler Blockchain durchführen (1 ETH auf ein anderes Konto überweisen)
Nach dem Download und Install des Programms, kann man auf „Quickstart Ethereum“ klicken und man hat eine Blockchain mit 10 Adressen a 100 ETH wie hier zu sehen.
Nun wollen wir die 1. Transaktion auf der localen Blockchain mit MetaMask machen. Wir brauchen dazu die RPC-Server URL: http://127.0.0.1:7545 und die Chain ID: 1337.
Wir klicken in MetaMask auf „Spezieller RPC:
und geben die die URL und die Chain ID ein:
Dann klicken wir auf „Speichern“. „„I Am Not Satoshi Nakamoto“ oder wie kann eine lokale Blockchain erstellt werden und eine Transaktion mit Metamask durchgeführt werden“ 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.
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
Java Reflexion Sortierung für org.json.JSONObject Hack, statt Fußball EM … Goal!
Werden mit org.json.JSONObject Json Dateien erstellt, werden die ldt. Spezifikation nicht sortiert. Das ist für die Auswertung mitunter schwer zu lesen.
Schauen wir in die Klasse: „Java Reflexion Sortierung für org.json.JSONObject Hack, statt Fußball EM … Goal!“ weiterlesen
„Black Box Test“ mit Wapiti
„Black Box Test“ mit Wapiti. Es prüft Webseiten und Web-Applikationen auf Schwachstellen, indem es die Seitenstruktur ermittelt und daraufhin versucht, Daten und Payloads an Skripte und Formulare zu übergeben. Cool, dann mal den eigenen Server überprüfen. Hier schon mal der Ergebnis-Report vorweg:
Installieren mit: „„Black Box Test“ mit Wapiti“ 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
Kostenlos eine Webseite im Darknet mit Raspberry Pi bereitstellen über Onion Service
Wie kann kostenlos eine Webseite mit .onion Domain auf einen Raspberry Pi Zero bereitgestellt werden?
Man braucht keine kostenpflichtige Domain wie z.B. www.wenzlaff.info beantragen und bezahlen.
Die .onion Domain gibt es kostenlos. Wir brauchen nur tor und einen Webserver wie z.B. nginx.
Folgende Schritte sind auf dem Raspberry Pi nötig:
… „Kostenlos eine Webseite im Darknet mit Raspberry Pi bereitstellen über Onion Service“ weiterlesen
Zum heutigen National Donut Day mit Curve25519 free private/public Key generieren für Hidden Onion-Services
Wenn man Wikipedia glauben will dann ist „Curve25519 … eine elliptische Kurve, die für asymmetrische Kryptosysteme genutzt wird. Sie wird üblicherweise für digitale Signaturen und Schlüsselaustauschprotokolle genutzt und gilt als besonders schnell. Sie ist von der IETF als RFC 7748 standardisiert.“
Aber sie wird auch für Onion-Services verwendet. Deshalb mal heute zur Entspannung für 10 Minuten einen public und privaten Key auf einem Raspberry Pi (Zero) generieren. Inkl. Hostnamen. Das geht so:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
// nötige Abhängigkeite installieren, wenn nicht schon vorhanden sudo apt install gcc libsodium-dev make autoconf // das Repo clonen git clone https://github.com/IT-Berater/mkp224o.git // die mkp224o App compilieren, bauen und installieren cd mkp224o/ ./autogen.sh ./configure make // Keys die mit fast oder filter starten und Hostname generieren im TW-Keys Verzeichnis, das dauert ca. 1 Minute ./mkp224o filter fast -t 1 -v -n 1 -d ./TW-Keys // Check cd TW-Keys ls |
Hier mal der lauf auf meinem Pi: „Zum heutigen National Donut Day mit Curve25519 free private/public Key generieren für Hidden Onion-Services“ weiterlesen
SSH Brute-Force mit Java, picocli und TWHackSSH
SSH Brute-Force mit Java. Gar nicht so schwierig.
Wir lesen eine Passwort- und eine Userdatei ein und machen ein connect zu einem SSH-Server mit jeder Kombination bis wir eine gültige Verbindung gefunden haben. Hier die Architektur inkl. JUnit-Testklassen: … „SSH Brute-Force mit Java, picocli und TWHackSSH“ weiterlesen
SSH Passwort Zugriff mit Brute-Force Script in 19 Sekunden oder „Versuch macht klug!“
Der Versuch macht klug und der Erfolg kommt schon mit dem Versuch und nicht erst wenn es klappt. Wer sein eigenes Passwort für den Raspberry Pi (oder auch jeden anderen Rechner) vergessen hat, kann es ja mal mit dem SSH Brute-Force Script von nmap versuchen. Und es ist auch erschreckend, wie schnell und einfach man ein passwortgeschützen Zugang hacken kann. Aber nur an eigenen Rechnern 😉
Wir habe hier mal, wie oben dargestellt zwei Raspberry Pi. Von dem pi oben links, machen wir mit der Brute-Force-Methode einen Scann des pi auf dem ein SSH Port Nr. 22 offen ist.
Dazu benutzen wir nmap. Das können wir installieren mit
sudo apt-get install nmap oder wie hier beschrieben selbst compilieren.
Nun checken wir, ob der SSH-Port Nr. 22 offen ist mit nmap: … „SSH Passwort Zugriff mit Brute-Force Script in 19 Sekunden oder „Versuch macht klug!““ weiterlesen
Kommandline Quickie: Passwort Generierung
Wer hin und wieder mal ein Passwort braucht, kann sie auch leicht auf der Komandozeile eines jeden Linux-Rechners (Pi, Mac …) erzeugen. Mit Disk Dump (dd) schreiben wir von der unlimitierten Zufallszahlengenerator Schnittstelle eine Base64 Zahl.
Hier mal ein Beispiel mit einer 128-Bit Entropie: „Kommandline Quickie: Passwort Generierung“ weiterlesen
Release 21.05 von rtl_433 für den Raspberry Pi veröffentlicht um Temperatursensoren und Luftruck von Autoreifen (TPMS) uä. zu empfangen
Vor 3 Jahren hatte ich hier schon mal berichtet, wie man rtl_433 installieren und updaten kann. Und hier wie man die Daten per MQTT verteilt. Da vor ein 8 Tagen das neue Release 21.05 veröffentlicht wurde, ist es mal Zeit das zu installieren.
… „Release 21.05 von rtl_433 für den Raspberry Pi veröffentlicht um Temperatursensoren und Luftruck von Autoreifen (TPMS) uä. zu empfangen“ weiterlesen
Mempool visuelle Bitcoin (BTC) Simulation in echtzeit – xbt < 50k
Schöne echtzeit Simulation der echten Bitcoin-Transaktionen:
Firewall in 10 Minuten einrichen mit UFW (Uncomplicated firewall) nicht nur auf dem Raspberry Pi
Eine Firewall ist auf dem Raspberry Pi schnell mit dem UFW eingerichtet und kann die Sicherheit verbessern.
Die Firewall UFW muss nur installiert werden mit:
1 2 3 |
sudo apt-get update sudo apt-get upgrade sudo apt-get install ufw |
Nun schalten wir zuerst den ipv6 auf no in der Datei /etc/default/ufw, da er bei mir nicht verwendet wird. „Firewall in 10 Minuten einrichen mit UFW (Uncomplicated firewall) nicht nur auf dem Raspberry Pi“ weiterlesen
Wetter Quickie von der Kommandozeile
Wer mal schnell das Wetter auf der Kommandozeile ausgeben will kann einfach
curl http://wttr.in/langenhagen
aufrufen (Ort ersetzen 🙂
Oder mit deutscher Beschriftung, macht das Wetter aber auch nicht besser: … „Wetter Quickie von der Kommandozeile“ weiterlesen
Wie kann Text in PDF von der Kommandozeile erzeugt werden?
Manchmal will man mal eben etwas Text in ein PDF umwandeln. Das geht auch ganz schnell und einfach von der Kommandozeile. Es muss zuvor nur ghostscript und enscript auf dem Raspberry Pi installiert werden mit:
sudo apt-get install ghostscript enscript
Dann kann es schon losgehen. Wir haben z.B. eine Test-Datei mit Name test-txt-to-pdf.txt und diesem Inhalt:
1 2 3 4 5 6 7 8 9 |
Diese kleine Testdate soll einfach mal in PDF umgewandelt werden. Das klappt mit ps2pdf aus dem ghostscript Package. |
Wir geben dann auf der Kommandozeil ein:
enscript test-txt-to-pdf.txt -o – | ps2pdf – ergebnis.pdf
Und schon erhalten wir eine ergebnis.pdf mit diesem Inhalt: … „Wie kann Text in PDF von der Kommandozeile erzeugt werden?“ weiterlesen
Ergebnisse der Umfrage oder finde Dubletten auf dem Raspberry Pi mit fdupes
Vielen Dank für das Feedback zu meiner kleinen Umfrage. Für mich ist es sehr interessant, das über 85 % der Teilnehmer mehr zum Thema Raspberry Pi haben wollten. Auf Platz 2 folgt NodeRed / Hausautomatisation mit 60 %. Platz 3 Planespotting mit 24 %. Was mich aber erstaunt, ist die Altersstruktur der Leser, das ich mal mit „für Ältere“ zusammenfassen möchte:
Dann mal gleich was zum Pi, läuft aber auch auf dem Mac. Wie finde ich doppelte Dateien auf dem Rechner? Wenn es große Videos oder Bilder sind, wird auch viel Speicher verbraucht. Einfach das Tool fdupes installieren mit:
sudo apt install fdupes
Nun kann es auf Verzeichnisse angewendet werden. Z.B. im Verzeichnis wir mal das test-dubletten-suchen durchsucht was wie folgt aussieht:
1 2 3 4 5 6 7 |
. ├── hannover │ ├── video-hannover.mp3 │ └── video.mp3 ├── musik-hannover.mp3 ├── musik-langenhagen.mp3 └── video.mp3 |
Aufruf:
fdupes test-dubletten-suchen/ -r -1 -S
Ergebnis: … „Ergebnisse der Umfrage oder finde Dubletten auf dem Raspberry Pi mit fdupes“ weiterlesen
5 Minuten Detox: Dateinamen von Sonderzeichen, Umlauten und Leerzeichen befreien
Da Dateinamen mit Umlauten und Leerzeichen manchmal Probleme machen, können solche mit detox einfach entfernt bzw. ersetzt werden. Das geht auch rekrusiv für ganze Verzeichnisse wie Musiksammlungen oder Bilddateien usw.
Detox ist 5 Minuten installiert:… „5 Minuten Detox: Dateinamen von Sonderzeichen, Umlauten und Leerzeichen befreien“ weiterlesen
Digitaler Impfnachweis der EU-Kommission setzt auf QR-Codes und nicht auf die „neue“ Gesundheitskarte, deshalb hier die QR-Codes im NodeRed-Flow anzeigen
In diesem Beitrag hatte ich den neuen Node, der aus Text leicht einen QR-Code erzeugt beschrieben. Wie können aber nun QR-Codes direkt in einem NodeRed-Flow und nicht nur im Dashboard angezeigt werden?
Hier ein produktiver Prototyp dazu, man sieht unten rechts den Barcode im Flow. Cool. Geht auch mit Impfnachweisen 😉 … „Digitaler Impfnachweis der EU-Kommission setzt auf QR-Codes und nicht auf die „neue“ Gesundheitskarte, deshalb hier die QR-Codes im NodeRed-Flow anzeigen“ weiterlesen
TWProviders 1.0 – mal was anderes als HAFNIUM – Installierte Sicherheitsprovider anzeigen
Hier ein neues Java-Programm TWProviders 1.0, das alle Sicherheitsprovider auf dem System (Raspberry Pi, Mac, Windows…) anzeigt. Mal so „just for fun“ programmiert, mal was anderes als Exchange-Lücken HAFNIUM – BSI ruft „IT-Bedrohungslage rot“. Es muss Java auf dem System installiert sein. Einfach das PrintProvider.class.zip (884 Byte) laden und das ZIP auspacken. Dann in dem Verzeichnis starten mit
java PrintProvider
Also das Programm laden, auspacken und starten:
1 2 3 |
wget http://blog.wenzlaff.de/wp-content/uploads/2021/03/PrintProvider.class.zip unzip PrintProvider.class.zip java PrintProvider |
Das sind z.B. die 12 von einem Raspberry Pi 4:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
java PrintProvider TWProviders 1.0 from www.wenzlaff.info prints all 12 Security Provider: SUN (DSA key/parameter generation; DSA signing; SHA-1, MD5 digests; SecureRandom; X.509 certificates; PKCS12, JKS & DKS keystores; PKIX CertPathValidator; PKIX CertPathBuilder; LDAP, Collection CertStores, JavaPolicy Policy; JavaLoginConfig Configuration) Sun RSA signature provider Sun Elliptic Curve provider (EC, ECDSA, ECDH) Sun JSSE provider(PKCS12, SunX509/PKIX key/trust factories, SSLv3/TLSv1/TLSv1.1/TLSv1.2/TLSv1.3/DTLSv1.0/DTLSv1.2) SunJCE Provider (implements RSA, DES, Triple DES, AES, Blowfish, ARCFOUR, RC2, PBE, Diffie-Hellman, HMAC, ChaCha20) Sun (Kerberos v5, SPNEGO) Sun SASL provider(implements client mechanisms for: DIGEST-MD5, EXTERNAL, PLAIN, CRAM-MD5, NTLM; server mechanisms for: DIGEST-MD5, CRAM-MD5, NTLM) XMLDSig (DOM XMLSignatureFactory; DOM KeyInfoFactory; C14N 1.0, C14N 1.1, Exclusive C14N, Base64, Enveloped, XPath, XPath2, XSLT TransformServices) Sun PC/SC provider JdkLDAP Provider (implements LDAP CertStore) JDK SASL provider(implements client and server mechanisms for GSSAPI) Unconfigured and unusable PKCS11 provider |
Mit diesm Programm kann nun auch leicht in einem Script oder in der Konsole nach Providern oder so gesucht werden, z.B. mit grep
java PrintProvider | grep Secure
Ergebnis:
SUN (DSA key/parameter generation; DSA signing; SHA-1, MD5 digests; SecureRandom; X.509 certificates; PKCS12, JKS & DKS keystores; PKIX CertPathValidator; PKIX CertPathBuilder; LDAP, Collection CertStores, JavaPolicy Policy; JavaLoginConfig Configuration)
Sollte kein Java vorhanden sein, kommt es zu dieser Fehlermeldung. „TWProviders 1.0 – mal was anderes als HAFNIUM – Installierte Sicherheitsprovider anzeigen“ weiterlesen
Nmap auf den Raspberry Pi selbst compilieren
Nmap gibt es seit dem 9.10.2020 schon in Version 7.91. Wenn man Nmap wie im letzten Beitrag installiert mit apt-get install nmap wird nur die Version 7.7 aus dem Jahr 2018 installiert. Wer die neue Version 7.91 braucht kann sie auch in ein paar Minuten selbst compiliern.
Das geht so:
Mal was anderes als Coronavirus-Mutante B.1.1.7: uptime vs. tuptime
Auf Linux und dem Raspberry Pi verwendet man meist uptime.
Mit uptime können die Zeiten ausgegeben werden, wie lange das System ununterbrochen läuft. Bei Linux meist Monate oder Jahre, bei Windows … Tage … „Mal was anderes als Coronavirus-Mutante B.1.1.7: uptime vs. tuptime“ weiterlesen
Neujahr 2021: Mein erster Beitrag in 2021 – Hyperlinks in PDF: iText 7.1
Wie können Hyperlinks in PDFs erzeugt werden?
Da die Klasse Link in iText 7.1 von der Text Klasse erbt, wie das UML oben zeigt, ist es einfach. Hier ein Beispiel:… „Neujahr 2021: Mein erster Beitrag in 2021 – Hyperlinks in PDF: iText 7.1“ weiterlesen
.gitignore mal etwas anders
Auf Github gibt es viele Templates für die .gitignore Datei. Für das Erstellen einer .gitignore Datei kann aber auch die Webseite von gitignore.io verwendet werden.
Auf dem Raspberry Pi kann man aber auch eine Shell Funktion installieren, dann geht es noch einfacher. Dazu einfach diese Funktion einmal auf der Kommandozeile aufrufen: … „.gitignore mal etwas anders“ weiterlesen
Neues git 2.30.0 Release – Compile auf Raspberry Pi W Zerro in 1 Stunde – auf dem 4 in 10 Min
Vorgestern ist nun das git 2.30.0 Release veröffentlicht worden.
Dann mal gleich ein größenvergleich der neuen Optionen an einem meiner Github Repos:… „Neues git 2.30.0 Release – Compile auf Raspberry Pi W Zerro in 1 Stunde – auf dem 4 in 10 Min“ weiterlesen
Impfbeginn in Deutschland – Mal was anderes: Wie können Header in PDF Dokumente mit iText 7.1 autom. auf jede Seite erzeugt werden?
Manchmal braucht man in automatisch generierten PDFs eine Überschrift auf jeder Seite.
Wie geht das mit iText 7?
Mit einen implementierten IEventHandler. Der dann nach jeder erzeugten Seite PdfDocumentEvent.START_PAGE einen Event generiert, der dann die Überschrift erzeugt. Dazu habe ich eine Klass HeaderHandler entwickelt. Es kann als Option auch entschieden werden ob auch auf der ersten Seite einen Überschrift erzeugt werden soll. Hier die Klasse:
„Impfbeginn in Deutschland – Mal was anderes: Wie können Header in PDF Dokumente mit iText 7.1 autom. auf jede Seite erzeugt werden?“ weiterlesen
PDF Erzeugung mit iText 7 oder in 3 Zeilen Java zum PDF
Ein PDF in Java ist mit iText 7 in ein paar Minuten gemacht.
Wir können z.B. ein String Liste mit nur 3 Zeilen Code mit dem Times Roman Font auf DIN A4 ausgeben:… „PDF Erzeugung mit iText 7 oder in 3 Zeilen Java zum PDF“ weiterlesen
Quicktest des BPMN Camunda Modeler in neuer Version 4.4.0
Quicktest eines alten Raspberry Pi BPMN 2.0 Model. Der Modeler ist am 10.11.2020 in einer neuen Version veröffentlicht worden (Mac, Win, Linux).
Werden alte Modelle geladen, wird gefragt, ob der neue Namensspace verwendet werden soll: „Quicktest des BPMN Camunda Modeler in neuer Version 4.4.0“ weiterlesen
PDFtoText (Pdf2Text), PDF to Fonts, PDF to Info
Manchmal möchte man aus einem PDF den Text extrahieren oder Infos aus dem PDF gewinnen. Das geht mit den poppler Utils auf dem Raspberry Pi.
Wir laden uns die poppler.pdf als Beispiel in ein Verzeichnis.
Dann rufen wir die pdftotext Anwendung auf:
pdftotext poppler.pdf
und wir erhalten eine neue Datei poppler.txt mit dem Text aus der PDF: „PDFtoText (Pdf2Text), PDF to Fonts, PDF to Info“ weiterlesen
PDF to PNG, JPG oder TIFF auf einem Raspberry Pi mit pdftoppm
Um PDF-Dokumente in ein Bildformat wie PNG zu überführen, und auch zum skalieren kann das Tool pdftoppm auf einem Raspberry Pi verwendet werden. Aber auch noch andere Funktionen sind mit den poppler-utils möglich.
Installiert sind sie auf einem Raspberry Pi schnell mit: „PDF to PNG, JPG oder TIFF auf einem Raspberry Pi mit pdftoppm“ weiterlesen
Kryptowährung schürfen mit einem Raspberry Pi
Kryptowährungen wie z.B. Bitcoin sind in aller Munde. Es gibt heute ca. 9000 Kryptowährungen, wie z.B. Bitcoin, Ethereum, Tether, XPR, Chainlink, Litercoin und Monero um mal 7 zu nennen.
Kann man mit einem alten Raspberry Pi Model B oder W Zero Krypto-Geld schürfen? Ja, warum nicht, das geht sogar ziemlich einfach, wie dieser Artikel zeigt. Rechnet es sich? Dazu später mehr.
Vorraussetzung ist ein aktuell installiertes Debian und zugriff auf die Kommandozeile.
Dann brauchen wir noch eine Anmeldung bei Minig-Pool, da man alleine es nicht schaft. Z.b. bei Minergate.com und die E-Mail-Adresse, womit wir uns dort angemeldet haben. Die Anmeldung bei diesem Mining-Pool ist kostenlos. Minergate ist ein Open-Source-Multi-Kryptowährungs-Mining-Pool.
So, jetzt wollen wir mal Krypto-Geld erzeugen. Wir werden die Währung Monero erzeugen. Wikipedia sagt zu Monero: „Monero (XMR) ist eine dezentrale, Blockchain-basierte Kryptowährung, vergleichbar mit Bitcoin. Im Gegensatz zu Bitcoin setzt Monero jedoch einen stärkeren Fokus auf die Privatsphäre bzw. Anonymität seiner Nutzer (Privacy Coin) und verfolgt einen anderen Ansatz in Bezug auf die Skalierbarkeit. Das Wort „monero“ ist der Sprache Esperanto entnommen und bedeutet „Münze“. Monero (XMR) ist auf bis zu 12 dezimale Nachkommastellen teilbar, d. h. die kleinste Währungseinheit beträgt 0,000 000 000 001 XMR = 10 hoch −12 XMR.
Ok, dann mal los, es dauert ca. 1-2 Stunden ( 15 Min, auf einem Raspberry Pi 4) um den Miner zu bauen und das erste Geld zu erzeugt. Es sind nur diese 4 Schritte nötig und es ist mal etwas anderes als Co2-Ampeln bauen … „Kryptowährung schürfen mit einem Raspberry Pi“ weiterlesen
NodeRed auf dem Rasberry Pi: 3 Countdown Timer
Brauchte für laufende Videokonferenzen mal einen Timer. Habe mal drei Countdown Timer zusammengestellt:
So sieht es aus. Es gibt eine Warnung, kurz vor Ablauf im Browser oben rechts und die Farbe ändert sich auch:
„NodeRed auf dem Rasberry Pi: 3 Countdown Timer“ weiterlesen
Zum 10-millionsten Download der Corona-Warn-App mal ein Bluetooth Scann mit dem Raspberry Pi und Wireshark
Zum 10-millionsten Download der Corona-Warn-App hatte ich mal Interesse an Bluetooth. Da die Corona-Warn-App mit Bluetooth arbeitet und der Quellcode und Doku auf github zu finden ist. Also erst mal eine Mindmap zum Thema Bluetooth:
Danke Dr.Kleinhirn.eu für die Erlaubnis zur Veröffentlichung der Mindmap
Dann fangen wir mal ganz einfach an mit ein Bluetooth-Scann mit dem Raspberry Pi und Auswertung der Daten mit Wireshark. Wir brauchen nicht viel. Einen Raspberry Pi und eine Bluetooth USB Stick und 1-2 Stunden Zeit. Ich habe z.B. diesen Bluethooth-USB-Adapter verwendet:
Erst mal das Rasbian-Linux-System updaten und ein paar Programme installieren, wenn sie nicht schon vorhanden sind: „Zum 10-millionsten Download der Corona-Warn-App mal ein Bluetooth Scann mit dem Raspberry Pi und Wireshark“ weiterlesen
Wie kann das Scrollen der Apple Maus unter Windows 10 aktiviert werden?
Wie kann das Scrollen der Apple Maus unter Windows 10 aktiviert werden? Wird die Apple Maus per Bluetooth an Windows 10 angeschlossen, geht das Scrollen nicht. Dafür den passenden Treiber auf einen Mac laden über das Boot Camp-Assistent.app Programm. Dort gleich im Menü die Windows Software speichern:
Dann das Verzeichnis AppleWirelessMouse mit dem Treiber auf den Windows Rechner kopieren: „Wie kann das Scrollen der Apple Maus unter Windows 10 aktiviert werden?“ weiterlesen
Wie können mit Java automatisch Webseiten mit Jsoup am Beispiel Corona abgefragt werden?
Das Robert Koch Institut (RKI) liefert für Deutschland aktuelle Corona-Fall-Zahlen auf dieser Webseite:
https://www.rki.de/DE/Content/InfAZ/N/Neuartiges_Coronavirus/Fallzahlen.html
in einer schönen Tabelle die wir mit Jsoup abfragen wollen.
Wir schauen uns erst einmal die Stuktur der Seite an. D.h. wir markieren z.B. Niedersachsen und öffnen das rechte Kontexmenü und klicken auf „Element untersuchen“. Nun wird unten der HTML-Quelltext angezeigt. Wir sehen das die Tabelle, an der ersten stelle steht, und mit den tr und td Tags erstellt ist. Das müssen wir für die Analyse wissen.
Hier nun der kommentierte Beispiel-Code: „Wie können mit Java automatisch Webseiten mit Jsoup am Beispiel Corona abgefragt werden?“ weiterlesen
Java Einzeiler des Tages: Lesen einer Webseite mit jsoup den Open source HTML Parser
Mit JSoup kann ganz einfach eine Webseite gelesen werden.
1 2 3 4 5 |
<dependency> <groupId>org.jsoup</groupId> <artifactId>jsoup</artifactId> <version>1.12.2</version> </dependency> |
ergänzen und folgenden Einzeiler:
System.out.println(„Webseite: “ + Jsoup.connect(„http://wenzlaff.info“).get().html());
Das Ergebnis ist dann die HTML Seite. Mit JSoup können auch einfach Filter und Selektoren erstellt werden. Es unterstüzt leider kein JavaScript.
Dafür kann dann HtmlUnit oder Selenium verwendet werden.
Mit most, etwas Farbe in den Raspberry Pi Alltag („Alltag“ gehört zum Wortschatz des Goethe-Zertifikats B1)
Wie können z.B. die man-Pages mit Farbe versehen werden. Das ist die normale Anzeige von z.B. man top:
Mit most kann da mehr Farbe erzeugt werden, also mal eben:
sudo apt-get install most „Mit most, etwas Farbe in den Raspberry Pi Alltag („Alltag“ gehört zum Wortschatz des Goethe-Zertifikats B1)“ weiterlesen
Internet Adressen bzw. Links in Excel-Dateien in 5 Minuten überprüfen mit dem de.wenzlaff.linkchecker
Manchmal hat man in einer Excel-Tabelle eine oder mehrere Spalten mit Internet-Adressen (URLs) deren Gültigkeit man überprüfen will, da viele Adressen sich doch schnell ändern. Dh. ist die Adresse noch erreichbar oder ist eine ungültige Adresse (Broken Links) eingegeben. Man könnte nun einen VB-Macro schreiben der das tut, oder aber das de.wenzlaff.linkchecker Programm starten, das eine Spalte in einer Excel-Datei automatisch validiert und alle nicht erreichbaren bzw. falschen Adressen ausgibt. So kann mit einen Aufruf die ganze Datei überprüft werden.
Das wollen wir mal an einem Beispiel auf einem Raspberry Pi ausführen. Das würde analog natürlich auch auf Windows oder einem Mac laufen.
Wir haben diese Excel Testdatei. Die 3. Spalte, also Spalte C enthält Internet-Adressen die alle überprüft werden sollen. Alle anderen Spalten sind nicht relevant. Die Excel-Datei wir auch nicht verändert.
Voraussetzung ist, das auf dem Rechner Java installiert ist. Also ein java -version muss eine gültige Version >= 8 liefern und wer den aktuellen SNAPHOT holt, braucht mind. Java 11: „Internet Adressen bzw. Links in Excel-Dateien in 5 Minuten überprüfen mit dem de.wenzlaff.linkchecker“ weiterlesen
Beispiel Verwendung des Maven Plugin: de.wenzlaff.command.maven.plugin
Vor einiger Zeit hatte ich hier mal beschrieben, wie ein einfaches Maven-Plugin erstellt werden kann, dass alle Kommandozeilen Parameter im Log ausgibt z.B. ls, ps, ls -la. So können im Build-Prozess Verzeichnisse oder Prozesse überwacht werden.
Wer aber nur das Kommandozeilen Plugin nutzen will, kann dieses mit ein paar Zeilen in der pom.xml tun, da das Plugin auf Maven-Central frei verfügbar ist.
Einfach die pom.xml um folgende Zeilen ergänzen: „Beispiel Verwendung des Maven Plugin: de.wenzlaff.command.maven.plugin“ weiterlesen
Buildpipeline für Maven-Command-Plugin im Docker über Gitlab
Auf Gitlab liegt nun der Quellcode, für den der sich das ganze Projekt einfach holen will: git clone git@gitlab.com:IT-Berater/twmavencommandplugin.git
Diese Buildpipeline für Java 8 und 11 wird über das folgende Script gesteuert und läuft im Docker-Container: „Buildpipeline für Maven-Command-Plugin im Docker über Gitlab“ weiterlesen
Ein eigenes Maven-Plugin in 15 Minuten inklusive Dokumentation erstellen
Ein eigenes Maven-Plugin zu erstellen ist nicht schwer und ist schnell gemacht. Wir wollen ein Plugin welches einen Verzeichnis Inhalt mit ls -la in das Log schreibt erstellen. Es können aber auch andere Linux Befehle übergeben werden. Hier nun die 6 Schritte mit den Vorlagen die mind. nötig sind.
1. Wir legen in Eclipse ein neue Maven Projekt mit Java 1.8 an. mit Artifact Id und Group Id de.wenzlaff.command.maven.plugin
2. In der pom.xml fügen wir die folgenden Abhängikeiten hinzu: „Ein eigenes Maven-Plugin in 15 Minuten inklusive Dokumentation erstellen“ weiterlesen
Wie kann das funktionsreiche Analysetool bettercap auf einem Raspberry Pi installiert werden? Oder sehen was zu Weihnachten im Netz los ist.
Bettercap ist in Go implementiert. Es gibt viele Module, darunter solche für DNS-Spoofing, Netsniffing, Wifi-Analysen und Wake-on-LAN.
Ok, dann mal eben in 30 Minuten auf einem Raspberry Pi W Zero installieren:
1 2 3 4 5 |
sudo apt-get update sudo apt-get upgrade sudo apt-get install build-essential ruby-dev libpcap-dev sudo gem install bettercap sudo bettercap -h |
Ergebniss:
So, dann steht nun nichts mehr einer MITM attack im Wege, weitere Infos hier oder auf der Projektseite.
Zigbee CC2531 mit neuer Firmware vom Raspberry Pi aus flashen ohne CC Debugger
Um das CC2531 auch ohne CC Debugger neu zu flashen, gehen wir wie folgt vor.
Wiring Pi installieren
Wir benötigen auf dem Raspberry Pi die wiringpi zum ansteuern der GPIO-Ports
sudo apt-get install wiringpi
Nach der Installation testen wir mit gpio -v es muss diese Ausgabe kommen:
1 2 3 4 5 6 7 8 9 10 |
gpio version: 2.50 Copyright (c) 2012-2018 Gordon Henderson This is free software with ABSOLUTELY NO WARRANTY. For details type: gpio -warranty Raspberry Pi Details: Type: Model B+, Revision: 02, Memory: 512MB, Maker: Sony * Device tree is enabled. *--> Raspberry Pi Model B Plus Rev 1.2 * This Raspberry Pi supports user-level GPIO access. |
Wenn eine Fehlermeldung kommt, wie bei mir, da zwei der Raspberry Pis nicht unterstüzt wurden, erst fixen.
CC2531 an Pi
Die vier Drähte anlöten und mit dem Pi wie folgt anschließen:
1 2 3 4 |
GND - 1 - braun an Pi Pin 39 DC - 3 - organg an Pi Pin 36 RST - 7 - grün an Pi Pin 35 DD - 4 - gelb an Pi Pin 38 |
Flasher installieren
„Zigbee CC2531 mit neuer Firmware vom Raspberry Pi aus flashen ohne CC Debugger“ weiterlesen
httpie ist auch auf dem Raspberry Pi in 5 Minuten installiert, es muss ja nicht immer curl sein
Um httpie auf dem Raspberry Pi zu installieren, ist nur ein
1 |
sudo apt-get install httpie |
nötig. Und schon hat man einen curl Ersatz mit intuitiver UI, JSON support, Syntax Hervorhebung und mehr.
Quicktest, abfragen einer Domain, mit http get www.kleinhirn.eu „httpie ist auch auf dem Raspberry Pi in 5 Minuten installiert, es muss ja nicht immer curl sein“ weiterlesen
Java Quickie: Die Kommandozeilen Argumente mit Apache Commons CLI bändigen
Seit März 2017 gibt es noch kein neues Release von den Commons CLI. Aber warum die Commandline nicht auch damit auswerten? Macht alles viel übersichtlicher.
Das geht mit ein paar Zeilen Java Code und einen Eintrag in der pom.xml:
1 2 3 4 5 |
<dependency> <groupId>commons-cli</groupId> <artifactId>commons-cli</artifactId> <version>1.4</version> </dependency> |
Hier ein Beispiel snippets: „Java Quickie: Die Kommandozeilen Argumente mit Apache Commons CLI bändigen“ weiterlesen
Update PDF-Formulare automatisch auswerten – PDF-Formulare to CSV (Excel) – Version 0.0.2 veröffentlicht – nun auch für Windows!
Wie hier ausführlich beschrieben, hier nun die Version 0.0.2 für den Raspberry Pi als DEB Archive aber auch als RPM für RedHat und für Windows nur die JAR Datei zum kostenlosen Download twpdfformulartocsv-0.0.2.zip
Einige Funktionen sind nun NEU z.b. die Hilfe, die mit -h aufgerufen werden kann, hier aber erst einmal das BPMN zum Programmablauf:
Die Versions Ausgabe mit -v „Update PDF-Formulare automatisch auswerten – PDF-Formulare to CSV (Excel) – Version 0.0.2 veröffentlicht – nun auch für Windows!“ weiterlesen
PDF-Formulare automatisch auswerten – PDF-Formulare to CSV
Manchmal möchte man mehrere PDF-Formulare automatisch auswerten. Z.B. von einer Umfrage. Also wie bekommt man die im PDF-Formular eingegebenen Felder aller PDF Dateien eines Verzeichnises in eine Excel CSV Datei für die Auswertung? Wie man PDF-Formulare kostenlos erstellt, hatte ich ja schon hier beschrieben.
Das geht mit dem Raspberry Pi (oder auch Mac und Windows) ganz einfach mit dem Java Tool twpdfformulartocsv das ich implementiert habe. Es muss mind. Java 8 auf dem Pi installiert sein. Das kann man mit java -version überprüfen. Es kommt auf dem Pi Zero bei mir
1 2 3 |
openjdk version "1.8.0_181" OpenJDK Runtime Environment (build 1.8.0_181-8u181-b13-2~deb9u1-b13) OpenJDK Client VM (build 25.181-b13, mixed mode) |
Hier nun die Schritte, um es zu installieren.
„PDF-Formulare automatisch auswerten – PDF-Formulare to CSV“ weiterlesen
Mit alien von rpm nach deb und zurück
Manchmal will man auf den Raspberry Pi ein rpm von Red Hat auf einem Debian installieren. Wenn es auch selten vorkommt.
Man kann dann mit alien das Package Format konvertieren. Auf dem Raspberry Pi installieren wir die aktuelle Version aus dem Jahre 2016 mit einem sudo apt-get install alien und schon ist die 8.95 Version installiert.
Wie kann nun ein rpm in das deb Format konvertiert oder auch gleich installiert werden? Dazu einfach mit sudo das rpm Archive aufrufen. Hier mal ein Beispiel mit dem twpdfformulartocsv-0.0.1-1.noarch.rpm „Mit alien von rpm nach deb und zurück“ weiterlesen
OpenOffice Quickie: Wie können Auswahlboxen für PDF-Formulare mit mehreren Werten erstellt werden?
Vor einiger Zeit hatte ich schon mal beschrieben, wie PDF-Formulare mit dem kostenlosen OpenOffice erzeugt werden können. Wie kann nun aber eine solche Auswahlbox mit Werten in einem PDF-Formular eingefügt werden?
Der Trick ist im Bearbeitungsmodus mit einem Doppelklick den Eigenschaften Dialog öffnen: „OpenOffice Quickie: Wie können Auswahlboxen für PDF-Formulare mit mehreren Werten erstellt werden?“ weiterlesen