Configuratie van een internetserver

Mijn eerste boek begeleidt zowel de beginnende als de gevorderde systeembeheerder bij het installeren, configureren en onderhouden van een bedrijfsinternetserver, die onder meer DNS, websites en e-mail serveert, en gebruikers bestanden, kalenders en adresboeken laat delen.

Read More

Mail server

This is by far the most popular post of this blog, welcoming visitors from all over the world. This tutorial describes the setup of a complete mail server, including IMAP and SMTP access, TLS encryption, SPF and DKIM, DNS blackhole lists, spam and virus filtering, Sieve message filters, and much, much more.

Read More

Installation et configuration d'un serveur internet

Mon premier livre s’adresse aux administrateurs système, débutants comme plus expérimentés, qui souhaitent configurer un serveur internet d’entreprise fonctionnel, prêt à être mis en production.

Read More

Subversion server

Despite the fact that I have set up quite some Subversion servers in the past 15-20 years, I still need to turn to the documentation for the details each time I do it. So, to save myself some time searching and filtering next time, I decided to document it here this time.

Open door: if you don’t know what a Subversion server is, you don’t need this post.

Read More

Pasta met kip-pesto saus – Vegetarisch

Een golden oldie: bij dit recept zie ik al vele jaren mensen hun lippen af likken en hun vingers opeten. Maar dan nu de vegetarische variant, omdat ik vandaag voor vegetariërs moest koken. Ik denk trouwens dat je ‘m heel makkelijk veganistisch kunt maken door een beetje op te letten welke pesto je koopt — in de potjes pesto die ik vandaag kocht zat schapenmelk — of je pesto zelf te maken.

Pak het originele recept erbij: Pasta met kip-pesto saus.
Vervang de volgende zaken:

  • kipfilet → vegetarische kipfiletreepjes
  • spek → vegetarische spekreepjes
  • kipbouillonblokjes → tuinkruiden-bouillonblokjes

Verder heb ik kookroom gebruikt op basis van soja in plaats van melk.
En ik heb een handje ongezouten, ongeroosterde cashewnoten toegevoegd, in de bouillon, voordat ik de room toevoegde.
De penne was trouwens biologisch en volkoren.

Zelf vind ik zaken als vegetarische kip en vegetarisch spek altijd een beetje flauw, en de vegetariërs aan tafel bleken het zelfs nog nooit geprobeerd te hebben, maar ze hebben me verzekerd dat ze lekker gegeten hebben. En dus verdient ook deze variant een plekje op mijn blog.

Mail server

UPDATE:
My first book describes a more elaborate setup, including LDAP authentication, and a lot more (firewall, DNS, Apache, Nginx, databases, synchronisation of files, calendars and address books, etc.; including many examples for both FreeBSD and Linux).
nl: Configuratie van een internetserver
fr: Installation et configuration d’un serveur internet
en: Practical Internet Server Configuration (the English version will be available begin 2021)


After having depended on my friends for a few years, for web and email hosting, I recently acquired a private server again. In this HOWTO I will try and document the entire mail setup.
At the end of this article, I will have a mail server that does:

  • Postfix MTA (Mail Transfer Agent)
  • Dovecot IMAP (Internet Message Access Protocol)
  • Let’s Encrypt (SSL certificates)
  • Dovecot SASL (Simple Authentication and Security Layer)
  • mail accounts (partly) separated from system accounts
  • Dovecot LDA (Local Delivery Agent)
  • Sieve / ManageSieve
  • Greylisting
  • RBLs (Real-time Blackhole Lists)
  • Bogofilter (spam filter)
  • ClamAV (virus scanner)
  • SPF (Sender Policy Framework)
  • DKIM (DomainKeys Identified Mail)

Just so you know that there’s more to mail than just typing a text and hitting the Send button…

Currently my server only serves 1 user with 3 domains. But with the setup I describe here, it is extremely simple to upgrade that to many users running many domains.

This tutorial is not for the complete layman, but should be comprehensible for those who have played around with Linux and its services and command line a bit. I have tried to make it interesting and useful for both the beginning and the experienced sysadmin.

Corrections, clarifications, supplements and typos are welcomed at tuto.mailserver@ohreally.nl.
Spam is not, as you will understand after reading this article.

Read More

Waarom natuurkunde cool is

