Bewertung: 5 / 5

Stern aktivStern aktivStern aktivStern aktivStern aktiv

 

Im folgenden Artikel wird beschrieben wie man Raspberries per PXE über das lokale Netz booten und betreiben kann. Sowohl die Bootpartition als auch die Rootpartition liegen dann nicht mehr auf einer SD karte sondern im Netz auf einem nfs Server. Beschrieben wird wie man dazu entweder eine Raspberry als DHCP Server, der als DHCP proxy agiert, nutzen kann oder auch wie man eine Synology auf der DSM7 aktiv ist, den dort enthaltenen dnsmasq DHCP Server konfigurieren muss, damit er als DHCP Proxy agiert. Ein DHCP Proxy ist immer dann notwendig wenn man einen Router betreibt, der IP Addressen im lokalen Netz verteilt aber kein PXE unterstützt. Das trifft z.B. beim mir mit meiner Fritzbox 7590 zu. Allerdings kann man auch die DHCP Funktion der Fritzbox deaktivieren und eine Raspberry oder die Synology die Funktion übernehmen lassen. Ich möchte aber dass ich in meiner Fritzbox alle Geräte über das Webfrontend sehen kann. Speziell auch an welchen Repeatern sich die Geräte verbunden haben (Fritzbox Mesh Funktion).

Stern inaktivStern inaktivStern inaktivStern inaktivStern inaktiv

Synology bietet Hyper Backup an um damit System- und Anwendungskonfigurationen sowie -daten für den Worst Case zu sichern. Diese sollte man natürlich extern von der  Synology sichern. Dafür kann man auch eine Raspberry benutzen auf der ein rsync Server läuft. Es dauert zwar etwas länger bis initial ein Backup erstellt wurde and danach sind weitere Deltabackups sofern es keine grossen Änderungen mehr sind relativ schnell erstellt.

Bewertung: 5 / 5

Stern aktivStern aktivStern aktivStern aktivStern aktiv

Nachdem es jetzt eine Raspberry4 gibt, die im Gegensatz zu ihren Vorgängern reichlich heiss wird, fragt sich jeder ob die passive oder aktive Kühlung die man einsetzt auch ihren gewünschten Kühlungseffekt bringt und die Raspberry nicht zu heiss wird, dass sie ihre CPU Geschwindigkeit reduziert.

Dazu habe ich ein kleines Script checkThrottled.sh geschrieben. Dieses liesst die aktuellen Throttlingwerte der Raspberry mit vcgencmd get_throttled aus und wenn Throtteling stattfand- oder -findet wird die Bedeutung der Bits ausgegeben.

Es gibt auch einen Thread im raspberry-forum wo detailiert von Hofei90 verschiedene Messungen bei verschiedenen Kühlverfahren bei einer Raspi4 durchgeführt wurden. Es lohnt sich die Messungen anzusehen.

 

Stern inaktivStern inaktivStern inaktivStern inaktivStern inaktiv

Bislang lief Pilight auf meiner Raspberry unter Wheezy. Das wird aber nicht mehr gewartet und somit habe ich ein Stretch light aufgesetzt und Pilight v8 installiert. Groesste Änderung ist dass nun WiringX Library benutzt wird und man genau definieren muss welche HW man benutzt. Die Option dazu ist { "gpio-platform": ""

Erst einmal musste ich die config.json anpassen. Ein paar Optionen fielen weg und ein paar haben andere Namen. Hilfreich war da pilight in der Konsole direkt im Debugmodus zu starten pilight-daemon -C /etc/pilight/config.json -D). Geht schneller als wenn man den Pilight Service immer startet und stoppt. Die Fehlermeldungen findet man in /var/log/pilight.err.

Nachdem alles soweit angepasst war wurden aber leider keine 433 MHz Geräte mehr angesteuert cry

Sehr hilfreich war dann cat /sys/firmware/devicetree/base/model denn dadurch bekam ich letztendlich raus was ich dort bei mir eintragen muss. Bei mir kam als Ergebnis Raspberry Pi Model B Rev 2 und somit wusste ich nach Aufruf von pilight-daemon -H dass ich dort raspberrypi1b2 eintragen muss. Danach funktionierten auch wieder meine 433MHz Geräte.

