1

Kleister selber herstellen

Ist ist sehr einfach einen billigen und sehr umweltfreundlichen Kleister selbst herzustellen. Man braucht dazu nur etwas Mehl und Wasser. Das Mehl sollte möglichst hell sein (also kein Vollkornmehl), da die Klebkraft über die Stärke entsteht.

Am einfachsten verrührt man etwas Mehl mit warmem Wasser. Nach Gewicht braucht man nur etwa die Hälfte an Mehl im Vergleich zum Wasser. Um Klümpchen im Kleister zu vermeiden, siebt man am besten das Mehl zuerst, gibt es dann langsam zum Wasser und rührt dabei mit einem Schneebesen immer gut um.

Ein etwas stärkere Klebkraft erhält man wohl, wenn man das Mehl in heißes Wasser einrührt und dann kurz aufkochen lässt. Dafür braucht man nur rund 1/4 Mehl (im Verhältnis zum Gewicht des Wassers).

Dieser Mehlkleister klebt sehr gut Papier oder Pappe, man kann damit aber auch beispielsweise Papier (Etikette) auf Glas, Metall oder Holz kleben. Man sollte dem Kleister etwas Zeit zum trocknen geben, damit er auch gut hält.




Cantuccini

250g Emmermehl 630 (alternativ 280g Dinkelmehl 630)
150g Mandeln
150g Zucker (davon etwa 10g Vanillezucker)
25g zimmerwarme Butter
2 Eier
4g (1 TL) (Weinstein-) Backpulver
2g (1 Prise) Salz
Evtl. Bittermandelaroma (3-4 Tropfen) oder 1-2 EL Mandellikör (Amaretto)

Mandeln für wenige Minuten in kochendes Wasser geben, in ein Sieb schütten, kalt abspülen und häuten (was ganz einfach geht).

Für den Teig Mehl, Zucker, Vanillezucker, Backpulver und Salz in einer Schüssel vermischen. Am besten fängt man mit etwas weniger Mehl an. In die Mitte eine Mulde eindrücken, Butter und Eier (und evtl. das Aroma) hineingeben und alles zu einem leicht klebrigen Knetteig verarbeiten. Ist der Teig zu klebrig, einfach noch etwas Mehl dazugeben. Sollte er zu fest und trocken sein, ganz wenig Milch dazugeben. Zum Schluss die Mandeln unterkneten. Evtl. den Teig einige Zeit (1/2 Std.) im Kühlschrank kalt stellen, damit er etwas stabiler wird und sich besser bearbeiten lässt (muss aber nicht unbedingt sein).

Den Backofen auf 200°C vorheizen. Das Backblech mit Backpapier auslegen. Den Teig in vier gleiche Teile trennen und aus jedem Teil eine ca. 25 cm lange Rolle formen. Dazu zwischen den Händen zuerst eine Kugel rollen und dann senkrecht zwischen den den Handflächen länglich rollen. Die Rollen mit etwas Abstand voneinander auslegen (sie gehen noch in Breite, also etwas Platz zwischen den Rollen lassen). Wenn die Rollen etwas ungleichmäßig geworden sind oder Löcher haben, kann man jetzt noch gut nachformen.

Cantuccini
Selbstgebackene Cantuccini

Im vorgeheizten Backofen bei 200 °C Ober-Unterhitze 15 Minuten vorbacken. Etwas abkühlen lassen und dann schräg in fingerbreite Scheiben schneiden. Das geht am einfachsten mit einem scharfen, kleinen Brotmesser mit Wellenschliff. Dann alle Cantuccini mit der Schnittfläche nach unten auf das Backblech legen und noch einmal im Backofen bei gleicher Temperatur rund 10 Minuten fertig backen. Die Cantuccini sollen zum Schluss goldbraun sein.

Die knusprigen Cantuccini auskühlen lassen und dann in einer geschlossenen Blechdose aufbewahren.

Anregungen und Ideen

Für dunkle Cantuccini gibt man einfach rund 2EL Espressopulver und 2EL Kakaopulver zum Teig.

Ausprobieren: helles Einkornmehl




Liköre selber ansetzen

Generelles zum Likör ansetzen

Alkohol

Zum Ansetzen des Likörs kann man fast jeden hochprozentigen Alkohol nehmen. Generell sollte der Alkoholgehalt allerdings um oder über 40% liegen; das verhindert ein Verderben des Ansatzes. Man kann den fertigen Likör dann aber später auch immer noch verdünnen. Je nach Alkoholsorte bringt man bereits mehrere Aromen mit in den Liköransatz.

Wodka und Korn sind beide neutral, also meist ohne zusätzliche Geschmacksnoten. Während für Wodka kein besonderes Reinheitsgebot existiert, gelten für Korn strenge Vorschriften, so darf er beispielsweise nicht aromatisiert werden und muss im deutschsprachigen Raum aus regionalem Getreide gebrannt werden. Ein Korn ist also immer auch ein Wodka. Doppelkorn bzw. Kornbrand enthält mind. 37,5% Alkohol.

Gin enthält zusätzlich mindestens noch Wacholderaroma, oft aber auch noch sehr viel mehr Aromen. Sehr gut eignen sich darüberhinaus auch noch Rum, Cognac, Whiskey oder Weinbrand (und natürlich auch alle möglichen Mischungen davon).

Eine allgemeine Empfehlung ist: Kornbrand für alle Beeren- oder Zitrusfrüchte, Rum für Zwetschgen und Pflaumen (weißer oder brauner, letzterer ist aromatischer und süßer), Weinbrand für Quitten und Mirabellen und Whiskey für Äpfel und Birnen.

Aromen

Gut zu einem Haselnusslikör passt Vanille oder Zimt. Darüberhinaus je nach Geschmack auch Gewürznelken, Orangenschalen, oder Kaffeebohnen. Den Zucker kann man auch durch Honig ersetzen, sollte davon aber eher etwas mehr davon nehmen. Prinzipiell sollte man mind. 100g pro Liter nehmen (so auch die offizielle Vorschrift für einen Likör). Zucker bzw. Honig kann man auch erst nach der Reifezeit hinzugeben.

Grundrezept

Auf 1kg Früchte kommen rund 500g Zucker und 1,5l Alkohol. Die Früchte werden gewaschen, entkernt und kleingeschnitten. Zusammen mit den Gewürzen und dem Alkohol werden sie in einem dichten Gefäß angesetzt. Besonders anfangs immer mal wieder leicht schwenken, damit sich alles gut durchmischt. Nach einigen Wochen ist der Ansatz fertig. Man gießt alles durch ein Sieb und anschließend noch durch ein feines Tuch oder Kaffeefilter (in einem Sieb), damit man einen möglichst klaren Likör bekommt. Die Obstreste kann man evtl. noch zum backen oder als Beilage zu einem Nachtisch verwenden. Wenn der Likör zu stark ist, kann man ihn noch mit Wasser verdünnen (max. die gleiche Wassermenge wie die Alkoholmenge).

Einzelne Rezepte

Haselnusslikör

Zutaten

250g Haselnüsse
150g Zucker
1l Doppelkorn (siehe unten)
Gewürze nach Belieben (Vanille, Zimt, Kaffeebohnen)

Zubereitung

Die Haselnüsse auf einem Backblech verteilen und bei 160-180°C im Backofen rund 10 Minuten rösten, bis sie hellbraun sind und duften.

Gehackte Haselnüsse

Die Haselnüsse etwas erkalten lassen, die Schalen so weit wie möglich abrubbeln (die haben nämlich einen leicht bitteren Geschmack) und dann die Haselnüsse mit einem Messer grob hacken.

Die gehackten Haselnüsse zusammen mit dem Zucker und der Zimtstange in ein ausreichend großes, fest verschließbares Glas mit einer breiten Öffnung geben. Die Vanilleschote längs aufschneiden, die Kerne auskratzen und Kerne und Schote ebenfalls in das Glas geben. Mit dem Alkohol auffüllen und umrühren oder leicht schwenken bzw. schütteln.

Den Likör ein bis zwei Monate an einem warmen Ort reifen lassen. Dabei hin und wieder etwas durch schwenken durchmischen.

Danach den Haselnusslikör abfiltern (zuerst grob mit einem Sieb, dann mit einen Küchentuch oder Kaffeefilter). Evtl. noch mit etwas Wasser verdünnen, in Flaschen abfüllen und ihn möglichst nochmal zwei bis drei Wochen ruhen lassen.

Die übriggebliebenen Haselnüsse kann man noch gut zu Desserts oder zum Backen verwenden.

Okt. ’21: 180g Haselnüsse, 100g Zucker, 1 Vanilleschote, 4g Espresso-Bohnen, Wodka 0,7l 40%

Orangenlikör

Zutaten

1l Doppelkorn
6 Orangen
300g Zucker
Gewürze nach Belieben (Vanille, Zimt, Kaffeebohnen)

Zubereitung

Wer keine bittere Note im Likör haben möchte, muss den weißen Teil der Orangenschale entfernen. Dazu die Orangen sehr dünn schälen (hier sind die meisten und besten Aromen enthalten). Den weißen Teil entfernen und entsorgen. Die eigentliche Frucht der Orange kleinschneiden.

Alles zusammen in ein gut verschließbares Gefäß geben, einige wenige Wochen reifen lassen und dabei immer mal wieder schwenken bzw. schütteln.

Danach durch einen Filter geben; zuerst ein grobes Sieb verwenden und dann durch einen Kaffeefilter laufen lassen. Evtl. noch mit etwas Wasser verdünnen und in Flaschen abfüllen.

Bratapfellikör

1l weißer Rum
650g säuerliche Äpfel
200g Zucker
1/2 Bio-Zitrone
2 Zimtstangen
2 Vanilleschoten

Die Äpfel waschen und entkernen. Äpfel in eine gefettete Auflaufform setzen und etwa 20 Minuten im vorgeheizten Backofen bei 180°C braten. Die abgekühlten Bratäpfel in das Ansatzgefäß geben (ca. 2l Fassungsvermögen). Die Zitronenschale mit einem Sparschäler fein abschälen, den Saft auspressen und über die Äpfel geben. Zucker, Zitronenschale, Zimtstange und längs aufgeschlitzte Vanilleschote hinzufügen.

Alles mit dem Rum bedecken und an einem dunklen Ort mindestens acht Wochen ziehen lassen. Das Gefäß jeden zweiten Tag vorsichtig schwenken. Den fertigen Likör noch filtern und abfüllen.

Kaffeelikör

1l Doppelkorn oder Rum
150g Kaffeebohnen
100g Zucker oder Honig
Gewürze nach Belieben (1/2 Vanilleschote, 1/2 Zimtstange, Gewürznelken, Orangenzeste)

Wer möchte, kann dem Likör am Schluss noch rund 100g Sahne dazugeben. Dann hält der Likör aber auch nur wenige Wochen.




Seifensieden

Grundlegendes

Öle und Fette

Basisöl und Überfettungsöl (?)

Man unterscheidet zwischen Basisölen und Überfettungsölen (oft auch besonders hochwertige Öle). Die Basisöle werden mit der Lauge vermischt und erst sobald die Verseifung beginnt wird das Öl für die Überfettung zugegeben. Damit soll erreicht werden, dass das später in der Seife überschüssige Öl zumindest größtenteils aus dem Überfettungsöl und weniger aus den anderen Ölen (den Basisölen) besteht. Ob das tatsächlich im Kaltrührverfahren so funktioniert ist aber sehr umstritten. Ein paar Experimente weißen darauf hin, dass es keine Rolle spielt, wann die Öle dazugegeben werden, es also auch keinen Unterschied zwischen Basis- und Überfettungsölen gibt (Kevin M. Dunn, Scientific Soapmaking, S. 287-292).

Einzelne Öle

Distelöl – max. 10%; gut für Haarseife geeignet wird aber auch schnell ranzig.

Hanföl – Wird gern bei Hautproblemen, da es entzündungshemmend ist eingesetzt. Hanföl kann bedenkenlos bei fettiger, unreiner Haut oder Akne eingesetzt werden. Es sind keine Allergien oder Nebenwirkungen bekannt. Hanföl macht die Seife weich und bildet kaum Schaum. Zudem ranzt Hanföl ziemlich schnell, deswegen nur in kleineren Mengen bis rund 10-15% einsetzten.

Haselnussöl – gibt eine eher weiche Seife. Nicht über 20% verwenden. Kühl und dunkel aufbewahren; rund 6-12 Monate haltbar. Gut geeignet für fettige, unreine Haut.

Kokosöl – ergibt eine eher harte Seife. Bis zu etwa 30% zu verwenden. Wirkt schaumbildend (kurzlebig) und entfettend. Braucht genügend Wasser in der Lauge.

Kürbiskernöl – als Basisöl bis zu 50% und zur Überfettung. Milde Seife mit wenig Schaum. Rund ein Jahr haltbar. Hat einen speziellen Eigengeruch.

Leinöl – ungeeignet für fettige Haut. Je nach Ansicht nicht unbedingt gut für Seifen geeignet, da es eher schnell zu ranzen anfängt. Es gibt aber auch Berichte über tolle Seifen mit Leinöl (bis 20%).

Lorbeeröl – gehört traditionell in eine Aleppo-Seife (20-30%). Hat einen speziellen, krautigen Eigengeruch.

Mandelöl – in der Haarseife bis zu 30%.

Olivenöl – Basisöl bis zu 100%. Kaum Schaum, erst nach 2 Tagen schneiden; lange Reifung (6 Monate).

Rapsöl – als Basisöl bis zu 40%. Sollte mit Sonnenblumenöl und Kokosöl zusammen verwendet werden. Gibt nur sehr wenig, aber seidigen Schaum.

Rizinusöl – unterstützt die Schaumbildung anderer Öle. Wenige Prozent (2-6%; max. 10%) genügen meist; bei Rasier- oder Haarseifen ausnahmsweise auch mal bis zu 15-20%. Seifen mit viel Rizinusöl brauchen länger zum aushärten und reifen.

Sonnenblumenöl – weiche Seife, als Basisöl, nicht mehr als 10-20%. Ranzt ziemlich schnell. Gut geeignet für fettige, unreine Haut und Haarseifen.

Traubenkernöl – zum Überfetten, bis rund 10%; ranzt ziemlich schnell. Gut geeignet für fettige, unreine Haut. Passt gut zu Mandelöl. Weiche Seife ohne Schaum.

Laugenflüssigkeiten

Für alle Laugenflüssigkeiten gilt generell, dass man sie möglichst kalt vorbereiten sollte. Durch das Auflösen des NaOH erhitzt sich die Flüssigkeit ziemlich stark und je kühler die Ausgangsflüssigkeit, desto schneller kühlt dann die Lauge auch wieder ab. Zudem sollte man die Lauge zur Sicherheit im Spülbecken anrühren (falls das Gefäß umfällt, kann man die Lauge ab einfachsten wegspülen) und stellt das Ganze in ein kühles Wasserbad.

Üblicherweise nimmt man rund 30% Laugenflüssigkeit (bezogen auf GFM), man kann aber auch etwas niedriger ansetzen, beispielsweise 25%. Je weniger Flüssigkeit man nimmt, desto schneller dickt der Seifenleim an. Niemals darf die Flüssigkeit (in Gewichteinheiten) allerdings weniger als das Natriumhydroxid (zusätzlich evtl. von Zusätzen wie Salz oder Zucker, die sich in der Flüssigkeit auflösen) sein.

Normalerweise nimmt man für eine einfache Seife destilliertes Wasser (bzw. kalkarmes Wasser) zum ansetzen der Lauge. Leitungswasser oder Mineralwasser eignen sich eher nicht, da der störende Mineralgehalt zu groß ist. Gut geeignet ist dagegen das mineralarme Regenwasser.

Für eine schöne orange-gelbe Farbe der Seife kann man einfachen, ungesüßten Karottensaft zum ansetzen der Lauge nehmen. Man kann auch gut mit destilliertem Wasser verdünnten Karottensaft nehmen. Wenn man die Lauge anrührt entseht ein ziemlich unangenehmer Geruch; das ist normal und verfliegt schnell wieder, bleibt also nicht als Geruch in der Seife.

Bier muss auf jeden Fall rund 15 min gekocht werden, um den Alkohol und die Kohlensäure zu entfernen. Da durch das Kochen etwas vom Bier verloren geht, anfangs etwas mehr Bier nehmen, als man für das Rezept braucht. Danach unbedingt gut abkühlen (Kühlschrank oder Gefrierschrank).

Tee und Kaffee werden in der Regel mit destilliertem Wasser zubereitet. Starker Kaffee als Laugenflüssigkeit wird insbesondere für die Kaffeeseife verwendet und ergibt eine braune Farbe in der Seife. Es können alle erdenklichen Teesorten als Laugenflüssigkeit benutzt werden. Beides sollte tiefgefroren werden, da es sonst beim Ansetzen der Lauge zu ‚Verbrennungen‘ kommt. Dabei verfärbt sich die Flüssigkeit bei der NaOH-Zugabe je nach Sorte unterschiedlich. In der fertigen Seife können somit unterschiedliche Farben erzielt werden.

Milch und Milchprodukte zum Anrühren der Lauge sollten sehr kalt, möglichst tiefgefroren, verwendet werden. Durch den Fettgehalt der Milch kann es beim Anrühren der Lauge bereits zum Verseifungsprozess kommen, sodass die Milch Flocken bildet. Auch farbliche Veränderungen sind je nach Temperaturentwicklung der Lauge möglich. Das NaOH sehr langsam zur Milch geben und immer rühren. Zum Schluss sollte die Temperatur nicht viel über 20°C liegen.

Pflanzenmilch: Hafermilch (Hafer:Wasser 1:10 nach Gewicht).

Essig, beispielsweise Apfelessig kann als Laugenflüssigkeit benutzt werden. Die Essigsäure wird mit der Lauge in Natriumacetat umgewandelt, bleibt also nicht erhalten. Allerdings sind die nicht verseifbaren Inhaltsstoffe noch in der Seife enthalten. Essig verbessert die Schaumstabilität deutlich, ist aber bei hartem, d.h. kalkreichen, Wasser kein Ersatz für Zitronensäure. Ein Seifenleim mit Essig dickt auch schneller an als gewohnt. Der Geruch des Essigs bleibt in der Seife leider nicht erhalten. Bei der Berechnung der Lauge muss die Essigsäure mit berechnet werden (Verseifungszahl 0,666), ansonsten wäre die Überfettung zu hoch. Zudem muss der Essig gut gekühlt sein.

Blutwurz-Tee

Düfte

Als Richtwert sollten nicht mehr als 2-3% bezogen auf die Gesamtfettmasse an Düften hinzugegeben werden. Mit 1% erreicht einen schwachen, aber doch wahrnehmbaren, angenehmen Duft beim Duschen.

Bergamotteöl – duftet süß, blumig und fruchtig. Passt gut zu Kamille oder Citronella.
Kiefernadelöl – passt gut mit Thymian, Eukalyptus, Grapefruit und Rosmarin.
Lavendelöl – passt gut mit Pfefferminzöl oder Zitrusölen (auch Kiefernadeln, Bergamotte).
Rosmarinöl – passt gut mit Zitrone, Bergamotte oder verschiedenen Tannendüften. NIcht für Schwangere oder Kleinkinder geeignet!
Wacholderholzöl – passt gut mit Orange, Lemongras, Thymian oder Basilikum. Für Schwangere und Kleinkinder nicht empfohlen!
Zypressenöl – passt gut mit Bergamotte, Zitrone, Kamille, Wacholder.