Ik ben technicien. Dat is Frans voor ‘klusjesman’, of ‘huismeester’. Want ik ben het in Frankrijk. In een hotel. Maar dat doet er voor dit verhaal niet toe.

Ik had vanmiddag een lekkage. Een plas water van 5 meter lang, 2 en een halve meter breed, en een centimeter of 8 diep; dan heb je het toch over een liter of duizend. En geen afvoer. Ja, een verdieping lager, een steil trapje af.
Mijn chef dacht dat ik dat wel even met emmers zou wegwerken. Nou ben ik op zich helemaal niet vies van werken, maar wel net even te bijdehand om 1000 liter water emmertje voor emmertje een steil trapje af te gaan dragen. Neem bovendien van me aan dat er echt geen 10 liter water in een emmer gaat, als je het moet weg scheppen uit een laagje van 8 centimeter.

En dus deed ik het als volgt.
Ik nam een lange waterslang, waarvan ik het ene uiteinde in het water legde; ik legde er een tegel op, om te zorgen dat-ie goed onder water bleef. Het andere uiteinde hield ik op de kraan, en ik liet de kraan lopen; tot er geen belletjes meer uit het onderwater-uiteinde kwamen, en ik dus zeker wist dat er geen lucht meer in de slang zat, maar alleen water. Met mijn duim de slang dicht houdend ging ik vervolgens het steile trapje af, en ik hing de slang in de afvoer. En verder deed de natuur het werk voor me: dankzij de zwaartekracht van de aarde en het vacuüm in de slang, kon ik achteroverleunen terwijl natuurkrachten bijna 1000 liter water voor me weg pompten.
Er bleef een laagje van een paar millimeter over, want als er eenmaal lucht in de slang komt, is het vacuüm verbroken en werkt het niet meer. Maar ik heb er alle vertrouwen in dat dat morgen verdampt is.

Het leven is zó cool, als je een beetje snapt hoe de dingen werken.

Rata à l’hobo

Ratatouille. Maar dan in de rubriek Hobo food, dus het moet goedkoop, snel, en met weinig gereedschap en gedoe. In het kort betekent dat dat we:

  • de aubergine achterwege laten, want die is te duur
  • het bouquet garni vervangen door Provençaalse kruiden, want dat is minder gedoe
  • gas uitsparen door het spul niet 3 kwartier te laten pruttelen om de tomaten tot saus te koken

Daar gaan we.

Nodig, voor 1 persoon:

  • een kleine courgette
  • een halve rode paprika
  • een halve groene paprika
  • een kleine ui (of een halve grote, natuurlijk)
  • een blikje tomatenpuree (zo’n kleintje)
  • Provençaalse kruiden
  • knoflook
  • zout
  • peper
  • olijfolie

Uiteraard kun je, in plaats van 2 kleuren paprika te nemen, ook gewoon voor 1 kleur kiezen. Maar ik wilde zo dicht mogelijk bij het oorspronkelijke recept blijven, en morgen verzin ik wel iets voor de andere 2 helften.

Je hebt voor dit gerecht een wok, koekenpan of sauspan met deksel nodig.

Was de courgette en de paprika, en snijd ze in blokjes. Snipper de ui.

Verwarm wat olie in de pan (niet te zuinig!), en bak hierin de groenten even aan op hoog vuur, onder constant omscheppen. Als de courgette en de ui een beetje glazig van kleur worden, schep je er naar smaak Provençaalse kruiden door (niet te zuinig!), doe je de deksel op de pan, en zet je het vuur laag. Schep af en toe om.

Als de groenten bijna gaar zijn — minuut of 10; beetje afhankelijk van de hoeveelheid en de grootte van de blokjes — schep je er de tomatenpuree doorheen, en voeg je knoflook (niet te zuinig!), peper en zout naar smaak toe. Als de prut in de pan erg droog is, kun je eventueel een klein beetje water (zuinig!) toevoegen.
Deksel terug op de pan, en samen nog even een paar minuten doorwarmen.

In de Provence, waar dit gerecht vandaan komt, eten ze ratatouille graag met gegrild vlees (barbecue!). Maar het gaat ook prima, zoals voor mij vanavond, met zilvervliesrijst; omdat vlees nou eenmaal niet iedere dag in het budget past.

Smakelijk!

iPhone synchroniseren met Linux