Stern inaktivStern inaktivStern inaktivStern inaktivStern inaktiv

Mittlerweile hat fast jeder einen DSL Router zu Hause stehen der sämtliche Netzwerkdinge für alle Hausbewohner wie ein kleines Heinzelmännchen erledigt. Unerwünschte Werbung kann man mit diversen Browserplugins in einem System unterrücken. Allerdings ist es lästig wenn man in der Familie mehrere Tabletts, mehrere Laptops, mehrere Smartphones und mehrere Desktops in Betrieb hat. Dann muss man auf jedem System einen Adblocker installieren.

 

Bewertung: 2 / 5

Stern aktivStern aktivStern inaktivStern inaktivStern inaktiv

Everybody running a server on a Raspberry with an open internet connection should protect against unauthorized access. There are various ways to protect. An additional protection is to restrict access to the Raspberry to specific IP ranges. The easiest way to do this is by using geoip and iptables and allow access from IPs from your country only. Actually this makes sense only if the server is used by you only and is no open server for everybody (owncloud, seafile, ...).

Execute following steps in order to install geoip on Raspbian Buster

Buster now uses nsf instead of iptables and requires a different format of the geoip files.

1) install xtables-addon

sudo apt install xtables-addons-common libnet-cidr-lite-perl libtext-csv-xs-perl libgeoip2-perl

2) Enable xt_geoip

sudo modprobe xt_geoip

echo "xt_geoip" | sudo tee -a /etc/modules-load.d/modules.conf

3) Download geoip files

mkdir /tmp/geoip

cd /tmp/geoip

/usr/lib/xtables-addons/xt_geoip_dl

4) Build geoip database now

mkdir -P /usr/share/xt_geoip
cd GeoLite2-Country-CSV_20190709 sudo /usr/lib/xtables-addons/xt_geoip_build -D /usr/share/xt_geoip

5) Add iptables rules to accept IPs from US and Germany

Example:

iptables -A INPUT -m geoip --src-cc DE,US -m conntrack --ctstate NEW -j ACCEPT

6) Create following script to update your geoip database on a regular base

#!/bin/bash
geotmpdir=$(mktemp -d)
OLDPWD="${PWD}"
cd "${geotmpdir}"
/usr/lib/xtables-addons/xt_geoip_dl
dir="$(ls)"
cd $dir
/usr/lib/xtables-addons/xt_geoip_build -D /usr/share/xt_geoip
cd "${OLDPWD}"
rm -r "${geotmpdir}"

 

Execute following steps in order to install geoip on Raspbian Stretch

1) Install the xtables-addons

sudo apt-get install raspberrypi-kernel-headers

wget http://downloads.sourceforge.net/project/xtables-addons/Xtables-addons/xtables-addons-2.14.tar.xz
tar xf xtables-addons-2.14.tar.xz
cd xtables-addons-2.14
./configure
make
make install

or

Kudos to @Basti

You can also use DKMS to build this module. Place source to /usr/src/xtables-addons-2.14 for example and create a dkms.conf in there. I have used the file shipped with xtables-addons-dkms_2.12-0.1_all.deb and edit the PACKAGE_VERSION="2.14" and
DEST_MODULE_LOCATION[0]="/extra". More infos about dkms (https://wiki.ubuntuusers.de/DKMS/).

 

2) Create a file /usr/local/bin/installGeoIP.sh and insert following code

#!/bin/bash
set -euo pipefail

set +e
if ! dpkg -l xtables-addons-common >/dev/null ; then
        apt install xtables-addons-common
fi
if ! dpkg -l libtext-csv-xs-perl >/dev/null ; then
        apt install libtext-csv-xs-perl
fi
set -e

if [ ! -d /usr/share/xt_geoip ]; then
        mkdir /usr/share/xt_geoip
fi

