<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:webfeeds="http://webfeeds.org/rss/1.0">
  <channel>
    <title>Guido Flohr - System Administration</title>
    <description>Administration of Unix, Linux, Mac OS X ...</description>
    <link>https://www.guido-flohr.net/</link>
    <webfeeds:cover image="http://www.guido-flohr.net/assets/images/gfl-profile.jpeg" />
    <atom:link href="https://www.guido-flohr.net/" rel="self" type="application/rss+xml"/>

    <pubDate>Fri, 24 Oct 2025 09:17:39 +0000</pubDate>
    <lastBuildDate>Fri, 24 Oct 2025 09:17:39 +0000</lastBuildDate>
    <generator>Qgoda vv0.11.0 (https://www.qgoda.net/)</generator>
      
      <item>
        <title>Compiling ImageMagick for Perl</title>
        <description>Compiling PerlMagick, the Perl binding for ImageMagick, is a major pain in the neck, as it almost never works out of the box. Check out this blog post to discover an effortless solution to that tedious task. Say goodbye to manual tinkering and compiling headaches and hello to use Image::Magick!</description>
        <pubDate>Wed, 08 May 2024 21:00:00 +0000</pubDate>
        <link>https://www.guido-flohr.net/compiling-perlmagick/index.html</link>
        <guid isPermaLink="true">https://www.guido-flohr.net/compiling-perlmagick/index.html</guid>
        
        <category>Development</category>
        
        <category>Perl</category>
        
        
        <category>Development</category>
        
        <category>System Administration</category>
        
      </item>
      
      <item>
        <title>Authenticating Access to Private Content Hosted with AWS CloudFront</title>
        <description>&lt;img src="/assets/images/authenticating-access-to-private-content-hosted-with-aws-cloudfront/metal-padlock-on-keyboard.jpeg" width="100%"&gt;Setting up a static website, uploading it into an S3 bucket that serves as the origin of a CloudFront distribution is a simple and cheap solution. But what if you want to control access to the content? HTTP basic authentication no longer seems to work and is clumsy and ugly anyways. But signed cookies give you a better solution at hand and it is easy to implement with serverless computing.</description>
        <pubDate>Wed, 06 Mar 2024 22:00:00 +0000</pubDate>
        <link>https://www.guido-flohr.net/authenticating-access-to-private-content-hosted-with-aws-cloudfront/index.html</link>
        <guid isPermaLink="true">https://www.guido-flohr.net/authenticating-access-to-private-content-hosted-with-aws-cloudfront/index.html</guid>
        
        <category>Web</category>
        
        <category>Security</category>
        
        <category>AWS</category>
        
        <category>CloudFront</category>
        
        <category>Lambda</category>
        
        <category>S3</category>
        
        <category>JavaScript</category>
        
        
        <category>Development</category>
        
        <category>System Administration</category>
        
      </item>
      
      <item>
        <title>Postfix, Amavis, and ClamAV Extremely Slow</title>
        <description>I was recently experiencing longer and longer delays for incoming mail delivered by Postfix to Dovecot. In the end, it turned out to be a simple permission problem: ClamAV was not able to read Amavis&apos; files, and obviously waited for a timeout for every single mail.</description>
        <pubDate>Sun, 01 Dec 2019 22:00:00 +0000</pubDate>
        <link>https://www.guido-flohr.net/postfix-amavis-and-clamav-extremely-slow/index.html</link>
        <guid isPermaLink="true">https://www.guido-flohr.net/postfix-amavis-and-clamav-extremely-slow/index.html</guid>
        
        <category>Amavis</category>
        
        <category>ClamAV</category>
        
        <category>Postfix</category>
        
        <category>Mail</category>
        
        <category>MTA</category>
        
        <category>Virus Scanning</category>
        
        
        <category>System Administration</category>
        
      </item>
      
      <item>
        <title>How to Use Saved Passwords Everywhere</title>
        <description>&lt;img src="/assets/images/how-to-use-saved-passwords-everywhere/post-it-password.jpeg" width="100%"&gt;Some web sites and applications prevent users from using previously saved credentials. There a very few legitimate reasons to do so. In the vast majority of cases, such measures just patronize users, often those people that actually keep up the service with their financial support. But it is actually quite simple to bypass such paranoid settings.</description>
        <pubDate>Mon, 11 Feb 2019 22:00:00 +0000</pubDate>
        <link>https://www.guido-flohr.net/how-to-use-saved-passwords-everywhere/index.html</link>
        <guid isPermaLink="true">https://www.guido-flohr.net/how-to-use-saved-passwords-everywhere/index.html</guid>
        
        <category>Security</category>
        
        <category>Passwords</category>
        
        
        <category>System Administration</category>
        
      </item>
      
      <item>
        <title>Syslog-ng Unique Persist Names</title>
        <description>I want mail logs in a separate log file /var/log/mail so that postfix and dovecot messages are not be buried in /var/log/message. While upgrading to syslog-ng to version 3.13.2 I suddenly ran into an error that prevented the daemon to start. The error message was:</description>
        <pubDate>Wed, 08 Aug 2018 21:00:00 +0000</pubDate>
        <link>https://www.guido-flohr.net/syslog-ng-unique-persist-names/index.html</link>
        <guid isPermaLink="true">https://www.guido-flohr.net/syslog-ng-unique-persist-names/index.html</guid>
        
        <category>Syslog-ng</category>
        
        <category>Linux</category>
        
        
        <category>System Administration</category>
        
      </item>
      
      <item>
        <title>Simple Single Sign-On Part 1 - (Open)LDAP</title>
        <description>&lt;img src="/assets/images/simple-single-sign-on/sso.svg" width="100%"&gt;Individual user and password databases for every single service in a network are a nuisance for users and for admins, especially when users have a tendency of forgotting their password. Using LDAP for a centralized user management is less complicated than you might think. Even in a SOHO (Small Office/Home Office) environment LDAP is not overkill. Setting it up will pay out in little time.</description>
        <pubDate>Fri, 09 Jun 2017 21:00:00 +0000</pubDate>
        <link>https://www.guido-flohr.net/simple-single-sign-on-part-1-openldap/index.html</link>
        <guid isPermaLink="true">https://www.guido-flohr.net/simple-single-sign-on-part-1-openldap/index.html</guid>
        
        <category>Single-Sign-On</category>
        
        <category>LDAP</category>
        
        <category>Linux</category>
        
        <category>OpenLDAP</category>
        
        
        <category>System Administration</category>
        
      </item>
      
      <item>
        <title>Group Authentication For Nginx</title>
        <description>The access control system of Nginx lacks an equivalent for Apache&apos;s group based access control. But it is easy to emulate this Apache feature with a little bit of scripting.</description>
        <pubDate>Tue, 13 Sep 2016 21:00:00 +0000</pubDate>
        <link>https://www.guido-flohr.net/group-authentication-for-nginx/index.html</link>
        <guid isPermaLink="true">https://www.guido-flohr.net/group-authentication-for-nginx/index.html</guid>
        
        <category>System Administration</category>
        
        <category>Web Development</category>
        
        <category>Nginx</category>
        
        <category>Perl</category>
        
        
        <category>System Administration</category>
        
        <category>Development</category>
        
      </item>
      
      <item>
        <title>Simple Content Negotiation For Nginx</title>
        <description>Content negotiation is a key concept for multi language web sites. For Nginx it is only available as a patch. But negotiating the language is a rather trivial task for most sites. Instead of patching the web server, a couple of lines of Perl code will also do the job.</description>
        <pubDate>Sun, 28 Feb 2016 22:00:00 +0000</pubDate>
        <link>https://www.guido-flohr.net/simple-content-negotiation-for-nginx/index.html</link>
        <guid isPermaLink="true">https://www.guido-flohr.net/simple-content-negotiation-for-nginx/index.html</guid>
        
        <category>System Administration</category>
        
        <category>Web Development</category>
        
        <category>Nginx</category>
        
        <category>Perl</category>
        
        
        <category>System Administration</category>
        
        <category>Development</category>
        
      </item>
      
      <item>
        <title>Multilingual Web Sites with Jekyll</title>
        <description>After waiting years on my TODO list I recently decided to tackle the project &quot;web site&quot;. Since I no longer work for Imperia I was looking for a light-weight alternative. I did not want to install PHP on my server, ruling out a lot of options. A colleague finally recommended Jekyll. Its simple semi-static approach reminded me of Imperia and I decided to give it a shot.</description>
        <pubDate>Fri, 26 Feb 2016 22:00:00 +0000</pubDate>
        <link>https://www.guido-flohr.net/multilang-with-jekyll/index.html</link>
        <guid isPermaLink="true">https://www.guido-flohr.net/multilang-with-jekyll/index.html</guid>
        
        <category>Web Development</category>
        
        <category>CMS</category>
        
        <category>I18N</category>
        
        <category>Static Site Generators</category>
        
        <category>System Administration</category>
        
        <category>Development</category>
        
        <category>Jekyll</category>
        
        <category>Multi-Language</category>
        
        
        <category>System Administration</category>
        
        <category>Development</category>
        
      </item>
      
  </channel>
</rss>
