Wie kann Webmin auf einem Raspberry Pi installiert werden?

Für die Fernwartung des rPi eignet sich Webmin. Damit kann fast alles über den Browser eingestellt werden.

Evl. gibte es auch schon eine neuere Version von Webmin.

Nach einigen Minuten warten, steht nach einen Aufruf im Browser von
https://Server_IP:10000
der Statusmonitor von Webmin bereit, nachdem die Anmeldung mit root mit Passwort eingegeben wurde:
Bildschirmfoto 2013-12-28 um 17.19.27

Welche Einstellung findet ihr nützlich?

Wie können E-Mails vom Raspberry Pi (rPi) inklusive Anhang mit mutt (nSMPT) versendet werden?

E-Mails vom Raspberry Pi aus versende geht wie schon für den WR703N beschrieben. Ist halt auch Linux.

Also hier noch einmal kurz zusammengefasst, die Installation für den Raspberry Pi mit zusätzlichem Beispiel für das versenden einer E-Mail via mutt inkl. Dateianhang. Vorraussetzung ist eine Raspberry 2014-09-09-wheezy-raspbian.zip installation.

Dann das System updaten und einige Tools installieren mit

Es sind dann folgende Versionen nach ein paar Minuten installiert:

Dann die drei Dateien wie in beschrieben anpassen:

Wenn alles konfiguriert ist, können E-Mails mit Anhang über mutt wie folgt versendet werden:

Nach Enter öffnet sich ein Eingabefeld für die Empfänger E-Mail (to). Bestätigen mit Enter oder anpassen. Dann kommt das Betreff (subject). Weiter mit Enter oder anpassen. Dann öffnet sich der default Editor (nano 2.2.6 oder vi) dort kann der Text der E-Mail eingegeben werden. Speichern (ctrl und O) und Beenden (ctrl und X). Es öffnet sich das mutt Fenster und y zum versenden der E-Mail mit Anhang drücken.

Schon wird die E-Mail versendet.

Oder ohne den mutt Dialog

versendet die E-Mail sofort nach Enter.

So lief es zumindestens auf einen Raspbeery Pi mit einem älteren Debian. Bei dieser aktuellen Version bekomme ich immer diesen Fehler mit mutt:

*** glibc detected *** sendmail: munmap_chunk(): invalid pointer: 0x0141153f ***

Da habe ich auch noch keine Lösung für gefunden. [UPDATE 1.11.2014] Habe den Fehler jetzt gefunden. In der Datei /etc/ssmtp/smtp.conf hatte ich unter rewriteDomain den Username hinzugefügt (rewriteDomain=username@wenzlaff.de) richtig ist aber nur der Domain Name z.B. rewriteDomain=wenzlaff.de. Damit läuft es nun super. [/UPDATE]

Habe es deshalb wie hier beschrieben mit einem nSMTP Client versucht. D.h. erstellen von /etc/msmtprc und (optional) .msmtprc.

Damit läuft das versenden von E-Mails erst einmal.

Hier die Config-Dateien für Strato:

Eine globale /etc/msmtprc Datei, wird gelesen wenn keine im Userverzeichnis vorhanden ist.

Die .msmtprc überschreibt die globale /etc/msmtprc Datei wenn vorhanden (optional).

Wenn die .msmtprc vorhanden ist, muss sie dem User gehören und darf nur für den User schreib und lesbar sein. Ein ls-la muss so aussehen

-rw------- 1 pi pi 479 Oct 13 22:53 .msmtprc

Also evl. noch anpassen:

Testen des E-Mail versand mit:

Ergebnis Auszug:

Habt ihr noch andere Alternativen oder ein Lösung warum mutt nich läuft? Dann hier als Kommentar posten.

Wie können die installierten Versionen der Packages/Programme auf einen Raspberry Pi angezeigt werden?

Manchmal will man wissen, welche Version von einem Programm bzw. Package auf den Raspberry Pi installiert ist und ob es eine (und welche) neue Version von einem Package oder Programm gibt.

Die Anzeige der Versionsnummern ist default nicht vorhanden, läßt sich aber mit

schnell nach installieren.

apt-get install apt-show-versions

Das

gibt dann eine Anleitung und alle Parameter des Programms aus:

apt-show-versions -help
apt-show-versions -help

Ein apt-show-versions gibt dann eine Liste aller Package mit Versionsnummern aus, hier ein kleiner Ausschnitt:
apt-show-versions
apt-show-versions

Will man wissen ob es neue Versionen gibt, hilft ein apt-show-versions -u
apt-show-versions -u
apt-show-versions -u

Weitere Parameter wie regex ua. siehe in der obigen Onlinehilfe.

Wer möchte kann hier weitere Befehle posten!

Wie können nicht AirPrint fähige Drucker mit Raspberry Pi als AirPrint Server via CUPS Server eingerichtet werden?

Mit AirPrint kann von einem iPad, iPhone, iPod touch und Mac sofort gedruckt werden, ohne vorher Treiber installieren oder Software laden zu müssen. Einfach einen AirPrint-Drucker auswählen und drucken.

Wer keinen AirPrint fähigen Drucker hat, kann ihn mit einen rPi und CUPS dazu leicht verwenden, so das über das iPhone, iPad bzw. Mac gedruckt weden kann.

Es gibt dazu diese gute Anleitung die super mit meinem HP LJ 2600n über das Netzwerk funktioniert. Es sollte aber auch alle anderen Drucker laufen.

Diese Seite kurz zusammengefasst:

Über Browser die Adresse

aufrufen und Option “Freigeben von Druckern welche mit diesem System verbunden sind” aktivieren und den Drucker einrichten.

CUPS Drucker Seite
CUPS Drucker Seite

CUPS Seite Verwaltung
CUPS Seite Verwaltung

AirPrint einrichten mit dem Py-Script:

Restart:

So jetzt kann von jedem Apple Gerät über AirPrint gedruckt werden. Oder über den Mac.

Tip: Wer Fehler suchen muss, kann in der
/etc/cups/cupsd.conf
Datei den LogLevel warn auf
LogLevel debug2
setzen. Dann werden mehr Ausgaben nach /var/log/cups/error_log geschrieben. Man kann sich diese Datei auch mit
tail -n 100 -f /var/log/cups/error_log
ausgeben lassen. Damit die geänderten Einstellungen wirksam werden, muss der CUPS Server mit
sudo service cups restart
restartet werden.