Farben

Karottensaft, den man sehr gut auch etwas mit Wasser verdünnen kann, zum Ansetzen der Lauge ergibt eine schöne gelb-orange Färbung.

Eine schwarze Farbe bekommt man durch Aktivkohle – für eine dunkelgraue Farbe rund 2-3 TL (auch 0,6%) auf 1kg GFM in etwas des Öls angerührt. Nimmt mehr Aktivkohle, wird die Farbe dunkler, aber auch der Schaum wird dann gräulich. Mit der Aktivkohle muss man sehr vorsichtig umgehen, da sie sich beim leichtesten Lufthauch überall verteilt und . Die Aktivkohle eignet sich auch hervorragend dafür schwarze Linien in die Seife zu bekommen: dafür die Kohle mit einem kleinen, sehr feinen Sieb hauchdünn beim Gießen auf einen Teil des Seifenleims streuen (nicht zu dick, da die Schicht sonst eine spätere Bruchstelle ergibt).

Rote Beete Pulver – 1 gehäufter TL pro 500g (vorher mir Öl glatt verrühren).

Blutwurz-Tee (Tormentill; einheimisch) – 2TL pro Tasse (10 Minuten ziehen lassen)

Alkanna (Schminkwurz) – als Ölauszug; ist zuerst rot, wird mit der Lauge dann aber violett.

Tonerde – Kaolin (weiß): rund 4 TL pro kg GFM (noch nicht getestet). In den Ölen vermischen (bevor die Lauge dazugegeben wird). Tonerde wohl rund ca. 3-4% (nicht getestet).

Indigo – in etwas Öl auflösen; Indigo löst sich praktisch nicht in Wasser. Indigo ist empfindlich gegen heiße Lauge, als erst in den Seifenleim geben. Vorschlag für die Dosierung: 1% GFM (ungetestet).

Paprikapulver

Rhabarberwurzelpulver – gibt wohl eine schöne Farbe; ist aber nicht zu bekommen (außer aus China)

Farbwirbel

Damit der Seifenleim möglichst lange flüssig bleibt, hilft möglichst wenig feste Fette, niedrige Temperatur von Ölen und Lauge vor dem zusammenschütten und natürlich wenig bzw. schwach mixen.

Farben in (quer-) schräggestellte Form in Schichten eingießen, aufrichten und mit einem Draht längs der Form kreisförmig wenige Mal verrühren.

Farben vorsichtig am Rand in einem Gießbehälter gießen, was kreisförmige Ringe ergibt. Die Seifenform (längs-) schräg stellen und an der unteren Seite, abwechselnd an beiden Ecken den Seifenleim langsam eingießen und dabei den Gießbehälter leicht hin- und herbewegen.

Punkte: Seifenleim in eine Blockform geben und sobald er fest wird Strohhalme (oder andere Röhrchen) in den Seifenleim stecken. Nach wenigen Stunden die Röhrchen rausziehen und die Löcher mit andersfarbigem Seifenleim auffüllen (vorsicht vor Luftblasen). Die Reststück aus den Röhrchen schieben und dann in einer zweiten Seife einlegen.

Yin-Yang – eine stabilen Plastikfolie S-förmig formen und in eine Gießröhre stecken. Die beiden Hälften gleichzeitig befüllen und die Folie vorsichtig wieder herausziehen.

Schaum

Rizinusöl – nicht zur Überfettung, d.h. gleich zu den Basisölen. Nur in geringer Menge benutzen, z. Bsp. 5%; nur bei Rasier- oder Haarseifen kann es auch mal bis zu rund 15% sein.

Milch macht den Seifenschaum besonders cremig und üppiger. Gerade Mandel- oder Hafermilch macht einen reichhaltigen Schaum und man kann beide sehr einfach selbst herstellen.

Der Zusatz von etwas Zucker (s. unten) hilft ebenfalls bei der Schaumbildung der fertigen Seife.

Außerdem soll Essigsäure auch dazu beitragen, einen besseren Schaum zu bekommen.

Auch eine Mischverseifung mit NaOH und KOH (etwa im Verhältnis 70/30) macht mehr Schaum, die Seife aber auch weicher (da hilft wiederum Salz).

Sonstige Zutaten

Für hartes (d.h. kalkhaltiges) Wasser Zitronensäure zum Rezept geben. Mit der Natronlauge entsteht Nitriumcitat, einem gebräuchlichen Wasserenthärter, der sich beispielsweise oft auch in Waschmitteln findet. Als Richtwerte können rund 2-4% der Gesamtfettmenge genommen werden. Wichtig: die Zitronensäure muss bei der Bestimmung der NaOH Menge berücksichtigt werden (sonst würde die Seife zu stark überfettet). Viele Seifenrechner berechnen das NaOH für die Zitronensäure extra, d.h. zusätzlich zu den Fetten.

Gibt man der Seife Salz hinzu, wird sie härter und die Schaumbildung wird schlechter; die fertige Seife splittert zudem leichter. Bei zuviel Salz kann es zur Trennung der Lauge kommen und die eigentliche Seife ausflocken. Man sollte nicht mehr als 3% (bezogen auf die GFM) nehmen. Das Salz löst man in der Laufenflüssigkeit auf und gibt dann das NaOH dazu.

Man kann auch etwas Zucker (rein oder auch als Honig, Fruchtsaft, Bier, Milch) zur Seife geben – sie wird dadurch ein klein wenig weicher und hat eine etwas bessere Schaumbildung. Die Seife wird auch deutlich heißer beim Vermischen. Man sollte nicht viel mehr als 2% (bezogen auf GFM) nehmen. Der Zucker wird in der Laugenflüssigkeit aufgelöst und dann das NaOH dazugeben. Ein „Geheimtipp“ ist die Verwendung von Sorbitol anstatt Zucker. Es löst sich besonders leicht in Wasser und damit soll die Schaumbildung besonders gut gelingen.

Man kann auch gut Honig in die Seife bringen. Dafür wird der Honig am besten in etwas warmem Wasser aufgelöst und dann zum angedickten Seifenleim gegeben. Lauge und Öle sollten auf rund 40°C abgekühlt sein. Als Richtwert kann man rund 5% (bezogen auf die GFM) nehmen. Honig macht die Seife etwas weicher und das Andicken des Seifenleims dauert auch etwas länger als sonst; man sollte also eher auf festere Fette und Öle zurückgreifen. Bei Honigseifen sollte die Gelphase eher vermieden werden, da die Seife sonst zu heiß werden kann. Die Seife nach dem Anrühren also möglichst kalt stellen (am besten Kühl- oder Gefrierschrank; im Winter draußen) um die Gelphase zu vermeiden.

Man kann auch Bienenwachs zur Seife geben. Wichtig: das Bienenwachs muss bei der Berechnung der NaOH Menge mit berücksichtigt werden, da es von der Lauge teilweise verseift wird. Die Schmelztemperatur von Bienenwachs ist ziemlich hoch, man muss also ganz gut erhitzen und auch die flüssigen Öle sollten nicht zu kalt sein, damit das Bienenwachs nicht gleich wieder ausflockt.

Zur Pflege kann man Panthenol (Provitamin B5) hinzugeben. Angeboten wird meist eine Lösung verdünnt mit 25% Wasser. Geeignet ist Panthenol besonders bei Haarseifen und sollte bei rund 1% GFM dosiert werden. Das Panthenol ist nicht hitzestabil und sollte nicht über 25°C verarbeitet werden; also sollte es speziell auch keine Gel-Phase geben.

Man kann Seifen auch mit etwas Essig (meistens wird Apfel- oder Himbeeressig verwendet) herstellen. Die Säure muss unbedingt bei der Berechnung der NaOH Menge mit berücksichtigt werden (dafür braucht man die Prozentangabe der Säure im Essig). Der Essig wird zum Seifenleim dazugegeben und sollte auch bei der Flüssigkeitsmenge der Seife mit berücksichtigt werden.

Kaolin (auch Porzellanerde) ist eine weiße Tonerde die im Bergbau gefördert wird. Verwendet wird Kaolin vor allem zur Papierherstellung, für Porzellan oder auch in Zahnpasta. In der Seifensiederei kann man Kaolin der Seife zusetzen um eine hellere Seife zu bekommen, für eine leichte, zusätzliche Reinigung oder bei Rasierseifen auch für eine bessere Gleitfähigkeit der Rasierklinge.

Herstellung der Seife

Um der Bildung von harmloser, aber unschöner Sodaasche auf der Oberfläche der Seife entgegenzuwirken, einfach die Seife mit Isopropanol besprühen (am besten zweimal; sofort und nach 15min). Zusätzlich hilft gegen Sodaasche: Gelphase befördern, Seife luftdicht abdecken, wenig Wasser benutzen, Rizinusöl oder Bienenwachs, Seifenleim gut andicken. Entfernen lässt sich Sodaasche mit einem feuchten Tuch oder Wasserdampf.

Formgebung

Für typische Handseifen: 60 – 100g; für kleinere Seifen wie z. Bsp. Gästebad: 30 – 60g

Sehr schöne Stempel gibt es bei: ensu3d.de. Dort kann man auch leicht selbst entworfene Motive als Stempel bestellen. Die Stempel selbst sind aus einem biologisch abbaubaren Thermoplast hergestellt.

Haltbarkeit

Die Haltbarkeit der fertigen Seife entspricht im Prinzip der kürzesten Haltbarkeit (genauer: MHD, also Mindesthaltbarkeitsdatum) aller verwendeter Seifenzutaten. Je frischer die Zutaten, desto länger also die Haltbarkeit der Seife.

Man kann eine Seife übrigens sehr gut auch im Kühlschrank (oder sonst an einem kühlen Ort, wie im Keller) oder auch im Gefrierschrank aufbewahren. Entsprechen verlängert sich die Haltbarkeit der Seife; wie lange genau, lässt sich seriös nicht angeben, aber man kann hier auch wieder einfach die Haltbarkeit der verwendeten Zutaten denken.

Rezepte

Seifenrechner

Neben der Zusammensetzung der verwendeten Fetten und Ölen, ist besonders die exakte Berechnung der NaOH Menge wichtig. Das kann man natürlich von Hand und den Verseifungstabellen machen, viel leichter geht es aber mit den im Internet verfügbaren Seifenrechnern. Der vielleicht beste ist:

http://www.handmade-by-kathrin.de/soap/calc/

Olivenölseife

Reine Olivenölseife

Reine Olivenölseife ist etwas besonderes; man muss sich bewusst sein, dass sie kaum schäumt und sich etwas glitschig anfühlt. Überfettung 6-8%. Deutlich weniger Wasser nehmen (20% der Fettmasse) und erst nach rund 2 Tagen aus der Form nehmen Die Reifezeit beträgt mind. 6-8 Wochen, besser sogar 6 Monate. Beduften mit bspw. Melisse und Rosmarin. Für die Farbe evtl. die Hälfte mit grüner Tonerde färben

Rezept: 72% Olivenöl, 24% Kokosöl und 4% Rizinus
Evtl. etwas Kartoffelstärke (2 EL pro Kilo) in Rizinusöl aufgelöst

65% Olive, 30% Lorbeer, 5% Rizinus
20% H²O für die Lauge
kein Duft, keine Farbe; 1% ÜF

Lavendelseife

  • 600g Olivenöl
  • 300g Kokosöl
  • 180g Rapsöl
  • 120g Sonnenblumenöl
  • 166g NaOH
  • 380g Wasser
  • 25g ätherisches Lavendelöl
  • Evtl. 2-4 TL Lavendelblüten

Seife wie üblich mit den Basisölen herstellen. Lavedelöl (und evtl. Blüten, die zuvor 1h in etwas abgezweigten Olivenöl eingelegt wurden) am Schluss hinzugeben. Gut isolieren und nach einem Tag schneiden. Fertig nach vier bis sechs Wochen.

Haarseife

Eine Haarseife lässt sich sehr gut anstatt eines (Flüssig-) Shampoos benutzen; in den meisten Fällen erspart man sich dabei viele zweifelhafte chemische Substanzen, Mikroplastik und spart dazu noch Geld. Zum Haare waschen verreibt man die Seife auf dem nassen Haar; die ersten Augenblicke langsam und sachte, aber dann beginnt die Seife schnell zu schäumen und man sich die Haare wunderbar damit einseifen.

Prinzipiell unterscheidet sich ein Haar- von einer Haut- oder Handseife eigentlich vor allem dadurch, dass die Überfettung geringer ist. Üblich sind für Haarseifen rund 4% Überfettung. Gute Öle für eine Haarseife sind beispielsweise: Olivenöl, Kokosöl, Rapsöl, Traubenkernöl, Distelöl, Hanföl und Rizinusöl (für den Schaum).

Speziell für eine Anti-Schuppen Haarseife eignen sich an Pflanzenextrakten besonders Rosmarin, Brennessel und Wacholder. Das sind traditionelle Mittel gegen Schuppen, die leicht antimikrobiell wirken sollen. Brennnessel soll zudem die Talgproduktion reduzieren. Weizenkeimöl (nur ’nativ extra‘ verwenden) zum Beispiel wird für eine gesunde Kopfhaut eingesetzt.

Rasierseife

Als Basisöl wohl am besten Olivenöl; dazu Rizinusöl für den Schaum. Evtl. rund ein bis vier TL Kaolin (weißer Ton) pro Kilogramm Fett; damit soll die Klinge besser gleiten. Eine Mischverscheifung (NaOH und KOH etwa 50/50) soll mehr Schaum geben, macht die Seife aber weicher, was aber bei einer Rasierseife eher ein Vorteil ist.

Verpacken

Banderole, Etikette

Zum kleben der Banderole aus Papier nimmt man am besten ganz umweltgerecht eine Mehlkleister. Dazu warmes Wasser und Mehl im gleichen Verhältnis (etwas mehr Wasser als Mehl) vermischen. Das Mehl (kein Vollkornmehl) in das warme Wasser einrühren und alles möglichst glatt verrühren. Dieser Mehlkleister klebt sehr gut Papier oder Pappe, man kann damit aber auch beispielsweise Papier (Etiketten) auf Glas, Metall oder Holz kleben. Man sollte dem Kleister etwas Zeit zum trocknen geben, damit er auch gut hält.

Mit etwas warmem Wasser kann man den Kleber auch wieder sehr einfach lösen. Auch aus Textilien geht der Kleister (evtl. vorher einweichen) beim waschen wieder gut weg. Der Kleister ist völlig unbedenklich und wer will könnte ihn sogar essen. Reste kann man entsprechend im Biomüll oder auf dem Kompost entsorgen.

Umverpackung

Cellophan – ist umweltfreundlich und kann zum Altpapier, zum Biomüll oder einfach auf den Kompost gegeben werden. Mit etwas Hitze kann man das Cellophan sehr einfach verkleben; am besten geht das mit einem alten Bügeleisen.

Seifenreste verwerten

Die Seifenreste kleinhobeln und in einen Topf geben. Dazu etwas Flüssigkeit (Wasser oder auch Milch) und erhitzen – bei kleinen Mengen am einfachsten im Wasserbad oder sonst im Ofen bei rund 100-120 °C. Dabei immer mal wieder umrühren. Nach rund 1 bis 4 Stunden sollte die Seife zähflüssig sein. Dann kann man nach Belieben noch Düfte oder Farben dazugeben und schließlich die Seife wieder in eine Form füllen.

Bezugsquellen

Seifenformen

Silikomart – hochwertige Silikonformen aus Norditalien: shop.silikomart.com/en/




Scottish Shortbreads

Shortbreads sind ein traditionelles schottisches Gebäck, das zur Tea-Time gereicht wird. ‚Short‘ heißt übrigens nicht ‚kurz‘, sondern für schlicht ‚brüchig‘ und ‚mürbe‘. Grob gesagt, bestehen die Zutaten aus Zucker, Butter und Mehl im Verhältnis 1:2:3.

Zutaten

350g Mehl (Dinkel oder Emmer)
250g Butter (zimmerwarm)
100g Zucker
2 Prisen Salz

Zubereitung

  1. Den Ofen auf 180°C Ober- und Unterhitze vorheizen.
  2. Die Butter und den Zucker in eine Schüssel geben. Mit dem Rührgerät so lange schlagen, bis eine schaumige Masse entsteht.
  3. Das Mehl und das Salz mischen, in die Masse geben und alles zu einem Teig verrühren.
  4. Den Teig zu einem Ball formen und im Kühlschrank kalt stellen
  5. Auf einer bemehlten Arbeitsfläche geben und den Teig fingerdick ausrollen (Ausrollhölzer sind dabei hilfreich).
  6. Mit einem Messer längliche Rechtecke ausschneiden.
  7. Die Shortbread Fingers oben mit einem Holzspieß oder einer Gabel mehrfach einstechen.
  8. Im Ofen für rund 15 bis 20 Minuten backen. Das Shortbread sollte golden sein, aber nicht braun werden.

Die fertigen Shortbreads in einer Dose aufbewahren; so halten sie mehrere Monate.

Varianten

Wer möchte kann auch Schokostückchen oder Orangenzesten zum Teig geben. Genausogut kann man einen Teil des Zuckers mit Vanillezucker ersetzen.

Andere übliche Formen sind kleine kreisrunde Kekse oder auch die Form von Tortenstücken. Letzteres sind die ‚Petticoat Tails‘; dafür einen großen Teigkreis formen, in acht Stücke vorschneiden (nicht ganz durchschneiden) am Rand mit den Holzspieß schräge Kerben eindrücken und auf der Oberfläche einstechen.




Rumtopf

Um einen Rumtopf anzusetzen braucht man einen Topf aus Steingut. Im Prinzip lassen sich nahezu alle Früchte, die im Jahresablauf anfallen einlegen – weniger geeignet sind allerdings Äpfel, schwarze Johannisbeeren, Heidelbeeren und Brombeeren. Alle Früchte sollten einwandfrei, reif und sauber, also gut gewaschen sein.

Größere Früchte wie Birnen, Aprikosen, Zwetschgen schneidet man klein. Dem Gewicht der Früchte entsprechend gibt man genau die gleiche Menge an Zucker zu den Früchten und vermischt es grob im Rumtopf. Dann gießt man alles soweit mit Rum auf, dass alle Früchte bedeckt sind. Der Rum muss gut über 50% Alkohol haben, um Schimmel zu vermeiden.

Immer wenn es neue Früchte gibt, kann man den Rumtopf mit den Früchten, Zucker und Rum weiter auffüllen. Den Rumtopf sollte man hin und wieder vorsichtig umrühren. Rund 6 Wochen nachdem die letzten Früchte dazugegeben wurden, ist der Rumtopf dann endlich fertig und hält den ganzen Winter über.

Der Rumtopf eignet sich hervorragend zu Desserts wie beispielsweise Vanilleeis.




Kuchen im Glas

Ein leckerer und haltbarer Haselnusskuchen im Einkochglas

Eine tolle Idee und auch ein schönes Geschenk ist ein selbst im Glas gebackener Haselnusskuchen. Ganz abgesehen davon, dass der Kuchen sehr lecker ist, ist er im Glas auch nahezu unbegrenzt haltbar.

Man braucht einige Sturzgläser (beispielsweise die Gugelhupfgläser von Weck) mit einem Gesamtvolumen von rund 2,5 Liter. Im Fall der Weck Gugelhupfgläser wären das etwa 6 mal die großen (à 280ml) und 5 mal die mittleren (à 165ml) Gläser.