geotmpdir=$(mktemp -d)
csv_files="${geotmpdir}/GeoIPCountryWhois.csv ${geotmpdir}/GeoIPv6.csv"
OLDPWD="${PWD}"
cd "${geotmpdir}"
/usr/lib/xtables-addons/xt_geoip_dl
/usr/lib/xtables-addons/xt_geoip_build -D /usr/share/xt_geoip ${csv_files}
cd "${OLDPWD}"
rm -r "${geotmpdir}"
exit 0

3) Make this file executable and invoke it

chmod +x /usr/local/bin/installGeoIP.sh

installGeoIP.sh

4) Add iptables rules to accept IPs from US and Germany

Example:

iptables -A INPUT -m geoip --src-cc DE,US -m conntrack --ctstate NEW -j ACCEPT

 

Issues

If you get iptables: No chain/target/match by that name. error messages test whether the xtables_addons are installed correctly

modprobe -c | grep x_tab

should display a long list of modules.

modprobe xt_geoip

Should succeed.

depmod -a

may also help to fix the issue.

 

References

Maxmind geoip

Linoxide: Block IP from countries using Geoip

Netfilter: geoip howto

Xtables-addons (source code)

Blocklist ipsets

How to install kernel headers

Linxu headers rpi from mhieenka
Solved: iptables & geoip

rpi-source wiki

Alternative: ipset usage (German)

Reddit: Firewall with geoIP capability on Debian 10

Sourceforge: XTables-addons

nft-blacklist

 asds

Bewertung: 1 / 5

Stern aktivStern inaktivStern inaktivStern inaktivStern inaktiv