Wenn ein virtuelle PDF-Drucker mit cups-pdf eingerichtet wird, werden die PDFs default mäßig in
/var/spool/cups-pdf/ANONYMOUS
gespeichert. So können, ohne das ein Drucker angeschlossen ist, jederzeit von iPhone, iPad und Mac nach PDF „gedruckt“ werden.
Der PDF-Drucker kann so eingestellt werden:
Bildschirmfoto 2013-12-25 um 10.32.32

Super! Klappt es bei Dir auch?

Habe noch diese gute Anleitung mit vielen Fotos in engl. gefunden.

Wie kann die BackTrack Linux Penetration Testing und Security Auditing Linux Distribution Kali auf einem Raspberry Pi installiert werden?

Zuerst das gepackte Kali Image kali-linux-1.0.5-armel-rpi.img.xz (ca. 2 GB) von Kali.org herunter laden. Auch noch die beiden Signatur Dateien SHA1SUMS und SHA1SUMS.gpg aus dem gleichen Verzeichnis.

(Optional Signatur/Unterschrift vergleichen)

(Optional) Checksumme des geladenen Archive vergleichen. Auf der Kali Homepage ist die SHA1Sum angegeben (61dfcf2272d5f63345c29f0d2c92c630777856ab). Um die zu vergleichen muss auf dem Mac noch mit

das Checksummenprüfprogramm installiert werden, wenn es nicht schon vorhanden ist. Das ist default bei Mac OS X 10.9.1 nicht der Fall. Dann der Aufruf

um die SHA1Sum Checksumme anzuzeigen.
Bei meiner Version wird diese Checksumme ausgegeben 61dfcf2272d5f63345c29f0d2c92c630777856ab kali-linux-1.0.5-armel-rpi.img.xz. Verglichen mit der angegebenen. Beide gleich. Alles ok!

Die Datei kali-linux-1.0.5-armel-rpi.img.xz entpacken wir erhalten dann die kali-linux-1.0.5-armel-rpi.img (es sind dann ca. 8 GB) mit

Image nun auf eine mind. 8GB SD-Karte schreiben, vorher schauen wo die SD-Karte gemountet wurde.
Achtung! Bei falschem Ziel kann evl. die ganze Festplatte gelöscht werden!

Stunden später.

Evl. schauen wie weit das Kopieren ist, indem in einem anderem Terminal die ProzessId ermitteln wird mit:

Unmounten der SD-Karte wenn alles fertig.

Mit ssh anmelden im Terminal:

Passwort: toor

Nun muss nur noch der SSH Schlüssel und das Root Passwort geändert werden, da alle Images das gleiche verwenden.

Evl. vorhandenen SSH Key löschen in

Root Passwort ändern mit

So jetzt kann mit dem Kali Linux auf dem rPi gearbeitet werden.

Mit gui vorher startx starten.

Viel Spaß.

Hast Du Vorschläge für die Anwendung?

Wie kann der LAN/Wlan-Traffic mitgeloggt werden? Oder Aufruf der Capture Funktion im Wireshark Format mit der Fritz Box 7490.

Die FRITZ!Box 7490 kann zur Diagnose alle Datenpakete im Wireshark-Format mitschneiden, wenn die FRITZ!Box als Router eingestellt ist.

Es können mehrere Mitschnitte gleichzeitig gestartet werden.

Die Seite kann über den Aufruf http://IP-ADRESSE/html/capture.html geöffnet werden. Es wird diese Seite nach Passwortabfrage geöffnet:

Capture Fritz Box
Capture Fritz Box
Capture Fritz Box 2
Capture Fritz Box 2

Achtung: Der Mitschnitt kann persönliche Kennwörter enthalten.

Die erzeugten Log-Dateien kann man sich dann mit Wireshark (Version 1.10.4) anschauen. Auf dem Mac kann es mit aus dem dmg-Archiv oder auch über den Terminal Befehl:

sudo port install wireshark

in ein paar Minuten installiert werden. Das Programm wird dann gestartet über den Terminal Befehl:

wireshark

Computer im FRITZ!Box-Heimnetz über das Internet starten (Wake on LAN) | FRITZ!Box 7490

Aktiviere für einen Mac die Funktion über die Systemeinstellungen im Punkt Energie sparen: Setze dort einfach bei allen Macs, die nötigenfalls aus dem Ruhezustand aufgeweckt werden müssen, einen Haken bei Ruhezustand bei Netzwerkzugriff beenden.

Das klappt bei neueren Macs sogar über das Funknetzwerk.

Computer im FRITZ!Box-Heimnetz über das Internet starten (Wake on LAN) | FRITZ!Box 7390 | AVM-SKB.

Kostenloser Reiseführer für die Südkaribik-Kreuzfahrt mit der Eclipse zum downloaden

Hier der kostenlose Reiseführer (pdf 24 MB, 85 Seiten) zum Download (erstellt mit der Wikipedia Buchfunktion, also warum noch Reiseführer kaufen?), für die Südkaribik-Kreuzfahrt mit der Eclipse mit folgenden Zielen:

  • Miami (USA)
  • Fort Lauderdale, Florida (USA)
  • Aruba (Oranjestad)
  • Curacao (Willemstad)
  • St. Georges (Grenada)
  • Bridgetown (Barbados)
  • Castries (St. Lucia)
  • St. Johns (Antigua)
  • Philipsburg (St. Maarten)
  • Charlotte Amalie (St. Thomas)

Persönliche Fotos folgen …

Erster Test der Fritz!Box OS-Version 06.01 (update von 05.59).

Es gibt für die FRITZ!Box 7490 ein neues FRITZ!OS 06.01.

Diese Features sind angegeben, waren aber auch schon in 05.59 zum grossen Teil vorhanden:

  • WLAN-Gastzugang erweitert zu Privater Hotspot
  • Live TV mit Tablet, Notebook und Smartphone ansehen
  • Bereit für VDSL-Vectoring-Angebote der Netzbetreiber
  • Kindersicherung mit einem gemeinsamen Budget für mehrere Geräte
  • Smart Home: Gruppenschaltung von mehreren Aktoren ermöglicht
  • MyFRITZ! Zugang zu Sprachnachrichten, Smart Home und FRITZ!NAS für mobile Geräte erneuert
  • Diagnose überprüft DSL, Internet und Heimnetz