Zutaten

200 g Puderzucker (alternativ Haushaltszucker)
200g Mehl
200g gemahlene Haselnüsse (oder auch Mandeln)
200g Sahne
4 Eier
1 Pk. Backpulver
1 Prise Salz
Etwas Butter und Grieß oder Paniermehl für die Gläser

Zubereitung

Damit sich der Kuchen wieder gut aus dem Glas lösen lässt, zuerst etwas Butter in die Gläser einstreichen und mit Grieß oder Paniermehl (oder auch mit den gemahlenen Nüssen) ausstreuen. Dann den Rost (bzw. das Backblech) aus dem Ofen nehmen und den Ofen auf 180°C vorheizen.

In einer großen Schüssel mit einem Rührgerät oder einem Schneebesen den Puderzucker und die Eier verrühren. Die gemahlenen Haselnüsse, Sahne, Mehl, Backpulver und das Salz dazugeben und alles gut vermengen.

Den Teig bis etwa zur Hälfte in die Gläser füllen und die Ränder gut säubern sofern das nötig ist (nach dem backen sind die Gläser viel zu heiß dafür). Evtl. in der Mitte eine Kuhle drücken, da der Kuchen vor allem in der Mitte aufgeht. Dann die Gläser ohne Deckel auf das kalte Blech stellen (niemals ein kaltes Glas auf ein heißes Backblech stellen) und ab damit in den Ofen. Die kleinen Gläser kommen nach vorn, die großen nach hinten. Die Backzeit für die kleinen Gläser beträgt ca. 20 Minuten, für die größeren Gläser ca. 25 Minuten. Wenn die Glasformen ein anderes Volumen haben, muss die Zeit entsprechend angepasst werden.

Die Gummiringe zum befeuchten in Wasser legen, auf die Glasdeckel legen, dann noch feucht die Gläser damit zumachen und mit den Metallklammern (oder auch mit dem sonstigen Verschluss) fest verschließen. Dabei möglichst schnell arbeiten und immer nur 2-3 Gläser aus dem Ofen holen. Ist der Kuchen zu weit über den Rand hinaus aufgegangen, kann man ihn evtl. mit dem Deckel etwas platt drücken oder auch das oberste Stück abschneiden.

Kuchen im Glas
Kuchen im Glas

Dabei sollte die Temperatur im ganzen Glas möglichst nicht unter rund 80°C fallen. Und gut aufpassen, da die Gläser natürlich sehr heiß sind und man sich leicht verbrennt. Falls es im Glas (speziell oben am Deckel) vielleicht doch nicht ganz heiß geblieben ist, ist es am sichersten, den Kuchen-im-Glas nochmal für rund 20-30 Minuten bei 100°C im Ofen einzukochen.

Kuchen im Glas (fertig)
Kuchen im Glas (fertig)

Danach gut abkühlen lassen und schließlich die Metallklammern wieder entfernen. Dass der Unterdruck im Glas noch in Ordnung ist, kann man ganz leicht überprüfen indem man den Glasdeckel anhebt und sich das Glas so nicht öffnen lässt. Bei den Weck-Gläsern kann man den richtigen Unterdruck auch ganz einfach dadurch schon sehen, wenn der Nippel des Gummirings nach unten zeigt. Falls anfangs ein paar Wassertropfen innen am Glas kondensieren ist das völlig bedenkenlos und geht wieder weg. Wenn man sauber gearbeitet hat, sollte der Kuchen gut mehrere Monate bei Raumtemperatur haltbar sein.

Kuchen im Glas (aufgeschnitten)
Kuchen im Glas (aufgeschnitten)

Darüberhinaus

Den Kuchen kann man sehr gut auch variieren; beispielsweise kann man noch kleine Schokoladenstückchen in den Teig geben. Oder für einen Marmokuchen einfach einen Teil des Teiges noch mit Kakaopulver vermengen.




Brezelknödel

Zutaten

4 Brezeln (getrocknet rund 255g)
1/4 l Milch
2 Eier
1 Zwiebel

evtl. 1/2 Bund Petersilie

Zubereitung

Die Brezeln in kleine Würfel schneiden. Das macht man ab besten irgendwann, wenn man Zeit hat und alte Brezeln (oder auch Laugenbrötchen; evtl. auch etwas anderes, helles Brot) hat. Will man die Brezelwürfel länger aufbewahren, dann im Backofen gut trockenen – so halten sie sich monatelang in einem dichten Behälter.

