„Feinstaub 2020 in Hannover – das Jahr fängt ja gut an – ohne Worte“ 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.
Quicktest der neuen Eclipse 2019-12 IDE –>OK „Freut euch immer“
Mitten in meinem Indien Urlaub ist eine neue Eclipse Version veröffentlich worden.
Dann mal gleich die neue Repo. URL unter
Window > Preferences > Install/Update > Available Software Sites
hinzugefügt
https://download.eclipse.org/releases/2019-12/
und start des Updates. In der Zwischenzeit (1 Minute) kann mein Urlaubsvideo angeschaut oder ein paar Infos darüber gelesen werden. Oder die zwei neuen Videos in engl. über die Änderungen im Java / Maven Bereich (10 Minuten) und General und Git (8 Minuten).
So dann mal ein Quicktest nach dem Restart der neuen IDE. Der Start scheint gefühlt wieder länger zu dauern. Ein erster JUnit Test, ok:
Jetzt ist auch ein neues Maven 3.6.3 mit dabei und eine bessere JDK 13 Unterstüzung.
Also dann „Freut euch immer“ …
Apple HEIC to JPG or PDF or PNG or TIFF on Mac
Das High Efficiency Image File Format (HEIF) von Apple kann auf einem Mac leicht in JPG oder PDF umgewandelt werden.
Dafür muss die HEIC Foto Datei nur in der Vorschau App geöffnet werden und in dem gewünschten Format exportiert werden über Ablage – Exportieren
Auswahl des Format: „Apple HEIC to JPG or PDF or PNG or TIFF on Mac“ weiterlesen
Heute genau vor 21 Jahren – Jubiläum: wenzlaff.de! – Freut euch immer – Always rejoice
Heute genau vor 21 Jahren, am 1.12.1998 ging die Domain wenzlaff.de zum ersten mal ans Netz. Wie die Zeit vergeht.
Es war eine statische Webseite mit Freeware und Sprüche Datenbank mit Newsletter und einigen C++ und Java Programmen zum kostenlosen Download aus meiner Hand.
Aber auch schon lange vor dieser Zeit, hatte ich eine Homepage, die aber dann auf den Servern der UNI-Bremen gehostet wurde. Da hatte ich als Informatiker einen Zugang mit Akustikkoppler mit 300 Baud. Lochkarten hatten wir da auch noch. Das war wenigstens etwas zum anfassen, batches mit Lochkarten schreiben, cool!
Und es gab keine Werbung im Internet. „Heute genau vor 21 Jahren – Jubiläum: wenzlaff.de! – Freut euch immer – Always rejoice“ weiterlesen
Neues „abgeschirmtes“ Brillen-Gehäuse mit Magnetverschluss für eine Raspberry Pi Zero W für lau
Der Raspberry Pi Zero W wohnte ja seit über einem Jahr in einem Duschbad und dient als GIT-Server auf USB-Stick ua.
Ein Nachteil war, das das Gehäuse nicht lichtdicht ist und das Flackern der LED sichtbar war. Also muss er da nun ausziehen: „Neues „abgeschirmtes“ Brillen-Gehäuse mit Magnetverschluss für eine Raspberry Pi Zero W für lau“ weiterlesen
Podcast auch im Apple-Store, Spotify und bei Google verfügbar – Neue Folge zum Thema: Mindmap
Wenzlaff.de nun auch im Apple-Store Podcast mit der zweiten Folge online. Die 1. Folge war ja über den Raspberry Pi mit SDR. Siehe auch auf kleinhirn.eu.
Würde mich über eine 5 Sterne Bewertung freuen.
Und auch auf Spotify „Podcast auch im Apple-Store, Spotify und bei Google verfügbar – Neue Folge zum Thema: Mindmap“ weiterlesen
Feinstaub in Langenhagen! Fahrverbot? Solche Werte hatten wir in Langenhagen schon lange nicht!
Das sind die amtlichen Werte, mein Raspberry Pi leitet sie nur weiter. Die Niedersächsische Gewerbeaufsicht misst Umweltdaten und stellt sie zur freien Verfügung bereit, hier die Grafiken:
Dork mit sqliv auf dem Raspberry Pi unter Debian
Eine Google-Dork-Abfrage (oder Bing, …) beziehungsweise abgekürzt ein Dork ist eine spezielle Suchabfrage, die fortgeschrittene Parameter von Suchmaschinen wie Google, Bing usw. nutzt, um Informationen aus einer Webseite herauszufiltern, die anders nicht so leicht verfügbar wären. Dazu gehören auch Informationen, die nicht für die Öffentlichkeit gedacht sind und die nur unzureichend geschützt wurden.
Google-Dorking ist ein passiver Angriff, mit dem sich Nutzernamen, Passwörter, E-Mail-Adressen, geheime Dokumente, private Finanzdaten und Sicherheitslücken auf Webseiten herausfinden lassen.

