Anfang letztes Jahr haben wir eine holzbefeuerte Blockbohlensauna gebaut. Gut, das mag jetzt keinen interessieren, und deswegen habe ich das auch bisher hier nicht veröffentlicht; aber bedingt durch die Google-Mafia fühle ich mich jetzt doch dazu bewogen. Die Kurzfassung der Vorgeschichte:
Es gibt nicht viele Hersteller von Saunaöfen, die mit Holz befeuert werden. Bei der Planung der Sauna sind wir nach einiger Recherche auf die Firma Fintec gestoßen. Und deren Firmensitz ist tatsächlich in Münchberg! Quasi vor der Haustür. Letztlich haben wir auch wirklich unseren Ofen da gekauft, und selbst mit dem Hänger abgeholt. Es ist das Modell Lora geworden.
Herr Schmidt von der Firma Fintec hat uns bei der Planung der Sauna und der Auswahl des Ofens hervorragend beraten. Und sehr geduldig viele, viele E-Mails von mir beantwortet. Nachdem wir die Sauna nun schon wirklich oft benutzt haben (und mittlerweile auch wissen, wie man anschüren muss, wann man nachlegen muss, wie man überhaupt mit dem Ofen umgehen muss), habe ich mir gedacht, ich tue der heimischen Wirtschaft mal was Gutes und schreibe eine Google-Bewertung. Meine erste Google-Bewertung.
Google-Bewertung
Hier meine Fünf-Sterne-Bewertung für die Firma Fintec, mit einem schicken Bild unseres heißgeliebten Saunaofens in action:
Sehr freundlicher und kompetenter Kontakt! Wir wurden beim Bau unserer Blockbohlensauna sehr gut beraten, und der Holzofen (Lora) funktioniert hervorragend. Bei der Abnahme durch den Bezirkskaminkehrermeister gab es erwartungsgemäß keine Probleme. Äußerst empfehlenwert! Sicher nicht die günstigsten Öfen, aber das Geld wert.
Google mag mich nicht
Die Bewertung konnte ich mir auch gleich auf Google Maps anschauen. Auf meinem Computer, und auf meinem Handy. Meine Frau aber nicht. Weil Google hat die Bewertung nicht veröffentlicht.
Ich dachte schon, ich habe etwas falsch gemacht. Privacy-Settings angeschaut, alles geprüft. Alles passt. Die Bewertung nochmal gelöscht, und nochmal geschrieben (vielleicht einen Haken vergessen oder so?) – selbes Ergebnis.
Herrn Schmidt habe ich dann geschrieben, dass ich Ihn gerne positiv bewertet hätte, aber Google scheinbar meine Rezension nicht mag. Der hat dann bei Google Business angefragt, wie das zu Stande kommt, und bekam folgende Antwort:
Hallo Herr Schmidt,
vielen Dank, dass Sie sich mit Ihrer Anfrage an unser Google Business Profile-Support-Team gewandt haben. Wir können gut nachvollziehen, wie wichtig Rezensionen für Sie und Ihr Unternehmen sind. Leider darf ich keine Auskunft darüber geben, wieso eine Rezension entfernt wurde. Weiterhin wird dies von Algorithmen durchgeführt, auf die ich keinen Einfluss habe. Ich bitte hierbei um Ihr Verständnis und bedauere mögliche Unannehmlichkeiten, die Ihnen dies bereitet. Falls Sie weitere Unterstützung bei diesem Problem benötigen, antworten Sie einfach auf diese E-Mail. Wir helfen Ihnen dann gern weiter. Bei Fragen zu anderen Themen können Sie sich jederzeit über die Google Unternehmensprofil-Hilfe mit uns in Verbindung setzen.
Google hat also meine Rezension „entfernt“. Alles klar, sieht ja auch wirklich aus wie eine gekaufte Bewertung aus einer chinesischen Clickfarm. Da kann man mal sehen, dass hier seitens der Monopolisten vollkommene Willkür herrscht.
Mir persönlich ist vollkommen schleierhaft, wieso Google hier so vorgeht. Und selbst nach einer Anfrage des Unternehmens, das das betrifft, nichts ändert. Vermutlich liegt es daran, dass ich kein guter Google-Kunde bin. Ich benutze keine Gmail-Adresse (ich betreibe sogar meinen eigenen Mailserver :-O), habe alles, was Personalisation, Tracking und dergleichen betrifft, in meinem Google-Konto deaktiviert, und alle Google-Apps auf meinem Handy, bei denen das möglich war, durch freie Alternativen von F-Droid ersetzt. Böse, böse.
Aber das sollte bitte nicht zu Lasten eines Unternehmens gehen, was gute Arbeit macht. Es kann ja wohl nicht wahr sein, dass eine ehrlich gemeinte positive Bewertung für eine Anschaffung jenseits der 1000 € von Google „entfernt“ wird, ohne zumindest die Gründe dafür zu nennen. Ich meine, wir reden hier nicht von einer Amazon-Bewertung für irgendwelchen China-Elektronik-Schrott für 10 €!
Ich habe dann auch noch versucht, meine Rezension ein bisschen ausführlicher und kritischer zu formulieren:
Sehr freundlicher und kompetenter Kontakt!
Wir wurden bei der Planung und dem Bau unser Blockbohlensauna gut beraten (war kein Bausatz, sondern ein kompletter Eigenbau), und der Holzofen Lora funktioniert 1A. Bei der Abnahme durch den Bezirkskaminkehrermeister gab es keine Probleme.
Vermutlich corona-bedingt hat die Lieferung zwar etwas auf sich warten lassen, aber der Service war gut: Zwei fehlende Teile wurden prompt nachgeliefert. Die Halterungen für den Rauchschlot, die sich als zu lang herausstellten, wurden anstandslos gegen kürzere umgetauscht.
Alles in allem empfehlenswert! Sicher nicht die günstigsten Öfen, aber das Geld wert. Zumal wir in unserem Fall mit dem Kauf auch noch die heimische Wirtschaft unterstützen konnten :-)
… aber allzu kritisch dann eben doch nicht, weil wir eben wirklich zufrieden sind. Selbes Ergebnis, Rezension nicht veröffentlicht.
Fazit
Was lernen wir daraus? Monopolisten wie Google handeln vollkommen willkürlich und scheren sich einen Dreck darum, was sie damit anrichten. Da kann eine Firma wie Fintec froh sein, die vernünftige Arbeit macht, und ihr Geschäftsmodell nicht nur darauf auslegt, dass die Internet-Mafia ihnen wohlgesonnen ist.
Mal wieder zeigt sich: Traut keinen Internet-Bewertungen (ich als Zahnarzt auf dem Dorf kann gottlob kein Lied davon singen, aber hätte ich meine Praxis in einer Großstadt, sähe das vermutlich anders aus). Macht euch selbst ein Bild! Fragt andere! Ganz oldschool „IRL“! Weil wie objektiv die Technik-Giganten vorgehen, kann man ja an diesem Beispiel sehen.
Und wenn ihr eine Sauna baut (wo, wenn nicht in Nordostoberfranken sollte man sich eine Sauna bauen): Schaut euch die Öfen von Fintec an und unterstützt die nordostoberfränkische Wirtschaft ;-)
Most notably, vsmlist now deals with SPF, DKIM and DMARC. From the ChangeLog:
Enhancement: Using bind-tools' dig, vsmlist now looks up if a sender's domain sets a DMARC policy that could lead to delivery problems. If so, the sender's original mail is wrapped into a new one and sent from the mailing list itself, letting DMARC pass (provided the mail server does correct DKIM signing and SPF has been setup properly).
Enhancement: Added bounces handling through setting the Return-Path and Errors-To headers to a list bounces address. Mail sent to this address is forwarded to the list admin. This also leads to the SPF setting being okay, as the Reply-To header matches the Sender.
Enhancement: Added Sender, List-Id and List-Unsubscribe headers
Bugfix: Fixed a configparser deprecation warning with Python >= 3.2.
Change: The "subscribers" command has been removed.
Enhancement: Added a "help" command sending an email with all command email addresses.
Enhancement: Added options to send an email to the list's admin if a member is added or removed to or from a mailing list.
Enhancement: Added custom "host" and "port" paramters of smtplib.SMTP to the config.
Back in the days I started playing around with mail servers, it was an easy and peaceful life. Either, you had a static IP address, or you used a relay host – and you were done and could send emails. This was also the time I started writing vsmlist, as I didn't want to mess around with Mailman to setup a mailing list for a handful of people.
Well, things have changed quite a bit since then. I learned that the hard way, because I set up my own "real" mail server some months ago. Mostly, because I didn't want some big company read my mails anymore, and also because I wanted to have Sieve. And that's something even the paid mail hosters don't provide – for whatever reason.
So here we go. Nowadays, you need a static IP address, a PTR record pointing to the mail domain you're sending from, the SPF policy set, DKIM signing and a DMARC policy. And despite everything being setup correctly, your IPs being not listed in any blacklist, even being listed in some whitelists, and not a single spam mail ever having been sent through your server, you're still blocked by some mail servers. Perhaps, because they never saw your server before, and thus simply claim you're a spammer. A spammer following all best practices in existance, but a spammer. Or for whatever reason. Who knows.
It has become a hard job to run an own mail server. But anyway, one should not leave the field to the monopolists and data krakens. But here, we are back at vsmlist.
vsmlist matures
The last release of vsmlist dates back to 2015. So it really needed some love concerning what a mail server needs or does nowadays. Some updates have been made, and this is what we have now:
SPF
SPF, the "Sender Policy Framework", is an email authentication method designed to detect forging sender addresses during the delivery of the email. SPF is not a problem with vsmlist. It now sets the Return-Path header to a bounce address (which is forwarded to the mailing list's admin). This makes SPF pass on a forwarded email, presumed the SPF record for the domain used for list is setup correctly.
DKIM
DKIM, "DomainKeys Identified Mail", is an email authentication method designed to detect forged sender addresses in email. DKIM is also not a problem. Classical mailing lists invalidated DKIM signatures by changing the subject (e. g. prepending "[Some List]" or such) and/or appending some information about the list (archives etc.) to the text. Vsmlist never did this. By leaving the original mail untouched, DKIM signatures stay intact. If the mail server running vsmlist does DKIM signing, another signature is added to the mail when distributing it. Both are valid.
DMARC
DMARC, "Domain-based Message Authentication, Reporting and Conformance", is an email authentication protocol to protect domains being used unauthorizedly (e. g. for spoofing). It's a disputed standard. It breaks RFC 5322 and causes a lot of problems with mailing lists.
DMARC checks if either SPF is okay, or DKIM, or both – and if all components use the same domain.
The problem is that a mail is typically sent to the mailing list, which then distributes it. So, according to the standard, the list becomes the Sender whereas the original sender stays the author, represented in From. This is an intended use-case for emails.
Example: An email from an @gmx.de account is sent through vsmlist. From is the @gmx.de address. Return-Path is set to the domain where vsmlist runs, e. g. an @some-domain.org address. The same address is used for the Sender address. SPF will pass, and also, GMX's DKIM signature will be evaluated to be correct. But still, DMARC will fail, because From differs from Return-Path. According to RFC 5322, DMARC should check the Sender header, not the From header. But it doesn't.
There's no solution to this. There are workarounds to migitate deliverability problems, but all with drawbacks (e. g. the original sender is lost, replying to the list creates a private answer and not a list answer and so on – all that sucks).
The workaround I chose for vsmlist is to wrap the original mail into a completely new one along with some notice if the DMARC policy of the original sender will cause troubles. This sucks as much as all the other workarounds, but at least, it leads to an "aligned" mail passing SPF, DKIM and also DMARC – and it preserves the original mail.
One should really think about boycotting stuff like DMARC, designed to break things and to cause trouble. But after all, most end-user have never even heard about that stuff. Anyway, vsmlist will be ready for an up-to-date use beginning with the next release :-)
After quite some time, a few things changed, so let's do another release of of gpx2svg, the program to convert GPX to SVG. So what's new?
gpx2svg now supports true-scale conversion using a WGS84 projection (see the --help output on how to use it). Big thanks to Hans Busch for contributing the respective code!
The project is now licensed under the terms of the GPLv3 or later (and uses SPDX license identifiers).
Let's use reasonable versioning from now on. Okay, we keep version 0 for now, but bugfix releases (x.y.*) are now easiliy distinguishable from releases adding new features (x.*.0).
Not much more to say, the code still does the one thing it was written to do ;-) Thanks again to Hans for supplying the initial patch! Have a lot of fun with gpx2svg!