Die Milch kurz aufkochen. Den Großteil der Milch über die Brezeln gießen und rund 20-30 Minuten einweichen lassen. Die Zwiebel kleinhacken und golden, hellbraun andünsten. Die Zwiebel und die Eier zu den Brezeln dazugeben (und je nach Geschmack die Petersilie) und mit den Händen alles gut vermengen und leicht durchkneten, aber so, dass noch die Brezelstücke erhalten bleiben. Der Knödelteig sollte klebrig aber formbar sein (so dass die Knödel erstmal ihre Form behalten. Sollte der Knödelteig zu fest sein, dann noch etwas von der Milch dazugeben; wenn er zu weich ist, hilft etwas Mehl.

Brezelknödel
Fertig geformte Brezelknödel

Knödel formen, auf einem Teller sammeln und dann alle vorsichtig (z. Bsp. mit einem Schaumlöffel) in das heiße, aber nicht kochende Wasser geben. Rund 1/4 h kochen lassen.

Darüberhinaus

Dazu passt sehr gut Rotkohl. Man kann die Knödel auch gut einfrieren und in Scheiben geschnitten in der Pfanne anbraten.

Brezelknödel
Lecker Brezelknödel



Spitzbuaba

Zutaten

350 g Mehl (Weizen oder Dinkel)
200 g Butter
125 g Puderzucker
1 TL Vanillezucker
1 Eiweiß
1 Prise Salz

Zum Bestreichen Hägemark (Hagebuttenmarmelade) oder eine andere Marmeladen-Sorte ganz nach Geschmack. Ganz hervorragend eignet sich auch Nougat bzw. Schokolade!

Zubereitung

Alle Zutagen durchkneten und dann kalt stellen. Dünn auswellen (am besten mit Teigleisten) und runde Formen ausstechen. Bei der Hälfte davon in der Mitte noch ein Loch stechen (das geht sehr gut mit einem Apfelentkerner).

Spitzbuaba
Spitzbuaba – die Oberteile haben ein Loch.

Bei 200°C (ohne Umluft) 8 Minuten backen.

Die Plätzchen ohne Loch mit Hagebuttenmarmelade bestreichen und dass Plätzchen mit Loch darauflegen und leicht drehen.

Je nach Geschmack die fertigen Gutsle noch mit Puderzucker fein bestreuen. Zu guter Letzt zum Aufbewahren alles in eine Dose legen. Die Spitzbuaba werden nach einem Tag deutlich weicher, da sie die Feuchtigkeit der Marmelade aufnehmen.

Spitzbuaba mit Nugat
Spitzbuaba mit Nugat



Ausstecherle

Zutaten

500 g Mehl
250 g Butter
200 g Zucker
2 Eier (groß)
1 Prise Salz
evtl. Abgeriebenes einer halben Zitrone

Ein Eigelb und etwas Milch zum Bestreichen
Hagelzucker, Schoko- oder bunte Zuckerstreusel zum Bestreuen

Zubereitung

In einer großen Schüssel zuerst Mehl, Zucker und Salz vermengen, dann alle Zutaten zu einem festen Teig verkneten. Mindestens 1/2 Std. kühl ruhen lassen, was im Advent gut im Freien geht.

Den Teig rund 1/2 cm dick ausrollen, ausstechen und auf das Backpapier legen. Die Teigreste evtl. auch nochmal kalt stellen. Die Ausstecherle mit Eigelb (mit etwas Milch verdünnt) bestreichen und dann nach Belieben die Ausstecherle noch mit Hagelzucker oder Streusel dekorieren.

Bei 180°C rund 10 Minuten goldbraun backen (keine Umluft).




Springerle

Zutaten

4 Eier (rund 240g mit Schale, am besten etwas ältere Eier)
500g Puderzucker
550g Dinkelmehl 630
Anis

Zubereitung

Puderzucker in eine große Schüssel sieben, und mit den Eiern schaumig rühren. Das gesiebte Mehl und etwa einen Teelöffel Anis zu der Ei-Zucker-Masse geben und gut durchkneten bis der Teig fest, geschmeidig und nicht allzu klebrig ist ist. Bei Bedarf (speziell auch abhängig von der Größe der Eier) noch etwas Mehl dazugeben. Dann mehrere Stunden kalt stellen, was in der Vorweihnachtzeit ja auch gut im Freien geht.

Das Backblech mit Backpapier auslegen (oder einfetten) und mit reichlich Mehl und nach Belieben Anis bestreuen. Den Teig relativ dick (rund 1cm) auswellen was am besten mit Teighölzern geht. Die leicht bemehlten Springerle-Model fest in den Teig drücken, wodurch die Springerle auch nicht mehr so hoch sind. Dann die Formen ausschneiden oder -rädeln und auf das vorbereitete Backblech legen. Die Springerle werden mit etwas Mehl bestäubt und müssen nun für mehrere Stunden – am besten über Nacht – offen ruhen und dabei antrocknen (also nicht abdecken).

Am nächsten Tag bei rund 150-160°C Ober-Unterhitze im vorgeheizten Backofen rund 20 Minuten backen. Die Springerle sollten an der Oberseite weiß bleiben und es müssen sich Füßle bilden, die möglichst hoch und goldgelb gebacken sind.

Darüberhinaus

Die Springerle werden mit der Zeit besser, also am besten ein paar Wochen vorher backen. Sie sollten in einer Dose an einem kühlen Ort aufbewahrt werden und in diese Dose legt man hin- und wieder einen Apfelschnitz (auf einem kleinen Teller oder etwas Alufolie); aufpassen, dass der Schnitz nicht zu schimmeln anfängt!

Wer keinen Anis mag, kann den natürlich weglassen

Springerle-Model

Gute Springerle-Model sind nicht immer ganz einfach zu bekommen. Auf Plastikmodel oder Model aus Asien sollte man wohl am besten verzichten. Ganz wunderbare Model, die noch handwerklich aus Birnbaumholz geschnitzt werden sind zu bekommen bei: modelmanufaktur-angele.de.




Samba mit Linux

Um ein Verzeichnis mit Samba unter Linux im LAN freizugeben müssten folgende Schritte genügen. Zuerst installieren:

sudo apt install samba
sudo nano /etc/samba/smb.conf

und am Ende folgendes hinzufügen:

[Media]
	create mask = 0775
	directory mask = 0775
	force group = users
	force user = tom
	guest ok = Yes
	path = /mnt/media/media
	read only = No
	write list = tom

Zum testen der Konfiguration:

testparm

Setzen des leeren (kein) Passwords (nicht das Linux-Password!):

sudo smbpasswd -an tom

Um Samba dauerhaft zu aktivieren:

sudo systemctl start smbd
sudo systemctl enable smbd



Lebensmittel dörren

Zum dörren, also trocknen, von Lebensmitteln eignet sich ein Dörrautomat am besten. Alternativ kann man auch ein Backofen nutzen, den man auf niedrige Temperatur stellt und die Tür etwas offen stehen läßt (beispielsweise mit einem Rührlöffel). Der Nachteil des Backofens ist sicherlich der eher hohe Stromverbrauch und die ungenaue Temperatur.

Die Trocknungszeiten im Dörrautomaten schwanken in der Praxis stark und hängen unter anderem vom Lebensmittel ab, wie feucht es ist, wie groß die zu trocknenden Stück sind, vom verwendeten Apparat, aber auch von der Luftfeuchtigkeit ab.

Getrocknete Früchte sollte man luftdicht z. Bsp. in einem Glas, kühl und dunkel lagern. Haltbar sollten sie rund ein ganzes Jahr sein (bei Feigen gerade so).

Äpfel

Es eignen sich besonders größere Äpfel; gut geht beispielsweise die Sorte Pinova. Die Äpfel waschen und den Kern ausstechen. Dann in etwa 5 mm breite Ringe schneiden und auf dem Dörrgitter verteilen. Rund 8-9 h bei etwa 60°C dörren. Am besten nach 8h die Apfelringe kurz durchgehen, die festeren (ledrige Konsistenz) rausnehmen und die noch weichen etwas weiter dörren.

Rosinen

Am besten eignen sich größere, kernlose Trauben. Einfach waschen, etwas abtrocknen und im Dörrautomat rund 18 Std. bei 60°C trocknen. Wirklich gut funktioniert das aber nicht; die Rosinen kleben vor allem sehr stark.

Zwetschgen

Die Zwetschgen waschen, mit einem Messer rundum einscheiden, abdrehen und damit halbieren, die Kerne entfernen und mit der Schale nach unten auf die Dörrflächen legen. 18 Std. bei 60°C.

Erdbeeren

Da die Erdbeeren sehr saftig sind, also viel Wasser enthalten, schrumpeln sie sehr stark ein. Also relativ große Stücke trocknen – beispielsweise halbierte Erdbeeren oder fast fingerdicke Scheiben nehmen. Rund 8h bei 60°C.

Feigen

Die vollreifen Feigen waschen und abtrocknen. Sofern es die Höhe des Dörrautomats erlaubt, können die Feigen am Stück getrocknet werden; ansonsten einfach halbieren. Bei 50°C mindestens 10h (speziell Feigen am Stück brauchen aber deutlich länger) trocknen bis sie eine ledrige Konsistenz haben. Ganz hart sollten die Feigen durch das trocknen allerdings nicht werden.

Tomaten

Tomaten waschen, schneiden und die Kerne entfernen. Tomaten ausbreiten und mit etwas Salz bestreuen (evtl. auch ganz wenig Zucker). Dann bei 60°C rund 10-14h dörren; die Tomaten sollten noch biegbar sein, sich etwa so wie sich Leder anfühlt. Wenn man mit einer Gabel draufdrückt, darf jedenfalls keine Flüssigkeit mehr austreten.

In Öl eingelegte, getrocknete Tomaten

Wenn die getrockneten Tomaten sehr hart sind, kurz mit Wasser und etwas Essig aufkochen.

Zusammen mit beispielsweise Rosmarin, Thymian, Oregano, Pfeffer, Knoblauch, Basilikum in ein Glas geben. Mit Öl (Olivenöl oder auch Sonnenblumenöl) auffüllen so dass keine Luftblasen mehr zu sehen sind (das Glas leicht drehen und evtl. mit einem Löffel oder Holzspieß etwas nachhelfen). Wenige Wochen warten. Es gibt auch die Idee, mit heißem Öl (ca. 120°C) zu übergießen.

Gemüsebrühe

Einfach Gemüse und Kräuter nach Belieben aussuchen (Karotten, Lauch, Sellerie, Schalotten oder Zwiebeln, Pastinake oder Petersilienwurzel, Knoblauch, Liebstöckl), waschen und klein schneiden (bzw. raspeln oder auch im Mixer zerkleinern)

Dann bei rund 60°C für 8-10h trocknen. Je nachdem wie klein oder groß die getrockneten Stücke sind, noch klein häckseln bis es eher ein Pulver wird. Wer möchte, kann dann gleich auch noch Salz daruntermischen. Luftdicht verschlossen hält das Pulver eine kleine Ewigkeit.

Kräuter

Zum Trocknen geeignete Kräuter sind beispielsweise Thymian, Rosmarin, Oregano, Majoran, Salbei, Kamille, Waldmeister, Bohnenkraut, Minze, Lorbeer oder Zitronenverbene. Wobei sich das Aroma bei Thymian, Majoran, Oregano oder Lorbeer durch das Trocknen eher noch verstärkt. Nicht geeignet zum Trocknen ist Basilikum; das Aroma leidet und es entsteht eher ein Geschmack nach Gras. Getrocknet werden Kräuter bei geringer Temperatur von 35-40°C und meist genügen 2-3 Stunden.




Kaseinleim – Holzleim aus Quark und Kalk

Bemerkungen vorab

Vieles von dem Wissen, auf das Handwerker in früheren Jahrhunderten zurückgreifen konnten, ist heute leider in Vergessenheit geraten und die wenigsten wissen noch, wie früher Farben oder Leim hergestellt wurde sondern vertrauen ganz auf die industriell hergestellten, chemischen Produkte aus dem Baumarkt. Dabei ist gar nicht so schwer, sich diese alten Fähigkeiten wieder (zumindest ansatzweise) anzueignen.

Einen sehr haltbaren, wärme- und wasserfesten Leim, der ganz ohne moderne chemische Produkte auskommt, lässt sich beispielsweise aus Quark und Kalk herstellen. Etwas genauer aus dem Milcheiweiß (Kasein) und gelöschtem Kalk. Diese beiden Zutaten reagieren miteinander und härten zu einer stabilen Klebeverbindung aus.

Das Kasein kann man im Fachhandel in reiner Form kaufen, aber es genügt auch einfach Magerquark mit möglichst wenig Fett zu nehmen. Quark besteht zum größten Teil (neben Wasser) genau aus genau dem Milcheiweiß, dass man für den Leim braucht. Wichtig ist, dass der Quark traditionell mit Säure hergestellt wurde (auf der Verpackung steht evtl. etwas von Sauerquark oder ähnlichem). Ganz grob hat Magerquark etwa das achtfache Gewicht wie das reine Kasein.

Den gelöschten Kalk kann man entweder in Pulverform kaufen (meistens Kiloware, dafür aber sehr günstig) und wir meistens unter der Bezeichnung Weißkalkhydrat vertrieben. Dieses Pulver löst man einfach in Wasser auf und hat damit gleich den verbrauchsfertigen Sumpfkalk.

Traditioneller ist das Ansetzen des Sumpfkalkes in Tonnen oder (so wie früher) Erdgruben aus gebranntem Kalk (Weißkalkoxid) und Wasser. Diesen Ansatz muss man dann für Jahre ruhen lassen, damit ist seine feinkörnige, teigige Konsistenz erreicht. Den Aufwand scheuen natürlich die meisten (außer vielleicht jemand der ein altes Haus sein eigen nennt und viel zu restaurieren und renovierent hat). Aber auch diesen Sumpfkalk kann man gut über den Fachhandel beziehen.

Herstellung

Der verwendete Sumpfkalk ist stark alkalisch und greift die Haut an; besonders die Augen sind stark gefährdet, deswegen Schutzbrille und Handschuhe tragen!

Man gibt etwas Sumpfkalk in die Mitte eines Mörsers und rund die fünffache Menge (nach Gewicht) an Magerquark an den Rand (oder ein Teil Kalkhydrat und zwei Teile Magerquark). Am besten bei Zimmertemperatur arbeiten; jedenfalls nicht zu kalt (nicht unter 12 °C).

Oder alternativ auch 75g Weißkalkhydrat (+200g Wasser) und 200g Kasein (+600g Wasser; mehrere Stunden quellen lassen).

Nun verreibt man einen Teil des Quarks mit dem Sumpfkalk, wobei sich ein leichter Geruch nach Ammoniak entwickeln sollte. Die Masse selbst sollte zähflüssig werden und es sollten sich Blasen entwickeln, die knallen oder schmatzende Geräusche erzeugen. Riecht es nach faulen Eiern wurde der Quark nicht mit Säure gewonnen und sollte es nach Seife riechen ist zuviel Fett im Quark (kein Magerquark). In beiden Fällen den Ansatz am besten gleich verwerfen.

Jetzt immer mehr vom Quark untermischen, wobei die Masse immer zähflüssiger wird und schließlich umkippt zu einer Konsistenz wie sie Grießbrei hat. Dann keinen weiteren Quark hinzumischen sondern einfach so weiterreiben; nach einigen Minuten sollte es wieder eine zähflüssige Masse werden. Dann kann wieder etwas Quark zugemischt werden. Sollte die Griessbrei-Konsistenz nicht weggehen, muss etwas Sumpfkalk dazugegeben werden.

Am Schluss sollte der Leim zähflüssig wie Honig sein; vom Pistill sollte die Masse in einem dünnen Faden nach unten laufen. Ist der Leim zu fest, etwas Sumpfkalk hinzugeben, ist er zu flüssig, etwas Quark dazugeben. Jedenfalls kein Wasser dazugeben.

Schließlich den Leim einige Minuten stehen lassen und dann zügig verarbeiten (er hält nicht viel länger als eine halbe Stunde). Erschütterungen könnten dazu führen, dass der Leim geliert und fest wird; dann ist er nicht mehr zu gebrauchen.

Verwendung

Der Leim ist stark alkalisch und greift die Haut an. Deswegen niemals die Finger benutzen oder sonst Leim auf die Haut bekommen (also Handschuhe und Schutzbrille tragen). Die Klebeflächen sollten relativ eng anliegen (weniger als 1/10mm Abstand). Geklebt werden sollte möglichst bei Zimmertemperatur, keinesfalls bei Frost. Die Leimverbindung sollte einige Stunden gepresst werden, nach einem Tag kann man dann weiterarbeiten und nach wenigen Tagen hat die Leimverbindung auch die endgültige Festigkeit.

Der Pinsel sollte alkalifest sein, d.h. eine Naturhaar-Pinsel geht nicht, aber Weide, Bast oder Plastik; er würde sich ziemlich schnell (wie die Fingerhaut) auflösen.

Die Leimverbindung aus Kaseinleim ist wärme- und wasserbeständig, kann also nur noch mit roher Gewalt gelöst werden.

Die benutzten Gerätschaften unter fließendem Wasser reinigen und die Pinsel am besten gleich auswaschen. Größere Reste einfach auf Papier etc. aushärten lassen. Evtl. kann man ausgehärtete Reste später mit NaOH wieder weich bekommen (noch nicht ausprobiert).

Bezugsquellen

Eine (unvollständige) Auswahl an Händlern, die Produkte rund um Kalkprodukte, Kalkkaseinleim oder Kalkfarben anbieten sind:

https://www.kalk-laden.de/
https://www.kreidezeitshop.de/




Kürbiskernpesto

100 g Kürbiskerne
50 g Parmesan
120 ml Öl (z. Bsp. Kürbiskern-, Oliven- oder Rapsöl)
1 Bund Basilikum
Prise Salz
evtl. 1 Knoblauchzehe

Die Kürbiskerne in einer Pfanne ohne Öl rösten. Den Parmesan-Käse kleinreiben und die Kürbiskerne kleinhacken (beides, damit der Mixer mit dem Pesto fertig wird). Alle Zutaten in eine Schüssel geben und mit dem Stabmixer kurz weiter kleinhacken und damit zugleich auch zum fertigen Pesto vermischen. Nur möglichst kurz mixen, da der Basilikum sonst eine bittere Note bekommen kann.

Das fertige Pesto am besten gleich mit Pasta genießen oder sonst in luftdichten Gläsern aufbewahren. Das Pesto kann sehr gut auch für wenige Wochen in den Kühlschrank oder auch tiefgefroren werden (hält dann mehrere Monate).




Mandelbutterkuchen

Zutaten

1 Becher Sahne (den Becher weiterbenutzen)
1 Becher Zucker
2 Becher Mehl
3 Eier
2 Päckchen Vanillezucker
1 Päckchen Backpulver
1 Prise Salz

Zubereitung

Sahne, Zucker, Eier, Salz verrühren; Mehl und Backpulver löffelweise unterrühren.

Auf einem Backblech mit Backpapier verteilen und ca. 15 min bei 150 Grad backen.

150 g Butter + 1 Becher Zucker schmelzen, mit 100 g Mandelblättchen mischen. auf dem Teig verstreichen. ca. 15 min weiter backen.




Tor-WLAN with Raspberry Pi

Thoughts upfront

The following is not for a high-level of anonymity and privacy; if anonymity is really crucial please look for more secure solutions like Tails or Whonix instead. Using Tor will effectively only hide your IP address, i.e. no-one can see your traffic as it leaves your location, however, starting from the Tor Exit the IP traffic looks the same as without Tor – just coming from the Tor-Exit and not from your IP address directly. Any private data included in your traffic itself will still be visible (to everyone if not encrypted, i.e. using http and the website provider if using https encrypted traffic). Keep in mind that although many sites (seem) to use https they are in fact hosted by companies like Cloudflare which terminated the https tunnel and have full access to everything sent to the website. Also your specific browser can be identified easily (although not related to you in person) via so-called fingerprinting principles.

What you will need: Raspberry Pi 3 (comes with WLAN included), a LAN cable, a SD card and a computer to prepare the SD card and then configure the Raspberry Pi. How to setup the Raspberry Pi as a mini-server (i.e. headless, without a display) is described in a separate article and is a prerequisite for the following.

Enable WLAN (Access Point with DHCP)

First, we shutdown the WLAN interface while we configure it in the next steps:

sudo ifdown wlan0

Disable the DHCP Client on WLAN

Normally the dhcpcd daemon (DHCP client) will search the network for a DHCP server to assign a IP address to wlan0. This is disabled by editing the configuration file:

sudo nano /etc/dhcpcd.conf

We tell the DHCP client that on the wlan0 interface we have a static IP address and it should not configure anything else on it. This is achieved by adding at the very end of the config file:

interface wlan0
    static ip_address=192.168.200.1/24
    nohook wpa_supplicant

and then restart the service so the new config is loaded:

sudo systemctl restart dhcpcd

Enable the Access-Point Server

Install the WiFi Access-Point server:

sudo apt install hostapd

Create a new config file for the access point:

sudo nano /etc/hostapd/hostapd.conf

Paste the below – and change the country code, the WLAN name (SSID) and the WLAN password before saving the file:

interface=wlan0
driver=nl80211
country_code=FR
ssid=Your-WLAN-Name
hw_mode=g
channel=6
ieee80211n=1
wmm_enabled=1
ht_capab=[HT40][SHORT-GI-20][DSSS_CCK-40]
macaddr_acl=0
auth_algs=1
ignore_broadcast_ssid=0
wpa=2
wpa_passphrase=Your-WLAN-Password
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP

The channel could be set to either 1, 6 or 11 depending on other wireless networks in your area. If you don’t know just take one by chance. Next, point the server to the right config file:

sudo nano /etc/default/hostapd
DAEMON_CONF="/etc/hostapd/hostapd.conf"

And then ensure the service is started:

sudo systemctl start hostapd
sudo systemctl status hostapd
sudo systemctl enable hostapd

Enable the DHCP Server

Start out by installing dnsmasq with the following command

sudo apt install -y dnsmasq

and then make a backup of the initial standard configuration for later reference before enabling the new config:

sudo mv /etc/dnsmasq.conf /etc/dnsmasq.conf.backup

We will put the DHCP configuration in the file dnsmasq.dhcp.conf and edit it with:

sudo nano /etc/dnsmasq.d/dnsmasq.dhcp.conf

The new configuration should be something similar to the following, however with the ip address information and things like the MAC addresses changed to your local setup:

# Configuration file for dnsmasq (DHCP part)

# Extra logging for DHCP: log all the options sent to DHCP clients and the tags
# used to determine them.
#log-dhcp

# Suppress logging of the routine operation of these protocols. Errors and problems
# will still be logged. quiet-dhcp and quiet-dhcp6 are over-ridden by log-dhcp.
quiet-dhcp

# This is our local network to be served as DHCP on wlan0
dhcp-range=wlan0,192.168.200.20,192.168.200.199,255.255.255.0,24h

# This is the only DHCP-server for wlan0
dhcp-authoritative

# This is your local domain name. It will tell the DHCP server which
# host to give out IP addresses for. 
domain=alpha

# Set the Gateway IP address
dhcp-option=option:router,192.168.200.1

# Set the DNS server
dhcp-option=option:dns-server,192.168.200.1

# Set the NTP time server address
dhcp-option=option:ntp-server,192.168.200.1

# adapted for a typical dnsmasq installation where the host running
# dnsmasq is also the host running samba.
# you may want to uncomment some or all of them if you use
# Windows clients and Samba.
dhcp-option=19,0           # option ip-forwarding off for clients
dhcp-option=44,0.0.0.0     # set netbios-over-TCP/IP nameserver(s) aka WINS server(s)
dhcp-option=45,0.0.0.0     # netbios datagram distribution server
dhcp-option=46,8           # netbios node type


# Always allocate the same DHCP IP address based on the MAC address
dhcp-host=00:25:a5:34:af:e7, Ethernet-Bridge,  192.168.200.20,  infinite
dhcp-host=84:cf:bf:89:9b:fd, Mobile,        192.168.200.120, infinite

To test if the config for dnsmasq is free of errors check the syntax with:

sudo dnsmasq --test

DNS Server and Cache

We put the DNS server configuration in a separate file (both DHCP and DNS is the same dnsmasq software and the config could well be in one file; but it’s a bit easier to read that way):

sudo nano /etc/dnsmasq.d/dnsmasq.dns.conf

and paste in the following

# Configuration file for dnsmasq (DNS part)

# For debugging, log each DNS query as it passes through dnsmasq.
#log-queries

# Listen on these IP addresses for DNS requests (always include localhost):
listen-address=127.0.0.1,192.168.200.1,10.80.0.1

# Where to send DNS request to which can't be resolved locally.
# Here we use the local Tor service listening on port 5300 (see /etc/tor/torrc)
server=127.0.0.1#5300

# The bind-interfaces directive instructs dnsmasq to bind only to
# the network interface specified in the listen-address directive.
bind-interfaces

# The no-hosts directive instructs dnsmasq not to read hostnames
# from /etc/hosts.
no-hosts

# Read hostname information from this file in addition
addn-hosts=/etc/dnsmasq.hosts

# Never forward plain names (without a dot or domain part) upstream
domain-needed

# Never forward addresses in the non-routed address spaces.
bogus-priv

# If you don't want dnsmasq to read /etc/resolv.conf or any other
# file, getting its servers from this file instead, then uncomment this.
no-resolv

# If you don't want dnsmasq to poll /etc/resolv.conf or other resolv
# files for changes and re-read them then uncomment this.
no-poll

# Set this if you want to have a domain
# automatically added to simple names in a hosts-file.
expand-hosts

# Number of hostnames being cached in RAM for DNS lookups
cache-size=10000

# Do not cache negative responses
no-negcache

# Resolve these domains locally only, don't send upstream
local=/alpha/
local=/local/

# Some simple domain blocking (doesn't block the IP, just domain-name)
address=/doubleclick.net/0.0.0.0
address=/google-analytics.com/0.0.0.0
address=/analytics.google.com/0.0.0.0
address=/amazon-adsystem.com/0.0.0.0
address=/analytics.yahoo.com/0.0.0.0
address="cn"0.0.0.0

To resolve the hostname of this server we need to provide it in a separate host-file:

sudo nano /etc/dnsmasq.hosts

and just list the local hostname and its IP address on the WLAN:

192.168.200.1	MyTorGateway

so can use its name on other devices on the WLAN (instead of the IP address).

To test if the above config for dnsmasq is free of errors run:

sudo dnsmasq --test

If everything is fine, start the dnsmasq service and check its status with:

sudo service dnsmasq start
sudo service dnsmasq status

To see the listening ports, check with:

sudo netstat -tulpn | grep dnsmasq

Enable a Time Server (NTP via chrony)

Since the aim is to route all traffic from the wireless network through Tor we need to provide the time to the WLAN since this can’t be done over Tor. The best ntp server for our purpose seems to be chrony. It’s installed via:

sudo apt install -y chrony

and then we configure it (after saving the initial config for later reference):

sudo mv /etc/chrony/chrony.conf /etc/chrony/chrony.conf.default
sudo nano /etc/chrony/chrony.conf

and paste in the following:

# Welcome to the chrony configuration file. See chrony.conf(5) for more
# information about usuable directives.

# The time server where we get our time from; here the internet router
server 192.168.178.1 iburst
#pool pool.ntp.org iburst

# Time server for the following subnet
allow 192.168.200.0/24

# Listen on this interface for client ntp requests
bindaddress 192.168.200.1

# This directive specify the file into which chronyd will store the rate
# information.
driftfile /var/lib/chrony/chrony.drift

# Uncomment the following line to turn logging on.
#log tracking measurements statistics

# Log files location.
logdir /var/log/chrony

# The hardware clock (rtc) is always UTC 
rtconutc

# This directive enables kernel synchronisation of the real-time clock. 
rtcsync

# Step the system clock instead of slewing it if the adjustment is larger than
# one second, but only in the first three clock updates.
makestep 1 3

If the devices on the WLAN don’t pick up time after a few minutes it might be necessary to list the ntp server 192.168.200.1 in the /etc/ntp.conf (or similar) config files of those devices.

Data Forwarding (WLAN ↔ LAN)

Only in case you want to access servers on your LAN (the one directly attached to the internet) from the Raspberry WLAN you need to allow IP4 forwarding on the Raspberry:

sudo nano /etc/sysctl.conf

Set the forwarding option to 1:

net.ipv4.ip_forward=1

and then reload the configuration:

sudo sysctl -p

You can double-check that it worked with:

sudo sysctl net.ipv4.ip_forward

The WLAN is now setup and we only need to enable the interface:

sudo ifconfig wlan0 up
sudo reboot

Now you should test it – you should be able to connect to the new WLAN just defined and if IP4 forwarding was enabled you should have access to the Internet (no Tor yet though).

Install and configure Tor

Getting Tor up and running is really easy (including the recommended package to keep the key updated):

sudo apt install -y tor

Keep the initial config file for reference before changing it:

sudo mv /etc/tor/torrc /etc/tor/torrc.default
sudo nano /etc/tor/torrc
Log notice file /var/log/tor/tor.log
AvoidDiskWrites 1

ExitRelay 0 
ExitPolicy reject *:*

TransPort 127.0.0.1:9040 IsolateClientAddr IsolateClientProtocol IsolateDestAddr IsolateDestPort
DNSPort   127.0.0.1:5300
TransPort 192.168.200.1:9040 IsolateClientAddr IsolateClientProtocol IsolateDestAddr IsolateDestPort
DNSPort   192.168.200.1:5300
TransPort 10.80.0.1:9040 IsolateClientAddr IsolateClientProtocol IsolateDestAddr IsolateDestPort
DNSPort   10.80.0.1:5300

AutomapHostsOnResolve 1
AutomapHostsSuffixes .onion,.exit
VirtualAddrNetworkIPv4 10.12.0.0/16

ExitNodes 9EAD5B2D3DBD96DBC80DCE423B0C345E920A758D, 85D4088148B1A6954C9BFFFCA010E85E0AA88FF0

Check that Tor is happy with the config file and there are no issues with it:

sudo -u debian-tor tor --verify-config

The last line should say that everything looks fine. Then reload the new Tor config:

sudo systemctl reload tor.service

Check the logs for what Tor does and if it complains about anything – the following commands might be useful to check for any errors:

sudo systemctl status tor.service
sudo cat /var/log/tor/tor.log
journalctl | grep 'Tor'

In case of issues with tor one could increase the level of logging temporarily – in the tor config file /etc/tor/torrc replace the ‚log …‘ configuration with debug, info, notice, warn, or err. For example a ‚log info…‘ statement will provide more details. In the long run the log-level of ’notice‘ should be the best choice.

If anonymity and privacy is not your major concern but rather useability you might want to specify one or more Exit nodes to be used for all your traffic. This will ensure for example that you can specify the country where you seem to be coming from. To do that, just add to torrc config file something like:

ExitNodes 85D4088148B1A6954C9BFFFCA010E85E0AA88FF0

Enable the Firewall

First install the firewall frontend and enable the firewall:

sudo apt install nftables -y
sudo systemctl enable nftables.service

Enable the following firewall rules, starting with a config file in your home directory

nano ~/nftables.conf

and paste in

#!/usr/sbin/nft -f

flush ruleset

define wireguard_port = 40042

table ip filter {
	chain INPUT {
		type filter hook input priority 0; policy drop;
		iif lo accept
		ct state related,established accept
		ct state invalid drop
		ip saddr {192.168.178.0/24, 192.168.200.0/24} tcp dport ssh ct state new accept
		ip saddr {192.168.178.0/24, 192.168.200.0/24} icmp type echo-request accept
		udp dport $wireguard_port accept			# might not be needed
		iifname {"wlan0", "wg0"} udp dport domain accept
		iifname {"wlan0", "wg0"} tcp dport domain accept
		iifname {"wlan0", "wg0"} udp dport {ntp, bootps} accept
		iifname {"wlan0", "wg0"} tcp dport 9040 accept
	}

	chain FORWARD {
		type filter hook forward priority 0; policy drop;
		ct state related,established accept
		ct state invalid drop
		iifname "wlan0" ip daddr 192.168.178.0/24 accept
	}

	chain OUTPUT {
		type filter hook output priority 0; policy drop;
		oif lo accept
		ct state related,established accept
		ct state invalid drop
		skuid "debian-tor" accept
		udp dport ntp accept
		ip daddr 127.0.0.1 accept
		ip daddr {192.168.178.0/24, 192.168.200.0/24, 255.255.255.255} accept
	}
}

table ip nat {
	chain PREROUTING {
		type nat hook prerouting priority -100; policy accept;
		iifname "wlan0" udp dport domain redirect to :53
		iifname "wlan0" tcp dport domain redirect to :53
		iifname "wlan0" udp dport ntp    redirect to :123
		iifname "wlan0" ip daddr {192.168.178.0/24, 192.168.200.0/24} accept
		iifname "wlan0" tcp flags & (fin|syn|rst|ack) == syn redirect to :9040
		iifname "wg0" udp dport domain redirect to :53
		iifname "wg0" tcp flags & (fin|syn|rst|ack) == syn redirect to :9040
	}

	chain INPUT {
		type nat hook input priority 100; policy accept;
	}

	chain POSTROUTING {
		type nat hook postrouting priority 100; policy accept;
		oifname "eth0" ip saddr 192.168.200.0/24 masquerade
	}

	chain OUTPUT {
		type nat hook output priority -100; policy accept;
		skuid "debian-tor" accept
		ip daddr {192.168.178.0/24, 192.168.200.0/24} accept
		tcp flags & (fin|syn|rst|ack) == syn redirect to :9040
	}
}

table ip6 filter {
        chain INPUT {
                type filter hook input priority 0; policy drop;
                iif lo counter accept
        }

        chain FORWARD {
                type filter hook forward priority 0; policy drop;
        }

        chain OUTPUT {
                type filter hook output priority 0; policy drop;
                oif lo counter accept
                counter reject
        }
}

and activate these firewall rules with

sudo nft -f nftables.conf

In case something goes horribly wrong (e.g. you lock ssh sessions) you can hard reboot the server and will start without the firewall rules.

To list the active rules applied by nft currently just check with:

sudo nft list ruleset

Note that nft uses its own matching of service names to port numbers – to see the list simply type in:

nft describe tcp dport

Once you’re happy with them working make them permanent with copying them to the standard place (enabled on reboot):

mv ./nftables.conf /etc/nftables.conf

Note on Firefox configuration

If you’re using firefox as browser you also need to change its config as by standard firefox is blocking access to services residing on tor (onion services). To do so, type

about:config

in the field at the top (where you would type in e.g. a web-address usually) then search for „onion“ at the top and change the value for network.dns.blockDotOnion to „false“ by a double-click on it. Btw, Chrome and Edge aren’t blocking tor by default and they will work right away with the standard configuration. Test access to onion-services by browsing to e.g. „https://protonirockerxow.onion“.

If you don’t use WebRTC services then it’s strongly recommended to disable media.peerconnection.enabled  in about:config. Otherwise your local IP address will be visible to everyone on the internet (also while connected via Tor).

It might be good to also minimize the tracking via fingerprinting. One example is to enable privacy.resistfingerprinting by setting to true. Also one should disable plugin.expose_full_path and dom.battery.enabled by setting them both to false.

Optional but highly recommended is to install the „Privacy Pass“ Firefox add-on; it helps to avoid many of the annoying challenges one has to complete when using Tor. Additionally, and also optional it might be wise to install the „uBlock Origin“ add-on as well to avoid advertisements, malware, etc. which would otherwise cause additional traffic and would increases tracking capabilities.

Additional recommended add-ons for Firefox are: „Cloud Firewall“, „HTTPS Everywhere“, „Privacy Badger“, „Decentraleyes“ and „ClearURLs“.

Some Improvements and Hardening

IP Forwarding WLAN ↔ LAN

If no connection between WLAN and LAN is required one should remove IPv4 forwarding – this can be done in two ways (one is sufficient, two are safer):

sudo nano /etc/sysctl.conf
net.ipv4.ip_forward=0
sudo sysctl -p

or remove the rule for the forwarding filter rule of ferm.

Add the official Tor Repository

We add the official repository on the Tor network of the tor-project for Debian (as outlined at www.torproject.org/docs/debian.html.en):

sudo nano /etc/apt/sources.list.d/torproject.org.list

and put in the following:

# Tor onion-site replacement for:
# deb http://deb.torproject.org/torproject.org stretch main

deb http://sdscoq7snqtznauu.onion/torproject.org stretch main

However, Debian is not supporting anonymous and safe software repos by standard, so we need to enable it first – create a new apt config file:

sudo nano /etc/apt/apt.conf.d/80onion-repos

and put in just one line:

Acquire::BlockDotOnion "false";

Now finally update and upgrade the system with:

sudo apt update
sudo apt upgrade -y

Automatic updates for Tor

It’s also recommended to get the tor software upgraded automatically. Assuming that the package ‚unattended-upgrades‘ is installed already, we simply need to add the updates from the torproject to the config:

sudo nano /etc/apt/apt.conf.d/50unattended-upgrades

and add the line with the TorProject repository:

        "origin=Debian,codename=${distro_codename},label=Debian-Security";
        "origin=TorProject,codename=${distro_codename}";
};