Nach dem Backup und installation über die Web-Gui der FritzBox, lief alles wie bisher. Der ganze Vorgang dauerte ca. 10 min. und es konnten keine Datenverluste bei den Einstellungen beobachtet werden.

Sieht also gut aus! Wie läuft es bei Euch?

{Update} Siehe auch aktuellen Artikel über Teredo-Server. Der ist nach dem update in der default Einstellung blockiert. Gut so!

Wie kann ich auf einem Mac den Fortschritt beim kopieren auf einer SD-Karte mit DD für einen Raspbeery Pi erkennen?

Hin und wieder muss man mal ein Backup für ein Raspbeery Pi oder auch bei sonstigen SD-Karten erstellen.
Das Backup wird eingespielt mit dem DD Kommando im Terminal eines Mac OS X z.b.

sudo dd if=ini-rot-backup.img of=/dev/disk3 bs=1m
Bildschirmfoto 2013-11-13 um 15.36.06

Bei einer 8 GB-SD-Karte dauert dieser Kopiervorgang über eine Stunde, und da keine Ausgabe auf der Konsole kommt, kann man den Fortschritt nicht beobachten.

Wenn man aber in einem neuem Terminal Fenster die PID mit
ps -Af
herausfindet. Hier die 600.

Bildschirmfoto 2013-11-13 um 16.11.58
Kann man mit
sudo kill -siginfo 600
wobei die 600, die oben ermittelte PID ist, in dem anderen Terminalfenster die Fortschrittsausgabe erzeugen. Dies kann auch mehrfach erzeugt werden. Wenn man beide Terminal-Fenster nebeneinander anordnet, kann leicht der Fortschritt des Kopiervorgangs beobachtet werden.

Wie kann ein Backup einer SD-Karte (von einem Raspberry Pi) in eine Datei auf einem Mac OS X gesichert werden?

Die SD-Karte vom Raspberry Pi oder auch jede andere, in den Mac stecken und mit der Eingabe im Terminal:

diskutil list

feststellen wie die SD-Karte gemountet wurde. Bei mir /dev/disk3

Bildschirmfoto 2013-11-09 um 18.35.01

Und den Backup-Prozess starten mit dd (data definition):

sudo dd if=/dev/rdisk3 of=~/Backups/Raspbeery-Pi/ini-rot-backup.img bs=1m
if = input file
of = output file
~ = Homeverzeichnis
Das Prefix „r“ vor dem rdisk3 soll den Prozess beschleunigen, da es auf den raw Speicher der Karte zugreift.
bs = block size hier 1 MB

Bis die 8 GB als backup gespeichert sind, dauert je nach SD-Karten Größe ein paar Minuten, bei mir ca. 7 Minuten:

Bildschirmfoto 2013-11-09 um 18.39.47

Dann kann die SD-Karte entfernt werden und das Backup bei Bedarf eingespielt werden.

Das Einspielen des Backup (Restore) dauert bei einer 8GB Karte über eine Stunde.
Dazu die SD-Karte in den Mac stecken und

diskutil list # schauen wo die SD-Karte gemountet ist
sudo diskutil unmount /dev/disk3s1 # SD-Karte unmounten
sudo dd if=ini-rot-backup.img of=/dev/disk3 bs=1m # Image ini-rot-backup.img auf SD-Karte kopieren

eingeben. Wenn die Ausgabe:

7680+0 records in
7680+0 records out
8053063680 bytes transferred in 10605.150176 secs (759354 bytes/sec)
kommt, dann ist der Kopiervorgang abgeschlossen.

Die Anzeige des Fortschritt des Kopiervorgangs wird in diesem Eintrag beschrieben.

Wie installiert man eine kostenlose VirtualBox von Oracle auf dem Mac OS X (oder Windows, Linux) in 5 Minuten?

Von VirtualBox die VirtualBox 4.3.2 for OS X hosts
und VirtualBox 4.3.2 Oracle VM VirtualBox Extension Pack downloaden. Es muss ja nicht immer eine virtuelle Maschine von VMware oder Parallels sein.

VirtualBox und Extensions Pack installieren.

Starten von VirtualBox:
Bildschirmfoto 2013-11-07 um 18.12.11

So, jetzt kann in der virtuelle Maschine Linux installiert werden. Die Anleitung zu VirtualBox ist hier {PDF} zu finden.

Coole Anleitung auf Deutsch. Habe das alles installiert mit neuem Debian CD Image (7.2.0). Eclipse läuft super…
Bildschirmfoto 2013-11-07 um 22.11.40

Und das gestartete Eclipse Kepler:
Bildschirmfoto 2013-11-07 um 22.12.58

Wie kann auf einem Raspberry Pi (rPi) ein Bootloader „BerryBoot v2.0“ ohne Monitor über VNC installiert werden?

Um den Bootloader BerryBoot zu instalieren, braucht man nur das ZIP-Archive laden und auf einer leeren SD-Karte auspacken. So das alle Datein im Root-Verzeichnis liegen.

Um eine Instalation ohne Monitor mit VNC durchzuführen, muss die cmdline.txt Datei um diesen Eintrag ergänzt werden, aber alles in eine Zeile:
vncinstall ipv4=192.168.88.88/255.255.255.0/192.168.88.1 wie auch in beschrieben. Das Format ist: IP/netmask/gateway.

Dann die SD-Karte in den rPi einlegen und booten und den VNC-Client starten. Es öffnet sich das Boot-Menü von BerryBoot:
Bildschirmfoto 2013-11-04 um 18.06.07
Dann wie in den Dialogen angegeben vorgehen. Weitere Details gibt es hier.

Nach dem reboot, kann über eine neue VNC connetion, das Bootmenü angezeigt, und das entsprechende Image gebootet werden:
Bildschirmfoto 2013-11-04 um 21.05.17

Tip der Woche: Wie können formatierungen für Eclipse im Quellcode für bestimmte Bereiche ausgeschaltet werden?

Hat man mühsam den Quellcode eingerückt, für SQLs oder bestimmte Variablen oder Konstanten und man möchte nicht, das dieser Code wieder durch die automatische Formatierung verloren geht wie in diesem Beispiel:
Bildschirmfoto 2013-11-03 um 12.15.28
Dann kann man zwei Tags definieren in:
Bildschirmfoto 2013-11-03 um 12.16.31
Dann auf Edit klicken. Auf dem letzten Tab unter Off/On Tags können belibige Tags definiert werden:
Bildschirmfoto 2013-11-03 um 12.16.48
und schon bleibt der Quelltext zwischen den Tags, so wie angegeben.