Fast jeder Raspberryeinsteiger fängt mit dem NOOBS Image an, welches auch von raspberry.org an erster Stelle zum Download genannt wird (Siehe https://www.raspberrypi.org/downloads/).

NOOBS erlaubt verschiedene Betriebssysteme für die Raspberry je nach Bedarf zu starten. Das ist sehr nützlich wenn man sich als Einsteiger einen Überblick verschaffen will welche Betriebssystem es für die Raspberry gibt. Nachdem die Entscheidung getroffen wurde welches Betriebssystem das Richtige ist wird aber leider NOOBS weiterhin benutzt. Spätestens jetzt sollte jeder sich ein neues Raspberry Image aufsetzen mit nur noch einem Betriebssystem.

Warum?

NOOBS ist kein normales Linuxsystem und hat diverse Eigenheiten, die früher oder später erfahrungsgemäß zu Problemen führen. Wenn man dann anfängt nach Hilfe zu fragen bekommt man kaum Antworten, da alle gestandenen Raspberrybenutzer kein NOOBS benutzen und deshalb nicht kennen. Deshalb rechtzeitig von NOOBS Abschied nehmen und ein neues Image mit nur einem Betriebssystem aufsetzen. Das macht das Leben mit der Raspberry später sehr viel leichter.

raspiBackup unterstützt NOOBS Images im partitionsorientierten Backupmodus. Es wird aber empfohlen für Produktionsumgebungen sehr bald ein Einzelbetriebssystemimage zu erstellen und dann im normalen Backupmodus zu sichern. Im normalen Modus kann auch eine externe Rootpartition gesichert werden.

 

 

Stern inaktivStern inaktivStern inaktivStern inaktivStern inaktiv

I just wanted to get nfs up and running on my Raspberry Jessie and got the uggly error message. Root cause is the nfs-server starts before rpcbind. If you restart the nfs-server after boot it will work. But will not work again after reboot. Following page describes how to get this fixed.

Bewertung: 5 / 5

Stern aktivStern aktivStern aktivStern aktivStern aktiv

Wer seine Raspberry als kleinen Heimserver betreibt braucht verschiedene Pakete nicht, die zusätzlichen Speicherplatz belegen. Folgende Befehle sind da sehr hilfreich:

sudo apt-get purge libreoffice wolfram-engine sonic-pi scratch
sudo apt-get autoremove

Eine wesentlich erweiterte Liste von Paketen die man auf einem reinen RaspberryPi Server entschlacken kann findet sich hier

Stern inaktivStern inaktivStern inaktivStern inaktivStern inaktiv

Will man ein SD Kartenimage was man auf einer Raspberry erstellt hat, clonen und auf anderen Raspberries ebenso laufen lassen, muss man eine Sache beachten. Ansonsten bekommt man auf einer anderen Raspberry mit dem geclonten SD Kartenimage keine Netzwerkverbindung.

Stern inaktivStern inaktivStern inaktivStern inaktivStern inaktiv

Um sich mit Threading in Python einzuarbeiten ist es am einfachsten wenn man sich eine konkrete Aufgabe stellt, die zu implementieren ist. Was lag es da näher als an einer Raspberry PI mal eben 6 LEDs anzuschliessen und per GPIO zu steuern. Auf den folgenden Seiten beschreibe ich kurz wie das Programm funktioniert bzw was man anpassen muss, damit man es auf seiner eigenen Raspi laufen lassen kann. Weiterhin findet sich ein Video welches das Programm in Aktion zeigt sowie ein Link zum Download des Python Codes.

 

Stern inaktivStern inaktivStern inaktivStern inaktivStern inaktiv

Bislang konnte man raspbian gut auf einer 4GB SD Karte unterbringen. Mit Jessie ist das nicht mehr möglich - da benötigt man eine 8GB SD Karte.

Wenn man seine Raspberry irgendwann in Produktion übernimmt und sie eine dedizierte Aufgabe hat ist ein full blown Jessie absolut nicht notwendig. Wenn man miniban installiert reicht eine 1GB SD Karte. Allerdings ist da wirklich nur das notwendigste vorhanden und man muss verschiedene Dinge nachinstallieren. Dazu gehören z.B. python  wie auch RPi.gpio. Aber dann kommt man immer noch mit einer 1GB SD Karte aus.

Die Kartengröße ist mittlerweile nicht mehr ein grosses Problem - aber wer seine Raspberry ins Internet stellt sollte tunlichst so wenig wie möglich Software auf seiner Raspberry installiert haben um die Zahl der angreifbaren Anwendungen auf das Minimum zu reduzieren. Leider muss auch iptables erst nachinstalliert werden. Des weiteren gibt es nur den root Benutzer. ssh Zugriff auf root sollte immer aus Sicherheitsgründen unterbunden sein. Man muss also noch ein paar Nacharbeiten vornehmen. Aber dann hat man ein wirklich kleines Betriebssystem für seine Raspberry.

Siehe auch Unnütze Pakete deinstallieren

Stern inaktivStern inaktivStern inaktivStern inaktivStern inaktiv

Bei mir liegen diverse ungenutzte 433 MHz Steckdosenschalter rum und was liegt da näher als die per Android App sowie per Programm mit einer Raspberry Pi zu steuern. Damit kann man dann diverse Dinge schalten wie Beleuchtungen, Kaffeemaschinen, PCs und was einem sonst noch so einfällt. Wenn man im Netz zu diesem Thema sucht wird man erschlagen mit Hits. Daraus dann die passende Lösung zu finden ist nicht leicht. Wichtig ist für mich eine Android App zu haben um die Schalter zu steuern sowie Programme auf der Pi starten und stoppen zu lassen. Ich habe mich deshalb entschieden pilight dazu zu benutzen. Die notwendige Hardware dazu ist wenig und schnell auf ein Breadboard zu stecken. Dieses habe ich dann noch mit einem Breakout Expansion Kit verbunden. Pilight bietet eine fertige Android App sowie ein fertiges Webfrontend zum Steuern und kann nach belieben Schalter diverser Hersteller einbinden sowie auch beliebig Programme auf der Pi starten und stoppen, die bestimmt Aufgaben erledigen. Beide sind sehr einfach aufgebaut aber sie erfüllen vollkommen ihren Dienst.

Der folgende Beitrag enthält Links zu Webseiten, die alle notwendigen Informationen zum Aufbau enthalten sowie Dinge, auf die man aufpassen muss sowie Links zu meinen server- und config json Dateien zum download.

Unterkategorien