Sidenote: information about the ‚origin‘ and other parameters can be found in the files /var/lib/apt/lists/*_InRelease.

Block many sites (adservers)

If you want to have a much more extensive ad-blocking done by dnsmasq one could just download the latest quite complete adserver list from pgl.yoyo.org/adservers/ (formated to be used with dnsmasq as plain text file) and save it as e.g. dnsmasq.adservers.conf in the folder /etc/dnsmasq.d/.

This can be even automated with a little script like the following – it must be run with root priviliges (e.g. with sudo) as it needs to install the new adblocking file in /etc:

#!/bin/bash

if [[ $EUID -ne 0 ]]; then
   echo "This script must be run as root (use sudo)"
   exit 1
fi

curl -o adservers 'https://pgl.yoyo.org/adservers/serverlist.php?hostformat=dnsmasq&mimetype=plaintext'

# Do some work on the file:
# Now remove MS-DOS carriage returns, replace 127.0.0.1 with 0.0.0.0 (much faster),
# clean up trailing blanks,
# Pass all this through sort with the unique flag to remove duplicates and save the result

sed -e 's/\r//' -e 's/127\.0\.0\.1/0\.0\.0\.0/' -e 's/[ \t]*$//' < adservers | sort -u > /etc/dnsmasq.d/dnsmasq.new-adservers.conf

rm adservers

# Seems like the dnsmasq configtest doesn't work (always returns success)
if ! /usr/sbin/dnsmasq --test; then
    printf '%s\n' 'dnsmasq configtest failed!' >&2
    rm /etc/dnsmasq.d/dnsmasq.new-adservers.conf
    exit 1
fi

mv --force /etc/dnsmasq.d/dnsmasq.new-adservers.conf /etc/dnsmasq.d/dnsmasq.adservers.conf
/bin/systemctl reload dnsmasq.service

Save this file in the /root folder (home folder for root) and add it as a cron-job for root:

sudo crontab -e

adding at the end something similar to:

15 04 * * * /root/adservers.sh > /root/adservers.log 2>&1

to run it each night at 4:15. The only thing which doesn’t seem to work is to check the dnsmasq config to be valid (the check always returns a successful check).

Keep in mind though that is only blocking DNS lookups, not IP addresses. Any direct connection to an IP address is not blocked with the above (that requires a blocking within the netfilter part; ipset is the command to look for to achieve something on the IP level).

Remote Access (VPN) via WireGuard

First install the software:

sudo apt install wireguard

then:

sudo mkdir /etc/wireguard
cd /etc/wireguard

Configure the server

First create the keys:

umask 077
wg genkey > private.key
wg pubkey < private.key > public.key

Add a new interface for WireGuard and assign an IP address to it:

sudo ip link add dev wg0 type wireguard
sudo ip address add dev wg0 10.80.0.1/24

Configure the new interface:

sudo nano /etc/wireguard/wg0.conf

and add something along the lines of:

[Interface]
Address = 10.80.0.1/24
ListenPort = 40042
PrivateKey = xxxxx

[Peer]
# Smartphone
PublicKey = PEER_PUBLIC_KEY
AllowedIPs = 10.80.0.20/32

[Peer]
# Laptop
PublicKey = PEER_PUBLIC_KEY
AllowedIPs = 10.80.0.24/32

and finally enable it:

sudo ip link set up dev wg0

To check the status you can use the following commands:

sudo ip addr show dev wg0
sudo wg showconf wg0
sudo networkctl status wg0

To permanently enable the wireguard server (e.g. on reboot) run the following command on the shell:

sudo systemctl enable wg-quick@wg0.service
sudo systemctl start wg-quick@wg0.service
sudo systemctl status wg-quick@wg0.service

Configure the client (e.g. smartphone)

Probably the easiest way to configure your wireguard app on the smartphone is to use a QR code – just generate it on the server command line with:

qrencode -t ansiutf8 < /etc/wireguard/client/client.conf

which shots a QR code that can be scanned from within the Wireguard app and configuring it fully right away

To manually install the WireGuard VPN (e.g. on a laptop without the QR code scanning option) create a config file on that device:

nano /etc/wireguard/wg0.conf

with something along the lines of

[Interface]
PrivateKey = <LOCAL-PRIVATE-KEY>
Address = 10.80.0.24/32
DNS = 10.80.0.1

[Peer]
PublicKey = <SERVER-PUBLIC-KEY>
Endpoint = <HOST-NAME>:40042
AllowedIPs = 0.0.0.0/0, ::/0

To start and stop the VPN use:

sudo wg-quick down wg0
sudo wg-quick up wg0

If there are issues also don’t forget to check that traffic forwarding is allowed by linux and the firewall and that the wireguard traffic is allowed by the firewall (cf. above).




Pflanzenmilch selber herstellen – Mandelmilch, Hafermilch, Hanfmilch,…

Ganz gleich, ob man Mandel-, Hafer- oder Hanfmilch selber herstellen möchte, es ist ganz einfach und läuft im Prinzip in allen Fällen nahezu gleich ab. Was man braucht sind natürlich die Zutaten, also die Nüsse bzw. Samen, Wasser und evtl. eine Prise Salz. Wer mag kann natürlich noch mehr dazugeben, wie Zucker, Honig oder Gewürze. An Gerätschaften braucht man einen Topf, einen Standmixer und wer die Milch filtern möchte, noch ein Sieb und Passiertuch zum abseihen.

Zubereitung

  • Man gibt die Nüsse oder Samen in einen Standmixer, dann das Wasser dazuschütten und wer mag, gibt auch gleich noch eine Prise Salz und andere Zutaten dazu.
  • Das Ganze wird solange im Standmixer kleingehäckselt, bis nur noch eine weiße Milch übrigbleibt, in der möglichst keine Mandelstückchen mehr erkennbar sind.
  • Zum abseihen nimmt man am besten ein feinmaschiges Tuch (Lein-, Mulltuch), das man in ein Sieb legt. So sollte man wirklich dann auch die kleinsten Stückchen noch rausfiltern können. Zum Schluss das Tuch nochmal fest auswringen.
  • Gekühlt sollte die Pflanzenmilch einige Tage haltbar sein.

Zutaten

Für einen Liter Pflanzenmilch benötigt man jeweils etwa:

Hafermilch: 60g Haferflocken. Die Flocken mit etwas kochendem Wasser überbrühen und dann das restliche Wasser dazugeben.

Hanfmilch: 100g Hanfsamen (1 EL auf 100ml Wasser). Die ungeschälten Samen geben einen nussigeren Geschmack. Die Hanfsamen im Mixer zuerst kurz trocken häckseln.

Mandelmilch: 200g Mandeln. Die Mandeln sollte man einen halben Tag in kaltem Wasser quellen lassen, dann abschütten und mit heißem Wasser überbrühen aus dem dann die Mandelmilch hergestellt wird.

Hinweise

Man kann auch für etwas mehr Aroma in der Pfanne ohne Fett geröstete Nüsse (Mandeln) nehmen.

In die Pflanzenmilch selbst kann man je nach Geschmack vor dem Mixen auch etwas Honig, Zucker, Ahornsirup, Dattelsirup oder auch Vanille, Zimt und andere Gewürze geben.

Das übrig bleibende Mus, den Trester, kann man trocknen, mahlen und als Mehl zum Backen wiederverwenden. Den Trester kann man aber auch einfach so zum Müsli geben.

Wer die Pflanzenmilch zum Aufschäumen, z. Bsp. für eine Cappuccino benutzen will, muss noch einen TL Carrageen, etwas Soja-Lecithin und ein paar EL Öl der Milch hinzufügen.

Ökologisch sinnvoll sind gerade die Mandeln oft nicht, da für den Anbau sehr viel Wasser benötigt wird. Zudem sind viele Anbaugebiete wie z. Bsp. in Kalifornien sehr weit entfernt und der Transport entsprechend umweltschädlich. Also dann doch lieber Hafer, Hanf oder Getreide nehmen.

Brotaufstrich aus den Hanf-Resten: Dafür gibt man die übriggebliebenen Hanfsamen, also den Trester, wieder in den Mixer. Dazu kommen eine Möhre und drei getrocknete Tomaten sowie der Saft einer halben Zitrone, 100 ml Rapsöl, Salz, Pfeffer und frische Kräuter nach Wunsch. Dann einfach alles gut mixen und abfüllen. Im Kühlschrank hält der Brotaufstrich einige Tage.




Linsensalat

Zutaten

200g Linsen
kl. Möhre
1/3 Lauch
Evtl. Apfel
Essig, Öl, Salz, Zucker, Gewürze, evtl. Senf, Honig

Zubereitung

Die Linsen waschen, evtl. auf Steinchen untersuchen und in einen Topf mit reichlich kaltem Wasser geben. Die Möhre und den Lauch kleinschneiden und zusammen mit den Linsen zum köcheln bringen. Sobald es beginnt zu köcheln noch rund 20-25 Minuten (hängt von der Linsensorte ab). Dann abgießen und gut abkühlen lassen.

Linsensalat
Linsensalat

Gewürze: 1/3 TL „Sonnenkuss“, je eine kl. Prise Curry, Koriander, Paprikapulver, Salz, Zucker, dann 1 TL Senf, 4 EL (Apfel-) Essig, 3 EL Apfelsaft, 8 EL Öl (Olivenöl, Nuss-, Sesam- oder Weizenkeimöl, Sonnenblumenöl; auch gemischt).

In den Linsensalat passt auch sehr gut etwas geriebener oder sehr klein geschnittener Apfel, ein Spritzer Zitronensaft, etwas Ingwer oder ein Prise geriebene Orangenschale; genauso je nach Geschmack und Vorlieben auch Senf oder Honig.




Grießbrei

Eigentlich braucht es dafür wohl kaum ein ‚Rezept‘, aber die Mengenangaben können vielleicht hilfreich sein, damit es auch wirklich klappt.

Zutaten

für 2 Portionen

750ml Milch
140g (Dinkel-) Grieß
2 EL Zucker (etwas weniger)
1 Prise Salz
Evtl. 30g Butter

Zubereitung

Alles außer dem Grieß in einem Topf erhitzen und zum kochen bringen – Vorsicht, die Milch fängt sehr schnell an überzukochen, also immer dabei bleiben. Dann den Grieß dazugeben, kurz aufkochen lassen und noch rund 10 Minuten ziehen lassen.

Darüberhinaus

Den Grießbrei warm, aber nicht zu heiß in einem tiefen Teller servieren. Je nach Vorlieben, kann man den Grießbrei beispielsweise mit Schokostreuseln bestreuen. Sehr gut passt dazu auch Apfelmus, Zimt und Zucker oder auch etwas Marmelade.




Les navettes provençales

Ingrédients

500 g de farine
200 g de sucre en poudre
50 g de beurre (ou de l’huile)
Un petit verre d’eau (ou 45 g d’huile d’olives)
2 oeufs
1 zeste de citron
1 pincée de sel
Parfumez suivant vos goûts avec de la fleur d’oranger ou de la fleur d’anis.

Préparation

Disposez la farine en fontaine sur la table. Mettez au centre le
sucre et 50 gr de beurre ramolli, Ajoutez 2 oeufs entiers et le zeste de
citron râpé, ainsi qu’une pincée de sel et un petit verre d’eau,
Travaillez du bout des doigts tous ces ingrédients en incorporant la
farine au fur et à mesure, La pâte doit être lisse, bien liée.

Partagez-la en 5 morceaux et roulez chaque pâton sur la table farinée
en gros boudins. Coupez chacun d’eux en 5 ou 6 morceaux réguliers et
façonnez-les en pinçant les deux extrémités pour leur donner une forme
ovale. Disposez les navettes sur la plaque à pâtisserie préalablement
beurrée. Avec la pointe du couteau, incisez chaque navette au milieu,
dans le sens de la longueur. Laissez reposer 1 ou 2 heures dans un
endroit tempéré.

Mettez la plaque dans le four à température moyenne (180°). Laissez cuire 15 à 20 minutes.




Raspberry Pi as Server

The Raspberry Pi is the great device to set up a small server at home to be used for almost any purpose. It’s cheap, small, has a low power consumption footprint and there is a great community for it to get help from. There are tons of things to do with such a mini-server. However, the very first step always will be to get the system up and running.

The best Linux to install on the Raspberry Pi is probably Raspbian which is a Debian flavor (effectively, just Debian adopted for the Raspberry Pi). Raspbian is the most stable and best supported operating system for the Raspberry with lots of helpful support. The Raspbian Linux comes in two flavors – a full system with almost everything included and a reduced, ‚lite‘ version without the graphical desktop which is the perfect choice to run the Raspberry as a server. Below is a description how to bring up the Raspberry with Raspbian-Lite and do some fine-tuning so it is a solid basis to use it as a server.

Install Linux (Raspbian-Lite)

Download the Raspbian Lite zip package to your computer from www.raspberrypi.org/downloads/raspbian/. You should ensure the integrity of the download by checking the SHA-256 checksum provided on the download page. For Linux you can use the sha256sum shell command (typcially already installed and available). A useful open source tool for Windows can be found here: github.com/gurnec/HashCheck.

Best solution is to use a SSD-drive (connected to the Raspberry via USB) but alternatively a SD-card can be used. If you use a SD-card, you probably first must format the card: it must be FAT, not exFAT. Next, flash the SSD-drive or SD-card with the downloaded linux zip-package using etcher which is available from etcher.io (for Linux and Windows). There is no need to unzip the Rasbian file to burn the image (i.e. linux). After Etcher is finished and no errors are reported don’t remove the SD card yet! The card should be mounted autmatically as well.

Copy an empty file simply called „ssh“ (no file extension like .txt!) into the boot partition of the drive or card. Note: there should be two partitions, the other one is called „rootfs„, the boot partition is the one where the file „kernel.img“ is. This will enable remote ssh access to the Raspberry right on the first boot.

If you want the Raspberry to connect to an existing WLAN right on first boot, create a file called „wpa_supplicant.conf in the boot partition. On first boot Raspbian will use this file to configure and connect to the WLAN. The file itself should contain at least the following information on the WLAN (and change the country-code to your needs):

ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=us

network={
    scan_ssid=1
    ssid="My-WLAN-Name"
    psk="My-WLAN-Password"
}

Once done, connect the drive (or insert the SD-card) to the Raspberry. If WLAN is not used also connect it to the router (your internet gateway) with a LAN cable and finally power on the Raspberry.

Now you need to find out the IP address of the Raspberry (this very much depends on the internet router used; it might also help to assign a static IP to the Raspberry). Then connect to the Raspberry via ssh (e.g. using putty on Windows or ssh on Linux) and confirm the new certificate that you’re asked for. The username is „pi“ (so use „ssh pi@raspberrypi„)and the initial password is „raspberry„. If the password doesn’t work, try „raspberrz“ (due to a wrong keyboard layout) and ensure you’re on the same LAN as the Raspberry.

Once logged in on the terminal (command line) the first thing is to update the whole system – for this just type in:

sudo apt update
sudo apt upgrade -y

A reboot might be required. The next step is to change the basic configuration of the server via the special config-tool for the Raspberry. To start it, simply enter and confirm with the password:

sudo raspi-config

Change the following things within this configuration application:

  • Change password for the default user (option 1)
  • Change hostname (option 2, N1)
  • Enable old, standard interface names (option 2, N3 – select „No“!)
  • Change localisation (option 4) – Locale: space and tab to select (UTF-8 preferred), select your timezone, and your wifi-country.
  • Expand filesystem (option 7, A1)
  • Change GPU memory to the minimum 16 (option 7, A3)

Upon „Finish“ you’re asked to reboot; do so and then log into the Raspberry once again (as user „pi“ with the new password just set).

Now you have a running system you can start using already. All the following steps are only optional and might or might not be helpful depending on what you want to achieve.

Some Improvements and Hardening

Change user to ‚admin‘

Change pi user to admin (not required, but much nicer that way). First create a new user (probably use your nickname and replace <username> with it):

sudo adduser <username>
sudo usermod --append --groups sudo <username>

You need to provide the password for that new user; all the rest being asked for can be left blank (just press Enter). Logout and login as the new user just created, then:

sudo usermod --login admin --home /home/admin --move-home pi
sudo groupmod --new-name admin pi

Logout and login as admin.

New ssh keys

Remove the standard ssh keys on the new Raspberry Pi server and generate new ones:

sudo rm /etc/ssh/ssh_host*
sudo dpkg-reconfigure openssh-server

Logout and login (confirming the new certificate once).

SSH login without password

You can use keys instead of entering a password each time you log into the new server. If you’re coming from a Linux machine, then simply enter the following command on that other Linux device (if this is the first time you do this, then you might first need to generate the keys by entering ssh-keygen and simply press enter on the questions):

ssh-copy-id admin@my-new-server

Confirm once with the password – afterwards you will log into the new server without being asked for a password anymore (you identify yourself with the key on the machine your coming from).

You probably should repeat the above for other users on the same maching (e.g. the one created earlier on).

You can even improve the ssh login process even more by creating a configuration file for ssh on the server that you’re coming from:

nano ~/.ssh/config

and enter something like the following (adjust to your needs):

Host my-server1 my-server1.mydomain
    Hostname my-server1.mydomain
    User admin

Host raspberry raspberry.lan
    Hostname raspberry.lan
    User alice

Then you can simply type ssh raspberry  and you’re logged into raspberry.lan as user alice right away. This alias configuration even works with scp as well.

Automatic security updates

One should also ensure that important security updates are installed automatically, i.e. unattended – this can be achieved with the following tool:

sudo apt install -y unattended-upgrades

and configure and enable it with (just confirm what is suggested):

sudo dpkg-reconfigure unattended-upgrades

Any updates are logged in the file /var/log/unattended-upgrades/unattended-upgrades.log.

Disable WLAN and/or Bluetooth

Most often the Bluetooth interface of the Raspberry Pi will not be used at all. Therefore, it’s a good security measure to simply disable it completely (just remember this):

sudo rfkill block bluetooth

and check it was sucessfull with:

sudo rfkill list

The same can be done with WLAN – if you’re setup and use case doesn’t require the WLAN at all just use the following:

sudo rfkill block wlan

and check the status like for Bluetooth above.

Welcome Text (motd)

If you don’t like the welcome text shown each time you log in you can easily change it by editing the motd file:

sudo nano /etc/motd

Shell behaviour

Something useful and a nice-to-have are a few shortcuts for shell commands often used. This can be easily achieved by

nano .bash_aliases

and then define aliases as wanted along these examples

alias l='ls -CF'
alias la='ls -A'
alias ll='ls -lF'
alias lla='ls -AlF'

alias check='curl https://check.torproject.org/api/ip ; echo'

To enable them right away just run (alternatively, one could just log out and back in):

source .bash_aliases

Again, you might probably want to repeat the above for any other user on that machine.

Last but not least it proved quite useful to change the prompt so it looks different for each server (this helps mixing up different machines). You can change the prompt in the file .bashrc; look for the variable PS1 and change it to your needs (there’s enough detailed information on the internet about the details).

Configure the nano editor

The way the nano editior is working can be changed (and improved) in its config file:

nano ~/.nanorc

with e.g. the follwing configs:

# Use smooth scrolling by default.
set smooth

# Use the blank line below the titlebar as extra editing space.
set morespace

# Use a tab size of number columns. The value of number must be greater than 0. The default value is 8.
set tabsize 4

# Specify the color combination to use for the titlebar. Valid color names for are:
# white, black, red, blue, green, yellow, magenta, and cyan. Either "fgcolor" or ",bgcolor" may be left out.
#set titlecolor fgcolor,bgcolor

# Enable the use of ~/.nano/search_history for saving and reading search/replace strings.
unset historylog

# Save a file by default in Unix format. This overrides nano's default behavior of saving a file in the format
# that it had.  (This option has no effect when you also use set noconvert.)
set unix

# Enable mouse support, if available for your system. When enabled, mouse clicks can be used to place the cursor,
# set the mark with a double click and execute shortcuts. The mouse will work in the X Window System, and on the
# console when gpm is running. Text can still be selected through dragging by holding down the Shift key.
set mouse

As with some other configurations you might want to repeat this for any other users on that device.

Stop the avahi service

The avahi service is only needed in case you want to connect to e.g. a printer or scanner etc. (a device relying on zeroconfig). On a headless server this is usually not needed and just causes unnecessary overhead on the server and the network. To disable avahi just apply:

sudo systemctl stop avahi-daemon.service 
sudo systemctl stop avahi-daemon.socket 
sudo systemctl disable avahi-daemon.service 
sudo systemctl disable avahi-daemon.socket

Tuning systemd

The following is experimental right now and needs further investigation – but it might resolve issues that apache fails to start since it can bind to the wlan0 address on boot:

sudo systemctl edit apache2.service

and paste in:

[Unit]
Wants=network-online.target
After=network-online.target

[Service]
Restart=on-failure
RestartSec=10

then reload the config, check that it’s there then restart and check apache (all the checking below is not required, but good to know how one can check things out; also sudo is often not really mandatory):

sudo systemctl daemon-reload
sudo systemctl cat apache2.service
sudo systemctl show apache2.service
sudo systemctl restart apache2.service
sudo systemctl status apache2.service
sudo systemctl list-dependencies apache2.service

What to do with the Raspberry Server

There are lot’s of things that could be done with the Raspberry Pi server just enabled. Just A few ideas are:

  • Tor WLAN Gateway
  • VPN (Calling Home when you’re travelling)
  • Nextcloud server (your own cloud at home)
  • Host a Tor Relay (help the Tor network by sharing some bandwidth)
  • OpenMediaVault (NAS)

or simply search the internet for tons of other ideas. Have fun, and happy ’serving‘!




NextCloud over Tor (onion service)

This guide is about how to set up a nextcloud instance running on a Raspberry Pi and providing the cloud service over Tor (a hidden service on the onion-network).

The initial setup of a new Raspberry Pi is always the same and described in some detail here: https://www.spaetzle.info/raspberry-server/

Install Tor

Let’s start with installing the tor package:

sudo apt install tor -y

Save the default config file as reference and create a new one:

sudo mv /etc/tor/torrc /etc/tor/torrc.default
sudo nano /etc/tor/torrc

and past in the following:

Log notice file /var/log/tor/notices.log

ExitPolicy reject *:*

TransPort 127.0.0.1:9040
DNSPort   127.0.0.1:5300

AutomapHostsOnResolve 1
AutomapHostsSuffixes .onion,.exit
VirtualAddrNetworkIPv4 10.42.0.0/16

HiddenServiceDir /var/lib/tor/services/nextcloud
HiddenServicePort  80 127.0.0.1:80
HiddenServicePort 443 127.0.0.1:443

If your running on an SD-Card (not recommended anyhow; if possible rather use a SSD-drive instead) you should add the following line to the config above:

AvoidDiskWrites 1

A crucial step is to manually create the directory for the hidden service:

sudo -u debian-tor mkdir /var/lib/tor/services/

After changing the config one should check the config, then restart the tor service and check the log file for warnings and errors:

sudo -u debian-tor tor --verify-config
sudo systemctl restart tor
cat /var/log/tor/notices.log

Firewall (nftables)

First install the firewall frontend and enable the firewall:

sudo apt install nftables -y
sudo systemctl enable nftables.service

Enable the following firewall rules, starting with a config file in your home directory

nano ~/nftables.conf

and paste in

#!/usr/sbin/nft -f

flush ruleset

table ip filter {
    chain input {
        type filter hook input priority 0; policy drop;

        iifname lo accept

        ct state established,related accept
        ct state invalid drop

        tcp dport ssh ct state new limit rate 10/minute accept
        tcp dport { http, https } ct state new accept

        icmp type echo-request limit rate 1/second accept
    }

    chain forward {
        type filter hook forward priority 0; policy drop;
    }

    chain output {
        type filter hook output priority 0; policy drop;
        oifname lo accept

        ct state established,related accept
        ct state invalid drop

        skuid "debian-tor" accept

        oifname eth0 udp dport ntp counter accept
        ip daddr 127.0.0.1 counter accept   # not needed ???
        ip daddr { 192.168.178.0/24, 192.168.200.0/24, 255.255.255.255 } accept
    }
}

table ip nat {
    chain input {
        type nat hook input priority 100; policy accept;
    }

    chain output {
        type nat hook output priority -100; policy accept;

        skuid "debian-tor" accept

        udp dport domain counter redirect to :5300
        ip daddr { 192.168.178.0/24, 192.168.200.0/24 } accept
        tcp flags & (fin | syn | rst | ack) == syn counter redirect to :9040
    }
}

and activate these firewall rules with

sudo nft -f nftables.conf

In case something goes horribly wrong (e.g. you lock ssh sessions) you can hard reboot the server and will start without the firewall rules.

Note that nft uses its own matching of service names to port numbers – to see the list simply type in:

nft describe tcp dport

Once you’re happy with them working make them permanent with copying them to the standard place (enabled on reboot):

sudo cp /etc/nftables.conf /etc/nftables.conf.default
sudo cp nftables.conf /etc/nftables.conf

Install Nextcloud

Install php

Start by installing php with:

sudo apt install -y apache2 mariadb-server libapache2-mod-php php-gd php-json php-mysql php-curl php-mbstring php-intl php-imagick php-xml php-zip php-apcu

Prepare MySQL (MariaDB)

To initialize the MariaDB database start with:

sudo mysql_secure_installation

and answer the questions accordingly (e.g. remove anonymous user). Now the database is ready and we create a nextcloud-user in mysql: Log into MariaDB database server with the following command:

sudo mysql -u root

Then create a database for NextCcoud using the MariaDB command below. This name of the database could be nextcloud (but one can use whatever name is prefered). Note: Don’t leave out the semicolon at the end.

> create database nextcloud;

Then create a new user. Again, you can use your preferred name for this user. Replace ‚your-password‘ with your preferred password (leave the single quotes in place):

> grant all privileges on nextcloud.* to nextclouduser@localhost identified by 'your-password';

The above command will create the user and grant all privileges. Now flush MariaDB privileges and exit:

> flush privileges;
> exit;

Install Nextcloud package

To download the files, first get the download link in a browser (on nextcloud.com, download section, server packages), copy the link and then use the wget command (note that the actual filename will change once new versions of nextcloud will be released):

wget https://download.nextcloud.com/server/releases/nextcloud-x.y.z.zip

and download the checksum (just add „.sha256“ to the above download command):

wget https://download.nextcloud.com/server/releases/nextcloud-x.y.z.zip.sha256

and check it with:

sha256sum -c nextcloud-x.y.z.zip.sha256

and then unzip the downloaded nextcloud package, copy it to the webserver directory and change the ownership:

unzip nextcloud-x.y.z.zip
cp -r nextcloud /var/www
sudo chown -R www-data:www-data /var/www/nextcloud/

Enable the apache webserver

First, lets tell apache to list on which IP addresses and which ports:

sudo nano /etc/apache2/ports.conf

and fill it with something along (but change to your local IP addresses):

Listen 127.0.0.1:80 http
Listen 192.168.200.42:80 http


<IfModule ssl_module>
	Listen 127.0.0.1:443 https
	Listen 192.168.200.42:443 https
</IfModule>

<IfModule mod_gnutls.c>
	Listen 127.0.0.1:443 https
	Listen 192.168.200.42:443 https
</IfModule>

Next we create a config file for our actual nextcloud instance

sudo nano /etc/apache2/sites-available/nextcloud.conf

and paste in:

ServerName abc.mynet

<VirtualHost 127.0.0.1 192.168.200.22>
        ServerName abc.mynet
        ServerAlias h72qy8dg3rhd55rn7u3zkaibw4598dupq544wrlqsmx4d3oxjxvuurad.onion
        DocumentRoot /var/www/nextcloud/
</VirtualHost>


<Directory /var/www/nextcloud/>
  Options +FollowSymlinks
  AllowOverride All

 <IfModule mod_dav.c>
  Dav off
 </IfModule>

 SetEnv HOME /var/www/nextcloud
 SetEnv HTTP_HOME /var/www/nextcloud

</Directory>

To let apache check the config for errors use:

sudo apache2ctl configtest

Finally, enable this new config together with two required apache modules:

sudo a2ensite nextcloud.conf
sudo a2dissite 000-default.conf
sudo a2enmod rewrite
sudo a2enmod headers
sudo a2dismod status

Before actually activating the new config we apply a few more things. First some additional measures to improve anonymity:

sudo nano /etc/apache2/conf-enabled/security.conf

and change it so it shows these two configs:

ServerTokens Prod
ServerSignature Off

Finally activate all changes by restarting apache:

sudo systemctl reload apache2

Fire up nextcloud

Configuration

To connect to the database just point your webbrowser to your new nextcloud server and complete the installation wizard. This also creates the basic config file for nextcloud which we also need to change manually a bit:

sudo nano /var/www/nextcloud/config/config.php

One should add additional so-called trusted domains; here we want to add out onion web-address. To get your new onion address look it up here:

sudo cat /var/lib/tor/services/nextcloud/hostname

so with a few other addional tweaks, part of your config file (not a complete example!) might look like:

  'trusted_domains' => 
  array (
    0 => 'localhost',
    1 => '127.0.0.1',
    2 => '192.168.202.44',
    3 => 'xxx.bet',
    4 => 'h9dfype6yrhd55rn7u3dk7ebwhhkgospq544wrlqsmx4d3oxjxvuur99.onion',
  ),
  'overwrite.cli.url' => 'http://xxx.bet',
  'memcache.local' => '\OC\Memcache\APCu',
'htaccess.RewriteBase' => '/',
  'trashbin_retention_obligation' => 'auto,90',

Php configuration

The php config should be changed to e.g. accept uploads of larger files (note that the php version number might be different):

sudo nano /etc/php/7.3/apache2/php.ini

and change (search for the options in this very lengthy config file):

memory_limit = 512M
post_max_size = 256M
upload_max_filesize = 256M

crontab

You might improve a bit on the nextcloud performance by using cron:

sudo crontab -u www-data -e

and add at the very bottom:

*/15  *  *  *  * /usr/bin/php -f /var/www/nextcloud/cron.php