In Projekten müsste man sich dann aber auf Tags für alle einigen und in der Systemweiten XML festschreiben, sonst würde jemand anderes, der die Datei ausscheckt und den Tag nicht definiert hat, alles wieder umstellen.

Wie kann ein VNC-Server auf ein Raspberry Pi installiert und mit VNC-Client von Mac, iPad und Windows darauf zugegriffen werden?

Ein Virtual Network Computing (VNC) zeigt den Bildschirminhalt auf einen entfernten Rechner (VPN-Client) an.

Ein VNC-Server ist auf dem rPi schnell eingerichtet. In der Konsole folgende Befehle eingeben:

sudo apt-get update
sudo apt-get install tightvncserver

Und dann starten des VNC-Servers mit:
vncserver :1
es muss ein 8-Stelliges Passwort vergeben werden und bei der Frage nach view-only mit nein antworten.
Der VNC-Server startet dann mit
Bildschirmfoto 2013-11-02 um 17.40.43

Jetzt können wir mit einem VNC-Client über das Netzwerk zugreifen. Wir verwenden für den Mac OS X den kostenlosen TightVNC. Diesen Client gibt es auch für Windows.
Nach dem Download von TightVNC Java Viewer (Version 2.7.2) und auspacken des Archives kann der Client gestartet werden mit:

java -jar tightvnc-jviewer.jar
in dem Verzeichnis wo das Archiv ausgepackt wurde. Es öffnet sich dieser Dialog:
Bildschirmfoto 2013-11-02 um 17.46.22
Dort die IP-Adresse des rPi eingeben. Nach klick auf connect wird das SSH Passwort abgefragt und dann das VPN-Server Passwort.
Schon erscheint der Deskop vom rPi über das Netzwerk per VNC:
Bildschirmfoto 2013-11-02 um 17.49.16
Von dort kann dann ziemlich schnell alles mit Maus und grafisch gestartet werden. Z.b. der Browser:
Bildschirmfoto 2013-11-02 um 17.30.40

Stoppen kann man den TightVNC VNC-Server mit:
vncserver -kill :1

Mit einem iPad oder auch mit Windows kann man über das kostenlose Programm Mocha VNC Lite auf den rPi zugreifen. Dort braucht dann nur in der Konfiguration die VNC Server Adresse, der Server Port 5901 und das VNC Passwort eingegeben werden. Dann zurück zum Menü und klick auf Connect. Schon ist der Desktop vom rPi zu sehen.

Greift man nur mit dem iPad auf den Server zu, kann man den Server auch etwas optimiert starten mit
vncserver :1 -geometry 1024×768 -depth 24

Und will man den VNC-Server automatisch nach dem Neustart des rPi starten dann, einfach ein neues Verzeichnis anlegen:
mkdir /home/pi/.config/autostart und dort eine Datei mit Namen tightvnc.desktop anlegen mit folgenden Inhalt:

[Desktop Entry]
Type=Application
Name=TightVNC
Exec=vncserver :1
StartupNotify=false

Was muss getan werden damit unter OS X Mavericks MacPorts 2.2.1wieder läuft?

Nach dem Update auf OS X Mavericks läuft Mac Ports nicht mehr. Es gibt eine neue Version von Ports V. 2.2.1.
Was ist nötig?

1. Update neue Version von Xcode.

2. Neue Version von Command Line Developer Tool für Mavericks laden:
Bildschirmfoto 2013-10-26 um 12.53.44

3. Es müssen die Lizensbedingungen bestätigt werden:
sudo xcodebuild -license

4. Port updaten mit
sudo port upgrade selfupdate
sudo port upgrade outdated

das ganze dauert dann ein paar Minuten (ca. 30-60 min) je nach dem was installiert wird.

Dann kommt es zu dieser Fehlermeldung:

sudo port upgrade outdated
---> Fetching distfiles for llvm-3.2
Error: llvm-3.2 is not supported on Mavericks or later.
Error: org.macports.fetch for port llvm-3.2 returned: unsupported platform
Please see the log file for port llvm-3.2 for details:
/opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_lang_llvm-3.2/llvm-3.2/main.log
Error: Unable to upgrade port: 1
To report a bug, follow the instructions in the guide:
http://guide.macports.org/#project.tickets

Ok, dann im Internet gesucht und Ticket mit Lösung gefunden, das die Version 3.2 nicht unterstüzt wird. Deshalb habe
ich die Version 3.3 und 3.4 installiert:

sudo port install llvm-3.3
sudo port install llvm-3.4

Dann ist es noch zu folgenden Abbruch mit gstreamer1 gekommen:

---> Building gstreamer1
Error: org.macports.build for port gstreamer1 returned: command execution failed
Please see the log file for port gstreamer1 for details:
/opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_gnome_gstreamer1/gstreamer1/main.log
Error: Problem while installing gstreamer1
To report a bug, follow the instructions in the guide:
http://guide.macports.org/#project.tickets

Dazu habe ich das Ticket 40963 erstellt.
[UPDATE] Das Problem wurde gefixt, es gab auch schon einige ähnliche Tickets. Super und Danke das das so schnell gefixt wurde.
Jetzt gibt es noch einen Abbruch in lrzsz für das Modem, dazu habe ich das Ticket 41028 erstellt. Konnte es selbst fixen, in dem ich minicom reinstalliert habe.

Wie kann OpenVPN auf einem WR-703N unter OpenWrt eingerichtet werden?

Nach dieser guten Anleitung wie folgt vorgehen.

opkg update
opkg install openvpn openvpn-easy-rsa openssh-sftp-server

Zertifikate erstellen:

Optional die
vi /etc/easy-rsa/vars
für default vorbelegungen anpassen:

export KEY_COUNTRY="DE"
export KEY_PROVINCE="Niedersachsen"
export KEY_CITY="Langenhagen"
export KEY_ORG="TWSoft"
export KEY_EMAIL="mail@email.de"
export KEY_EMAIL=mail@email.de
# Der KEY_CN mus EINDEUTIG und EINMALIG sien
export KEY_CN=server.email.de
export KEY_NAME=server.email.de
export KEY_OU=TWSoft
export PKCS11_MODULE_PATH=changeme
export PKCS11_PIN=1234