Die titel is niet helemaal eerlijk: wat ik hieronder beschrijf, zou onder Windows net zo goed moeten werken. Maar omdat Windows-gebruikers ook via iTunes kunnen synchroniseren, en het dus vooral de Linux-gebruikers zullen zijn die deze info nodig hebben, staat ‘Linux’ in de titel, voor de zoekmachines.

Read More

elPeregrino.nl

Dit weblog werd me een beetje teveel een verzamelbak voor links naar berichten op mijn andere blog. En aangezien ik niet denk dat er nog iemand is die dit blog leest, maar niet mijn andere blog weet te vinden, heb ik de categorie elPeregrino.nl verwijderd.

Voor de zekerheid nog 1 keer een link: elPeregrino.nl.

Banaanappel

Ooit, op 19 november 2011 om precies te zijn, schreef ik een paar zinnen op Wikipedia; aan de pagina Golden Delicious voegde ik toe:

Vroeger werd deze appel banaanappel genoemd, vanwege de vettige gele schil en de zoete smaak. Sommige fruitverkopers gebruiken deze naam nog steeds.

Om de een of andere reden, ik weet eigenlijk niet precies waarom, tikte ik vandaag banaanappel in in een zoekmachine. En wat ik dus wel grappig vind, is dat er verschillende websites zijn die mijn tekst letterlijk of vrijwel letterlijk hebben overgenomen.
Goed, ’t is nog niet die eigen Wikipedia-pagina waar ik zo van droom, maar het is een stapje in de goeie richting.
🙂

Overigens, voor wie dit leest, en die zinnen op zijn/haar website heeft gebruikt: het is wel echt waar. Mijn groente-/fruitboer in Escamp destijds had een bak appels met daarbij een bordje ‘Banaanappels‘, waarop ik zei ‘Voor mij zien ze er gewoon uit als Golden Delicious.‘. En hij heeft me toen uitgelegd hoe het zat. En omdat hij niet op mij overkwam als iemand die heel veel om Wikipedia gaf, heb ik het toen maar op Wikipedia gezet.

Dus eigenlijk zijn het niet eens mijn eigen woorden…

Damn!

Ik ga verder zoeken naar mijn eigen 15 minuten roem…

2 Nieuwe metatags

Ik heb zojuist 2 nieuwe metatags toegevoegd aan WHATWG MetaExtensions registry.
En als je wilt dat je ideeën op een gegeven moment geaccepteerde standaarden worden, zul je er ook over moeten publiceren; dat doe ik dus hierbij.

origin

De eerste nieuwe metatag is origin:

<meta name="origin" content="…">

Met de origin metatag verwijs je naar de oorspronkelijke (online of offline) bron van een document; denk hierbij bijvoorbeeld aan de vertaling van een webpagina, maar ook aan een songtekst die je uittikt, of een (papieren) boek dat je op internet zet.
De documentatie voor de origin metatag vind je op doc.ohreally.nl/metatag-origin.

translator

De tweede nieuwe metatag is translator:

<meta name="translator" content="…">

De translator metatag geeft informatie over de vertaler van een document. Steeds meer informatie op internet is in meerdere talen beschikbaar, en het wordt dus ook steeds belangrijker de vertalers van documenten te bereiken (bijvoorbeeld wanneer er een nieuwe versie van het oorspronkelijke document beschikbaar is).
De documentatie voor de translator metatag vind je op doc.ohreally.nl/metatag-translator.

validatie

Binnen nu en 2 weken zullen de validators van het W3C de nieuwe metatags herkennen.

Regexp

Dit schreef ik vandaag:

/^(?:([^:\/?#@]+):(?=\/\/))?(?:(?:\/\/)?(?:([^\/?#:]+)(?::([^\/?#]+))?@)?([^\/?#@:]*)(?::(\d+))?)?([^?#]*)(?:\?([^#]*))?(?:#(.*))?$/

(Alles op 1 regel, uiteraard, en zonder spaties.)

Wie mij kan vertellen waar ik mee bezig was, is een eindbaas.
Om het makkelijker te maken, zal ik erbij vertellen dat ik in JavaScript aan het programmeren was.

Waarmee hij 2 jaar na zijn afscheid van de IT zijn titel Koning van de Regular Expressions toch nog prolongeerde…
😉