Finally, log into nextcloud and on the admin panel enable cron.

Update Nextcloud

Although there is a possibility to update your Nextcloud instance via the web frontend this might be failing in same cases due to time-outs. The safer approach is to simply run:

cd /var/www/nextcloud/updater
sudo -u www-data php ./updater.phar

on the command line interface of your machine.




Schokoaufstrich

Feiner, selbstgemachter Schokoaufstrich.

Wer liebt ihn nicht, den Schokoaufstrich auf dem Frühstücksbrötchen? Nutella ist bestimmt die bekannteste Marke davon. Man kann den Schokoaufstrich aber auch ganz einfach selbst herstellen. Und das beste dabei – es ist billiger, schmeckt besser und kommt dabei ohne Palmöl oder andere Zusatzstoffe aus!

200g Haselnüsse
100g Kuvertüre (70%)
80g Puderzucker
2 EL Kakaopulver
2 EL Haselnussöl (alternativ auch Erdnuss-, Sonnenblumen-, oder Rapsöl)

Die Haselnüsse anrösten und dann die Häutchen entfernen (geht nach dem rösten halbwegs leicht). Von Hand zuerst kleinhacken und dann mit einem Stabmixer pürieren bis ein Mus entsteht und schließlich das Öl hinzugeben. Währenddessen auch schon mal die Schokolade im Wasserbad bei schwacher Hitze schmelzen. Puderzucker und Kakaopulver vermischen, gut sieben (wichtig!), zu den Haselnüssen geben und wieder gut mixen. Die flüssige Schokolade zugeben und weitermixen, bis eine feine, cremige Schokocreme entsteht. Je nach Mixer mit einem Spatel oder Löffel immer mal wieder die Ecken des Rührgefäßes und den Mixer abschaben, damit auch wirklich alles gut durchmischt wird.

Alternatives Rezept:

300 g Haselnusskerne
2 bis 3 EL Haselnussöl
2 EL Zucker
4 EL roher Kakao
1/2 TL Bourbon-Vanille Aroma oder das ausgekratzte Mark einer Vanilleschote
Prise Salz

Haselnüsse im Backofen bei 160-170°C rösten; unbedingt darauf achten, dass die Nüsse nicht schwarz werden. Haselnussmus herstellen und das Öl, Zucker und den Kakao dazugeben. In das ausgekochte Glas geben und im Kühlschrank lagern.




Pesto rosso

Schwierigkeit: sehr einfach
Zubereitungszeit: 30-60 Minuten

Zutaten

180 g getrocknete, in Öl eingelegte Tomaten
80 g Tomatenmark
180 ml Olivenöl (einschließlich dem Öl der Tomaten)
50 g Parmesan oder Pecorino
70 g Pinienkerne (alternativ Mandeln, Cashewnüsse)
1 Bund (20-30 Blätter) Basilikum
1 EL Apfelessig
1 TL Salz
Prise Zucker

Zubereitung

Zuerst die Pinienkerne ohne Öl in einer Pfanne anrösten. Den Basilikum waschen, trocknen und zerkleinern. Dann den Käse reiben und die Tomaten abtropfen lassen (das Öl behalten) und in kleine Stücke schneiden.

Alles in eine Schüssel oder einen hohen, schmalen Mixbecher geben und mit dem Mixstab vermengen und weiter zerkleinern bis zur gewünschten Konsistenz.

Das Pesto füllt man in saubere, am besten sterilisierte, Gläser und gibt dabei auch die ganzen Pinienkerne noch dazu.

Varianten

Die Pinienkerne sind zwar sehr lecker, aber auch sehr teuer. Wer möchte kann sie auch mit anderen Nüssen (Mandeln, Cashewkerne) ersetzten. Die Mandeln vor dem anrösten schon kleinhacken.

Eine eher (süd-) französische Variante erhält man, wenn man Mandeln (statt Pinienkerne) und Gruyère (anstatt Pecorino oder Parmesan) verwendet.

Wer einige ganze Pinienkerne im Pesto möchte, stellt einfach ein paar der gerösteten Pinienkerne beiseite und gibt sie erst beim Befüllen der Gläser dazu.

Haltbarkeit

Das Anrösten der Pinienkerne verfeinert nicht nur den Geschmack sondern verringert auch die Zahl der Keime und hilft somit das Pesto haltbarer zu machen – also das anrösten nicht überspringen.

Nach dem Einfüllen in die Gläser sollte oben auf dem Pesto immer noch eine Schicht Olivenöl sein. Das Öl verhindert, dass Luft an das eigentliche Pesto kommt. Außerdem sollte man peinlich genau darauf achten, dass sich keine Luftbläschen im Glas halten.

Knoblauch sollte eher nicht zum Pesto gegeben werden, wenn es länger haltbar sein soll. Wenn, dann sollte der Knoblauch vorher zumindest gekocht und kleingeschnitten werden. Wer den Knoblauch möchte, sollte ihn eher kurz vor dem Verzehr frisch zum Pesto geben.

Im Kühlschrank hält sich das Pesto einige Wochen. Außerdem lässt sich das Pesto auch sehr gut einfrieren und hält dann eine kleine Ewigkeit.

Einkochen sollte man das Pesto allerdings nicht. Die Gummidichtung verträgt das Öl nicht (Naturkautschuk quillt auf) und Zutaten wie Käse die Kohlehydrate enthalten werden durch das einkochen nicht haltbar (hier müsste mit rund 120°C sterilisiert werden). Also lieber sauber arbeiten und das Pesto einfrieren.




Host a Tor Relay

If you want to support the Tor project and you have some bandwidth to share (at least 10 Mbps in both directions, i.e. download and upload) you should consider hosting a Tor Relay. It can be done quite easily with a Raspberry Pi or any similar hardware as described below.