In das /etc/easy-rsa Verzeichnis wechseln.
./clean-all
ausführen. Löscht das ganze /etc/easy-rsa/keys Verzeichnis

build-ca

Erzeugt diese Fragen:
Country Name (2 letter code) [DE]:
State or Province Name (full name) [DE]:Langenhagen
Locality Name (eg, city) [Langenhagen]:
Organization Name (eg, company) [TWSoft]:
Organizational Unit Name (eg, section) [TWSoft]:
Common Name (eg, your name or your server’s hostname) [EINDEUTIG.wenzlaff.de] www.wenzlaff.de
Name [server.wenzlaff.de]:www.wenzlaff.de
Email Address [mail@email.de]:

Erstellt in /etc/easy-rsa/keys die Dateien:
ca.key
ca.crt

Dann
build-dh
und ein paar Minuten warten bis in /etc/easy-rsa/keys die
dh1024.pem
erzeugt wurde.

Jetzt noch die Server Key erzeugen mit:
build-key-server server

Und einige Fragen beantworten:
Country Name (2 letter code) [DE]:
State or Province Name (full name) [DE]:Hannover
Locality Name (eg, city) [Langenhagen]:
Organization Name (eg, company) [TWSoft]:
Organizational Unit Name (eg, section) [TWSoft]:
Common Name (eg, your name or your server’s hostname) [server]:
Name [server.wenzlaff.de]:
Email Address [mail@email.de]:

Please enter the following ‚extra‘ attributes
to be sent with your certificate request
A challenge password []:1234
An optional company name []:TWSoft
Using configuration from /etc/easy-rsa/openssl-1.0.0.cnf
Check that the request matches the signature
Signature ok
The Subject’s Distinguished Name is as follows
countryName :PRINTABLE:’DE‘
stateOrProvinceName :PRINTABLE:’Hannover‘
localityName :PRINTABLE:’Langenhagen‘
organizationName :PRINTABLE:’TWSoft‘
organizationalUnitName:PRINTABLE:’TWSoft‘
commonName :PRINTABLE:’server‘
name :PRINTABLE:’server.wenzlaff.de‘
emailAddress :IA5STRING:’mail@email.de‘
Certificate is to be certified until Oct 2 18:00:57 2023 GMT (3650 days)
Sign the certificate? [y/n]:y

1 out of 1 certificate requests certified, commit? [y/n]y
Write out database with 1 new entries
Data Base Updated

Nun gibt es in /etc/easy-rsa/keys auch die
server.crt
server.csr
server.key

Alle erzeugten Key in eine .p12 Datei packen mit:

build-key-pkcs12 thomas

Und wieder die gewohnten Fragen beantworten:

Country Name (2 letter code) [DE]:
State or Province Name (full name) [DE]:Hannover
Locality Name (eg, city) [Langenhagen]:
Organization Name (eg, company) [TWSoft]:
Organizational Unit Name (eg, section) [TWSoft]:
Common Name (eg, your name or your server’s hostname) [thomas]:
Name [server.wenzlaff.de]:
Email Address [email@mail.de]:

Please enter the following ‚extra‘ attributes
to be sent with your certificate request
A challenge password []:4567
An optional company name []:TWSoft
Using configuration from /etc/easy-rsa/openssl-1.0.0.cnf
Check that the request matches the signature
Signature ok
The Subject’s Distinguished Name is as follows
countryName :PRINTABLE:’DE‘
stateOrProvinceName :PRINTABLE:’Hannover‘
localityName :PRINTABLE:’Langenhagen‘
organizationName :PRINTABLE:’TWSoft‘
organizationalUnitName:PRINTABLE:’TWSoft‘
commonName :PRINTABLE:’thomas‘
name :PRINTABLE:’server.wenzlaff.de‘
emailAddress :IA5STRING:’mail@email.de‘
Certificate is to be certified until Oct 2 17:59:08 2023 GMT (3650 days)
Sign the certificate? [y/n]:y

1 out of 1 certificate requests certified, commit? [y/n]y
Write out database with 1 new entries
Data Base Updated
Enter Export Password: 0000
Verifying – Enter Export Password: 0000

So jetzt sind auch in /etc/easy-rsa/keys die
thomas.csr
thomas.crt
thomas.key
thomas.p12

Dateien für den Client erstellt worden.

Jetzt müssen die Keys noch auf den Server und den Client verteilt werden.

cd /etc/easy-rsa/keys
cp ca.crt ca.key dh1024.pem server.crt server.key /etc/openvpn/

Hier noch eine kleine Zuordungstabelle, welche Zertifikate wo hinkommen:

Dateiname Speicherort Beschreibung geheim
ca.crt Server + Clients Root CA Zertifikat Nein
ca.key im Safe :) Root CA Schlüssel Ja
dh{Wert}.pem Server Diffie Hellman Nein
server.crt Server Server Zertifikat Nein
server.key Server Server Schlüssel Ja
vpnclient01.crt Client 1 Client 1 Zertifikat Nein
vpnclient01.key Client 1 Client 1 Schlüssel Ja

Server Konfigurieren vi /etc/config/openvpn

config 'openvpn' 'lan'
option 'enable' '1'
option 'port' '1194'
option 'proto' 'udp'
option 'dev' 'tap0'
option 'ca' '/etc/openvpn/ca.crt'
option 'cert' '/etc/openvpn/server.crt'
option 'key' '/etc/openvpn/server.key'
option 'dh' '/etc/openvpn/dh1024.pem'
option 'ifconfig_pool_persist' '/tmp/ipp.txt'
option 'keepalive' '10 120'
option 'comp_lzo' '1'
option 'persist_key' '1'
option 'persist_tun' '1'
option 'status' '/tmp/openvpn-status.log'
option 'verb' '3'
option 'server_bridge' '192.168.2.123 255.255.255.0 192.168.2.122 192.168.2.111'
option 'push' 'redirect-gateway def1'
list 'push' 'dhcp-option DNS 192.168.2.123'

Server Starten mit:
/etc/init.d/openvpn start
und:
/etc/init.d/openvpn stop
Restart
/etc/init.d/openvpn restart

Und für Autostart einmal oder über Luci:
/etc/init.d/openvpn enable