Mit dem sqliv ist es leicht solche Abfragen zu automatisieren.
Wie kann das Python-Script auf Debian (wozu Kali 😉 installiert werden: „Dork mit sqliv auf dem Raspberry Pi unter Debian“ weiterlesen
Für SQL Injection, Penetration Testing und mehr den sqlmap auf dem Raspberry Pi in 5 Minuten installieren
Für SQL Injection, Penetration Testing und mehr kann der sqlmap auf dem Raspberry Pi in 5 Minuten installiert werden. Es muss ja nicht immer Kali-Linux sein. Auch auf einem Debian geht es einfach mit:
sudo apt-get install sqlmap
und schon kann es los gehen:
splmap -h
„Für SQL Injection, Penetration Testing und mehr den sqlmap auf dem Raspberry Pi in 5 Minuten installieren“ weiterlesen
Tip des Tages: Wie kann ein iMac ohne Spezialwerkzeug geöffnet werden?
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
NodeRed Flow Pollenflug-Gefahrenindex des DWD per Pushover vom Rasberry Pi versenden
Im Rahmen seines gesetzlichen Auftrags stellt der DWD seine Wetter- und Klimainformationen entgeltfrei auf dem Open Data-Server https://opendata.dwd.de bereit. Fuer den Zugang ist keine Registrierung notwendig. Es gelten die Nutzungsbedingungen unter: https://www.dwd.de/copyright. Also alle frei zugänglichen Geodaten und Geodatendienste dürfen entsprechend der „Verordnung zur Festlegung der Nutzungsbestimmungen für die Bereitstellung von Geodaten des Bundes (GeoNutzV) unter Beigabe eines Quellenvermerks ohne Einschränkungen weiterverwendet werden.
Die Infos werden in einer JSON Datei bereitgestellt. Der Aufbau wird hier beschrieben. Dann erstellen wir mal einen NodeRed Flow der den Pollenflug-Gefahrenindex täglich per Pushover an das Handy versenden kann. In dem Beispiel wird nur der Wert für Niedersachsen und Birke und Hasel verwendet. Auch wird nur eine Meldung versendet wenn der Wert sich ändert. In den nächste Monaten wird wohl auch nicht viel an Pollen fliegen, wie die Statistik zeigt. Was die Werte bedeuten, geht aus dieser Tabelle hervor.
So sieht der NodeRed Flow aus:
Hier noch ein Auszug der JSON-Daten: „NodeRed Flow Pollenflug-Gefahrenindex des DWD per Pushover vom Rasberry Pi versenden“ weiterlesen
Wie können nicht benötigte Flows auf einem Raspberry Pi in NodeRed Version 1.0.2 deaktiviert werden?
Nach der Aktualisierung der NodeRed Version 1.0.2 auf:
Musste der Twitter Nodes neu installiert werden, da er nun nicht mehr zur default Pallete gehört. Dann wollte ich einen Flow deaktivieren, das ging früher hier: „Wie können nicht benötigte Flows auf einem Raspberry Pi in NodeRed Version 1.0.2 deaktiviert werden?“ weiterlesen
Kein Zugriff auf SD-Karte mit OS X (Catalina) und dd Kopieren beschleunigen
Heute hatte ich mal keinen Zugriff auf eine im Pi geschrottete SD-Karte. DD konnte nicht schreiben bzw. lese. Was die Karte wiederbelebt hat, war das Kommando im Terminal:
|
1 |
sudo diskutil eraseDisk free UNTITLED /dev/diskN |
Dabei muss das N durch die Disk Nummer ersetzt werden, die man mit sudo diskutil list finden kann.
Wenn man während des ausführen des DD den aktuellen Status haben will, „Kein Zugriff auf SD-Karte mit OS X (Catalina) und dd Kopieren beschleunigen“ weiterlesen
Filtern eines JSON Objekt per REST Request von einem Raspberry Pi in einen Wert per NodeRed transformieren
Wenn man REST Services abfragt, bekommt man oft viele Werte. Wie kann man nur einen davon leicht per NodeRed filtern?
Hier mal ein Beispiel eines JSON-Objekt mit mehreren Werten. Wir wollen da die Temperatur Filtern. „Filtern eines JSON Objekt per REST Request von einem Raspberry Pi in einen Wert per NodeRed transformieren“ weiterlesen
MacPorts auf macOS Catalina 10.15 installieren und dann Maven 3
MacPorts kann auch auf Catalina installiert werden wie hier beschrieben.
Dazu erst Xcode 11.1 aus dem App Store installieren. „MacPorts auf macOS Catalina 10.15 installieren und dann Maven 3“ weiterlesen
Swagger-UI in 5 Minuten auf einen Raspberry Pi einem Quarkus Projekt hinzufügen!
Für die Entwicklung von REST APIs ist die Swagger-UI sehr hilfreich.
Ok, dann wollen wir mal in einem Quarkus Projekt eine Swagger-UI hinzufügen. Das geht mit einem Befehl, da Quarkus einen guten Plugin Mechanismus hat:
./mvnw quarkus:add-extension -Dextensions=“openapi“
Nach 27 Sekunden kommt das Build Success:
|
1 2 3 4 |
[INFO] --- quarkus-maven-plugin:0.24.0:add-extension (default-cli) @ info-kleinhirn --- ✅ Adding extension io.quarkus:quarkus-smallrye-openapi [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS |
So, das wars schon. Nun noch die Anwendung starten mit „Swagger-UI in 5 Minuten auf einen Raspberry Pi einem Quarkus Projekt hinzufügen!“ weiterlesen
In unter 5 Minuten auf einem Raspberry Pi Zero eine Java Quarkus REST Anwendung mit JUnit-Test neu erstellen und starten!
Wenn Java 8 und ein aktuelles Maven auf dem Raspberry Pi installiert ist, kann man in unter 5 Minuten eine komplette REST-Anwendung mit statischer Webseite erstellen und starten. Die dann sogar Hot Reloading fähig ist. Das geht in drei Schritten und das sogar auf einem Raspberry Pi Zero:

1. Ein neues leeres Verzeichnis erstellen und dahin wechseln:
|
1 2 |
mkdir quarkus-anwendung cd quarkus-anwendung |
2. Mit folgenden Maven Kommando ein Maven Projekt in ca. 30 Sekunden erstellen
|
1 |
mvn io.quarkus:quarkus-maven-plugin:0.24.0:create -DprojectGroupId=de.wenzlaff.info -DprojectArtifactId=info-kleinhirn -DclassName="de.wenzlaff.InfoResource" -Dpath="/info" |
3. Das Projekt compilieren und starten in ca. 40 Sekunden mit:
|
1 |
mvn compile quarkus:dev |
Wenn der Server gestartet ist kann im Browser das Servlet aufgerufen werden mit:
http://[PI-ADRESSE]:8080/info
Ergebnis: hello
4. Nun wollen wir in einem anderen Kommondozeilen-Fenster in das Verzeichnis „In unter 5 Minuten auf einem Raspberry Pi Zero eine Java Quarkus REST Anwendung mit JUnit-Test neu erstellen und starten!“ weiterlesen
Wie kann die aktuellste Maven Version 3.6.2 auf dem Raspberry Pi installiert werden?
Mit einen sudo apt-update oder sudo apt update && sudo apt install maven bekommt man unter stretch nicht die neueste Version sondern nur 3.3.9-4. Aber man kann sie auch von der Binär-Version installieren.
1. Die aktuelle Version von der Maven-Seite holen.
wget http://mirrors.ae-online.de/apache/maven/maven-3/3.6.2/binaries/apache-maven-3.6.2-bin.tar.gz
2. Das Archive entpacken nach /opt
cd /opt && sudo tar -xzvf /home/pi/apache-maven-3.6.2-bin.tar.gz
3. Der Shell für alle User die neue Version mitteilen
sudoedit /etc/profile.d/maven.sh
mit diesem Inhalt
export M2_HOME=/opt/apache-maven-3.6.2
export „PATH=$PATH:$M2_HOME/bin“
Speichern und
4. Die Shell neu starten, damit das Profil-Script ausgeführt wird und die Version checken:
mvn -version
Ok, es wird die neue Version ausgegeben:
|
1 2 3 4 5 |
Apache Maven 3.6.2 (40f52333136460af0dc0d7232c0dc0bcf0d9e117; 2019-08-27T15:06:16Z) Maven home: /opt/apache-maven-3.6.2 Java version: 1.8.0_65, vendor: Oracle Corporation, runtime: /usr/lib/jvm/jdk-8-oracle-arm32-vfp-hflt/jre Default locale: de_DE, platform encoding: UTF-8 OS name: "linux", version: "4.19.58+", arch: "arm", family: "unix" |
Was tun wenn der StartExplorer – „Start Shell Here“ unter Eclipse 2019-09 und ios 13 nicht mehr angezeigt wird?
Dann diese Einstellungen anpassen: „Was tun wenn der StartExplorer – „Start Shell Here“ unter Eclipse 2019-09 und ios 13 nicht mehr angezeigt wird?“ weiterlesen
Quicktest: Gestern wurde Quarkus 0.24.0 released – „Container First“
Wenn das kein Grund ist mal die neue Version zu testen. Quarkus ist ein relativ neues Framework, welches die leichtgewichtige Entwicklung von Java-Anwendungen nach dem „Container-first“-Prinzip macht. Es wird von Red Hat gesponsert und macht die Entwicklung von Microservices einfacher. Was Entwickler besonders gefällt ist das Live Reloading so das man gemachte Änderungen sofort „sieht“.
Also gleich ein Build it. Save it. Run it. – und das mit Java:
./mvnw compile quarkus:dev
Das klappt ja schon mal, nun ein
./mvnw clean package
Package bauen: „Quicktest: Gestern wurde Quarkus 0.24.0 released – „Container First““ weiterlesen
Sicherheit: macOS-Terminalemulator iTerm2 updaten
Wie kann JSON in Java „schnell“ erzeugt werden?
Da heute ein arbeitsfreier Tag ist, schon mal eine kleine Vorbereitung („ARBEIT“) für den Einsatz im Projekt ab Montag. Da wollen wir JSON Objekte verwenden. Für die JSON Erzeugung mit Java gibt es viele Möglichkeiten und Libs. Hier mal ein kleines Beispiel mit der 68 kB großen json.org Lib.
Zuerst in der pom.xml die Lib eintragen:
|
1 2 3 4 5 |
<dependency> <groupId>org.json</groupId> <artifactId>json</artifactId> <version>20190722</version> </dependency> |
und dann einen kleine JUnit 5 Test.
|
1 2 3 4 5 6 7 8 9 10 11 12 |
@Test void kleinerJsonTest() { JSONObject json = new JSONObject(); json.put("name", "Wenzlaff"); json.put("vorname", "Thomas"); json.put("pin", 123456); // {"pin":123456,"vorname":"Thomas","name":"Wenzlaff"} assertEquals("{\"pin\":123456,\"vorname\":\"Thomas\",\"name\":\"Wenzlaff\"}" + "", json.toString()); } |
Also einfach ein JSONObject Objekt erstellen und mit put die Key und Value Werte eingeben. Für die put Methode gibt es viele Möglichkeiten: „Wie kann JSON in Java „schnell“ erzeugt werden?“ 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
Wie sieht der Flugverkehr im Moment (29.09.2019 16:30 Uhr) aus? Es ist noch Platz …
HP LaserJet Scannen in Netzwerk Verzeichnis unter Mac OS 10.14

Also erst einmal die neue Firmware (2019-07-16) und Treiber von der HP Seite geladen, da gibt es nun neue Treiber. Das hat aber auch nichts gebracht. Langes suchen und lesen in den Foren von HP hat auch nicht geholfen obwohl einige auch das Problem hatten, und der Service von HP auch nicht weiter geholfen hat.
Die Lösung die ich per try and error gefunden habe, ist folgende, die Anleitung mit dem Pfad ist auf der HP-Seite falsche. Es muss die IP Adressse und auch der Name des „Macintosh HD“ zusätzlich angegeben werden, auch wenn im Pfad nur /User/Verzeichnis steht.
Also hier ein Beispiel (IP Adresse und Userpfad anpassen):
\\10.1.2.3\Macintosh HD\Users\thomas\Scanner-Input
wenn dann noch der Username mit dem Passwort des Mac angegeben wird, klappt es auch mit dem Scannen in Netzwerkordner.

Ein klick auf den Test Button…
„HP LaserJet Scannen in Netzwerk Verzeichnis unter Mac OS 10.14“ weiterlesen
Neue Version graphviz-java-parent-0.11.0 vor zwei Tagen veröffentlicht
Vor zwei Tagen wurde die neue Version veröffentlicht:

Dann mal die pom.xml updaten und einen Quicktest:
„Neue Version graphviz-java-parent-0.11.0 vor zwei Tagen veröffentlicht“ weiterlesen
Eclipse 2019-09 update in 10 Min installieren und Quicktest –> OK
Dann wollen wir mal das gestern veröffentlichte Update installieren. Die Installation und Neuerungen sind ja bei Heise beschrieben. Dann mal ein Quicktest:

„Eclipse 2019-09 update in 10 Min installieren und Quicktest –> OK“ weiterlesen
Wie kann in Java ein ical Termin (ics Datei) erzeugt werden?
Wer mit Java ical Termine erzeugen will, kann das gut mit der ical4j Lib machen. Es muss dazu in der pom.xml dieser Eintrag hinzugefügt werden.
|
1 2 3 4 5 |
<dependency> <groupId>org.mnode.ical4j</groupId> <artifactId>ical4j</artifactId> <version>3.0.4</version> </dependency> |
Dann wollen wir zuerst mal ein paar Zeilen für den JUnit Test dafür schreiben:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
@Test void testWriteKalenderInDatei() throws Exception { Calendar icsCalendar = getTestkalenderMitEinTermin(); String icsDateinamen = "JUnit-Testdatei.ics"; Kalender.writeKalenderInDatei(icsCalendar, icsDateinamen); } private Calendar getTestkalenderMitEinTermin() { Calendar icsCalendar = Kalender.createKalender(); TimeZone timezone = Kalender.createTimezoneEuropa(); LocalDateTime eventStartZeitpunkt = LocalDateTime.now(); String eventKommentar = "JUnit Test Kommentar"; String eventTitel = "JUnit Event Titel"; Kalender k = new Kalender(); k.addTermin(icsCalendar, timezone, eventStartZeitpunkt, eventTitel, eventKommentar); return icsCalendar; } |
Wir brauchen noch die Kalender Klasse, die hier kopiert werden kann: „Wie kann in Java ein ical Termin (ics Datei) erzeugt werden?“ weiterlesen
