Our assumption is that we connect the Raspberry Pi with an ethernet cable to our ISP router and that we have a wireless LAN running for our private, local machines already. We will connect the Raspberry Pi to this WLAN for administration purposes (so this is not done over the internet connection on eth0).

Initial Setup as a Server

The very first step to start out is to get a new Raspberry Pi and do the basic setup as a headless server (described in a separate post). For the sake of increased security you shouldn’t use it for anything else than just to run the Tor Relay, so the Raspberry Pi should be dedicated to this task.

Install Tor and configure it

First we add the official repository of the tor-project for Debian (as outlined at www.torproject.org/docs/debian.html.en):

sudo nano /etc/apt/sources.list.d/torproject.org.list

and put in the following:

deb https://deb.torproject.org/torproject.org buster main

Note that you might need to replace the debian release name which is currently „buster“ with a newer one.

Then install the keys signing the tor packages (maybe good to check torproject.org/docs/debian.html for the latest updates):

sudo gpg --recv A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89
sudo gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-key add -

and finally install the tor software (including the recommended package to keep the key updated):

sudo apt update
sudo apt install -y tor deb.torproject.org-keyring

To configure the tor service as a relay edit the config file:

sudo mv /etc/tor/torrc /etc/tor/torrc.default
sudo nano /etc/tor/torrc

and enter something like (change the details to your setup as required):

NickName MyNewRelay
ContactInfo myemail@example.org

Log notice file /var/log/tor/tor.log
AvoidDiskWrites 1

ExitRelay 0
ExitPolicy reject *:*

ORPort  6080 IPv4Only
DirPort 6443 IPv4Only

RelayBandwidthRate  10 Mbit
RelayBandwidthBurst 15 Mbit

TransPort 127.0.0.1:9040
DNSPort   127.0.0.1:5300

AutomapHostsOnResolve 1
AutomapHostsSuffixes .onion,.exit
VirtualAddrNetworkIPv4 10.10.0.0/16

Now let tor check if the above config file is correct:

sudo -u debian-tor tor --verify-config

The last line should say that everything looks fine.

The contact information is optional but might be quite handy for others if there should be something strange with the relay. It doesn’t have to be an email address but could be any kind of text.

In case you are running more than just one Tor Relay you have to also include a „MyFamily“ option in the config above and list all your key-fingerprints of your Tor Relays in each of the torrc config files. You get the fingerprint with sudo -u debian-tor tor –list-fingerprint and remember that there must be a $ (Dollar-sign) at the beginning of each fingerprint.

Port Forwarding on ISP Router

In our example the Raspberry Pi (our Tor Relay) sits behind a router which is the gateway into the internet (often provided by the ISP). With the tor configuration above we need to establish port forwarding on this internet router, so TCP traffic coming from the internet (on ports 6080 and 6443) is forwarded to out Tor Relay (on the same ports).

If you would like to use other ports to the outside world (internet) than on the Tor Relay server itself, the Tor config file (torrc) needs to have something like:

ORPort    80 NoListen
ORPort  6080 NoAdvertise
DirPort  443 NoListen
DirPort 6443 NoAdvertise

The port forwarding on the ISP router then obviously has to forward ports 80 and 443 to ports 6080 and 6443 respectively on the Tor Relay.

The ports chosen are kind of arbitrary and we are free to take whatever we like. One advantage of advertising (i.e. using) ports 80 and 443 towards the internet is that they are very unlikely to be blocked as they are usually taken for http and https traffic. The drawback is that you can’t use these ports for something else (like a web-presence). Also some routers seem to have issues with port-forwarding these ports (e.g. lost after a router-reboot).

The details on how port forwarding is configured on the internet router depends heavily on that device but usually each of these kind of routers offers this feature somehow (just search the internet in case this is not obvious).

Start and Test it!

First restart Tor (so it picks up the latest configuration):

sudo systemctl restart tor

Check the logs for what Tor does and if it complains about anything – the following commands might be useful to check for any errors:

sudo systemctl status tor.service
sudo cat /var/log/tor/tor.log
journalctl | grep Tor

You are perfectly fine if you see something like „Self-testing indicates your ORPort / DirPort is reachable from the outside„. If there are no issues your new Tor Relay will also become visible on the torproject metrics-webpage at metrics.torproject.org/rs.html (this might take a few hours though, so be patient).

One could also increase the level of logging information written by tor. Just change the option in the /etc/tor/torrc configuration file – after the „log“ statement one could place either debug, info, notice, warn, or err. Additionally, one could (temporarily, for debugging) turn off the scrubbing of sensitive information in the log-files as well. So for debugging include something like the following in the torrc

SafeLogging 0
Log info file /var/log/tor/tor.log

Once running fine one should probably keep the logging at the ’notice‘ level though.

Also note that it takes up to 2 months until a new Tor Relay gets fully used – and since there is not always traffic available it will mostly never really run at the full possible bandwidth. See this article for some background on it: blog.torproject.org/lifecycle-new-relay.

Enable the Firewall (nftables)

First install the firewall frontend and enable the firewall:

sudo apt install nftables -y
sudo systemctl enable nftables.service

Enable the following firewall rules, starting with a config file in your home directory

sudo nano ~/nftables.conf

and paste in (ensure the port numbers of tor defined above match the firewall rules here!):

#!/usr/sbin/nft -f

flush ruleset

table ip filter {
    chain input {
        type filter hook input priority 0; policy drop;

        iifname lo accept

        ct state established,related accept
        ct state invalid drop

        tcp dport ssh ct state new limit rate 10/minute accept

        iifname eth0 tcp dport {6080, 6443} accept

        icmp type echo-request limit rate 1/second accept
    }

    chain forward {
        type filter hook forward priority 0; policy drop;
    }

    chain output {
        type filter hook output priority 0; policy drop;
        oifname lo accept

        ct state established,related accept
        ct state invalid drop

        skuid "debian-tor" accept

        oifname eth0 udp dport ntp counter accept
        oifname wlan0 tcp dport 8086 accept     # sending measurements to influxdb
        oifname wlan0 udp dport domain counter accept   # not needed ???
        ip daddr 127.0.0.1 counter accept       # not needed ???
        ip daddr { 192.168.178.0/24, 192.168.200.0/24, 255.255.255.255 } accept
    }
}

table ip nat {
    chain input {
        type nat hook input priority 100; policy accept;
    }

    chain output {
        type nat hook output priority -100; policy accept;

        skuid "debian-tor" accept

        ip daddr { 192.168.178.0/24, 192.168.200.0/24 } accept
        tcp flags & (fin | syn | rst | ack) == syn counter redirect to :9040
#        udp dport domain counter redirect to :5300
    }
}

and then activate these firewall rules with

sudo nft -f nftables.conf

One can check the applied firewall rules (and also see the counters) with

sudo nft list ruleset

In case something goes horribly wrong (e.g. you locked your own ssh session) you can hard reboot the server and will start without the firewall rules.

Note that nft uses its own matching of service names to port numbers – to see the list simply type in:

nft describe tcp dport

Once you’re happy with them working make them permanent with copying them to the standard place (enabled on reboot):

 sudo cp /etc/nftables.conf /etc/nftables.conf.default
 sudo cp nftables.conf /etc/nftables.conf

Setup dnsmasq

We use dnsmasq to handle all DNS requests initially since there we can configure which upstream server to use for which domains. In our case we use the (local, private) DNS server 192.168.200.1 on wlan0 to resolve our private domain and send everything else into Tor.

Install dnsmasq, save its default configuration for later reference and edit the config:

sudo apt install -y dnsmasq
sudo mv /etc/dnsmasq.conf /etc/dnsmasq.conf.default
sudo nano /etc/dnsmasq.d/dnsmasq.conf

and paste in:

# Configuration file for dnsmasq (DNS part, DHCP is disabled by default)

#Optional logging can be enabled to support problem determination
#log-dhcp
#log-queries
#log-facility=/var/log/dnsmasq.log

# Listen on these IP addresses for DNS requests (always include localhost):
listen-address=127.0.0.1

# Where to send DNS request to which can't be resolved locally.
# Here we use the local Tor service listening on port 5300 (see /etc/tor/torrc)
server=127.0.0.1#5300
server=/alpha/192.168.200.1

# The bind-interfaces directive instructs dnsmasq to bind only to
# the network interface specified in the listen-address directive.
bind-interfaces

# The no-hosts directive instructs dnsmasq not to read hostnames
# from /etc/hosts.
no-hosts

# Read hostname information from this file in addition
addn-hosts=/etc/dnsmasq.hosts

# Never forward plain names (without a dot or domain part) upstream
domain-needed

# Never forward addresses in the non-routed address spaces.
bogus-priv

# If you don't want dnsmasq to read /etc/resolv.conf or any other
# file, getting its servers from this file instead, then uncomment this.
no-resolv

# If you don't want dnsmasq to poll /etc/resolv.conf or other resolv
# files for changes and re-read them then uncomment this.
no-poll

# Set this if you want to have a domain
# automatically added to simple names in a hosts-file.
expand-hosts

# Number of hostnames being cached in RAM for DNS lookups:
cache-size=10000

and save the file. To test if the config for dnsmasq is free of errors check the syntax with:

sudo dnsmasq --test

We also need to disable that dnsmasq takes nameservers from resolvconf – edit the file

sudo nano /etc/default/dnsmasq

and uncomment the last line so it reads:

...
IGNORE_RESOLVCONF=yes

Now start the dnsmasq service:

sudo systemctl start dnsmasq.service
sudo systemctl status dnsmasq.service
sudo systemctl enable dnsmasq.service

Finally do a few tests (abc is fine, server1 must be a valid hostname on your local network):

host -v cnn.com
host -v abc.onion
host -v server1.alpha

Some Improvement

Change Tor Repository

We can change the repository for the tor packages to their onion server:

sudo nano /etc/apt/sources.list.d/torproject.org.list

and change it to:

# Repository for the Tor packages:
# deb https://deb.torproject.org/torproject.org buster main

deb http://sdscoq7snqtznauu.onion/torproject.org buster main

However, Debian is not supporting anonymous and safe software repos by standard, so we need to enable it first – create a new apt config file:

sudo nano /etc/apt/apt.conf.d/80onion-repos

and put in just one line:

Acquire::BlockDotOnion "false";

Now finally update and upgrade the system with:

sudo apt update
sudo apt upgrade -y

Automatic updates for Tor

It’s also recommended to get the tor software upgraded automatically. Assuming that the package ‚unattended-upgrades‘ is installed already, we simply need to add the updates from the torproject to the config:

sudo nano /etc/apt/apt.conf.d/50unattended-upgrades

and add the line with the TorProject repository:

...
    "origin=Debian,codename=${distro_codename},label=Debian-Security";
    "origin=TorProject,codename=${distro_codename}";
...

Sidenote: information about the ‚origin‘ and other parameters can be found in the files /var/lib/apt/lists/*_InRelease.

Monitoring

It’s good practice to regularly check the log files for errors for anything unusual:

sudo tail -25 /var/log/tor/tor.log
sudo tail -f /var/log/kern.log

Also check the torproject metrics-webpage at metrics.torproject.org/rs.html from time to time which should give a sufficient overview of the Tor Relay status. If you can browse onion websites you could even use the onion-metrics site at: rougmnvswfsmd4dq.onion/rs.html.

In case a more in-depth monitoring is required have a look at e.g. vnstat, theonionbox or (most advanced, usually not really required and with lots of shortcommings) Telegraf with InfluxDB and Grafana.




Backup using rsync

Many people tend to ignore how important it is to have regular backups of their data until something bad happens and their stuff is gone for good. The good news is that on Linux there is an easy way to automatically create regular backups (it should work on other systems like Windows as well with some tweaking). One can even keep some of the backups for a very long time which might come in handy if you recognize something was lost like months ago. The obvious option is to use the rsync program as basis for a remote backup system.

The rsync tool

Something very smart with rsync it that one can point it to a previous, already existing backup on the server (cf. the –link-dest option in the script below) and rsync will compare any file of the new backup to the data there. If a file is existing in the old backup already rsync will not transfer the file again, but simply hard-link to it on the server and therefore also (almost) not consume any additional storage.

Another advantage of rsync comes into play with huge files (think of videos or veracrypt containers): rsync compares a file to a previous version on the server on a block level and only transfers and updates the parts of the file that did change.

Prepare the storage

First of all to make backups you need some kind of external storage. Theoretically, you could make backups on the same machine but if that one’s lost, stolen or broken all is gone (it might be useful though to go back in time for data which was deleted or overwritten by mistake). The next best option is to have some external storage stick or drive which is manually connect to your computer to run manual backups from time to time.

The best option for normal (i.e. non-business critical) usage seems to be a small storage server (NAS) on the local network. A good and rather cheap option is for example a Raspberry Pi running OpenMediaVault connected with an external SSD.

Enable secure access (ssh)

The very first step is to enable the ssh service as such on the storage server (e.g. OpenMediaVault). How this is done exactly depends on the server but usually this should be installed and enabled by default. Otherwise just search around or there should be some documentation on the internet.

For an automated, unattended backup to another server we need to enabled ssh access based on cryptographical keys without the need to an interactive password.

The first step is to create the required keys on the device which will be backed up (your laptop for example):

ssh-keygen -t rsa

Answer all questions with return, i.e. keeping the defaults and don’t enter a password!

Next, we need to copy the public key which was just created from the device to the remote server where the backups will be stored (take your username and the name of your server) and enter your remote password when asked for it:

ssh-copy-id user@hostname

The private, secret key will always stay on your local machine; typically it will be stored in the directory .ssh.

Now give it a try to see if everything works out fine – just enter (again take your own user name and server name):

ssh user@hostname

You should be connected to your remote shell right away without any password requests. In case it shouldn’t work try the command with ssh -v or ssh -vv and check the output for an indication what might be wrong.

To make life a bit easier you might also want to configure some of your ssh connections so they will be easier to use. To do so, just open the config file with:

nano ~/.ssh/config

and enter your details as needed like below:

Host mediaserver mediaserver.alpha
    Hostname mediaserver.alpha
    User admin

Host storage
    Hostname storage.alpha
    User tom

There are tons or options that can be defined in this ssh config file – start out with man ssh_config to check them out.

Rsync backup (push to server)

You need to decide where to store the backup script on your device (typically a laptop nowadays) and a good idea is to create a dedicated directory in your home directory. It’s also wise to make it hidden, i.e. to start the name with a dot so it won’t be visible by standard and it won’t be backed up by the script.

mkdir ~/.rsync
cd ~/.rsync
nano backup.sh

and paste in the following while changing everything specific for your local environment and setup (e.g. path names, user name, maximum bandwidth, etc.):

#!/bin/bash

LOGFILE="${0%.*}".log

# To ensure only one instance of the backup-script is running we create a lock-dir first.
# The lock is removed automatically on exit (including signals).
if ! mkdir "${0%.*}".lock; then
    echo "Lock detected (either rsync still running or manually locked); backup aborted..."
    exit 1
fi
trap 'rm --recursive --force --one-file-system "${0%.*}".lock' EXIT

# In case anything is failing during execution we want to catch it here and stop the script.
# Unfortunately, the following doesn't work for commands within a 'if' query... !
trap 'echo "Error encounted while executing $BASH_COMMAND. Exiting..." >> $LOGFILE; exit 1' ERR

echo "Starting new backup..." $(date) > $LOGFILE

SOURCE="/home/tom/"
SERVER="tom@storage.alpha"
BACKUP="/mnt/backup/laptop/tom/latest"
TARGET="$SERVER:$BACKUP"

if ssh $SERVER "test -e '$BACKUP'"; then
    echo "Latest full backup still exists (not archived yet). Exiting..." >> $LOGFILE
    exit 1
fi

RSYNCOPTIONS="--archive --numeric-ids --one-file-system --exclude-from=.rsync/backup.exclude --link-dest=../hourly.0 --compress --bwlimit=400K --partial-dir=.rsync-partial --human-readable --stats" 

ionice -c2 -n7 nice -n 19 rsync $RSYNCOPTIONS "$SOURCE" "$TARGET.tmp" >> $LOGFILE

ssh $SERVER "mv '$BACKUP.tmp' '$BACKUP'"	# Put the backup in place, so it's marked as completed
ssh $SERVER "touch '$BACKUP'"			# Timestamp the backup

echo "Backup script completed..." $(date) >> $LOGFILE

and make it executable:

chmod u+x backup.sh

Last step for the backup  is to create a small file called backup.exclude which contains what will not be backed up. An example could be:

# Always exclude files and directories with the following endings
*.part
*.iso
*.img
*.log
*.bak
*.old
*.zip
*.7z
*.tmp
*.temp
*.core
*.lock
*.crdownload
*.mp4

# As an exception to the rule below we include the following hidden directories
+ .rsync/
+ .hades/

# Now exclude all hidden files and directories (starting with a dot) from the backup
.*

# Exclude temporary folders as well
*/temp/
*/tmp/

# And finally exclude any confidential files that might be mounted to this directory
Hades/

With these exclude filters everything (files and directories) starting with a dot in the name and all files ending on .part or .iso are excluded from the backup.

First of all you should try the backup manually; maybe with a rather small scope of files to backup (so it doesn’t run for hours while testing). To start the script, simply type

.rsync/backup.sh

in your home directory and check the log-file in the same directory and the backups on the server. Note: if the script is run by cron then the it will be run from your home directory, therefore the relative path to the exclude-file is relative to the home directory. If run from another directory the relative path to the exclude file must be changed accordingly.

Now run a full backup which easily can take many hours. Then manually rename that backup on the server from latest to hourly.0 and run the backup script again. This time it should complete within a few minutes at most. Check the new backup on the server and will find the hard-linked files there.

If everything looks fine one probably wants to run the script automatically like for example each hour. To enable this simply make in entry into crontab with:

crontab -e

and add the following line (or something similar) at the end of the file:

0 * * * * /home/tom/.rsync/backup.sh

In case you want to avoid the script to be running for some time simply create the lock manually (in the script directory):

mkdir backup.lock

You might want to check the log-file in the same directoy to see if everything is working as it should. And don’t forget to remove the lock in case you created it manually and you want to run the backups again:

rmdir backup.lock

If you want to lock the backup script quite frequently it might be a good idea to define alias commands for the locks.

Archive of backups

Usually, one also wants to keep a few of the backups for a longer time. This means that some of the older backups should be kept for the future. This is accomplished with archiving the backups which can be easily automated with the following shell script.

Connect to your storage (NAS) server and become root to save the script:

su
nano /root/backup-archive.sh

Now paste in the following – adjusting the path $BASE and a few other things maybe to your local setup and needs (don’t worry, the script looks much more complicated than it actually is):

#!/bin/bash

# To ensure only one instance of the backup-script is running we create a lock-dir first.
# The lock is removed automatically on exit (including signals).
if ! mkdir "${0%.*}".lock; then
    echo "Lock detected (either script still running or manually locked). Exiting..."
    exit 1
fi
trap 'rm --recursive --force "${0%.*}".lock' EXIT

# In case anything is failing during execution we want to catch it here and stop the script.
# Unfortunately, the following doesn't work for commands within a 'if' query... !
trap 'echo "Error encounted while executing $BASH_COMMAND. Exiting..."; exit 1' ERR

BASE="/mnt/backup/laptop/tom"

N=100	# Maximum number of backups per category