Nur wenn der VPN-Server läuft, ist über Luci das tap0 Device erreichbar.

Im Firewall vi /etc/config/firewall den Port 1194 freischalten:

config 'rule'
option 'target' 'ACCEPT'
option 'dest_port' '1194'
option 'src' 'wan'
option 'proto' 'tcpudp'
option 'family' 'ipv4'

/etc/init.d/firewall restart

Adressbereich setzen vi /etc/config/dhcp

config dhcp lan
option interface lan
option ignore 0
option start 150 # von .150 bis .199 = 49 Adressen
option limit 49
option leasetime 12h

reboot

IPhone Client Konfiguration.
Dafür brauchen wir eine OpenWrt.ovpn Datei. Die müssen wir uns aus den Zertifikaten und Key zusammenbauen:

# TW OpenWrt Configuration für xxx.no-ip.org IP:
remote xx.xxx.xxx.xxx 1194
client
tls-client
dev tun # tap geht nicht mit OpenVpn App 1.01 build 88
proto udp
remote-cert-tls server
resolv-retry infinite
nobind
persist-tun
persist-key
pkcs12 thomas.p12
comp-lzo
verb 3

# hier die Zertifikate von ca.crt, thomas.crt, thomas.key einfügen:

—–BEGIN CERTIFICATE—–
MIIEBDCCA22gAwIBAgIJAgg/WZdmAp

+6VIFdXmjy19eZQJzEJFxO5+iqZ6EZhs
—–END CERTIFICATE—–


—–BEGIN CERTIFICATE—–
MIIEQDCCA6mgAwIBAgIBAjANB

jGlI9+MUzx3nHhhU1W1F3s4zeeS3TFmjb7xhori4J7JZugOS
—–END CERTIFICATE—–


—–BEGIN PRIVATE KEY—–
gYBxm4LOI4uFPgBmS/9zjEZ1TGyE

JUe0BUfOhe4x
—–END PRIVATE KEY—–

An dieser Stelle habe ich gemerkt, das der OpenVPN 1.01 build 88 Client für das iPhone, kein TAP unterstützt.
Die von mir oben gewünschte Bridge über TAP-Device (virtuelle Netzwerkkarte, ethernet Adapter) ist also nicht möglich.

Also umkonfigurieren so das zumindestenst ein OpenVPN TUN läuft.
Also ist kein Layer 2 Tunnel mit dieser App und dem iPhone möglich. Schade!

vi /etc/config/openvpn

config 'openvpn' 'lan'
option 'enable' '1'
option 'port' '1194'
option 'proto' 'udp'
option 'dev' 'tun'
option 'ca' '/etc/openvpn/ca.crt'
option 'cert' '/etc/openvpn/server.crt'
option 'key' '/etc/openvpn/server.key'
option 'dh' '/etc/openvpn/dh1024.pem'
option 'ifconfig_pool_persist' '/tmp/ipp.txt'
option 'keepalive' '10 120'
option 'comp_lzo' '1'
option 'persist_key' '1'
option 'persist_tun' '1'
option 'status' '/var/log/openvpn-status.log'
option 'verb' '3'
option 'server' '10.0.0.0 255.255.255.0'
list 'push' 'redirect-gateway def1'
list 'push' 'dhcp-option DOMAIN lan'
list 'push' 'dhcp-option DNS 192.168.2.1'

vi /etc/config/firewall

config 'include'
option 'path' '/etc/firewall.user' config 'rule'
option 'target' 'ACCEPT' option 'name' 'VPN'
option 'src' 'wan'
option 'proto' 'udp'
option 'dest_port' '1194'

vi /etc/firewall.user
iptables -t nat -A prerouting_wan -p udp --dport 1194 -j ACCEPT
iptables -A input_wan -p udp --dport 1194 -j ACCEPT
iptables -I INPUT -i tun+ -j ACCEPT
iptables -I FORWARD -i tun+ -j ACCEPT
iptables -I OUTPUT -o tun+ -j ACCEPT
iptables -I FORWARD -o tun+ -j ACCEPT

Connect im iPhone läuft schon mal.

Wie kann mit einer FritzBox 7490 ein VPN Zugang für iPhone, iPad oder iPadMini eingerichtet werden?

Mit der Fritzbox mit aktueller Firmware >= 5.59 kann ein VPN Zugang nun leicht im Menü:
System-Fritz!box-Benutzer-Benutzer bearbeiten eingerichtet werden.
Ganz unten auf der Seite bei VPN auf den Link VPN-Einstellungen anzeigen klicken. Bildschirmfoto 2013-10-26 um 10.36.44Es öffnet sich eine Seite mit den Einstellungen für iPhone, iPad und iPod aber auch für Android-Geräte.
Bildschirmfoto 2013-10-26 um 10.39.26
Es ist nun kein eigenes Tool mehr nötig, und alles geht in ca. 10 min.

Wie kann auf einem Raspberry Pi ein Subversion und Apache Server installiert werden?

Das geht in 15 min wenn man nach dieser Anleitung vorgeht.

Hier die Schritte als Quick-Install:
1. Package installieren:

2. Repository Verzeichnis anlegen und ein Beispielprojekt

3. Beispiel Datei anlegen

mit Inhalt z.B. CPP Code oder was auch immer:

4. Datei in SVN importieren:

5. Für den Remote-Zugriff auf Subversion installieren wir einen Apache Server:

6. Apache konfigurieren. In die Datei

am Ende folgendes hinzufügen:

7. Apache restart und Rechte für das Repository vergeben:

8. Apache Benutzer anlegen

9. Test über Webbrowser mit (IP-Adresse anpassen):

10. Erster Checkout:

11. Datei verändern und differenzen anzeigen mit zweiten checkin.

12. Zugriff von Eclipse einrichten in der SVN View:
Bildschirmfoto 2013-10-27 um 10.52.35

Wie kann der Jenkins Server auf dem Raspberry Pi installiert werden?

Mein lieblings Butler ist Jenkins. Er läßt sich in ein paar Minuten auf dem Raspberry Pi einrichten. Einfach das Package installieren mit Eingabe eines Befehls auf der Konsole:

sudo apt-get install jenkins

Nach der Installation kann Jenkins mit sudo ./etc/init.d/jenkins start
Bildschirmfoto 2013-10-24 um 20.44.45 gestartet werden.

