<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="../assets/xml/rss.xsl" media="all"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>SleepMap (Posts about systemd)</title><link>https://sleepmap.de/</link><description></description><atom:link href="https://sleepmap.de/categories/systemd.xml" rel="self" type="application/rss+xml"></atom:link><language>en</language><copyright>Contents © 2022 &lt;a href="mailto:dave@sleepmap.de"&gt;David Runge&lt;/a&gt; 
&lt;a rel="license" href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;CC BY-NC-SA 4.0&lt;/a&gt;</copyright><lastBuildDate>Mon, 12 Dec 2022 10:30:52 GMT</lastBuildDate><generator>Nikola (getnikola.com)</generator><docs>http://blogs.law.harvard.edu/tech/rss</docs><item><title>Securely serving webapps using uWSGI</title><link>https://sleepmap.de/2016/securely-serving-webapps-using-uwsgi/</link><dc:creator>David Runge</dc:creator><description>&lt;div&gt;&lt;div class="line-block"&gt;
&lt;div class="line"&gt;Ever since I have been running my own &lt;a href="https://archlinux.org" target="_blank"&gt;Arch Linux&lt;/a&gt; box to serve my services, I used &lt;a href="https://www.nginx.org/" target="_blank"&gt;nginx&lt;/a&gt; in conjunction with &lt;a href="https://projects.unbit.it/uwsgi" target="_blank"&gt;uWSGI&lt;/a&gt;.&lt;/div&gt;
&lt;div class="line"&gt;So instead of using &lt;a href="https://php-fpm.org/" target="_blank"&gt;php-fpm&lt;/a&gt; and be limited to just &lt;a href="https://secure.php.net/" target="_blank"&gt;PHP&lt;/a&gt;, I can use a single application server to do all of them (&lt;a href="https://en.wikipedia.org/wiki/Common_Gateway_Interface" target="_blank"&gt;CGI&lt;/a&gt;, &lt;a href="https://www.python.org/" target="_blank"&gt;Python&lt;/a&gt;, &lt;a href="https://secure.php.net/" target="_blank"&gt;PHP&lt;/a&gt; and even the stuff I don't use, such as &lt;a href="https://rack.github.io/" target="_blank"&gt;Ruby Rack&lt;/a&gt;, &lt;a href="http://www.mono-project.com/" target="_blank"&gt;Mono&lt;/a&gt;, &lt;a href="https://www.java.com/en/" target="_blank"&gt;Java&lt;/a&gt;, &lt;a href="https://www.lua.org/" target="_blank"&gt;Lua&lt;/a&gt;, &lt;a href="https://www.perl.org/" target="_blank"&gt;Perl&lt;/a&gt;, &lt;a href="http://www.webdav.org/" target="_blank"&gt;WebDAV&lt;/a&gt;). They are all separately installable as plugins.&lt;/div&gt;
&lt;div class="line"&gt;Static sites, such as this, default to being served by &lt;a href="https://www.nginx.org/" target="_blank"&gt;nginx&lt;/a&gt; directly of course.&lt;/div&gt;
&lt;div class="line"&gt;Over time I found &lt;a href="https://projects.unbit.it/uwsgi" target="_blank"&gt;uWSGI&lt;/a&gt; to be a very versatile and powerful piece of software that has many advantages (over e.g. &lt;a href="https://httpd.apache.org/" target="_blank"&gt;Apache&lt;/a&gt;):&lt;/div&gt;
&lt;/div&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;p&gt;socket activation&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;webapp encapsulation and jailing&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;self-healing&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;being able to separetely manage services&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;exit after idle&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="line-block"&gt;
&lt;div class="line"&gt;I'll explain the services I use (&lt;a href="https://mantisbt.org/" target="_blank"&gt;MantisBT&lt;/a&gt;, &lt;a href="https://roundcube.net/" target="_blank"&gt;roundcube&lt;/a&gt;, &lt;a href="https://owncloud.org" target="_blank"&gt;ownCloud&lt;/a&gt;, &lt;a href="http://list.org/" target="_blank"&gt;Mailman&lt;/a&gt;, &lt;a href="https://github.com/claudehohl/Stikked" target="_blank"&gt;Stikked&lt;/a&gt;, &lt;a href="https://wordpress.org" target="_blank"&gt;Wordpress&lt;/a&gt;, &lt;a href="http://postfixadmin.sourceforge.net/" target="_blank"&gt;Postfixadmin&lt;/a&gt;, &lt;a href="https://www.phpmyadmin.net/" target="_blank"&gt;phpMyAdmin&lt;/a&gt;, &lt;a href="https://git.zx2c4.com/cgit/" target="_blank"&gt;cgit&lt;/a&gt;, &lt;a href="https://www.mediawiki.org/wiki/MediaWiki" target="_blank"&gt;MediaWiki&lt;/a&gt;, &lt;a href="http://etherpad.org" target="_blank"&gt;Etherpad&lt;/a&gt; ) along with configuration examples and their possible pitfalls.&lt;/div&gt;
&lt;div class="line"&gt;In my last post about &lt;a class="reference external" href="https://sleepmap.de/2016/2016/lets-encrypt-it-all"&gt;Let's Encrypt&lt;/a&gt; I already showed some examples on how to configure &lt;a href="https://www.nginx.org/" target="_blank"&gt;nginx&lt;/a&gt; for the use with &lt;a href="https://projects.unbit.it/uwsgi" target="_blank"&gt;uWSGI&lt;/a&gt;. Let's jump right in.&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;a href="https://sleepmap.de/2016/securely-serving-webapps-using-uwsgi/"&gt;Read more…&lt;/a&gt; (20 min remaining to read)&lt;/p&gt;&lt;/div&gt;</description><category>application server</category><category>arch linux</category><category>cgit</category><category>mediawiki</category><category>nginx</category><category>owncloud</category><category>php</category><category>python</category><category>redis</category><category>roundcube</category><category>security</category><category>sockets</category><category>systemd</category><category>uwsgi</category><category>webapps</category><category>wordpress</category><guid>https://sleepmap.de/2016/securely-serving-webapps-using-uwsgi/</guid><pubDate>Sat, 08 Oct 2016 07:00:00 GMT</pubDate></item><item><title>Let's encrypt it all</title><link>https://sleepmap.de/2016/lets-encrypt-it-all/</link><dc:creator>David Runge</dc:creator><description>&lt;div&gt;&lt;div class="line-block"&gt;
&lt;div class="line"&gt;For a couple of months now I have been using &lt;a href="https://letsencrypt.org" target="_blank"&gt;Let's Encrypt&lt;/a&gt; to generate free and valid certificates for all the services I run.&lt;/div&gt;
&lt;div class="line"&gt;In many places the free &lt;a href="https://en.wikipedia.org/wiki/Certificate_authority" target="_blank"&gt;Certificate Authority&lt;/a&gt; (short CA) has spread like wild-fire. From small to large scale services, many adopted it and &lt;a href="https://letsencrypt.org/2016/03/08/our-millionth-cert.html" target="_blank"&gt;the amount of issued certificates has grown over 1 million in just four months&lt;/a&gt;.&lt;/div&gt;
&lt;div class="line"&gt;As a visitor to this website you have probably noticed the small green lock sign next to the address bar. The certificate used for this website is accepted to be valid by your browser (and also by your operating system).&lt;/div&gt;
&lt;div class="line"&gt;If you're up for some background knowledge, just read on. If you're up for some hands-on technical stuff, &lt;a class="reference external" href="https://sleepmap.de/2016/lets-encrypt-it-all/#letsencrypt-howto"&gt;jump right on to the howto&lt;/a&gt;.&lt;/div&gt;
&lt;div class="line"&gt;Just note: This is a veeeeeeery long article in any case.&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;a href="https://sleepmap.de/2016/lets-encrypt-it-all/"&gt;Read more…&lt;/a&gt; (16 min remaining to read)&lt;/p&gt;&lt;/div&gt;</description><category>acme</category><category>arch linux</category><category>certbot</category><category>certificate</category><category>dovecot</category><category>hidden service</category><category>letsencrypt</category><category>nginx</category><category>openssl</category><category>owncloud</category><category>postfix</category><category>prosody</category><category>roundcube</category><category>security</category><category>ssl</category><category>systemd</category><category>tls</category><category>vpn</category><guid>https://sleepmap.de/2016/lets-encrypt-it-all/</guid><pubDate>Thu, 29 Sep 2016 18:00:00 GMT</pubDate></item><item><title>Linux Audio Conference 2015</title><link>https://sleepmap.de/2015/linux-audio-conference-2015/</link><dc:creator>David Runge</dc:creator><description>&lt;div&gt;&lt;div class="line-block"&gt;
&lt;div class="line"&gt;It's been quite some time since my last post.&lt;/div&gt;
&lt;div class="line"&gt;But I have not been lazy!&lt;/div&gt;
&lt;div class="line"&gt;&lt;br&gt;&lt;/div&gt;
&lt;div class="line"&gt;I will be attending this year's &lt;a href="http://lac.linuxaudio.org/2015/" target="_blank"&gt;Linux Audio Conference&lt;/a&gt;) in Mainz. Not only as a guest (I seriously hope I will have the time to just snoop around), but mainly for setting up the 8 channel version of &lt;em&gt;"The Sound Of People"&lt;/em&gt; and to give a workshop on &lt;em&gt;"Arch Linux as a lightweight audio platform"&lt;/em&gt;.&lt;/div&gt;
&lt;div class="line"&gt;You can find my information for the event &lt;a href="http://lac.linuxaudio.org/2015/speakers?uid=61" target="_blank"&gt;here&lt;/a&gt;.&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;a href="https://sleepmap.de/2015/linux-audio-conference-2015/"&gt;Read more…&lt;/a&gt; (1 min remaining to read)&lt;/p&gt;&lt;/div&gt;</description><category>arch linux</category><category>lac</category><category>pro-audio</category><category>real-time</category><category>systemd</category><category>thesoundofpeople</category><guid>https://sleepmap.de/2015/linux-audio-conference-2015/</guid><pubDate>Fri, 03 Apr 2015 04:00:00 GMT</pubDate></item><item><title>SSH tunnel with single hop, using systemd-networkd and autossh</title><link>https://sleepmap.de/2015/ssh-tunnel-with-single-hop-using-systemd-networkd-and-autossh/</link><dc:creator>David Runge</dc:creator><description>&lt;div&gt;&lt;div class="line-block"&gt;
&lt;div class="line"&gt;Recently I had the pleasure of setting up a &lt;abbr title="Secure Shell"&gt;SSH&lt;/abbr&gt; tunnel between two virtual machines that share no route and are located in two different subnets.&lt;/div&gt;
&lt;div class="line"&gt;They can however reach each other via SSH, hopping their host.&lt;/div&gt;
&lt;div class="line"&gt;Let's assume the following setup:&lt;/div&gt;
&lt;/div&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;client1&lt;/strong&gt; (Arch Linux) has &lt;em&gt;10.0.5.2/24&lt;/em&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;client2&lt;/strong&gt; (Arch Linux) has &lt;em&gt;10.0.6.2/24&lt;/em&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;host&lt;/strong&gt; (Debian) is &lt;em&gt;10.0.5.1/24&lt;/em&gt; to &lt;strong&gt;client1&lt;/strong&gt; and &lt;em&gt;10.0.6.1/24&lt;/em&gt; to &lt;strong&gt;client2&lt;/strong&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="line-block"&gt;
&lt;div class="line"&gt;As I needed the two clients to be able to send mail to each other and reach each others' services, I did some digging and opted for a SSH connection using &lt;abbr title="network TUNnel (virtual-network kernel devices)"&gt;TUN&lt;/abbr&gt; devices (aka. "poor man's &lt;abbr title="Virtual Private Network"&gt;VPN&lt;/abbr&gt;").&lt;/div&gt;
&lt;div class="line"&gt;The following is needed to set this up:&lt;/div&gt;
&lt;/div&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;p&gt;root access on both virtual machines (&lt;strong&gt;client1&lt;/strong&gt; &amp;amp; &lt;strong&gt;client2&lt;/strong&gt;)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;a user account on the &lt;strong&gt;host&lt;/strong&gt; system&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;SSH (&lt;a href="http://openssh.com" target="_blank"&gt;OpenSSH&lt;/a&gt; assumed) installed on all three machines&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a href="https://sleepmap.de/2015/ssh-tunnel-with-single-hop-using-systemd-networkd-and-autossh/"&gt;Read more…&lt;/a&gt; (3 min remaining to read)&lt;/p&gt;&lt;/div&gt;</description><category>arch linux</category><category>autossh</category><category>postfix</category><category>ssh</category><category>systemd</category><category>systemd.network</category><category>TUN</category><category>tunnel</category><guid>https://sleepmap.de/2015/ssh-tunnel-with-single-hop-using-systemd-networkd-and-autossh/</guid><pubDate>Sun, 01 Feb 2015 18:00:00 GMT</pubDate></item></channel></rss>