case $1 in
    hourly)
        if [ ! -d "$BASE/latest" ]; then
            echo "No new backup available to be archived (no folder 'latest'). Exiting..."
            exit
        fi
        # If the latest backup is identical to the previous one in 'hourly.0' then skip
        # the backup rotation. Exit status of 'diff' is 0 if inputs (directories) are
        # identical, 1 if they are different, 2 if there's any kind of trouble.
        if diff --recursive --brief --no-dereference $BASE/latest $BASE/hourly.0; then
            echo "Not rotating, since there are no changes in 'latest' since last backup."
            echo "Removing 'latest' so a new backup will be made."
            rm --recursive --force "$BASE/latest"
            exit
        fi
        rm --recursive --force "$BASE/hourly.8"
        for I in {100..0}; do
            if [ -d "$BASE/hourly.$I" ]; then mv "$BASE/hourly.$I" "$BASE/hourly.$((I+1))"; fi
        done
        mv "$BASE/latest" "$BASE/hourly.0"
        ;;
    daily)
        until [ -d "$BASE/hourly.$N" ]; do      # Keep at least hourly.0 for the hard links
            if (( $N == 1 )); then echo "No hourly backup available for daily backup. Exiting..."; exit; fi
            let N--
        done
        rm --recursive --force "$BASE/daily.5"
        for I in {100..0}; do
            if [ -d "$BASE/daily.$I" ]; then mv "$BASE/daily.$I" "$BASE/daily.$((I+1))"; fi
        done
        mv "$BASE/hourly.$N" "$BASE/daily.0"
        ;;
    weekly)
        until [ -d "$BASE/daily.$N" ]; do
            if (( $N == 0 )); then echo "No daily backup available for weekly backup. Exiting..."; exit; fi
            let N--
        done
        rm --recursive --force "$BASE/weekly.4"
        for I in {100..0}; do
            if [ -d "$BASE/weekly.$I" ]; then mv "$BASE/weekly.$I" "$BASE/weekly.$((I+1))"; fi
        done
        mv "$BASE/daily.$N" "$BASE/weekly.0"
        ;;
    monthly)
        until [ -d "$BASE/weekly.$N" ]; do
            if (( $N == 0 )); then echo "No weekly backup available for monthly backup. Exiting..."; exit; fi
            let N--
        done
        rm --recursive --force "$BASE/monthly.12"
        for I in {100..0}; do
            if [ -d "$BASE/monthly.$I" ]; then mv "$BASE/monthly.$I" "$BASE/monthly.$((I+1))"; fi
        done
        mv "$BASE/weekly.$N" "$BASE/monthly.0"
        ;;
    yearly)
        until [ -d "$BASE/monthly.$N" ]; do
            if (( $N == 0 )); then echo "No monthly backup available for yearly backup. Exiting..."; exit; fi
            let N--
        done
        for I in {100..0}; do
            if [ -d "$BASE/yearly.$I" ]; then mv "$BASE/yearly.$I" "$BASE/yearly.$((I+1))"; fi
        done
        mv "$BASE/monthly.$N" "$BASE/yearly.0"
        ;;
    *)
        echo "Invalid (or no) option. Exiting..."
        ;;
esac

It must be invoked by giving an argument (either hourly, daily, weekly, monthly, or yearly) depending on what level of backups should be archived.

Once you confirmed it’s working by running it manually a few times the best practice is to invoke it automatically and regularly by setting up crontab. The different levels of rotations should be run at different daytimes, e.g. run the yearly one at 3:10 am (once a year), the monthly one at 3:20 am (once a month) and so on. The hourly rotation should be scheduled a few minutes before the new backup on the laptop runs – e.g. run the hourly rotation at 10 mins before the top of the hour if the backup script on the source device (laptop) runs at the full hour.

Just one example for cron (setup via sudo crontab -e):

20 * * * * /root/backup-archive.sh hourly
25 3 * * * /root/backup-archive.sh daily
30 4 * * 1 /root/backup-archive.sh weekly
35 4 1 * * /root/backup-archive.sh monthly
40 4 1 1 * /root/backup-archive.sh yearly

Retrieve files

Retrieving documents from the backup is really easy. Simply use a command like the following (maybe first switch to a separate local directory first):

mkdir retrieve
cd retrieve
nice rsync --protect-args --archive --numeric-ids --progress tom@storage.alpha:/mnt/backup/laptop/tom/hourly.4/Lyrics/Elvis.pdf .

Obviously, the above rsync command needs to be adapted to the specific setup (user name, host name, path, file to retrieve, etc.) and one could also limit the bandwidth just like in the backup script.

Final thoughts

This backup setup and the two shell scripts are quite simplistic and in no way elaborated – but the whole thing just works. It’s also worth mentioning that there are applications around that effectively implement something pretty similar; one example being the ‚rsnapshot‘ tool. Personally, I prefer to do it myself though as this gives much more flexibility control, I can learn something – and it’s just plain fun to see it working.




Fougasse provençale (Fladenbrot)

Schwierigkeit: einfach, gelingt leicht
Zubereitungszeit: knapp 3 Std. (das meiste davon ist Ruhe- und Backzeit)

Zutaten

500 g Weizenmehl (Type 405 oder 550)
ca. 230 ml warmes Wasser
1 Pck Trockenhefe
1 TL Zucker
1 TL Salz
3 EL Olivenöl
1 EL Kräuter der Provence (Rosmarin, Thymian, Bohenkraut, Oregano, evtl. Majoran)

Etwas Olivenöl, Kräuter der Provence und Fleur de sel zum bestreuen

Zubereitung

Das Mehl abwiegen, in eine Schüssel geben und mit dem Salz und den Kräutern vermischen. In der Mitte eine kleine Kuhle machen und darin die Hefe und den Zucker mit etwas warmem Wasser zu einem Brei verrühren und mit Mehl vom Rand abdecken. An einem warmen Ort rund eine Viertelstunde gehen lassen.

Das Olivenöl und das handwarme Wasser hinzugeben und zu einem geschmeidigen Teig verkneten. Vom Wasser nur soviel zugeben, dass der Teig nicht mehr an der Schüssel klebt. Dann mindestens eine Stunde mit einem Tuch zugedeckt an einem möglichst warmen Ort gehen lassen, wobei sich das Volumen in etwa verdoppeln sollte.

Dann nochmals gut durchkneten und auf Backpapier zu einem flachen Oval formen (am besten mit den Händen). Wie auf dem Bild mit einem Messer einschneiden und den Teig auseinanderziehen. Mit einem Tuch abdecken und nochmal rund 20 Minuten bei Zimmertemperatur gehen lassen. Den Ofen auf 210°C vorheizen.

Fougasse provençale (französisches Fladenbrot)

Die Fougasse mit Olivenöl bestreichen (geht am einfachsten mit den Fingern) und dann nach Belieben mit Kräuter der Provence und etwas Fleur de sel (Salz) bestreuen.

Für die Luftfeuchtigkeit im Ofen eine kleine, feuerfeste Schale mit Wasser auf den Boden des Backofens stellen. Das Brot auf der mittleren Schiene rund 25 Minuten bei Ober- und Unterhitze backen, bzw. so lange bis das Fougasse goldbraun ist.

Varianten

Sehr gut kann man auch kleingeschnittene Oliven oder eingelegte Tomaten in den Teig einarbeiten.




DynDNS mit Strato und Fritzbox

Wer eine dynamische, d.h. eine sich hin und wieder ändernde, IP Adresse für seinen Anschluss hat, steht häufig vor dem Problem, diese IP Adresse zu kennen, um beispielsweise auf Dienste hinter dieser Adresse zugreifen zu können. Das könnten eine Webseite oder ein VPN Dienst zuhause sein. Für diejenigen, die eine Fritzbox als Router nutzen und Domains bei Strato registriert haben, gibt es eine relativ einfache Lösung (sicherlich oft auch ganz ähnlich mit anderen Routern und anderen Domain-Providern machbar).

Noch ein Hinweis: wer nur DS-Lite an seinem Internet-Anschluss bekommt, hat leider Pech gehabt, da dann prinzipiell keine Verbindung von außen über IPv4 möglich ist – da hilft nur noch auf IPv6 umzusteigen (oder den Anschluss zu wechseln).

Folgendes muss für den einfachen Zugriff über eine Domain auf die dynamische IP Adresse eingerichtet werden:

Bei Strato

Bei Strato meldet man sich in seinen Verwaltungsbereich an und geht in den Bereich der Domainverwaltung (zu finden unter Domains). Dort legt man sich zuerst eine separate Subdomain für das dynDNS an; das könnte beispielsweise so etwas wie

dyndns.mydomain.net

sein.

Danach muss dynDNS für diese neue Subdomain aktiviert werden – das geht unter: Subdomain verwalten → DNS Verwaltung → Dynamic DNS verwalten. Hier muss man dann folgendes auswählen: DynDNS Status: DynDNS aktiviert.

Auf der Fritzbox

Jetzt gilt es auf dem Router einzurichten, dass er die eigene IP Adresse an Strato sendet (die dort dann auf die Subdomain abgebildet wird). Das geht unter: Internet → Freigaben → Dynamic DNS. Dort setzt man folgendes (die Angaben müssen für die Domains etc. natürlich entsprechend angepasst werden:

  • Dynamic DNS: Haken (ja)
  • Dynamic DNS-Anbieter:
    Benutzerdefiniert
  • Update-URL:
    https://dyndns.strato.com/nic/update?system=dyndns&hostname=mysubdomain.mydomain.net&wildcard=OFF&backmx=NO&offline=NO
  • Domainname:
    mysubdomain.mydomain.net
  • Benutzername:
    mydomain.net
  • Kennwort:
    Strato-passwort

Voilà

Danach kann man über mysubdomain.mydomain.net (ersetzt durch die eigene Subdomain) direkt auf die dynamische IP Adresse zugreifen. Überprüfen kann man das auf Windows mit nslookup mysubdomain.mydomain.net und auf Linux mit host mysubdomain.mydomain.net – in beiden Fällen sollte nach ein paar Minuten die (sich hin und wieder ändernde) IP Adresse der Fritzbox angezeigt werden.

Je nachdem, was schlussendlich damit gemacht werden soll, muss auf dem Router natürlich noch eine Port-Weiterleitung auf den Service, den man nutzen möchte eingerichtet werden. Auf einer Fritzbox findet man die Port-Weiterleitung unter „Internet“, dann „Freigaben“ und schließlich der Reiter mit „Portfreigaben“: dort richtet man unter „Neue Portfreigabe“ das ein, was man braucht.

Port-Weiterleitung Fritzbox
Port-Weiterleitung auf einer Fritzbox

In diesem Beispiel würde der TCP-Port 80 der aus dem Internet auf der Fritzbox ankommt an den Server im lokalen Netz mit der IP-Adresse 192.168.200.100 (man kann alternativ aber auch einen Rechnernamen auswählen) wiederum auf den Port 80 des lokalen Servers weitergeleitet.




Marmorkuchen

Schwierigkeit: einfach
Zubereitungszeit: rund 1½ Stunden (davon 40 min Backzeit)

Zutaten

220 g Butter
210 g Zucker (170+40 g)
4 Eier
125 ml Milch
400 g Mehl
100 g Speisestärke
1 Päckchen Backpulver
40 g Kakaopulver

Zubereitung

220 g zimmerwarme Butter in kleine Stückchen schneiden und mit 170 g Zucker schaumig rühren. Dann 4 große Eier dazugeben und weiter verrrühren. Schließlich 1/8 l Milch dazugeben und nochmals unterrühren.

In eine zweite Schüssel 400 g Mehl, 100 g Speisestärke und ein Päckchen Backpulver sieben und dann löffelweise in den Teig unterrühren.

Den Ofen in der Zwischenzeit auf 200ºC vorheizen und die Backform mit Butter ausfetten (am besten mit etwas Küchenpapier) und sachte mit Semmelbrösel oder Grieß ausstreuen.

Rund 2/3 des Teigs in die Gugelhupf-Backform geben. Den restlichen Teig mit 40 g Kakaopulver und 40 g Zucker vermischen und dann in die Backform geben. Mit einer Gabel die beiden Teigsorten sachte spiralförmig verdrehen.

Bei 180ºC rund 35-40 min backen (mit einem Holzstäbchen in den Kuchen stechen und prüfen, dass kein noch flüssiger Teig kleben bleibt).

Varianten

Den Schokoladenanteil kann man auch weglassen, also einfach ausschließlich den hellen Teig backen.

Nach Geschmack, kann man beispielsweise ein paar wenige Bananenstückchen oder ähnliches in den Teig geben.




Sonos – Fehlersuche im Webinterface

Wer eine neue Sonos Anlage installiert, wird damit meist keine allzu großen Probleme haben. Hin und wieder ist es aber auch ganz nützlich, etwas mehr an der Hand zu haben, um genauer zu verstehen, was ein Sonos Gerät gerade macht, woher Probleme rühren könnten oder einfach nur, um die Funkverbindung abstellen.

Da auf den Sonos Geräten Linux läuft, ist es nicht ganz verwunderlich, dass es in der Tat ein Interface gibt, auf das man ganz einfach per Browser zugreifen kann (vorausgesetzt natürlich eine LAN Verbindung existiert bereits).

Das erst was man benötigt, ist die IP Adresse der Sonos-Box – am einfachsten ist sie über den Controller (die Handy-App) unter „Einstellungen“ und „Über mein Sonos-System“ zu finden. Ansonsten wird man die IP Adresse auch im Router finden (beispielsweise eine FritzBox) oder wenn man zumindest das Subnetz kennt, probiert man ein paar Möglichkeiten durch. Wer eine statische IP vergeben haben sollte, kennt die IP sowieso bereits.

Alle wichtigen Informationen zum Status kann man dann über folgende Adresse einsehen (einfach in Firefox, Chrome, Safari, etc. öffnen):

http://<sonos-ip-address>:1400/status

Anstatt <sonos-ip-address>muss man schlicht die IP-Adresse angeben, also beispielsweise http://192.169.100.22:1400/status. Wer schon einmal etwas tiefer mit Linux zu tun hatte, wird die meisten der nun aufgelisteten Status-Befehle sicherlich wiedererkennen. Ein ähnlicher Status ist auch unter

http://<sonos-ip-address>:1400/support/review

zu finden – dort allerdings für alle bekannten Sonos Geräte im Netzwerk und in einer Netzwerk-Matrix sieht man die Qualität (Signalestärke) der Verbindungen.

Über das Interface kann man ein Gerät auch sehr einfach neu starten. Dafür einfach folgendes aufrufen:

http://<sonos-ip-address>:1400/support/reboot

Einige Netzwerk-Tools (ping, traceroute, nslookup für dns, mdns, netbios) kann man unter folgender Adresse finden:

http://<sonos-ip-address>:1400/tools

Die Region für das WLAN lässt sich wohl unter:

http://<sonos-ip-address>:1400/region

einstellen. Allerdings ist dafür ein Passwort erforderlich, das mir leider nicht bekannt ist.

Und wer schließlich keine Funkverbindung für eines (oder auch alle) der Sonos Geräte benötigt, da sie per Ethernet verkabelt sind, kann das WLAN auch ganz ausschalten. Das spart Strom und entlastet das Funknetz vor unnötigem Datenverkehr:

http://<sonos-ip-address>:1400/support/wifictrl?wifi=off

Das gilt allerdings nur bis zum nächsten Neustart. Man kann also den Sonos Lautsprecher aus- und wieder einstecken und die Funkverbindung sollte wieder da sein. Dauerhaft (auch über einen Neustart hinweg) schaltet man den Funk über:

http://<sonos-ip-address>:1400/support/wifictrl?wifi=persist-off

aus. Einschalten lässt sich die Funkverbindung wieder mithilfe von:

http://<sonos-ip-address>:1400/support/wifictrl?wifi=on

Ich hoffe, das hilft dem einem oder anderem in schwierigen Zeiten – viel Erfolg damit!




Filme aus der Mediathek

Wer etwas im Fernsehen verpasst hat, kann sich die Filme meist auch später noch in der jeweiligen Mediathek des Senders nachträglich anschauen. Allerdings oft nur für eine relativ kurze Zeit und beim Schauen direkt über die Mediathek kann es leider auch gern mal zu ärgerlichen Abbrüchen kommen.

Die einfachste Lösung, einen Film irgendwann später anzuschauen, ist es, den Film erst mal herunterzuladen und lokal zu archivieren. Wer das öfters macht, wird schnell merken, wie umständlich das bei den einzelnen Senders sein kann; besonders da viele Mediatheken ein direktes Herunterladen erst gar nicht anbieten.

Hier hilft eine Seite, die das alles für einen übernimmt und die gerade im deutschsprachigen Raum verfügbaren Filme mit einer Suche (eine Anleitung ist unter der Hilfe zu finden) und der direkten Möglichkeit zum Herunterladen auflistet:

mediathekviewweb.de

Wer dies häufiger macht und in gewisser Weise auch automatisieren will, greift am Besten auf das dazugehörige Program zurück, das man hier herunterladen und installieren kann:

mediathekview.de

Einmal installiert (Java wird dafür benötigt) kann man noch sehr viel umfangreicher als auf der Internetseite filtern, sortieren und beispielsweise auch neue Folgen einer Serie automatisch herunterladen.




Suchaufruf: Der Landtag in Bebenhausen

Abgeordnete im Kreuzgarten
Abgeordnete im Kreuzgarten

Im Rahmen eines Projektes zur Erforschung der Geschichte des Landtages von Württemberg-Hohenzollern, der in der Nachkriegszeit im ehemaligen Kloster von Bebenhausen seinen Sitz hatte, wird nach Zeugnissen aus dieser Zeit gesucht.

Vielleicht finden sich ja bisher noch nicht beachtete oder bekannte Dokumente in privater Hand – das könnten beispielsweise Tagebücher, Photographien oder auch Briefe sein, die das Leben dieser Zeit beleuchten können. Von Interesse sind dabei besonders auch Informationen aus dem Umfeld des Landtages.

Falls noch jemand solche Zeugnisse der Landtagszeit besitzen sollte (oder Hinweise darauf geben kann) und bereit ist, diese Quellen zu teilen sei aufgerufen sich gerne zu melden unter:

landtag@bebenhausen.net

Im Voraus bereits besten Dank für jeden (auch noch so kleinen) Hinweis!




Mousse au chocolat

Schwierigkeit: einfach, gelingt meist
Zubereitungszeit: etwa 1 Std. (plus 3 Std. Kühlschrank)

Zutaten

(für etwa 8 Portionen)
400 g Zartbitter Schokolade
4-5 Eier
400 ml Schlagsahne
2 EL Zucker

Zubereitung

Die Schokolade klein brechen und im Wasserbad schmelzen. Die Eier trennen und zuerst das Eiweiß steif schlagen. Die Sahne schlagen und dann die Eigelbe mit dem Zucker schaumig rühren.

Die flüssige und nicht mehr ganz heiße Schokolade zusammen mit der Sahne unter ständigem Rühren in die Eigelb-Zucker-Masse geben und kräftig verrühren. Zum Schluß den Eischnee vorsichtig mit einem Spatel unterheben.

Mindestens 3-4 Stunden im Kühlschrank kalt stellen.

Tipps & Tricks

Wer möchte, kann die Mousse verfeinern, indem man zum Eigelb etwas Cognac oder Rum gibt.
Die Mousse gelingt am besten mit der billigsten Zartbitterschokolade.
Da die Mousse rohe Eier enthält, darf sie nicht zu lange aufbewahrt werden!