Dann den Browser öffnen und starten mit der URL:
http://198.192.2.1:8080 (IP-Adresse evl. anpassen)

Und schon läuft Jenkins:

Jenkins Build Server
Jenkins Build Server

Jenkins Top 10 Mindmap und Wikisumme.

Wieviel Speicher und CPU brucht Jenkins? top

Jenkins top
Jenkins top

Aber warum läuft es anscheinend nicht wenn ich auf Jenkins-Verwalte klicke?
Dazu erst einmal htop installieren mit: sudo apt-get install -y htop
und starten mit htop, es ergibt folgendes Bild:
Bildschirmfoto 2013-10-24 um 21.50.22
Der Rechner ist also voll ausgelastet, und tatsächlich nach einigen Minuten! kommt der gewünschte Dialog:
Bildschirmfoto 2013-10-24 um 21.54.25

Die Geschwindigkeit ist sehr schlecht. Klick auf Jenkins verwalten dauert mehr als 9 Minuten!
Bildschirmfoto 2013-10-25 um 12.39.30

Wie werden täglich automatisch und unbeaufsichtigt aktuelle Sicherheits updates auf den Raspberry Pi geladen und installiert?

Es können automatisch Sicherheits-Updates auf den Raspberry Pi geladen und unbeaufsichtigt installiert werden.
Dazu muss das unattended-upgrades Package installiert werden mit
sudo apt-get install unattended-upgrades
Dann in der Datei:
sudo vi /etc/apt/apt.conf.d/50unattended-upgrades
die gewünschten Aktionen ein oder aus kommentieren.

Und die Datei
sudo vi /etc/apt/apt.conf.d/10periodic mit folgenden Inhalt anlegen:

APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Download-Upgradeable-Packages "1";
APT::Periodic::AutocleanInterval "7";
APT::Periodic::Unattended-Upgrade "1";

Diese Einstellung bewirkt einmal täglich das updaten der Package-Liste, das downloaden und installieren.
Einmal wöchentlich werden die Archive gelöscht.

Die Logausgabe werden in die Datei
/var/log/unattended-upgrades/unattended-upgrades.log geschrieben, hier ein Auszug der letzten zwei Tage wo nicht viel passiert ist:
Bildschirmfoto 2013-10-24 um 17.10.56

Weitere Infos siehe auch im Dateianfang der /etc/cron.daily/apt Datei.

Mit sudo unattended-upgrades --dry-run kann auch ein trockenlauf angestoßen werden, um zu sehen ob alles richtig eingestellt ist.

Wie kann die Betriebstemperatur eines Raspberry Pi ausgelesen werden?

Habe den rPi nun in ein Gehäuse eingebaut. Hatte mich über die blaue Farbe gefreut. Noch besser sieht es aber aus, wenn man die blaue Folie abzieht ;-). Hatte erst gar nicht gemerkt, das die auf beiden Seiten beklebt war. So sieht es super aus:

20131022-171158.jpg
Ok, nun zu der Frage, ob es da im Gehäuse zu warm wird. Dazu kann man mit den folgenden Befehl
/opt/vc/bin/vcgencmd measure_temp
auf der Konsole die Temperatur ausgeben.
Jetzt ist es bei mir
temp=45.5'C
mal sehen wie sich das so nach ein paar Stunden entwickelt.

Wie nehme ich einen Raspberry Pi inkl. Java auf einem Mac in Betrieb?

20131016-221009.jpg

1. Download eines Image von . Z.b. das 2014-09-09-wheezy-raspbian.zip Archiv. Das zip Archiv entpacken.

2. SD Karte (z.B. 8 GB) in einstecken und ermitteln welches Device es am Rechner ist unter Apple Menu –> Über diesen Mac –> Weitere Informationen… –> Systembericht –> Hardware ->USB –> Unter USB Hochgeschwindigkeits-Bus / Hub / Integrierter Speicherkartenleser dann die Info unter BSD-Name:
In meinem Fall ist es: disk3

Oder mit diskutil list schauen.

3. sudo diskutil unmount /dev/disk3s1

4. sudo dd if=Downloads/2014-09-09-wheezy-raspbian.img of=/dev/disk3 bs=1m
Jetz ca. 60 min warten bis die Meldung

2825+0 records in
2825+0 records out
2962227200 bytes transferred in 2020.681419 secs (1465955 bytes/sec)

kommt. Dann kann die Karte ausgeworfen und in den Raspberry Pi gesteckt werden.

5. Netzwerkkabel anschließen und Strom anschalten.
Per ssh pi@10.1.1.1 (Adresse anpassen)
und Passwort: raspberry im Terminal anmelden.

6. Auf dem Prompt raspi-config eingeben und Konfigurieren der Sprache (de_DE.ISO-8859-15@euro), Erweiterten Speicher, SSH Server, neues Passwort und auf neueste Version updaten. Restart. Alles über diese schöne GUI:

Raspberry Pi Konfig Menü
Raspberry Pi Konfig Menü

7. Und testen ob Java installiert ist mit java -version, JA sogar die Version 1.8:
Java 1.8

8. Und System noch updaten mit:

sudo apt-get update
sudo apt-get upgrade
sudo apt-get clean
# Firmware update
sudo rpi-update
sudo ldconfig
sudo reboot

Mit welcher Konfiguration kann man lokal per VPN auf ein OpenVPN-Server der auf OpenWtr läuft mit dem Mac Client Tunnelblick zugreifen?

Wenn der VPN Client Tunnelblick installiert ist, ein Verzeichnis anlegen mit der Extension
.tblk

z.B. OpenWRT10.tblk

In diese Verzeichnis die Datei OpenWRT10.ovpn mit folgenden Inhalt kopieren:

remote 192.168.2.223 1194
client
dev tun
proto udp
resolv-retry infinite
nobind
persist-key
persist-tun

ca ca.crt
cert thomas.crt
key thomas.key

cipher bf-cbc
comp-lzo
# Statische IP Adresse: Server 10.0.0.1 Client 10.0.0.2
ifconfig 10.0.0.2 10.0.0.1
verb 3
mute 20

Die folgenden drei Zertifikate müssen auch in diesem Verzeichnis vorhanden sein:

Inhalte de OpenWRT10 Verzeichnis für Tunnelblick
Inhalte de OpenWRT10 Verzeichnis für Tunnelblick

Dann kann mit einem doppelklick auf das Verzeichnis die VPN Verbindung aufgebaut werden. Wenn die Verbindung geklappt hat, erscheint:

Bildschirmfoto 2013-10-13 um 20.10.13

Wie können die verschlüsselungs Modus und Hash Algorithmen von OpenVPN Servern angezeigt werden?

Auf der Konsole bei laufenden OpenVPN Server können alle verfügbaren verschlüsselungs Algorithmen wie folgt angezeigt werden:

root@OpenWrt:/# /usr/sbin/openvpn — –show-ciphers

Das Ergebnis:

DES-CFB 64 bit default key (fixed)
DES-CBC 64 bit default key (fixed)
RC2-CBC 128 bit default key (variable)
RC2-CFB 128 bit default key (variable)
RC2-OFB 128 bit default key (variable)
DES-EDE-CBC 128 bit default key (fixed)
DES-EDE3-CBC 192 bit default key (fixed)
DES-OFB 64 bit default key (fixed)
DES-EDE-CFB 128 bit default key (fixed)
DES-EDE3-CFB 192 bit default key (fixed)
DES-EDE-OFB 128 bit default key (fixed)
DES-EDE3-OFB 192 bit default key (fixed)
DESX-CBC 192 bit default key (fixed)
BF-CBC 128 bit default key (variable)
BF-CFB 128 bit default key (variable)
BF-OFB 128 bit default key (variable)
RC2-40-CBC 40 bit default key (variable)
CAST5-CBC 128 bit default key (variable)
CAST5-CFB 128 bit default key (variable)
CAST5-OFB 128 bit default key (variable)
RC2-64-CBC 64 bit default key (variable)
AES-128-CBC 128 bit default key (fixed)
AES-128-OFB 128 bit default key (fixed)
AES-128-CFB 128 bit default key (fixed)
AES-192-CBC 192 bit default key (fixed)
AES-192-OFB 192 bit default key (fixed)
AES-192-CFB 192 bit default key (fixed)
AES-256-CBC 256 bit default key (fixed)
AES-256-OFB 256 bit default key (fixed)
AES-256-CFB 256 bit default key (fixed)
AES-128-CFB1 128 bit default key (fixed)
AES-192-CFB1 192 bit default key (fixed)
AES-256-CFB1 256 bit default key (fixed)
AES-128-CFB8 128 bit default key (fixed)
AES-192-CFB8 192 bit default key (fixed)
AES-256-CFB8 256 bit default key (fixed)
DES-CFB1 64 bit default key (fixed)
DES-CFB8 64 bit default key (fixed)
DES-EDE3-CFB1 192 bit default key (fixed)
DES-EDE3-CFB8 192 bit default key (fixed)
SEED-CBC 128 bit default key (fixed)
SEED-OFB 128 bit default key (fixed)
SEED-CFB 128 bit default key (fixed)

Die verfügbare Hash Algorithmen können wie folgt angezeigt werden:

/usr/sbin/openvpn — –show-digests

Folgende Liste wird geliefert:

MD5 128 bit digest size
RSA-MD5 128 bit digest size
SHA1 160 bit digest size
RSA-SHA1 160 bit digest size
DSA-SHA1-old 160 bit digest size
DSA-SHA1 160 bit digest size
RSA-SHA1-2 160 bit digest size
DSA 160 bit digest size
MD4 128 bit digest size
RSA-MD4 128 bit digest size
RSA-SHA256 256 bit digest size
RSA-SHA384 384 bit digest size
RSA-SHA512 512 bit digest size
RSA-SHA224 224 bit digest size
SHA256 256 bit digest size
SHA384 384 bit digest size
SHA512 512 bit digest size
SHA224 224 bit digest size
whirlpool 512 bit digest size

Und root@OpenWrt:/# /usr/sbin/openvpn — –show-tls

Available TLS Ciphers,
listed in order of preference:

SRP-DSS-AES-256-CBC-SHA
SRP-RSA-AES-256-CBC-SHA
DHE-DSS-AES256-GCM-SHA384
DHE-RSA-AES256-GCM-SHA384
DHE-RSA-AES256-SHA256
DHE-DSS-AES256-SHA256
DHE-RSA-AES256-SHA
DHE-DSS-AES256-SHA
AES256-GCM-SHA384
AES256-SHA256
AES256-SHA
PSK-AES256-CBC-SHA
SRP-DSS-3DES-EDE-CBC-SHA
SRP-RSA-3DES-EDE-CBC-SHA
EDH-RSA-DES-CBC3-SHA
EDH-DSS-DES-CBC3-SHA
DES-CBC3-SHA
PSK-3DES-EDE-CBC-SHA
SRP-DSS-AES-128-CBC-SHA
SRP-RSA-AES-128-CBC-SHA
DHE-DSS-AES128-GCM-SHA256
DHE-RSA-AES128-GCM-SHA256
DHE-RSA-AES128-SHA256
DHE-DSS-AES128-SHA256
DHE-RSA-AES128-SHA
DHE-DSS-AES128-SHA
DHE-RSA-SEED-SHA
DHE-DSS-SEED-SHA
AES128-GCM-SHA256
AES128-SHA256
AES128-SHA
SEED-SHA
PSK-AES128-CBC-SHA
RC4-SHA
RC4-MD5
PSK-RC4-SHA
EDH-RSA-DES-CBC-SHA
EDH-DSS-DES-CBC-SHA
DES-CBC-SHA
EXP-EDH-RSA-DES-CBC-SHA
EXP-EDH-DSS-DES-CBC-SHA
EXP-DES-CBC-SHA
EXP-RC2-CBC-MD5
EXP-RC4-MD5

Wie können Diagramme erstellt werden?

Um nur mal eben ein kleines Diagramm zu erstellen, benötigt man nicht immer Visio oder andere kostenpflichtige Programme. Es geht auch mit dem kostenlosen Programm Dia, welches für Mac OS, Windows und Linux erhältlich ist.

Für den Mac, geht auch die Installation über Port, also auf der Konsole:

sudo port install Dia

eingeben und schon ist alles richtig installiert.

Nach dem Download und install kann man gleich loszeichnen. So sieht die Arbeitsfläche von Dia aus:

Dia Programm
Dia Programm

Hier mal ein Beispiel eines ersten Versuchs:

Beispiel eines mit Dia erstellten Diagramms
Beispiel eines mit Dia erstellten Diagramms