<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Networking – Yeri Tiete</title>
    <link>https://yeri.be/category/networking/</link>
    <description>Yeri Tiete&#39;s blog</description>
    <language>en</language>
    <copyright>© Yeri Tiete</copyright>
    <lastBuildDate>Tue, 14 Oct 2025 18:53:14 +0200</lastBuildDate>
    <atom:link href="https://yeri.be/category/networking/index.xml" rel="self" type="application/rss+xml" />
    
    <item>
      <title>Unifi u6&#43; failing to upgrade</title>
      <link>https://yeri.be/unifi-u6-failing-to-upgrade/</link>
      <pubDate>Tue, 14 Oct 2025 18:53:14 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/unifi-u6-failing-to-upgrade/</guid>
      <description>&lt;p&gt;I have quite a few sites where some Unifi U6+ Access Points fail to upgrade with a generic update failed message. &lt;/p&gt;&#xA;&lt;p&gt;&lt;code&gt;Marquis WiFi Vergaderruimte 4 update failed.&lt;/code&gt;&lt;/p&gt;&#xA;&lt;p&gt;I&#39;ve tried everything, from &lt;code&gt;ssh&lt;/code&gt;&#39;ing, factory resetting with &lt;code&gt;set-default&lt;/code&gt;, to manually upgrading with &lt;code&gt;upgrade&lt;/code&gt;, etc. &lt;/p&gt;&#xA;&lt;p&gt;Nothing worked. I thought I had a bunch of bad APs (and many had their warranty expire by a few weeks or months). &lt;/p&gt;&#xA;&lt;p&gt;As a last resort, I decide to reach out to Ubiquiti&#39;s support. First line wasn&#39;t very helpful, but as the case was escalated, I&#39;ve managed to recover and properly update the APs. &lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>I have quite a few sites where some Unifi U6+ Access Points fail to upgrade with a generic update failed message. </p>
<p><code>Marquis WiFi Vergaderruimte 4 update failed.</code></p>
<p>I've tried everything, from <code>ssh</code>'ing, factory resetting with <code>set-default</code>, to manually upgrading with <code>upgrade</code>, etc. </p>
<p>Nothing worked. I thought I had a bunch of bad APs (and many had their warranty expire by a few weeks or months). </p>
<p>As a last resort, I decide to reach out to Ubiquiti's support. First line wasn't very helpful, but as the case was escalated, I've managed to recover and properly update the APs. </p>
<p>The trick is to <code>ssh</code> into the device and run the following code: </p>
<p><code>curl -fs <a href="https://dl.ui.com/firmwares/uap/jw/U6Rescue.sh" target="_blank" rel="noreferrer noopener"><u>https://dl.ui.com/firmwares/uap/jw/U6Rescue.sh</u></a> | sh</code></p>
<p>The device will reboot and pop by up in the dashboard after 2-3 minutes. Then try to update again, and all should work. </p>
<p>Not really sure what's going on here but ... </p>
]]></content:encoded>
      <category>Errors</category><category>Hardware</category><category>Linux</category><category>Networking</category>
      <category>ubiquiti</category><category>wifi</category>
    </item>
    
    <item>
      <title>The Future is here</title>
      <link>https://yeri.be/the-future-is-here/</link>
      <pubDate>Wed, 31 Jul 2024 17:18:51 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/the-future-is-here/</guid>
      <description>&lt;p&gt;Never have any cell signal in parking spaces in Belgium, but at least &lt;a href=&#34;https://blog.flatturtle.com/connected-parkings/&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34;&gt;now we (and the cars) have WiFi&lt;/a&gt;! :) &lt;/p&gt;&#xA;&lt;p&gt;Another 8 buildings connected (including outdoor WiFi in the park, and in the shared indoor spaces). &lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>Never have any cell signal in parking spaces in Belgium, but at least <a href="https://blog.flatturtle.com/connected-parkings/" target="_blank" rel="noreferrer noopener">now we (and the cars) have WiFi</a>! :) </p>
<p>Another 8 buildings connected (including outdoor WiFi in the park, and in the shared indoor spaces). </p>
]]></content:encoded>
      <category>Networking</category>
      <category>flatturtle</category><category>wifi</category>
    </item>
    
    <item>
      <title>Home Assistant: Zigbee routers</title>
      <link>https://yeri.be/home-assistant-zigbee-routers/</link>
      <pubDate>Thu, 13 Jun 2024 12:40:39 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/home-assistant-zigbee-routers/</guid>
      <description>&lt;p&gt;In my Home Assistant quest and simplifying (not sure if that&#39;s actually happening) and getting more control (aka less reliant on the cloud and 3rd parties) I&#39;ve been playing with Zigbee.&lt;/p&gt;&#xA;&lt;p&gt;Zigbee is quite cool because it&#39;s a mesh network. As I used it before with my &lt;a href=&#34;https://yeri.be/tag/homeassistant/&#34;&gt;Philips Hue&lt;/a&gt; bulbs, I was eager to expand and play with Zigbee.&lt;/p&gt;&#xA;&lt;p&gt;First thing first. Not all routers are equal. I&#39;ve got &lt;a href=&#34;https://www.aliexpress.com/item/1005006812746892.html&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34;&gt;these two smart power plugs&lt;/a&gt; as an example (Grey and Blue colour, v2 with HomeKit support) and they act weirdly. They don&#39;t seem to route sensors properly, and randomly turn off whatever is plugged in.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>In my Home Assistant quest and simplifying (not sure if that's actually happening) and getting more control (aka less reliant on the cloud and 3rd parties) I've been playing with Zigbee.</p>
<p>Zigbee is quite cool because it's a mesh network. As I used it before with my <a href="https://yeri.be/tag/homeassistant/">Philips Hue</a> bulbs, I was eager to expand and play with Zigbee.</p>
<p>First thing first. Not all routers are equal. I've got <a href="https://www.aliexpress.com/item/1005006812746892.html" target="_blank" rel="noreferrer noopener">these two smart power plugs</a> as an example (Grey and Blue colour, v2 with HomeKit support) and they act weirdly. They don't seem to route sensors properly, and randomly turn off whatever is plugged in.</p>
<figure class="wp-block-image alignwide size-large"><a href="https://static.yeri.be/2024/05/powerplugs.png"><img src="https://static.yeri.be/2024/05/powerplugs-1024x357.png" alt="" class="wp-image-74640"/></a></figure>
<p>The one that seems to work reliably well is this <a href="https://www.aliexpress.com/item/1005006437054440.html" target="_blank" rel="noreferrer noopener">orange Zigbee plug</a>. </p>
<p>Compared to my bulbs (more on that <a href="https://yeri.be/home-assistant-getting-rid-of-philips-hue-bridge/">here</a>) the sensors do detect them the two aforementioned power plugs, and do connect, but generally little to no data flows. I'm not entirely sure what the issue is (bad antenna, bad routing software) but the consensus on the internet seems to be: add more routers, don't trust some routers (Ikea and Hue seem decent), and not all endpoints are very smart and pick the best router (so may need to repair or force it to join a specific router). Unlike WiFi, in this case it seems that more is better. </p>
<p>When setting up the network, it's also recommended to first set up and pair the routers and then the endpoints (battery-powered sensors).</p>
<p>And the network takes a while to stabilise (and all routes to be learned). Some people even suggest waiting one or two days for the dust to settle.  </p>
<pre class="wp-block-verse">Moving routers screws up a lot, too. I've had sensors stop working (and refusing to pair again) after moving some routers and turning some off -- routers that weren't used by said sensors. So really odd stuff.</pre>
<p>As always, with Aliexpress, it's very much unclear what the brand/model is, but according to <a href="https://www.zigbee2mqtt.io/" target="_blank" rel="noreferrer noopener">Z2M</a>, all three are <a href="https://www.zigbee2mqtt.io/devices/TS011F_plug_1.html#tuya-ts011f_plug_1" target="_blank" rel="noreferrer noopener">TS011F</a>, but two of the three are definitely different (has Apple Homekit support and the plugs are bigger). </p>
<p>The energy (kWh) and Power (W) reporting works well, though, on all three models.</p>
<figure class="wp-block-image alignwide size-large"><a href="https://static.yeri.be/2024/05/power.png"><img src="https://static.yeri.be/2024/05/power-1024x879.png" alt="" class="wp-image-74623"/></a></figure>
<p>Can see when a charger is plugged in, and charging a MacBook Air.</p>
<p>I'm buying EU plugs because I'll be relocating back to Europe in the next 6 months. So I'm slowly getting rid of my UK smart plugs and replacing them with EU plugs. </p>
<pre class="wp-block-verse">Note that these plugs are not approved for (official) sale in Belgium though: child safety is not up to spec and the grounding is not approved (i.e. needs to be a pin). </pre>
]]></content:encoded>
      <category>Hardware</category><category>Networking</category><category>Software</category>
      <category>homeassistant</category>
    </item>
    
    <item>
      <title>Home Assistant: Getting rid of Philips Hue bridge</title>
      <link>https://yeri.be/home-assistant-getting-rid-of-philips-hue-bridge/</link>
      <pubDate>Wed, 12 Jun 2024 12:41:52 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/home-assistant-getting-rid-of-philips-hue-bridge/</guid>
      <description>&lt;p&gt;In my Home Assistant quest and simplifying (not sure if that&#39;s actually happening) and getting more control (aka less reliant on the cloud and 3rd parties) I&#39;ve been playing with Zigbee.&lt;/p&gt;&#xA;&lt;p&gt;Zigbee is quite cool because it&#39;s a mesh network. As I used it before with my &lt;a href=&#34;https://yeri.be/ikea-tradfri-with-philips-hue/&#34;&gt;Philips Hue&lt;/a&gt; bulbs, I was eager to expand and play with Zigbee.&lt;/p&gt;&#xA;&lt;p&gt;I have several bulbs, including: &lt;a href=&#34;https://www.zigbee2mqtt.io/devices/7199960PH.html#philips-7199960ph&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34;&gt;Hue Iris, Hue Go&lt;/a&gt;, &lt;a href=&#34;https://www.zigbee2mqtt.io/devices/8718696449691.html#philips-8718696449691&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34;&gt;some random bulb&lt;/a&gt;, &lt;a href=&#34;https://www.zigbee2mqtt.io/devices/929001953301.html#philips-929001953301&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34;&gt;a reading spot&lt;/a&gt;, and &lt;a href=&#34;https://www.zigbee2mqtt.io/devices/915005733701.html#philips-915005733701&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34;&gt;Hue Play&lt;/a&gt; (3x).&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>In my Home Assistant quest and simplifying (not sure if that's actually happening) and getting more control (aka less reliant on the cloud and 3rd parties) I've been playing with Zigbee.</p>
<p>Zigbee is quite cool because it's a mesh network. As I used it before with my <a href="https://yeri.be/ikea-tradfri-with-philips-hue/">Philips Hue</a> bulbs, I was eager to expand and play with Zigbee.</p>
<p>I have several bulbs, including: <a href="https://www.zigbee2mqtt.io/devices/7199960PH.html#philips-7199960ph" target="_blank" rel="noreferrer noopener">Hue Iris, Hue Go</a>, <a href="https://www.zigbee2mqtt.io/devices/8718696449691.html#philips-8718696449691" target="_blank" rel="noreferrer noopener">some random bulb</a>, <a href="https://www.zigbee2mqtt.io/devices/929001953301.html#philips-929001953301" target="_blank" rel="noreferrer noopener">a reading spot</a>, and <a href="https://www.zigbee2mqtt.io/devices/915005733701.html#philips-915005733701" target="_blank" rel="noreferrer noopener">Hue Play</a> (3x).</p>
<figure class="wp-block-image alignwide size-large"><a href="https://static.yeri.be/2024/05/hue.png"><img src="https://static.yeri.be/2024/05/hue-1024x494.png" alt="" class="wp-image-74625"/></a></figure>
<p>My Home Assistant setup uses the <a href="https://www.home-assistant.io/skyconnect/" target="_blank" rel="noreferrer noopener">Skyconnect</a>. I've updated the firmware (on a Mac) to use <a href="https://github.com/Koenkk/zigbee2mqtt/discussions/21462" target="_blank" rel="noreferrer noopener">Ember firmware as ezsp</a> will be deprecated soon(™).  </p>
<pre class="wp-block-verse">At the time of writing you can't update the firmware directly from HA just yet, you need another device.</pre>
<p>As I had two Zigbee networks (one for Hue, and one for my sensors and Ikea bulb) it made sense to merge them (and have one less connected bridge): it would reduce interference, and the bulbs all act as a router, so that would greatly improve my network coverage and stability.</p>
<p>Generally speaking, it went quite smoothly: delete the devices in the Hue app (it factory resets them and puts them in pairing mode) and then pair them in <a href="https://www.zigbee2mqtt.io/" target="_blank" rel="noreferrer noopener">Zigbee2Mqtt</a> (I use that over <a href="https://www.home-assistant.io/integrations/zha/" target="_blank" rel="noreferrer noopener">ZHA</a>). </p>
<p>However, my main issue was that my Zigbee bulbs were unreliable: it sometimes worked, but often it lagged or timed out. Especially when controlling multiple bulbs at once (such as a big room such as the living room) or sending multiple commands in sequence (on/off/on/off). </p>
<pre class="wp-block-verse">In hindsight, my sensors were unreliable as well: there was data missing, and it didn't properly broadcast/update every 5 minutes. I first thought it was just because they were cheap Chinese (<a href="https://www.tuya.com/" target="_blank" rel="noreferrer noopener">TuYa</a>) sensors using battery-power. If the temp or humidity didn't change enough, it wouldn't broadcast.</pre>
<p>I often saw errors such as these in Z2M:</p>
<pre class="wp-block-code"><code>2024-05-26 22:29:02Publish 'set' 'state' to 'Hue Play Right' failed: 'Error: ZCL command 0x0017880104d89bc4/11 genOnOff.on({}, {"timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":false,"direction":0,"srcEndpoint":null,"reservedBits":0,"manufacturerCode":null,"transactionSequenceNumber":null,"writeUndiv":false}) failed ({"target":29608,"apsFrame":{"profileId":260,"clusterId":6,"sourceEndpoint":1,"destinationEndpoint":11,"options":4416,"groupId":0,"sequence":110},"zclSequence":244,"commandIdentifier":11} <strong>timed out after</strong> <strong>10000ms</strong>)'</code></pre>
<p>But the annoying thing (in debugging, and thinking the network "needs to settle") was that it often worked just fine, and then randomly started breaking down/time outing when I thought it was finally solved. </p>
<p>I almost gave up and went back to a Hue bridge, when I asked for some advice on <a href="https://discord.com/channels/556563650429583360/1052136886912688199" target="_blank" rel="noreferrer noopener">Discord</a>. The reason was the channel... </p>
<p>First off: check the Zigbee channel of your Hue. It's likely 25. Z2M uses channel 11 by default.</p>
<p>There are 4 channels that are getting the least WiFi interference. These are called <a href="https://www.zigbee2mqtt.io/guide/configuration/zigbee-network.html#network-config" target="_blank" rel="noreferrer noopener">ZLL channels</a> (whatever that stands for): 11, 15, 20, 25. However, it seems that 11 is <a href="https://www.reddit.com/r/homeassistant/comments/y1cm9q/i_changed_my_z2m_network_to_channel_25_and/" target="_blank" rel="noreferrer noopener">quite terrible</a>, and I would not recommend using it. </p>
<p>My Z2M sat on Channel 11 (which is Channel 1 for WiFi). I live in <a href="https://yeri.be/tag/singapore/">Singapore</a>, in an apartment building, with a shit-ton of WiFi, hence the massive interference and lag on Zigbee. </p>
<pre class="wp-block-verse">Also, 2.4Ghz WiFi is generally 20Mhz channel width, whereas Zigbee is 2Mhz, so one WiFi channel overlaps many Zigbee channels. </pre>
<p>You can modify the channel (via the config file in <code>/homeassistant/zigbee2mqtt/configuration.yaml</code>) by adding the following and restarting the Z2M container:</p>
<pre class="wp-block-code"><code>advanced:
  &#91;...] # there should already be a ton of things
  channel: 25</code></pre>
<p>The problem with changing the channel, is that it requires repairing (some of) the Zigbee devices. And it's a total mess to repair Hue bulbs once they are no longer on a Hue bridge.</p>
<pre class="wp-block-verse">There's no need to remove the devices from Z2M as that will wipe their configs (I believe). It's possible that removing the devices from Z2M will put them in pairing mode again (for Hue bulbs, see below) but I couldn't get a confirmation.</pre>
<p>Ikea has the 6x power off/on sequence that resets them, but Hue dropped support for something similar in some firmware upgrade (why?!?!). </p>
<p><a href="https://www.zigbee2mqtt.io/guide/usage/touchlink.html" target="_blank" rel="noreferrer noopener">TouchLink</a> is another option, but that didn't work for me at all. </p>
<p>Some Hue bulbs can be reset by long pressing (30-60seconds) the power button (for example the Hue Go), but what worked best for me is pairing them again on the Hue bridge using the serial (force pair), deleting them again, and pairing on Z2M. </p>
<p>However, I didn't have the serial of two bulbs: one Hue Play has the label missing, and the Hue Iris didn't have any label at all. I thought I would be forced to go and purchase a Hue dimmer/remote control (that comes with TouchLink and allows resetting the bulbs)... </p>
<p>However, suddenly, after an hour or two of messing around, the Hue bulbs that weren't repaired just started working again. </p>
<p>So it seems that if they are disconnected from their bridge for a while, they start changing channels until they find the bridge again. I guess there's a chance, with enough patience, that I didn't have to repair my Hue bulbs (not sure about Ikea, and I would definitely not trust my <a href="https://yeri.be/home-assistant-zigbee-routers/">Chinese Power plugs</a> and sensors to come back online). </p>
<p>The sensors are quite easily repaired (long press the pairing button or pinhole and done -- don't forget to set Z2M in <code>Permit join</code>)</p>
<p>Other stuff you can try if the range or network sucks can be found <a href="https://www.zigbee2mqtt.io/advanced/zigbee/02_improve_network_range_and_stability.html" target="_blank" rel="noreferrer noopener">here</a>. </p>
<p>However, if it kinda works, you better not mess with it... :) </p>
]]></content:encoded>
      <category>Hardware</category><category>Networking</category><category>Software</category>
      <category>homeassistant</category>
    </item>
    
    <item>
      <title>Home Assistant: ESP32-C3 Bluetooth proxy</title>
      <link>https://yeri.be/home-assistant-esp32-c3-bluetooth-proxy/</link>
      <pubDate>Fri, 31 May 2024 11:33:03 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/home-assistant-esp32-c3-bluetooth-proxy/</guid>
      <description>&lt;p&gt;I have set up an &lt;a href=&#34;https://www.aliexpress.com/item/1005005967641936.html&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34;&gt;ESP32-c3&lt;/a&gt; Bluetooth Proxy for a &lt;a href=&#34;https://www.aliexpress.com/item/1005006414566166.html&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34;&gt;Mi ble thermometer&lt;/a&gt; (and I have a few other BLE sensors that I haven&#39;t managed to set up yet).&lt;/p&gt;&#xA;&lt;p&gt;The proxy config &lt;a href=&#34;https://gitlab.com/yeri/homeassistant/-/blob/main/esphome/ble_proxy/bluetooth-proxy.yaml?ref_type=heads&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34;&gt;can be found here&lt;/a&gt;. &lt;/p&gt;&#xA;&lt;p&gt;Be sure to modify the variables to match whatever you want to do. I&#39;m using static IPs because auto discovery is unreliable (&lt;code&gt;hostname.iot.internal&lt;/code&gt;). &lt;/p&gt;&#xA;&lt;p&gt;You&#39;ll also need to add the &lt;code&gt;!secret&lt;/code&gt; variables into the &lt;code&gt;secrets.yaml&lt;/code&gt; file.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>I have set up an <a href="https://www.aliexpress.com/item/1005005967641936.html" target="_blank" rel="noreferrer noopener">ESP32-c3</a> Bluetooth Proxy for a <a href="https://www.aliexpress.com/item/1005006414566166.html" target="_blank" rel="noreferrer noopener">Mi ble thermometer</a> (and I have a few other BLE sensors that I haven't managed to set up yet).</p>
<p>The proxy config <a href="https://gitlab.com/yeri/homeassistant/-/blob/main/esphome/ble_proxy/bluetooth-proxy.yaml?ref_type=heads" target="_blank" rel="noreferrer noopener">can be found here</a>. </p>
<p>Be sure to modify the variables to match whatever you want to do. I'm using static IPs because auto discovery is unreliable (<code>hostname.iot.internal</code>). </p>
<p>You'll also need to add the <code>!secret</code> variables into the <code>secrets.yaml</code> file.</p>
<p>Note that there's an issue with Bluetooth and WiFi on single cores (i.e.: the ESP locks up as it can't do both at boot). The workaround is in that config file.</p>
<blockquote class="wp-block-quote">
<p>Use on single-core chips</p>
<p>On dual-core devices the WiFi component runs on core 1, while this component runs on core 0. When using this component on single core chips such as the ESP32-C3 both WiFi and ble_tracker must run on the same core, and this has been known to cause issues when connecting to WiFi. A work-around for this is to enable the tracker only while the native API is connected. The following config will achieve this:</p>
<pre class="wp-block-code"><code>esp32_ble_tracker:
  scan_parameters:
    continuous: false

api:
  encryption:
    key: !secret encryption_key
  on_client_connected:
    - esp32_ble_tracker.start_scan:
       continuous: true
  on_client_disconnected:
    - esp32_ble_tracker.stop_scan:</code></pre>
<p><cite><a href="https://esphome.io/components/esp32_ble_tracker.html#use-on-single-core-chips" target="_blank" rel="noreferrer noopener">Esphome</a></cite></blockquote></p>
<p>To flash the Mi thermometer, use <a href="https://atc1441.github.io/TelinkFlasher.html" target="_blank" rel="noreferrer noopener">this flasher</a> and the <a href="https://github.com/atc1441/ATC_MiThermometer/releases" target="_blank" rel="noreferrer noopener">firmware from here</a>.</p>
<p>Example output of the log (from <a href="https://esphome.io/" target="_blank" rel="noreferrer noopener">Esphome</a> in Home Assistant directly, but can be seen from the web interface as well):</p>
<figure class="wp-block-image alignwide size-large"><a href="https://static.yeri.be/2024/05/log.png"><img src="https://static.yeri.be/2024/05/log-1024x443.png" alt="" class="wp-image-74613"/></a></figure>
<p>You can then add the proxy (and the entities) in Home Assistant. It should update every couple of minutes (the Mi device updates every 5 or so minutes, the Proxy scans every channel every 3-ish minutes). </p>
<p>In the example above, I (at the time of writing) only have one Bluetooth sensor, but it should be quite trivial to add more. The hardest part is finding the right MAC address of the sensors... :) </p>
]]></content:encoded>
      <category>Hardware</category><category>Networking</category><category>Software</category>
      <category>homeassistant</category>
    </item>
    
    <item>
      <title>IP Changed?</title>
      <link>https://yeri.be/ip-changed/</link>
      <pubDate>Fri, 06 Oct 2023 11:28:41 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/ip-changed/</guid>
      <description>&lt;p&gt;Very &lt;a href=&#34;https://gitlab.com/superuser.one/ipchanged&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34;&gt;simple Python script&lt;/a&gt; that tracks one or multiple hosts/domains for IP changes, and prints it in a &lt;a href=&#34;https://matrix.org&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34;&gt;Matrix&lt;/a&gt; room.&lt;/p&gt;&#xA;&lt;pre class=&#34;wp-block-code&#34;&gt;&lt;code&gt;# docker logs ipchanged&#xA;29-09-2023 - 11:26:35 - Logged in as @turtlebot:matrix.org&#xA;29-09-2023 - 11:26:35 - IP address for be.yeri.be is 94.105.123.126&#xA;29-09-2023 - 11:26:35 - IP address for sg.yeri.be is 58.96.238.208&#xA;29-09-2023 - 11:26:35 - IP address for industry.yeri.be is 78.23.172.72&#xA;29-09-2023 - 11:29:36 - IP address for be.yeri.be is 94.105.123.126&#xA;29-09-2023 - 11:29:36 - IP address for sg.yeri.be is 58.96.238.208&#xA;29-09-2023 - 11:29:36 - IP address for industry.yeri.be is 78.23.172.72&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Includes a Docker container to keep it running. &lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>Very <a href="https://gitlab.com/superuser.one/ipchanged" target="_blank" rel="noreferrer noopener">simple Python script</a> that tracks one or multiple hosts/domains for IP changes, and prints it in a <a href="https://matrix.org" target="_blank" rel="noreferrer noopener">Matrix</a> room.</p>
<pre class="wp-block-code"><code># docker logs ipchanged
29-09-2023 - 11:26:35 - Logged in as @turtlebot:matrix.org
29-09-2023 - 11:26:35 - IP address for be.yeri.be is 94.105.123.126
29-09-2023 - 11:26:35 - IP address for sg.yeri.be is 58.96.238.208
29-09-2023 - 11:26:35 - IP address for industry.yeri.be is 78.23.172.72
29-09-2023 - 11:29:36 - IP address for be.yeri.be is 94.105.123.126
29-09-2023 - 11:29:36 - IP address for sg.yeri.be is 58.96.238.208
29-09-2023 - 11:29:36 - IP address for industry.yeri.be is 78.23.172.72</code></pre>
<p>Includes a Docker container to keep it running. </p>
<figure class="wp-block-image size-large"><img src="https://static.yeri.be/2023/09/Screenshot-2023-09-29-at-11.31.00-645x1024.png" alt="" class="wp-image-73549"/></figure>
<p>I made it less noisy (i.e. won't talk when the IP didn't change) and as the IP of my DynDNS hosts hasn't changed yet, there's not much to see... ;) </p>
]]></content:encoded>
      <category>Networking</category><category>Software</category>
      <category>python</category>
    </item>
    
    <item>
      <title>PoC: Betteruptime &#43; Python-kasa</title>
      <link>https://yeri.be/poc-betteruptime-python-kasa/</link>
      <pubDate>Tue, 04 Jul 2023 15:20:06 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/poc-betteruptime-python-kasa/</guid>
      <description>&lt;p&gt;&lt;strong&gt;Content Update&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;The provided scripts have been updated on 16 Jul 2023. Specifically the SmartStrip part was not working as intended. &lt;/p&gt;&#xA;&lt;hr class=&#34;wp-block-separator has-alpha-channel-opacity&#34;/&gt;&#xA;&lt;p&gt;I&#39;ve been a big fan of &lt;a rel=&#34;noreferrer noopener&#34; href=&#34;https://uptime.betterstack.com/&#34; target=&#34;_blank&#34;&gt;Betteruptime&lt;/a&gt;. I&#39;ve started using it to monitor all my assets online (websites, DNS, ping, successful script runs) as well as my servers (using &lt;a rel=&#34;noreferrer noopener&#34; href=&#34;https://betterstack.com/docs/uptime/cron-and-heartbeat-monitor/&#34; target=&#34;_blank&#34;&gt;heartbeats&lt;/a&gt;). &lt;/p&gt;&#xA;&lt;figure class=&#34;wp-block-image alignwide size-large&#34;&gt;&lt;a href=&#34;https://static.yeri.be/2023/07/mammoth.png&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34;&gt;&lt;img src=&#34;https://static.yeri.be/2023/07/mammoth-1024x570.png&#34; alt=&#34;Screenshot of Betteruptime showing a heartbeat that failed for several hours. &#34; class=&#34;wp-image-72880&#34;/&gt;&lt;/a&gt;&lt;figcaption class=&#34;wp-element-caption&#34;&gt;Image of a heartbeat that failed for several hours. After 2 hours of no hearbeat, it turned into an incident, and several hours later the heartbeats resumed. &lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;p&gt;I have a few Raspberry Pi&#39;s, and once in a while they hang (not sure why, maybe USB-to-SSD issues or something). Nothing too critical, but annoying. &lt;/p&gt;</description>
      <content:encoded><![CDATA[<p><strong>Content Update</strong></p>
<p>The provided scripts have been updated on 16 Jul 2023. Specifically the SmartStrip part was not working as intended. </p>
<hr class="wp-block-separator has-alpha-channel-opacity"/>
<p>I've been a big fan of <a rel="noreferrer noopener" href="https://uptime.betterstack.com/" target="_blank">Betteruptime</a>. I've started using it to monitor all my assets online (websites, DNS, ping, successful script runs) as well as my servers (using <a rel="noreferrer noopener" href="https://betterstack.com/docs/uptime/cron-and-heartbeat-monitor/" target="_blank">heartbeats</a>). </p>
<figure class="wp-block-image alignwide size-large"><a href="https://static.yeri.be/2023/07/mammoth.png" target="_blank" rel="noreferrer noopener"><img src="https://static.yeri.be/2023/07/mammoth-1024x570.png" alt="Screenshot of Betteruptime showing a heartbeat that failed for several hours. " class="wp-image-72880"/></a><figcaption class="wp-element-caption">Image of a heartbeat that failed for several hours. After 2 hours of no hearbeat, it turned into an incident, and several hours later the heartbeats resumed. </figcaption></figure>
<p>I have a few Raspberry Pi's, and once in a while they hang (not sure why, maybe USB-to-SSD issues or something). Nothing too critical, but annoying. </p>
<p>I've plugged them all on <a href="https://www.tp-link.com/sg/home-networking/smart-plug/" target="_blank" rel="noreferrer noopener">TP-Link Kasa</a> smart plugs to remotely restart them if I had to (once or twice a year). </p>
<pre class="wp-block-verse">Note, to confuse everyone, TP-Link also launched Tapo, which... competes with Kasa and is not compatible, but does the exact same thing... ¯\_(ツ)_/¯</pre>
<p>After some <a rel="noreferrer noopener" href="https://medium.com/geekculture/use-raspberry-pi-and-tp-link-kasa-to-automate-your-devices-9f936a6243c1" target="_blank">Googling</a> (actually <a href="https://kagi.com" target="_blank" rel="noreferrer noopener">Kagi'ing</a>) I found out, there's a <a rel="noreferrer noopener" href="https://python-kasa.readthedocs.io/en/latest/" target="_blank">Python library</a> that lets you control your smart plugs. </p>
<p>So, the idea was born to:</p>
<ul>
<li>Check Betteruptime heartbeats, if down, power cycle the smart plug</li>
<li>Do this at most once per day (in case something else is causing issues)</li>
<li>Betteruptime <a rel="noreferrer noopener" href="https://betterstack.com/docs/uptime/api/get-a-single-hearbeat/" target="_blank">heartbeats</a> manage when a device is marked as offline (i.e.: it expects a heartbeat every 5 minutes, but will only consider the device down if no heartbeats are received for 2 hours).  </li>
<li>The bulk of the code had to be written by ChatGPT. Let ChatGPT choose the language (it ended up being a mix of Bash and Python)</li>
<li>Everything needs to run in Docker (using a cron, the Docker container doesn't daemonise)</li>
<li>These run on Raspberry Pi's (but of course the RPi can't check itself: so RPi1 checks for RPi2, and vice versa. As these RPis are on different networks (my parent's home, my own home, etc) I had to enable "<code>--net=host</code>" in <code>Docker run</code> to get the correct routes from the host system, but you may not actually need this</li>
<li>To top if off, sent an email (using Mailgun EU servers) to warn me something broke and it rebooted</li>
</ul>
<p>So, after some fiddling (half an evening or so) the proof-of-concept worked. </p>
<p>I should probably throw this in a Git repo but shrug. I don't want to give the impression that I'll maintain this and provide support.  </p>
<p>Dockerfile:</p>
<pre class="wp-block-code"><code>FROM python:alpine
RUN apk add bash curl jq
RUN pip3 install python-kasa
COPY heartbeat.sh kasa-api.py /
VOLUME /tmp/kasa/
CMD &#91;"/heartbeat.sh"]</code></pre>
<p>Python script <code>kasa-api.py</code> (this works with both <a href="https://www.tp-link.com/sg/home-networking/smart-plug/kp303/" target="_blank" rel="noreferrer noopener">smart strips</a> and <a href="https://www.kasasmart.com/us/products/smart-plugs/kasa-smart-wifi-plug-hs100" target="_blank" rel="noreferrer noopener">smart plugs</a>):</p>
<pre class="wp-block-code"><code>import sys
import asyncio
from kasa import SmartPlug, SmartStrip

async def main():
	if len(sys.argv) != 4:
		print("Usage: python kasa-api.py type IP-address outlet-index")
		return

	device_type = sys.argv&#91;1]
	ip_address = sys.argv&#91;2]
	outlet_index = int(sys.argv&#91;3])

	if device_type == "smartplug":
		await control_smart_plug(ip_address)
	elif device_type == "smartstrip":
		await control_smart_strip(ip_address, outlet_index)
	else:
		print(f"Unsupported device type: {device_type}")

async def control_smart_plug(ip_address):
	plug = SmartPlug(ip_address)

	try:
		await plug.update()

		# Retrieve the current state
		plug_state = plug.is_on

		# Turn off the plug
		await plug.turn_off()

		print(f"Turned off SmartPlug at {ip_address}")
		await asyncio.sleep(5)

		# Turn on the plug if it was previously on
		if plug_state:
			await plug.turn_on()

		print(f"Turned on SmartPlug at {ip_address}")
	except Exception as e:
		print(f"Failed to control SmartPlug at {ip_address}: {e}")

async def control_smart_strip(ip_address, outlet_index):
	strip = SmartStrip(ip_address)

	try:
		await strip.update()

		# Retrieve the current state of the specified child plug
		child_state = strip.children&#91;outlet_index].is_on

		# Turn off the specified child plug
		await strip.children&#91;outlet_index].turn_off()

		print(f"Turned off child plug {outlet_index} in SmartStrip at {ip_address}")
		await asyncio.sleep(5)

		# Turn on the child plug if it was previously on
		await strip.children&#91;outlet_index].turn_on()

		print(f"Turned on child plug {outlet_index} in SmartStrip at {ip_address}")
	except Exception as e:
		print(f"Failed to control SmartStrip at {ip_address}: {e}")

# Run the asyncio event loop
asyncio.run(main())</code></pre>
<p><code>heartbeat.sh</code> -- with example devices. Be sure to fill in the variables (including <code>hb</code>, that's the heartbeat ID you can get from the Betteruptime URL and the IP or DNS hostname of the smartplug):</p>
<pre class="wp-block-code"><code>#!/bin/bash

API_KEY="BetterUptime API token"
BU="https://uptime.betterstack.com/api/v2/heartbeats/" # no need to change this

MAILGUN_API_KEY="Mailgun API token"
MAILGUN_DOMAIN="mg.you.com" # use your own domain

if &#91;&#91; "$DEVICE" = tyr ]] || &#91;&#91; "$1" = tyr ]]; then

	# Tyr
	device="Tyr"
	hb=1111
	bu="https://uptime.betterstack.com/team/1/heartbeats/$hb"
	plug_type="smartplug"
	plug_host="smartplug1.kasa.you.com"

elif &#91;&#91; "$DEVICE" = mammoth ]] || &#91;&#91; "$1" = mammoth ]]; then

	# Mammoth
	device="mammoth"
	hb=2222
	bu="https://uptime.betterstack.com/team/1/heartbeats/$hb"
	plug_type="smartstrip"
	plug_host="smartstrip1.kasa.you.com"
	plug_index=0 # plug 2 is rly plug 3 because the index counts from 0 to 2 and not from 1 to 3.

elif &#91;&#91; "$DEVICE" = liana ]] || &#91;&#91; "$1" = liana ]]; then

	# Liana
	device="liana"
	hb=3333
	bu="https://uptime.betterstack.com/team/1/heartbeats/$hb"
	plug_type="smartstrip"
	plug_host="smartstrip1.kasa.you.com"
	plug_index=1 # plug 2 is rly plug 3 because the index counts from 0 to 2 and not from 1 to 3.

elif &#91;&#91; "$DEVICE" = eagle ]] || &#91;&#91; "$1" = eagle ]]; then

	device="eagle"
	hb=4444
	bu="https://uptime.betterstack.com/team/1/heartbeats/$hb"
	plug_type="smartstrip"
	plug_host="smartstrip1.kasa.yeri.be"
	plug_index=2 # plug 2 is rly plug 3 because the index counts from 0 to 2 and not from 1 to 3.

else
	echo "Unknown device."
	exit 1
fi

url=$BU/$hb

send_alert() {
	MAILGUN_URL="https://api.eu.mailgun.net/v3/$MAILGUN_DOMAIN/messages"
	from="kasa@you.com"
	to="alert@you.com"
	subject="Smartplug power cycled: $device"
	body="rebooted device $device!"$'\n'"Kasa IP: $plug_host."$'\n'"$bu"

	# Send alert email
	curl -s --user "api:$MAILGUN_API_KEY" \
		"$MAILGUN_URL" \
		-F from="$from" \
		-F to="$to" \
		-F subject="$subject" \
		-F text="$body"
}

kasa_cycle() {
	echo "Betteruptime heartbeat ($hb) says the service for $device is down, restarting."
	python /kasa-api.py "$plug_type" "$plug_host" "$plug_index"
	# Update the last execution date in the file
	echo "$current_date" &gt; "$file"
}

kasa_info() {
	kasa --host $plug_host
}

response=$(curl -sL "$url" -H "Authorization: Bearer $API_KEY")
status=$(echo "$response" | jq -r '.data.attributes.status')

if &#91;&#91; "$status" == "down" ]]; then
	dir="/tmp/.kasa/"
	mkdir -p "$dir"
	file="${dir}${device}.txt"

	# Get current date
	current_date=$(date "+%F")
	# Check if the file exists
	if &#91; -f "$file" ]; then
		# Get last execution date from the file
		last_execution=$(cat "$file")
		# We only want to run this once every 24hrs. If a reboot doesn't fix it, something more
		# serious is going on and likely needs manual intervention. No point spam rebooting the device.
		if &#91;&#91; "$current_date" != "$last_execution" ]]; then
			kasa_cycle
			send_alert
		else
			echo "Power cycle already executed today."
		fi
	else
		kasa_cycle
		send_alert
	fi
elif &#91;&#91; "$status" == "up" ]]; then
	echo "Betteruptime heartbeat says the service ($hb) for $device is up."
else
	# this could happen if the heartbeat is paused.
	echo "Unknown status."
	kasa_info
	exit 1
fi</code></pre>
<p>I run Docker with two scripts, a builder (<code>rebuild.sh</code>) and a file that runs it (<code>start.sh</code>). It should rebuild in case a docker cleanup script ran (and deleted dangling containers). </p>
<p>I run this as <code>root</code> and probably shouldn't, but yeah... That'll be for another lifetime. </p>
<p>Be sure to change the paths (<code>/root/git/kasa-api</code>) in both scripts. </p>
<p><code>rebuild.sh</code>:</p>
<pre class="wp-block-code"><code>#!/bin/bash
cd /root/git/kasa-api # the path where this project exists

git pull &gt; /dev/null

BASEIMAGE=`cat Dockerfile | grep FROM | awk '{print $2}'`
docker pull $BASEIMAGE
docker build -q -t kasa-api .
rm -f /tmp/.kasa/*.txt</code></pre>
<p><code>start.sh</code>:</p>
<pre class="wp-block-code"><code>#!/bin/bash

if &#91; -z "$1" ]; then
	echo "Missing device name."
	exit 1
fi

docker stop kasa-api 2&gt; /dev/null
docker rm kasa-api 2&gt; /dev/null

run_kasa() {
	DEVICE=$1
	docker run --net=host -v /tmp/.kasa:/tmp/.kasa --rm -e DEVICE=$DEVICE --name kasa-api kasa-api
}

if &#91;&#91; $(docker image ls | grep kasa-api) ]]; then
	run_kasa $1
else
	cd /root/git/kasa-api
	/root/git/kasa-api/rebuild.sh &gt; /dev/null
	run_kasa $1
fi</code></pre>
<p>And that's pretty much it. I run this using with cron in <code>/etc/cron.d/</code>. For example (be sure to edit the parameter/device name/path):</p>
<pre class="wp-block-code"><code>#
# cron-jobs for kasa-api
#

MAILTO=root

*/15 * * * *	root	if &#91; -x /root/git/kasa-api/start.sh ] &amp;&amp; &#91; -f /root/git/kasa-api/start.sh ]; then /root/git/kasa-api/start.sh tyr &gt;/dev/null; fi</code></pre>
<p>I'm sure there must be bugs in this ChatGPT generated code but... so far, it has actually worked.</p>
]]></content:encoded>
      <category>Hardware</category><category>Linux</category><category>Networking</category><category>Software</category>
      <category>bash</category><category>dailyprompt</category><category>dailyprompt-2001</category><category>docker</category><category>python</category>
    </item>
    
    <item>
      <title>killwarp</title>
      <link>https://yeri.be/killwarp/</link>
      <pubDate>Mon, 03 Jul 2023 15:48:30 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/killwarp/</guid>
      <description>&lt;p&gt;Is your company forcing &lt;a href=&#34;https://developers.cloudflare.com/cloudflare-one/connections/connect-devices/warp/download-warp/&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34;&gt;Cloudflare Warp&lt;/a&gt; on you, and are you running on a Mac (with &lt;code&gt;sudo&lt;/code&gt; access)?&lt;/p&gt;&#xA;&lt;p&gt;It probably sucks, spies on you, does MitM attacks, breaks most video conferencing tools, and is generally not very stable... Also... Zero trust!&lt;/p&gt;&#xA;&lt;p&gt;Add this function to your &lt;code&gt;.bashrc&lt;/code&gt; or &lt;code&gt;.zshrc&lt;/code&gt; (whichever shell you&#39;re using*):&lt;/p&gt;&#xA;&lt;pre class=&#34;wp-block-code&#34;&gt;&lt;code&gt;func killwarp() {&#xA;&#x9;sudo launchctl remove com.cloudflare.1dot1dot1dot1.macos.warp.daemon&#xA;&#x9;sudo killall Cloudflare\ WARP&#xA;}&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Open a new shell window (to reload your dot files), and type &lt;code&gt;killwarp&lt;/code&gt;.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>Is your company forcing <a href="https://developers.cloudflare.com/cloudflare-one/connections/connect-devices/warp/download-warp/" target="_blank" rel="noreferrer noopener">Cloudflare Warp</a> on you, and are you running on a Mac (with <code>sudo</code> access)?</p>
<p>It probably sucks, spies on you, does MitM attacks, breaks most video conferencing tools, and is generally not very stable... Also... Zero trust!</p>
<p>Add this function to your <code>.bashrc</code> or <code>.zshrc</code> (whichever shell you're using*):</p>
<pre class="wp-block-code"><code>func killwarp() {
	sudo launchctl remove com.cloudflare.1dot1dot1dot1.macos.warp.daemon
	sudo killall Cloudflare\ WARP
}</code></pre>
<p>Open a new shell window (to reload your dot files), and type <code>killwarp</code>.</p>
<p>This will permanently disable Warp (until your Mac is rebooted; as it's most likely force installed/started by your admin). So just run this after every reboot. </p>
<p>(*) Find out with <code>echo $SHELL</code>. </p>
]]></content:encoded>
      <category>Apple</category><category>Networking</category><category>Software</category>
      <category>cloudflare</category><category>vpn</category>
    </item>
    
    <item>
      <title>Bookworm: eth0 -&gt; enX0</title>
      <link>https://yeri.be/bookworm-eth0-enx0/</link>
      <pubDate>Sun, 11 Jun 2023 14:29:44 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/bookworm-eth0-enx0/</guid>
      <description>&lt;p&gt;Started updating my Debian systems from Bullseye to Bookworm.&lt;/p&gt;&#xA;&lt;p&gt;The first thing I noticed was that ethX renamed to enXY.&lt;/p&gt;&#xA;&lt;p&gt;To get back to the old naming scheme, you can fix this by adding the following in &lt;code&gt;/etc/network/interfaces&lt;/code&gt;:&lt;/p&gt;&#xA;&lt;pre class=&#34;wp-block-code&#34;&gt;&lt;code&gt;rename enX0=eth0&#xA;rename enX1=eth1&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;And reboot. &lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>Started updating my Debian systems from Bullseye to Bookworm.</p>
<p>The first thing I noticed was that ethX renamed to enXY.</p>
<p>To get back to the old naming scheme, you can fix this by adding the following in <code>/etc/network/interfaces</code>:</p>
<pre class="wp-block-code"><code>rename enX0=eth0
rename enX1=eth1</code></pre>
<p>And reboot. </p>
]]></content:encoded>
      <category>Linux</category><category>Networking</category><category>Software</category>
      <category>debian</category>
    </item>
    
    <item>
      <title>Allow ping from USG</title>
      <link>https://yeri.be/allow-ping-from-usg/</link>
      <pubDate>Mon, 03 Apr 2023 23:06:26 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/allow-ping-from-usg/</guid>
      <description>&lt;p&gt;Because I keep forgetting and it takes me far too much time to go through one of my million sites where I set this up and find the right config... &lt;/p&gt;&#xA;&lt;p&gt;To allow a USG (&lt;a rel=&#34;noreferrer noopener&#34; href=&#34;https://store.ui.com/products/unifi-security-gateway&#34; target=&#34;_blank&#34;&gt;Unifi Security Gateway&lt;/a&gt;) to reply to external (WAN) ping requests, do the following:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Head to the Unifi dashboard -&gt; Settings -&gt; Firewall &amp;amp; Security&lt;/li&gt;&#xA;&lt;li&gt;Create a new rule&lt;/li&gt;&#xA;&lt;li&gt;Type: Internet Local&lt;/li&gt;&#xA;&lt;li&gt;Description: Allow Ping (Echo Request)&lt;/li&gt;&#xA;&lt;li&gt;Rule Applied: Before Predefined Rules&lt;/li&gt;&#xA;&lt;li&gt;Action: Accept&lt;/li&gt;&#xA;&lt;li&gt;IPv4 Protocol: ICMP&lt;/li&gt;&#xA;&lt;li&gt;IPv4 IMP Type Name: Echo Request&lt;/li&gt;&#xA;&lt;li&gt;Apply Changes -&gt; wait ~2 minutes&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;That&#39;s it... &lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>Because I keep forgetting and it takes me far too much time to go through one of my million sites where I set this up and find the right config... </p>
<p>To allow a USG (<a rel="noreferrer noopener" href="https://store.ui.com/products/unifi-security-gateway" target="_blank">Unifi Security Gateway</a>) to reply to external (WAN) ping requests, do the following:</p>
<ul>
<li>Head to the Unifi dashboard -> Settings -> Firewall &amp; Security</li>
<li>Create a new rule</li>
<li>Type: Internet Local</li>
<li>Description: Allow Ping (Echo Request)</li>
<li>Rule Applied: Before Predefined Rules</li>
<li>Action: Accept</li>
<li>IPv4 Protocol: ICMP</li>
<li>IPv4 IMP Type Name: Echo Request</li>
<li>Apply Changes -> wait ~2 minutes</li>
</ul>
<p>That's it... </p>
<p>All this for <a rel="noreferrer noopener" href="https://smokeping.eu" target="_blank">Smokeping</a>.</p>
]]></content:encoded>
      <category>Linux</category><category>Networking</category><category>Software</category>
      <category>firewall</category><category>smokeping</category><category>ubiquiti</category>
    </item>
    
    <item>
      <title>Ikea Tradfri with Philips Hue</title>
      <link>https://yeri.be/ikea-tradfri-with-philips-hue/</link>
      <pubDate>Fri, 11 Nov 2022 09:47:00 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/ikea-tradfri-with-philips-hue/</guid>
      <description>&lt;p&gt;Recently visited Ikea and had to get a Christmas star-light like I used to have during my childhood. &lt;/p&gt;&#xA;&lt;figure class=&#34;wp-block-image aligncenter size-large&#34;&gt;&lt;a href=&#34;https://static.yeri.be/2022/11/tradfri.jpg&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34;&gt;&lt;img src=&#34;https://static.yeri.be/2022/11/tradfri-768x1024.jpg&#34; alt=&#34;&#34; class=&#34;wp-image-70798&#34;/&gt;&lt;/a&gt;&lt;figcaption class=&#34;wp-element-caption&#34;&gt;Star-light with Tradfri, Philips Hue in the table lamp, and a Kasa smartplug powered Ikea LED light. Oh and &lt;a href=&#34;http://instagram.com/tofurawr/&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34;&gt;Taro&lt;/a&gt; in the corner.  &lt;/figcaption&gt;&lt;/figure&gt;&#xA;&lt;p&gt;Most of my (non-track) light at home is smart using either a TP-Link Kasa smartplug or Philips Hue (and I want to avoid adding more brands, more apps, and more shit). However, Philips Hue is quite $$$ and not always all that easy to get in Singapore (shady retailers, limited stock, not many options).&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>Recently visited Ikea and had to get a Christmas star-light like I used to have during my childhood. </p>
<figure class="wp-block-image aligncenter size-large"><a href="https://static.yeri.be/2022/11/tradfri.jpg" target="_blank" rel="noreferrer noopener"><img src="https://static.yeri.be/2022/11/tradfri-768x1024.jpg" alt="" class="wp-image-70798"/></a><figcaption class="wp-element-caption">Star-light with Tradfri, Philips Hue in the table lamp, and a Kasa smartplug powered Ikea LED light. Oh and <a href="http://instagram.com/tofurawr/" target="_blank" rel="noreferrer noopener">Taro</a> in the corner.  </figcaption></figure>
<p>Most of my (non-track) light at home is smart using either a TP-Link Kasa smartplug or Philips Hue (and I want to avoid adding more brands, more apps, and more shit). However, Philips Hue is quite $$$ and not always all that easy to get in Singapore (shady retailers, limited stock, not many options).</p>
<p>I knew that <a href="https://www.ikea.com/sg/en/p/tradfri-led-bulb-e14-470-lumen-smart-wireless-dimmable-white-spectrum-globe-20489730/">Tradfri</a> was technically compatible with the Hue Bridge, but never made the jump as I just wanted things to work (don't want to mess around with lights). Until today. Figured I may as well give it a go.</p>
<p>Surprisingly, everything worked out of the box. I had to do a factory reset (not sure if that's because I kept the light on for ~10 minutes before trying to set it up, or if this was a returned product as clearly the box had been opened before)...</p>
<figure class="wp-block-image aligncenter size-large"><a href="https://static.yeri.be/2022/11/Hue-settings.png" target="_blank" rel="noreferrer noopener"><img src="https://static.yeri.be/2022/11/Hue-settings-473x1024.png" alt="" class="wp-image-70799"/></a><figcaption class="wp-element-caption">Ikea light, in the Hue app.</figcaption></figure>
<ul>
<li>Turn on light</li>
<li>Reset light by turning it off and on 6 times</li>
<li>Open Philips Hue app and search/add light</li>
<li>Tada... Should work</li>
</ul>
<pre class="wp-block-verse">Side note: it requires a modern firmware (and I assume all lights being sold today have said firmware, but if for some reason you end up with old stock, you may need to update). To update you need the Ikea Bridge though (or... apparently the dimmers/buttons may work as well -- did not test).</pre>
<p>All the controls are working as well (dimming, changing colours, etc).</p>
<figure class="wp-block-video aligncenter"><video autoplay controls loop src="https://static.yeri.be/2022/11/light-settings-1.mp4"></video><figcaption class="wp-element-caption">Ikea Star light in the Hue app.</figcaption></figure>
<p></p>
]]></content:encoded>
      <category>Hardware</category><category>Networking</category><category>Software</category>
      <category>christmas</category><category>homeassistant</category><category>interior</category><category>winter</category>
    </item>
    
    <item>
      <title>Smokeping.eu</title>
      <link>https://yeri.be/smokeping-eu/</link>
      <pubDate>Thu, 14 Jul 2022 10:57:00 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/smokeping-eu/</guid>
      <description>&lt;p&gt;I&#39;ve revamped my Smokeping infra a bit &lt;a href=&#34;https://yeri.be/smokeping&#34;&gt;since 2020&lt;/a&gt;. &lt;/p&gt;&#xA;&lt;p&gt;First off, starting to use the &lt;a href=&#34;http://www.smokeping.eu&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34;&gt;smokeping.eu&lt;/a&gt;&lt;sup&gt;1&lt;/sup&gt; domain that &lt;a href=&#34;https://github.com/BiancoZandbergen&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34;&gt;Bianco&lt;/a&gt; got 10 or so years ago instead of using weird URLs under &lt;a href=&#34;http://superuser.one&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34;&gt;superuser.one&lt;/a&gt; domain. &lt;/p&gt;&#xA;&lt;p&gt;It&#39;s running on four nodes as we speak: &lt;/p&gt;&#xA;&lt;ul&gt;&lt;li&gt;a virtual machine on a &lt;a href=&#34;https://yeri.be/tag/rootspirit/page/2&#34;&gt;colocation server&lt;/a&gt; in Leaseweb, Amsterdam, NL -&amp;gt; &lt;a href=&#34;https://leaseweb.nl.smokeping.eu/smokeping/&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34;&gt;leaseweb.nl.smokeping.eu&lt;/a&gt;&lt;/li&gt;&lt;li&gt;a RPi3 (+SD card, slowest of all), Telenet, Belgium -&amp;gt; &lt;a href=&#34;http://telenet.be.smokeping.eu/&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34;&gt;telenet.be.smokeping.eu&lt;/a&gt;&lt;/li&gt;&lt;li&gt;a RPi4, EDPnet, Belgium -&amp;gt; &lt;a href=&#34;https://edpnet.be.smokeping.eu/&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34;&gt;edpnet.be.smokeping.eu&lt;/a&gt;&lt;/li&gt;&lt;li&gt;a RPi4, Starhub, Singapore -&amp;gt; &lt;a href=&#34;http://starhub.sg.smokeping.eu&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34;&gt;starhub.sg.smokeping.eu&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&#xA;&lt;p&gt;This is achieved using Smokeping &lt;a href=&#34;https://docs.linuxserver.io/images/docker-smokeping&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34;&gt;in a docker&lt;/a&gt; container, &lt;a href=&#34;https://www.cloudflare.com/en-gb/products/tunnel/&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34;&gt;Cloudflare tunnel&lt;/a&gt; and Cloudflare CDN/DNS.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>I've revamped my Smokeping infra a bit <a href="https://yeri.be/smokeping">since 2020</a>. </p>
<p>First off, starting to use the <a href="http://www.smokeping.eu" target="_blank" rel="noreferrer noopener">smokeping.eu</a><sup>1</sup> domain that <a href="https://github.com/BiancoZandbergen" target="_blank" rel="noreferrer noopener">Bianco</a> got 10 or so years ago instead of using weird URLs under <a href="http://superuser.one" target="_blank" rel="noreferrer noopener">superuser.one</a> domain. </p>
<p>It's running on four nodes as we speak: </p>
<ul><li>a virtual machine on a <a href="https://yeri.be/tag/rootspirit/page/2">colocation server</a> in Leaseweb, Amsterdam, NL -&gt; <a href="https://leaseweb.nl.smokeping.eu/smokeping/" target="_blank" rel="noreferrer noopener">leaseweb.nl.smokeping.eu</a></li><li>a RPi3 (+SD card, slowest of all), Telenet, Belgium -&gt; <a href="http://telenet.be.smokeping.eu/" target="_blank" rel="noreferrer noopener">telenet.be.smokeping.eu</a></li><li>a RPi4, EDPnet, Belgium -&gt; <a href="https://edpnet.be.smokeping.eu/" target="_blank" rel="noreferrer noopener">edpnet.be.smokeping.eu</a></li><li>a RPi4, Starhub, Singapore -&gt; <a href="http://starhub.sg.smokeping.eu" target="_blank" rel="noreferrer noopener">starhub.sg.smokeping.eu</a></li></ul>
<p>This is achieved using Smokeping <a href="https://docs.linuxserver.io/images/docker-smokeping" target="_blank" rel="noreferrer noopener">in a docker</a> container, <a href="https://www.cloudflare.com/en-gb/products/tunnel/" target="_blank" rel="noreferrer noopener">Cloudflare tunnel</a> and Cloudflare CDN/DNS.</p>
<pre class="wp-block-verse"><sup>1</sup> Doesn't point at anything at the moment. To do later.</pre>
]]></content:encoded>
      <category>Linux</category><category>Misc</category><category>Networking</category><category>Software</category><category>Virtualisation</category>
      <category>docker</category><category>smokeping</category>
    </item>
    
    <item>
      <title>Remote desktop and Wake-on-LAN</title>
      <link>https://yeri.be/remote-desktop-and-wake-on-lan/</link>
      <pubDate>Sat, 09 Jul 2022 23:14:54 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/remote-desktop-and-wake-on-lan/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://shanwong.com&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34;&gt;Shan&lt;/a&gt; uses her iPad a lot, but a lot of the more serious (interior design) work needs to happen on &lt;a href=&#34;https://yeri.be/screen-going-black-with-autocad-lt&#34;&gt;AutoCAD&lt;/a&gt; or Photoshop. That is just not going to work on an iPad. &lt;/p&gt;&#xA;&lt;p&gt;When we&#39;re travelling (read: holiday) she&#39;s carrying an old Lenovo &lt;a href=&#34;https://www.lenovo.com/gb/en/laptops/thinkpad/13-series/ThinkPad-13-Windows-2nd-Gen/p/22TP2TX133E&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34;&gt;ThinkPad 13&lt;/a&gt; (great device!) just &#34;in case&#34; she needs to open AutoCAD and edit something minor or read the drawings/dimensions. But honestly, most of the time that device is turned off and dead weight.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p><a href="http://shanwong.com" target="_blank" rel="noreferrer noopener">Shan</a> uses her iPad a lot, but a lot of the more serious (interior design) work needs to happen on <a href="https://yeri.be/screen-going-black-with-autocad-lt">AutoCAD</a> or Photoshop. That is just not going to work on an iPad. </p>
<p>When we're travelling (read: holiday) she's carrying an old Lenovo <a href="https://www.lenovo.com/gb/en/laptops/thinkpad/13-series/ThinkPad-13-Windows-2nd-Gen/p/22TP2TX133E" target="_blank" rel="noreferrer noopener">ThinkPad 13</a> (great device!) just "in case" she needs to open AutoCAD and edit something minor or read the drawings/dimensions. But honestly, most of the time that device is turned off and dead weight.</p>
<p>But all the above is just an excuse to "I was bored, and I wanted to test something": can I use an old Raspberry Pi (<a href="https://www.raspberrypi.com/products/raspberry-pi-zero-w/" target="_blank" rel="noreferrer noopener">zero W</a>) to remotely wake her Intel NUC, and then use <a href="http://tailscale.com/" target="_blank" rel="noreferrer noopener">Tailscale</a> to use RD on her iPad? Well, yes I can. </p>
<p>I completed this using:</p>
<ul><li>Tailscale to remote desktop from anywhere to home</li><li>Cloudflare Tunnels, Access and DNS to have a web interface to wake the desktop</li><li>A Linux device that's always on and in the same LAN, and that'll run a PHP script. </li></ul>
<h2>Prep work: enable WOL</h2>
<p>First off: enable Wake-on-LAN (WOL) in the BIOS <em>and </em>in your Windows settings. <a href="https://www.intel.com/content/www/us/en/support/articles/000027615/intel-nuc.html" target="_blank" rel="noreferrer noopener">This article explains</a> it for Intel NUCs, but would be similar enough for most devices. The Device Manager pane looked different on our i5 NUC, but was close enough. </p>
<p>On Mac, you just need to enable it in the Energy preference pane, for Linux I have no clue. 🤷‍♂️</p>
<p>Second step: have a working Raspberry Pi (or any Linux device) in <em>the same LAN</em>. This device needs to be turned on 24/7, so use something that uses very little power. </p>
<pre class="wp-block-verse">I do have a more powerful <a href="https://yeri.be/making-bluetooth-work-on-rpi4">RPi4</a> I wish I could've reused (running <a href="https://yeri.be/running-wireguard-in-a-docker-container-rpi">Docker</a> and some other "serious" stuff; however it's currently in a different VLAN, and it's quite crucial the Linux device is in the same LAN as the device(s) you want to wake up), so I went with an old Raspberry Pi Zero W that was collecting dust (it used to run <a href="https://pwnagotchi.ai/" target="_blank" rel="noreferrer noopener">pwnagotchi</a>).</pre>
<p>On the Linux device, install <a href="https://www.mkssoftware.com/docs/man1/etherwake.1.asp" target="_blank" rel="noreferrer noopener">etherwake</a>. The command to run is quite simply <code>etherwake aa:bb:cc:11:22:33</code> (= the ethernet MAC address of your device).</p>
<p>If this doesn't wake your desktop, something is wrong and there's no point continuing. Go and troubleshoot. </p>
<h2>Install Tailscale and RD</h2>
<p>On the (<a href="https://www.youtube.com/watch?v=lKQroybFqg4" target="_blank" rel="noreferrer noopener">Windows</a>) desktop and your iPad, install <a href="https://tailscale.com/download" target="_blank" rel="noreferrer noopener">Tailscale</a>. Login, and make sure it works by pinging from one to the other. </p>
<p>Then set up Remote Desktop on both (<a href="https://support.microsoft.com/en-us/windows/how-to-use-remote-desktop-5fe128d5-8fb1-7a23-3b8a-41e636865e8c#ID0EDD=Windows_10" target="_blank" rel="noreferrer noopener">Windows</a>, <a href="https://apps.apple.com/us/app/remote-desktop-mobile/id714464092" target="_blank" rel="noreferrer noopener">iPad</a>). You should test and make sure you can properly connect using the LAN IP address and then the Tailscale IP address.</p>
<pre class="wp-block-verse">Fun fact: I create a DNS record for all my devices using <a href="https://developers.cloudflare.com/dns/manage-dns-records/how-to/create-dns-records/" target="_blank" rel="noreferrer noopener">Cloudflare DNS</a> with the syntax of <a href="https://smokeping-sg.superuser.one/smokeping/?target=yeri.TSwol" target="_blank" rel="noreferrer noopener">device-name.ts.yeri.be</a>, so I don't need to ever remember IPs, and can easily <code>ssh</code> or <code>ping</code> devices without having to look up IPs. </pre>
<figure class="wp-block-image size-large is-resized"><img src="https://static.yeri.be/2022/07/cf-dns-ts-1024x461.png" alt="" class="wp-image-70039" width="610" height="274"/><figcaption>Cloudflare DNS screenshot, filtered on "ts". I add both <code>A</code> and <code>AAAA</code> records (not shown in the screenshot) </figcaption></figure>
<pre class="wp-block-verse">Fun fact side track: I actually have a dynamic script that runs (on Linux) and creates <code>hostname.ts.yeri.be</code> for the Tailscale IP, <code>hostname.wg.yeri.be</code> based on the <a href="https://yeri.be/wireguard" target="_blank" rel="noreferrer noopener">Wireguard</a> IP, <code>hostname.lan.yeri.be</code> based on the LAN IP. This dyndns script runs every so often and updates IPs if needed. All this is running using <a href="https://github.com/tech-otaku/cloudflare-dns" target="_blank" rel="noreferrer noopener">Cloudflare DNS and their API</a>. Super convenient.</pre>
<h2>Nginx, php and etherwake</h2>
<pre class="wp-block-verse">I'm a 80s kid, so I'll use dirty PHP to run this script. I'm sure I'll go straight to hell for this, but yolo.</pre>
<p>Install <a href="https://www.digitalocean.com/community/tutorials/how-to-install-linux-nginx-mysql-php-lemp-stack-ubuntu-18-04" target="_blank" rel="noreferrer noopener">nginx and PHP</a> (no need for MySQL and other stuff).</p>
<p><code>etherwake</code> requires root to run (because it needs root access to create a weird <a href="https://en.wikipedia.org/wiki/Wake-on-LAN#Magic_packet" target="_blank" rel="noreferrer noopener">magic</a> ethernet packet). Create a file in <code>/etc/sudoers.d/etherwake</code> and add this line:</p>
<pre class="wp-block-code"><code>www-data ALL=(ALL) NOPASSWD: /usr/sbin/etherwake</code></pre>
<p>This will allow <code>www-data</code> (nginx/php) to run <code>/usr/sbin/etherwake</code> using <code>sudo</code>, without password.</p>
<p>In <code>/var/www/html/</code> create an <code>index.php</code> file with:</p>
<pre class="wp-block-code"><code>&lt;html&gt;
&lt;head&gt;&lt;title&gt;Wake on Lan&lt;/title&gt;&lt;/head&gt;
&lt;body&gt;
&lt;p&gt;Wake up &lt;a href="mycooldesktop.php"&gt;My Cool Desktop&lt;/a&gt;
&lt;/body&gt;
&lt;/html&gt;</code></pre>
<p>And a <code>mycooldesktop.php</code> (or whatever) file with:</p>
<pre class="wp-block-code"><code>&lt;?php
$output = shell_exec('sudo /usr/sbin/etherwake aa:bb:cc:11:22:33 2&gt;&amp;1');
echo "&lt;pre&gt;$output&lt;/pre&gt;";
?&gt;
&lt;p&gt;&lt;a href=".."&gt;Back&lt;/a&gt;&lt;/p&gt;</code></pre>
<pre class="wp-block-verse">It ain't pretty -- but it gets the job done. </pre>
<p>And be sure to edit the MAC address to match your desktop's ethernet MAC address. </p>
<h2>Cloudflare tunnels</h2>
<p>Install Cloudflare Tunnel (via <a href="https://dash.teams.cloudflare.com" target="_blank" rel="noreferrer noopener">Zero Trust</a> dashboard). </p>
<p>When creating a new tunnel, the dashboard will give you all needed commands to install the tunnel on your RPi -- but be sure to select the right OS/architecture (arm64? arm? armhf?). </p>
<figure class="wp-block-image size-large"><img src="https://static.yeri.be/2022/07/cf-tunnel-1024x448.png" alt="" class="wp-image-70047"/><figcaption>Easy.</figcaption></figure>
<p>And then point the tunnel to <code>http://localhost</code>. No need to mess around with <a href="https://yeri.be/tag/ssl">SSL</a> certs.</p>
<p>Lastly, set up Cloudflare Access (via the same Zero Trust dashboard): create a new application, and make sure only approved users can sign in (i.e.: using a pin code emailed to only approved emails). </p>
<figure class="wp-block-image size-large"><img src="https://static.yeri.be/2022/07/cf-access-1024x796.png" alt="" class="wp-image-70048"/><figcaption>I only allow access to my own emails, and my family, by using groups.</figcaption></figure>
<p>You can try it yourself via <a href="https://wol.superuser.one/" target="_blank" rel="noreferrer noopener">wol.superuser.one</a>. You won't get in. :)</p>
<pre class="wp-block-verse">Optionally, but recommended: lock down Nginx to only allow connections from localhost (<code>127.0.0.0/8</code> and <code>::1</code>) if using Cloudflare Tunnels, or <a href="https://www.frankindev.com/2020/11/18/allow-cloudflare-only-in-nginx/" target="_blank" rel="noreferrer noopener">Cloudflare IPs</a> if using port forwarding with <a href="https://www.cloudflare.com/en-gb/products/zero-trust/access/" target="_blank" rel="noreferrer noopener">Cloudflare Access</a> in front. </pre>
<figure class="wp-block-image size-large is-resized"><img src="https://static.yeri.be/2022/07/wol-interface-1024x540.png" alt="" class="wp-image-70042" width="610" height="321"/><figcaption>Love my design skills... But it gets the job done: click that link, and it'll execute <code>etherwake</code>.</figcaption></figure>
<h2>To recap</h2>
<ul><li>We used Tailscale to create a VPN network between the desktop and the iPad. The big benefit is that Tailscale works effortlessly across NAT networks without having to open ports,</li><li>We used Cloudflare DNS so we don't need to remember hostnames :),</li><li>We used Cloudflare Tunnels to make sure the RPi web interface is accessible across NAT (without port forwarding) and from anywhere, </li><li>We used Cloudflare Acces and locked down access to the right people using ACLs,</li><li>We used <code>etherwake</code> running on a RPi to wake up devices that are hibernating or turned off.</li></ul>
<p>And that's it really.</p>
<pre class="wp-block-verse">PS: technically WoL works with WiFi, but when I enabled WoL on the WiFi adapter, the NUC refused to hibernate/sleep for more than a minute, and kept waking itself up. So, there seems to be some kind of trigger in my network that keeps waking it up. Also, not sure if WoL via WiFi would work if the device is turned off (as opposed to sleep or hibernate). I just ended up using ethernet. 

PPS: both Cloudflare Tunnels and Tailscale use <a href="https://www.wireguard.com/" target="_blank" rel="noreferrer noopener">Wireguard</a> tech in the background, so that's really cool. </pre>
]]></content:encoded>
      <category>Apple</category><category>Hardware</category><category>Linux</category><category>Misc</category><category>Networking</category><category>Software</category><category>Windows</category><category>www</category>
      <category>Windows</category><category>cloudflare</category><category>tailscale</category><category>vpn</category>
    </item>
    
    <item>
      <title>Encryption</title>
      <link>https://yeri.be/encryption/</link>
      <pubDate>Thu, 03 Feb 2022 16:39:00 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/encryption/</guid>
      <description>&lt;div class=&#34;embed-responsive embed-youtube&#34;&gt;&#xA;&#x9;&lt;iframe src=&#34;https://www.youtube-nocookie.com/embed/ZghMPWGXexs&#34; title=&#34;YouTube video&#34; loading=&#34;lazy&#34; allow=&#34;accelerometer; clipboard-write; encrypted-media; gyroscope; picture-in-picture&#34; allowfullscreen&gt;&lt;/iframe&gt;&#xA;&lt;/div&gt;</description>
      <content:encoded><![CDATA[<div class="embed-responsive embed-youtube">
	<iframe src="https://www.youtube-nocookie.com/embed/ZghMPWGXexs" title="YouTube video" loading="lazy" allow="accelerometer; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
</div>

]]></content:encoded>
      <category>Networking</category><category>Software</category>
      <category>encryption</category><category>youtube</category>
    </item>
    
    <item>
      <title>Sony stops DNS resolvers</title>
      <link>https://yeri.be/sony-stops-dns-resolvers/</link>
      <pubDate>Wed, 01 Dec 2021 10:08:59 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/sony-stops-dns-resolvers/</guid>
      <description>&lt;blockquote class=&#34;wp-block-quote&#34;&gt;&lt;p&gt;The Hamburg Regional Court today ruled that they would not suspend an existing injunction against &lt;a href=&#34;https://www.quad9.net/&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34;&gt;Quad9&lt;/a&gt; in a case filed by Sony Music Germany. The case centers around Sony Music’s demand that Quad9’s servers located in Germany stop resolving DNS names of third-party sites which are claimed to have URLs that contain copyright infringements.&lt;/p&gt;&lt;cite&gt;&lt;em&gt;&lt;a href=&#34;https://www.quad9.net/news/press/german-court-rules-against/&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34;&gt;Source&lt;/a&gt;&lt;/em&gt;.&lt;/cite&gt;&lt;/blockquote&gt;&#xA;&lt;p&gt;Unbelievable. &lt;/p&gt;&#xA;&lt;p&gt;Also note &#34;&lt;em&gt;claimed&lt;/em&gt; to have&#34;. Not &lt;em&gt;proven&lt;/em&gt; to have. &lt;/p&gt;&#xA;&lt;p&gt;Knowing that Sony has not been very good at actually identifying copyrighted content, and they just throw stuff around to see what sticks. &lt;/p&gt;</description>
      <content:encoded><![CDATA[<blockquote class="wp-block-quote"><p>The Hamburg Regional Court today ruled that they would not suspend an existing injunction against <a href="https://www.quad9.net/" target="_blank" rel="noreferrer noopener">Quad9</a> in a case filed by Sony Music Germany. The case centers around Sony Music’s demand that Quad9’s servers located in Germany stop resolving DNS names of third-party sites which are claimed to have URLs that contain copyright infringements.</p><cite><em><a href="https://www.quad9.net/news/press/german-court-rules-against/" target="_blank" rel="noreferrer noopener">Source</a></em>.</cite></blockquote>
<p>Unbelievable. </p>
<p>Also note "<em>claimed</em> to have". Not <em>proven</em> to have. </p>
<p>Knowing that Sony has not been very good at actually identifying copyrighted content, and they just throw stuff around to see what sticks. </p>
<p>And <a href="https://www.eff.org/wp/unintended-consequences-under-dmca" target="_blank" rel="noreferrer noopener">DMCA</a> requests have done more evil than good... </p>
<p>Also, what will actually happen? Quad9 will move its DNS servers outside of Germany and/or people will use other DNS resolvers. Nothing get fixed, and users are punished with worse latency. </p>
]]></content:encoded>
      <category>Networking</category><category>Software</category>
      <category>WTF</category><category>dns</category><category>europe</category><category>law</category><category>politics</category><category>warez</category>
    </item>
    
    <item>
      <title>Xiaomi Phone Shipped With Censorship List</title>
      <link>https://yeri.be/xiaomi-censorship-list/</link>
      <pubDate>Sun, 21 Nov 2021 11:53:00 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/xiaomi-censorship-list/</guid>
      <description>&lt;blockquote class=&#34;wp-block-quote&#34;&gt;&lt;p&gt;This summer, the Lithuanian government went public &lt;a href=&#34;https://static.yeri.be/2021/11/2021-08-23_5G-CN-analysis_env3.pdf&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34;&gt;with an astounding finding&lt;/a&gt;. A Xiaomi phone sold in Europe — the Mi 10T 5G — could censor approximately 450 words and phrases, it said. The blocklist wasn’t active, but could be activated remotely. It was filled with political terms, including “Democratic Movement” and “Long live Taiwan’s independence.”&lt;/p&gt;&lt;p&gt;[...]&lt;/p&gt;&lt;p&gt;The accusations, which Xiaomi disputes, clarified just how fraught the West’s relationship is with China’s growing technology power. As China-based tech companies like Xiaomi and TikTok flourish, there’s still no playbook in North America or Europe to deal with their potential to censor or steer culture via &lt;a href=&#34;https://stratechery.com/2020/the-tiktok-war/&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34;&gt;algorithms&lt;/a&gt;.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<blockquote class="wp-block-quote"><p>This summer, the Lithuanian government went public <a href="https://static.yeri.be/2021/11/2021-08-23_5G-CN-analysis_env3.pdf" target="_blank" rel="noreferrer noopener">with an astounding finding</a>. A Xiaomi phone sold in Europe — the Mi 10T 5G — could censor approximately 450 words and phrases, it said. The blocklist wasn’t active, but could be activated remotely. It was filled with political terms, including “Democratic Movement” and “Long live Taiwan’s independence.”</p><p>[...]</p><p>The accusations, which Xiaomi disputes, clarified just how fraught the West’s relationship is with China’s growing technology power. As China-based tech companies like Xiaomi and TikTok flourish, there’s still no playbook in North America or Europe to deal with their potential to censor or steer culture via <a href="https://stratechery.com/2020/the-tiktok-war/" target="_blank" rel="noreferrer noopener">algorithms</a>.</p><p>“Western countries,” Abukevicius said, “<strong>are more and more reliant on technologies, and a big part of those technologies comes from countries which are not friendly, which we don't trust, and it poses risks.</strong>”</p><cite><a href="https://bigtechnology.substack.com/p/a-xiaomi-phone-mightve-shipped-with" target="_blank" rel="noreferrer noopener">Source</a>.</cite></blockquote>
<p></p>
]]></content:encoded>
      <category>Hardware</category><category>Networking</category><category>Software</category>
      <category>android</category><category>china</category><category>politics</category>
    </item>
    
    <item>
      <title>Ideal travel router: GL-AR750S</title>
      <link>https://yeri.be/ideal-travel-router-gl-ar750s/</link>
      <pubDate>Fri, 26 Jun 2020 18:24:00 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/ideal-travel-router-gl-ar750s/</guid>
      <description>&lt;p&gt;Right. With the pandemic and all none of us are going to travel much but still...&lt;/p&gt;&#xA;&lt;p&gt;About a year ago I purchased myself an &lt;a class=&#34;aioseop-link&#34; rel=&#34;noreferrer noopener&#34; href=&#34;https://www.gl-inet.com/products/gl-ar750s/&#34; target=&#34;_blank&#34;&gt;OpenWRT router&lt;/a&gt; to use on the plane and in hotels.&lt;/p&gt;&#xA;&lt;p&gt;And so far I really like both the device and the Hong Kong based brand (launching new and updated products, and releasing relatively regular updates for older products). Pick a device that fits your needs (&lt;a href=&#34;https://www.gl-inet.com/products/gl-mt300n-v2/&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34;&gt;USB powered&lt;/a&gt;? &lt;a href=&#34;https://www.gl-inet.com/products/gl-e750/&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34;&gt;LTE&lt;/a&gt;? &lt;a href=&#34;https://www.gl-inet.com/products/vixmini/&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34;&gt;Small form factor&lt;/a&gt;?). &lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>Right. With the pandemic and all none of us are going to travel much but still...</p>
<p>About a year ago I purchased myself an <a class="aioseop-link" rel="noreferrer noopener" href="https://www.gl-inet.com/products/gl-ar750s/" target="_blank">OpenWRT router</a> to use on the plane and in hotels.</p>
<p>And so far I really like both the device and the Hong Kong based brand (launching new and updated products, and releasing relatively regular updates for older products). Pick a device that fits your needs (<a href="https://www.gl-inet.com/products/gl-mt300n-v2/" target="_blank" rel="noreferrer noopener">USB powered</a>? <a href="https://www.gl-inet.com/products/gl-e750/" target="_blank" rel="noreferrer noopener">LTE</a>? <a href="https://www.gl-inet.com/products/vixmini/" target="_blank" rel="noreferrer noopener">Small form factor</a>?). </p>
<p>The GL-AR750S aka Slate is fully customizable but runs a few nice things out of the box: <a href="https://yeri.be/wireguard" target="_blank" rel="noreferrer noopener">WireGuard</a> (with a physical button to turn it on or off), <a href="https://yeri.be/tag/openvpn" target="_blank" rel="noreferrer noopener">OpenVPN</a>, shell access, Tor (requires the latest firmware), <a href="https://yeri.be/tag/ipv6" target="_blank" rel="noreferrer noopener">IPv6</a>, <a href="https://en.wikipedia.org/wiki/DNS_over_HTTPS" target="_blank" rel="noreferrer noopener">DoH</a> (<a href="https://web.archive.org/web/20210827100952/https://developers.cloudflare.com/1.1.1.1/dns-over-https" target="_blank" rel="noreferrer noopener">Cloudflare</a> only for now), multiple SSIDs (i.e. Guest WiFi), and more. </p>
<p>Oh and I specifically picked this version (compared to <a href="https://www.gl-inet.com/products/" target="_blank" rel="noreferrer noopener">other or cheaper ones</a>) because it had both 2.4Ghz and 5Ghz, as well as 3 Gbit ports (1x WAN, 2x LAN).</p>
<div class="wp-block-image"><figure class="aligncenter size-large"><a href="https://static.yeri.be/2020/06/glinet-compare-1.png" target="_blank" rel="noopener noreferrer"><img src="https://static.yeri.be/2020/06/glinet-compare-1-1024x694.png" alt="" class="wp-image-9088"/></a><figcaption>Pick whatever works for you...</figcaption></figure></div>
<p>I use the device on flights, where I connect to the network once in the air, purchase WiFi or use <a href="https://www.ipass.com/inflight-internet/" target="_blank" rel="noreferrer noopener">iPass</a> "for one device" and then connect to the interwebs behind my <a href="https://en.wikipedia.org/wiki/Network_address_translation" target="_blank" rel="noreferrer noopener">NAT</a>-router from my iPad, phone(s), laptop(s), and even <a href="https://yeri.be/shan-wong-sketching" title="Shan Wong sketching" target="_blank" rel="noreferrer noopener">Shan</a>'s devices if she is travelling with me.</p>
<p>In hotels, I either connect it to the wired ethernet, if still available (tends to be more stable), or connect it to the guest WiFi and then connect my devices to the router: saves me from connecting to a new network and typing the room number and login/password/family name on every device. And once again hides the true number of connected devices; quite handy trick for those pesky hotels providing free access only to two devices.</p>
<p>Sure it takes a bit of setup every time: find a working USB port, sign in to the web interface, search for new networks if this is a new hotel or I haven't travelled on this airline, connect to said network, sign in with iPass, and optionally enable VPN)...</p>
<p>And once in a while some fiddling with VPN or DNS that's borking up or being blocked by overzealous firewalls. </p>
<p>Also, some in-flight entertainment USB ports don't provide enough power (and/or are often broken -- looking at you Lufthansa in economy) so be sure to carry <a href="https://www.apple.com/shop/product/MD810LL/A/apple-5w-usb-power-adapter?fnode=83f41015933a91450d5764c4af01b7dcde6df42b8f2bd3d69b5785e0ebe48054e25d0a20aee428acbd11aa75bf2c77677833fecc12d57e28996bdafa64dfb0a43baa67bb1e79a1e51318f290bc482600cab20f21c35e5c95c94188846e9c860c366a443744dd092235bfa2928b330b8f&amp;fs=fh%3D458e%252B45d4" target="_blank" rel="noreferrer noopener nofollow sponsored">a couple of these</a> (US-plug works best) -- I've already forgotten one on my last flight from <a href="https://my.flightradar24.com/Tuinslak" target="_blank" rel="noreferrer noopener">MUC-SIN</a> on LH, but luckily I have pretty easy access to these. </p>
<p>If you travel a lot it's totally worth the money.</p>
]]></content:encoded>
      <category>Hardware</category><category>Linux</category><category>Networking</category><category>Software</category>
      <category>china</category><category>openvpn</category><category>openwrt</category><category>router</category><category>wifi</category><category>wireguard</category>
    </item>
    
    <item>
      <title>iPad Pro USB-C Ethernet</title>
      <link>https://yeri.be/ipad-pro-usb-c-ethernet/</link>
      <pubDate>Sat, 23 May 2020 23:58:00 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/ipad-pro-usb-c-ethernet/</guid>
      <description>&lt;p&gt;I’ve had an &lt;a aria-label=&#34;iPad Pro (opens in a new tab)&#34; href=&#34;https://www.apple.com/newsroom/2020/03/apple-unveils-new-ipad-pro-with-lidar-scanner-and-trackpad-support-in-ipados/&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34; class=&#34;aioseop-link&#34;&gt;iPad Pro&lt;/a&gt; with the new &lt;a aria-label=&#34;Magic Keyboard (opens in a new tab)&#34; href=&#34;https://www.apple.com/ipad-keyboards/&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34; class=&#34;aioseop-link&#34;&gt;Magic Keyboard&lt;/a&gt; and one of the things I&#39;ve been wondering... Say I am stuck in a datacenter and I need to ssh through wired networking to a server -- sure I&#39;ll definitely rather use my Mac laptop, but just in case... But would it actually work?&lt;/p&gt;&#xA;&lt;p&gt;The answer is... Yes -- but...&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>I’ve had an <a aria-label="iPad Pro (opens in a new tab)" href="https://www.apple.com/newsroom/2020/03/apple-unveils-new-ipad-pro-with-lidar-scanner-and-trackpad-support-in-ipados/" target="_blank" rel="noreferrer noopener" class="aioseop-link">iPad Pro</a> with the new <a aria-label="Magic Keyboard (opens in a new tab)" href="https://www.apple.com/ipad-keyboards/" target="_blank" rel="noreferrer noopener" class="aioseop-link">Magic Keyboard</a> and one of the things I've been wondering... Say I am stuck in a datacenter and I need to ssh through wired networking to a server -- sure I'll definitely rather use my Mac laptop, but just in case... But would it actually work?</p>
<p>The answer is... Yes -- but...</p>
<p>So plugging it straight into the USB-C port of the keyboard doesn't do anything. I.e.: the dongle is not recognised, and for what it's worth the switch doesn't even light up to say a cable is connected. So that doesn't work. </p>
<p>But plugging it straight into the iPad works... The network switch lights up, the iPad (under Settings) gets a new option called "Ethernet" (which oddly shows you <a aria-label="a selection of connected adapters first (opens in a new tab)" href="https://static.yeri.be/2020/05/IMG_0166.png" target="_blank" rel="noreferrer noopener" class="aioseop-link">a selection of connected adapters first</a> -- but I don't know how you can have more than one). Clicking through you see <a aria-label="the same options (opens in a new tab)" href="https://static.yeri.be/2020/05/IMG_0165.png" target="_blank" rel="noreferrer noopener" class="aioseop-link">the same options</a> as you would for your WiFi network: IPs, DNS, etc. </p>
<p>Tadaaa! </p>
<p>I used an adapter from work, a Belkin, and I believe it's the same one that's being sold on the <a aria-label="Apple Store (opens in a new tab)" href="https://www.apple.com/shop/product/HJKF2ZM/A/belkin-usb-c-to-gigabit-ethernet-adapter" target="_blank" rel="noreferrer noopener" class="aioseop-link">Apple Store</a>. I don't know if any dongle will work though (driver-wise and stuff). </p>
<p>Probably not that useful but good to know. </p>
]]></content:encoded>
      <category>Apple</category><category>Networking</category>
      <category>ipad</category><category>usb</category>
    </item>
    
    <item>
      <title>0x04</title>
      <link>https://yeri.be/0x04/</link>
      <pubDate>Sun, 17 May 2020 18:15:00 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/0x04/</guid>
      <description>&lt;p&gt;Almost 10 years after I registered &lt;a aria-label=&#34;0x04.com (opens in a new tab)&#34; href=&#34;https://yeri.be/blog-changes&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34; class=&#34;aioseop-link&#34;&gt;0x04.com&lt;/a&gt;, it&#39;s time to part ways.&lt;/p&gt;&#xA;&lt;div class=&#34;wp-block-image&#34;&gt;&lt;figure class=&#34;aligncenter size-large&#34;&gt;&lt;a href=&#34;https://static.yeri.be/2020/05/whois-0x04.com_.png&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&lt;img src=&#34;https://static.yeri.be/2020/05/whois-0x04.com_-943x1024.png&#34; alt=&#34;0x04.com whois&#34; class=&#34;wp-image-8885&#34;/&gt;&lt;/a&gt;&lt;figcaption&gt;&lt;em&gt;old whois info -- created 29 Aug 2010. &lt;/em&gt;&lt;/figcaption&gt;&lt;/figure&gt;&lt;/div&gt;&#xA;&lt;p&gt;Yesterday I finalised the sale of 0x04.com.&lt;/p&gt;&#xA;&lt;p&gt;My company in Singapore was called 0x04 pte. ltd. and to avoid any confusion I&#39;ve renamed to su1 pte. ltd. su1 standing for &lt;a href=&#34;http://Superuser.one&#34; target=&#34;_blank&#34; aria-label=&#34;Superuser.one (opens in a new tab)&#34; rel=&#34;noreferrer noopener&#34; class=&#34;aioseop-link&#34;&gt;Superuser.one&lt;/a&gt;. 🤷‍♂️&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>Almost 10 years after I registered <a aria-label="0x04.com (opens in a new tab)" href="https://yeri.be/blog-changes" target="_blank" rel="noreferrer noopener" class="aioseop-link">0x04.com</a>, it's time to part ways.</p>
<div class="wp-block-image"><figure class="aligncenter size-large"><a href="https://static.yeri.be/2020/05/whois-0x04.com_.png" target="_blank" rel="noopener noreferrer"><img src="https://static.yeri.be/2020/05/whois-0x04.com_-943x1024.png" alt="0x04.com whois" class="wp-image-8885"/></a><figcaption><em>old whois info -- created 29 Aug 2010. </em></figcaption></figure></div>
<p>Yesterday I finalised the sale of 0x04.com.</p>
<p>My company in Singapore was called 0x04 pte. ltd. and to avoid any confusion I've renamed to su1 pte. ltd. su1 standing for <a href="http://Superuser.one" target="_blank" aria-label="Superuser.one (opens in a new tab)" rel="noreferrer noopener" class="aioseop-link">Superuser.one</a>. 🤷‍♂️</p>
]]></content:encoded>
      <category>Misc</category><category>Networking</category>
      <category>0x04</category><category>dns</category>
    </item>
    
    <item>
      <title>NextDNS, EdgeOS and device names</title>
      <link>https://yeri.be/nextdns-edgeos-and-device-names/</link>
      <pubDate>Fri, 15 May 2020 13:02:00 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/nextdns-edgeos-and-device-names/</guid>
      <description>&lt;p&gt;Noticed that NextDNS was reporting old hostnames in the logs. For example old device names (devices that changed hostnames), devices that were definitely no longer on the network, or IPs that were matched to the wrong hostnames.&lt;/p&gt;&#xA;&lt;p&gt;The culprit is how EdgeOS deals with its &lt;a aria-label=&#34;hosts file (opens in a new tab)&#34; href=&#34;https://en.wikipedia.org/wiki/Hosts_%28file%29&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34; class=&#34;aioseop-link&#34;&gt;hosts file&lt;/a&gt;. Basically it just keeps all the old hosts added and just adds a new line at the end of the file. &lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>Noticed that NextDNS was reporting old hostnames in the logs. For example old device names (devices that changed hostnames), devices that were definitely no longer on the network, or IPs that were matched to the wrong hostnames.</p>
<p>The culprit is how EdgeOS deals with its <a aria-label="hosts file (opens in a new tab)" href="https://en.wikipedia.org/wiki/Hosts_%28file%29" target="_blank" rel="noreferrer noopener" class="aioseop-link">hosts file</a>. Basically it just keeps all the old hosts added and just adds a new line at the end of the file. </p>
<p>NextDNS searches for the first valid entry in that file, which is always going to be an older record.</p>
<p>So the simplest solution I found was the turn off <code>hostfile-update</code> every so often. This clears the hosts file. </p>
<p>So <code>ssh</code> into the device, run <code>configure</code>, and then run these commands:</p>
<pre class="wp-block-code"><code>set service dhcp-server hostfile-update disable
commit
set service dhcp-server hostfile-update enable
commit
save</code></pre>
<h2 class="wp-block-heading">Update 22 Jun '23:</h2>
<p>Be sure to restart NextDNS, or it won't actually publish the up-to-date client hostnames.</p>
<pre class="wp-block-code"><code>sudo /config/nextdns/nextdns restart</code></pre>
]]></content:encoded>
      <category>Linux</category><category>Networking</category><category>Software</category>
      <category>dns</category><category>nextdns</category><category>router</category><category>ubiquiti</category>
    </item>
    
    <item>
      <title>Running WireGuard in a Docker container (RPi)</title>
      <link>https://yeri.be/running-wireguard-in-a-docker-container-rpi/</link>
      <pubDate>Fri, 08 May 2020 18:10:00 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/running-wireguard-in-a-docker-container-rpi/</guid>
      <description>&lt;p&gt;This follows the my two other posts about &lt;a href=&#34;https://yeri.be/wireguard&#34; target=&#34;_blank&#34; aria-label=&#34;WireGuard (opens in a new tab)&#34; rel=&#34;noreferrer noopener&#34; class=&#34;aioseop-link&#34;&gt;WireGuard&lt;/a&gt;. &lt;/p&gt;&#xA;&lt;p&gt;Most of this can be copied from &lt;a aria-label=&#34;the amd64 post (opens in a new tab)&#34; href=&#34;https://yeri.be/running-wireguard-in-a-docker-container-(amd64)&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34; class=&#34;aioseop-link&#34;&gt;the amd64 post&lt;/a&gt; -- with a minor change for making it work on RPi4. &lt;a aria-label=&#34;This is the full Git repo (opens in a new tab)&#34; href=&#34;https://gitlab.com/yeri/wireguard-docker/&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34; class=&#34;aioseop-link&#34;&gt;This is the full &lt;/a&gt;&lt;a href=&#34;https://gitlab.com/yeri/wireguard-docker/&#34; target=&#34;_blank&#34; aria-label=&#34;This is the full Git repo (opens in a new tab)&#34; rel=&#34;noreferrer noopener&#34; class=&#34;aioseop-link&#34;&gt;g&lt;/a&gt;&lt;a aria-label=&#34;This is the full Git repo (opens in a new tab)&#34; href=&#34;https://gitlab.com/yeri/wireguard-docker/&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34; class=&#34;aioseop-link&#34;&gt;it repo&lt;/a&gt; (including both rpi and amd64). &lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>This follows the my two other posts about <a href="https://yeri.be/wireguard" target="_blank" aria-label="WireGuard (opens in a new tab)" rel="noreferrer noopener" class="aioseop-link">WireGuard</a>. </p>
<p>Most of this can be copied from <a aria-label="the amd64 post (opens in a new tab)" href="https://yeri.be/running-wireguard-in-a-docker-container-(amd64)" target="_blank" rel="noreferrer noopener" class="aioseop-link">the amd64 post</a> -- with a minor change for making it work on RPi4. <a aria-label="This is the full Git repo (opens in a new tab)" href="https://gitlab.com/yeri/wireguard-docker/" target="_blank" rel="noreferrer noopener" class="aioseop-link">This is the full </a><a href="https://gitlab.com/yeri/wireguard-docker/" target="_blank" aria-label="This is the full Git repo (opens in a new tab)" rel="noreferrer noopener" class="aioseop-link">g</a><a aria-label="This is the full Git repo (opens in a new tab)" href="https://gitlab.com/yeri/wireguard-docker/" target="_blank" rel="noreferrer noopener" class="aioseop-link">it repo</a> (including both rpi and amd64). </p>
<p>The main difference is in the <a aria-label="run.sh file (opens in a new tab)" href="https://gitlab.com/yeri/wireguard-docker/-/blob/master/liana.run.sh" target="_blank" rel="noreferrer noopener" class="aioseop-link">run.sh file</a>. The installation is a bit different and we'll need to install the Raspberry Pi kernel headers. </p>
<p>WireGuard is also installed from testing instead of Debian backports. </p>
<p>Note that for older RPi's (ie gen 1) you'll need to <a href="https://github.com/adrianmihalko/raspberrypiwireguard" target="_blank" aria-label="compile from scratch (opens in a new tab)" rel="noreferrer noopener" class="aioseop-link">compile from scratch</a>. </p>
]]></content:encoded>
      <category>Linux</category><category>Networking</category><category>Software</category>
      <category>debian</category><category>docker</category><category>raspberrypi</category><category>wireguard</category>
    </item>
    
    <item>
      <title>Resilio Sync on Synology stuck?</title>
      <link>https://yeri.be/synology-resilio-sync-stuck/</link>
      <pubDate>Tue, 05 May 2020 06:21:00 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/synology-resilio-sync-stuck/</guid>
      <description>&lt;p&gt;The &lt;a aria-label=&#34;Resilio Sync (opens in a new tab)&#34; href=&#34;https://www.resilio.com/individuals/&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34; class=&#34;aioseop-link&#34;&gt;Resilio Sync&lt;/a&gt; package that&#39;s provided on a Synology NAS&#39; Packager Center is out of date (2.6.2) and has a bug that causes big files to fail to sync (and that causes a loop of endless retries).&lt;/p&gt;&#xA;&lt;p&gt;The solution is to manually update the package from 2.6.2 to 2.6.4. Find your &lt;a aria-label=&#34;NAS architecture (opens in a new tab)&#34; href=&#34;https://www.synology.com/en-us/knowledgebase/DSM/tutorial/Compatibility_Peripherals/What_kind_of_CPU_does_my_NAS_have&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34; class=&#34;aioseop-link&#34;&gt;NAS architecture&lt;/a&gt; and then &lt;a label=&#34;download (opens in a new tab)&#34; href=&#34;https://web.archive.org/web/20210226065408/https://help.resilio.com/hc/en-us/articles/206664850-Synology&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34; class=&#34;aioseop-link&#34;&gt;download&lt;/a&gt; (bottom of the page) the right binary and manually install it. &lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>The <a aria-label="Resilio Sync (opens in a new tab)" href="https://www.resilio.com/individuals/" target="_blank" rel="noreferrer noopener" class="aioseop-link">Resilio Sync</a> package that's provided on a Synology NAS' Packager Center is out of date (2.6.2) and has a bug that causes big files to fail to sync (and that causes a loop of endless retries).</p>
<p>The solution is to manually update the package from 2.6.2 to 2.6.4. Find your <a aria-label="NAS architecture (opens in a new tab)" href="https://www.synology.com/en-us/knowledgebase/DSM/tutorial/Compatibility_Peripherals/What_kind_of_CPU_does_my_NAS_have" target="_blank" rel="noreferrer noopener" class="aioseop-link">NAS architecture</a> and then <a label="download (opens in a new tab)" href="https://web.archive.org/web/20210226065408/https://help.resilio.com/hc/en-us/articles/206664850-Synology" target="_blank" rel="noreferrer noopener" class="aioseop-link">download</a> (bottom of the page) the right binary and manually install it. </p>
<p>Note that you need to stop the Resilio Sync service running (manually stop it via Package Center) before uploading the package and installing it.</p>
<p>Once done, don't forget to manually start the service again. </p>
<p>Resilio Sync GUI will be at <code>&lt;NAS IP>:28888/gui/</code>. </p>
<p>The howto guide to manually update the package can be found <a label="here (opens in a new tab)" href="https://web.archive.org/web/20210226065408/https://help.resilio.com/hc/en-us/articles/206664850-Synology" target="_blank" rel="noreferrer noopener" class="aioseop-link">here</a>. </p>
]]></content:encoded>
      <category>Hardware</category><category>Linux</category><category>Networking</category><category>Software</category>
      <category>bittorrent</category><category>nas</category><category>rsync</category><category>synology</category>
    </item>
    
    <item>
      <title>Error! Bad return status for module build on kernel: 4.19.0-8-amd64 (x86_64)</title>
      <link>https://yeri.be/error-bad-return-status-for-module-build-on-kernel-4-19-0-8-amd64-x86-64/</link>
      <pubDate>Mon, 04 May 2020 14:01:00 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/error-bad-return-status-for-module-build-on-kernel-4-19-0-8-amd64-x86-64/</guid>
      <description>&lt;p&gt;I was rebuilding my &lt;a aria-label=&#34;WireGuard (opens in a new tab)&#34; href=&#34;https://yeri.be/tag/wireguard&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34; class=&#34;aioseop-link&#34;&gt;WireGuard&lt;/a&gt; &lt;a aria-label=&#34;Docker (opens in a new tab)&#34; href=&#34;https://yeri.be/running-wireguard-in-a-docker-container-amd64&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34; class=&#34;aioseop-link&#34;&gt;Docker&lt;/a&gt; container today and this error started popping up:&lt;/p&gt;&#xA;&lt;pre class=&#34;wp-block-code&#34;&gt;&lt;code&gt;Setting up dkms (2.6.1-4) ...&#xA;Setting up wireguard-dkms (1.0.20200429-1~bpo10+1) ...&#xA;Loading new wireguard-1.0.20200429 DKMS files...&#xA;It is likely that 4.19.0-8-cloud-amd64 belongs to a chroot&#39;s host&#xA;Building for 4.19.0-8-amd64 and 4.19.0-8-cloud-amd64&#xA;Building initial module for 4.19.0-8-amd64&#xA;Error! Bad return status for module build on kernel: 4.19.0-8-amd64 (x86_64)&#xA;Consult /var/lib/dkms/wireguard/1.0.20200429/build/make.log for more information.&#xA;dpkg: error processing package wireguard-dkms (--configure):&#xA; installed wireguard-dkms package post-installation script subprocess returned error exit status 10&#xA;Setting up build-essential (12.6) ...&#xA;Setting up libalgorithm-diff-xs-perl (0.04-5+b1) ...&#xA;Setting up libalgorithm-merge-perl (0.08-3) ...&#xA;dpkg: dependency problems prevent configuration of wireguard:&#xA; wireguard depends on wireguard-dkms (&gt;= 0.0.20200121-2) | wireguard-modules (&gt;= 0.0.20191219); however:&#xA;  Package wireguard-dkms is not configured yet.&#xA;  Package wireguard-modules is not installed.&#xA;&#xA;dpkg: error processing package wireguard (--configure):&#xA; dependency problems - leaving unconfigured&#xA;Processing triggers for systemd (241-7~deb10u3) ...&#xA;Processing triggers for libc-bin (2.28-10) ...&#xA;Errors were encountered while processing:&#xA; wireguard-dkms&#xA; wireguard&#xA;E: Sub-process /usr/bin/dpkg returned an error code (1)&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;The solution was to install &lt;code&gt;bc&lt;/code&gt;. Seems like Debian is not pulling the right dependencies. I&#39;ll be adding it to my Dockerfile.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>I was rebuilding my <a aria-label="WireGuard (opens in a new tab)" href="https://yeri.be/tag/wireguard" target="_blank" rel="noreferrer noopener" class="aioseop-link">WireGuard</a> <a aria-label="Docker (opens in a new tab)" href="https://yeri.be/running-wireguard-in-a-docker-container-amd64" target="_blank" rel="noreferrer noopener" class="aioseop-link">Docker</a> container today and this error started popping up:</p>
<pre class="wp-block-code"><code>Setting up dkms (2.6.1-4) ...
Setting up wireguard-dkms (1.0.20200429-1~bpo10+1) ...
Loading new wireguard-1.0.20200429 DKMS files...
It is likely that 4.19.0-8-cloud-amd64 belongs to a chroot's host
Building for 4.19.0-8-amd64 and 4.19.0-8-cloud-amd64
Building initial module for 4.19.0-8-amd64
Error! Bad return status for module build on kernel: 4.19.0-8-amd64 (x86_64)
Consult /var/lib/dkms/wireguard/1.0.20200429/build/make.log for more information.
dpkg: error processing package wireguard-dkms (--configure):
 installed wireguard-dkms package post-installation script subprocess returned error exit status 10
Setting up build-essential (12.6) ...
Setting up libalgorithm-diff-xs-perl (0.04-5+b1) ...
Setting up libalgorithm-merge-perl (0.08-3) ...
dpkg: dependency problems prevent configuration of wireguard:
 wireguard depends on wireguard-dkms (>= 0.0.20200121-2) | wireguard-modules (>= 0.0.20191219); however:
  Package wireguard-dkms is not configured yet.
  Package wireguard-modules is not installed.

dpkg: error processing package wireguard (--configure):
 dependency problems - leaving unconfigured
Processing triggers for systemd (241-7~deb10u3) ...
Processing triggers for libc-bin (2.28-10) ...
Errors were encountered while processing:
 wireguard-dkms
 wireguard
E: Sub-process /usr/bin/dpkg returned an error code (1)</code></pre>
<p>The solution was to install <code>bc</code>. Seems like Debian is not pulling the right dependencies. I'll be adding it to my Dockerfile.</p>
]]></content:encoded>
      <category>Linux</category><category>Networking</category><category>Software</category>
      <category>debian</category><category>docker</category><category>wireguard</category>
    </item>
    
    <item>
      <title>Running WireGuard in a Docker container (amd64)</title>
      <link>https://yeri.be/running-wireguard-in-a-docker-container-amd64/</link>
      <pubDate>Fri, 01 May 2020 17:09:00 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/running-wireguard-in-a-docker-container-amd64/</guid>
      <description>&lt;p&gt;This is the 2nd post about &lt;a aria-label=&#34;WireGuard (opens in a new tab)&#34; href=&#34;https://yeri.be/tag/wireguard&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34; class=&#34;aioseop-link&#34;&gt;WireGuard&lt;/a&gt;. &lt;/p&gt;&#xA;&lt;p&gt;So I am running two &lt;a aria-label=&#34;WireGuard (opens in a new tab)&#34; href=&#34;https://yeri.be/wireguard&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34; class=&#34;aioseop-link&#34;&gt;WireGuard&lt;/a&gt; servers -- one on a Raspberry Pi 4, and one in an amd64 virtual machine. This post will be about getting WireGuard working on amd64 in a Docker container. &lt;/p&gt;&#xA;&lt;p&gt;As this container rarely get rebuild, I am running &lt;a aria-label=&#34;unattended-upgrades (opens in a new tab)&#34; href=&#34;https://wiki.debian.org/UnattendedUpgrades&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34; class=&#34;aioseop-link&#34;&gt;unattended-upgrades&lt;/a&gt; inside the container to make sure security updates are applied. &lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>This is the 2nd post about <a aria-label="WireGuard (opens in a new tab)" href="https://yeri.be/tag/wireguard" target="_blank" rel="noreferrer noopener" class="aioseop-link">WireGuard</a>. </p>
<p>So I am running two <a aria-label="WireGuard (opens in a new tab)" href="https://yeri.be/wireguard" target="_blank" rel="noreferrer noopener" class="aioseop-link">WireGuard</a> servers -- one on a Raspberry Pi 4, and one in an amd64 virtual machine. This post will be about getting WireGuard working on amd64 in a Docker container. </p>
<p>As this container rarely get rebuild, I am running <a aria-label="unattended-upgrades (opens in a new tab)" href="https://wiki.debian.org/UnattendedUpgrades" target="_blank" rel="noreferrer noopener" class="aioseop-link">unattended-upgrades</a> inside the container to make sure security updates are applied. </p>
<p>I am also running <a aria-label="Bind9 (opens in a new tab)" href="https://wiki.debian.org/Bind9" target="_blank" rel="noreferrer noopener" class="aioseop-link">Bind9</a> to act as a caching DNS server inside the container. Ideally this should be running from its dedicated container but that makes everything more complicated and not worth it for what I am trying. </p>
<p>I am also </p>
<p>The public repo that acts as a proof of concept can be found <a href="https://gitlab.com/yeri/wireguard-docker" target="_blank" aria-label=" (opens in a new tab)" rel="noreferrer noopener" class="aioseop-link">here</a>. </p>
<p><a href="https://gitlab.com/yeri/wireguard-docker/-/blob/master/start.sh" target="_blank" aria-label=" (opens in a new tab)" rel="noreferrer noopener" class="aioseop-link">start.sh</a> -- this file starts (or restarts) and builds the container. It will also create the files as needed, set the forwarding DNS server, etc. </p>
<p><a href="https://gitlab.com/yeri/wireguard-docker/-/blob/master/Dockerfile" target="_blank" aria-label=" (opens in a new tab)" rel="noreferrer noopener" class="aioseop-link">Dockerfile</a> -- the example will start a basic container based on debian-slim, set up the port forwarding, install the tools we need, and copy over the configs</p>
<p><a href="https://gitlab.com/yeri/wireguard-docker/-/blob/master/ocean.run.sh" target="_blank" aria-label=" (opens in a new tab)" rel="noreferrer noopener" class="aioseop-link">run.sh</a> -- this file will be executed after the container has been built. We need to install WireGuard from this file or it will fail due to the volume not being mounted and not having the right params. <br />This will also start the named (bind9) server. <br />I manually set <code>ip address add dev wg0 10.200.200.1/24</code> because using Address in <code>wg0.conf</code> caused issues. I haven't recently tested if that's still the case. </p>
<p><a aria-label=" (opens in a new tab)" href="https://gitlab.com/yeri/wireguard-docker/-/blob/master/files/named.conf.options.default" target="_blank" rel="noreferrer noopener" class="aioseop-link">named.conf.options</a> -- pretty standard bind9 config file; I want to be in control of my <a aria-label="forwarding (opens in a new tab)" href="https://docstore.mik.ua/orelly/networking_2ndEd/dns/ch10_05.htm" target="_blank" rel="noreferrer noopener" class="aioseop-link">forwarding</a> server because I am using <a aria-label="NextDNS (opens in a new tab)" href="https://yeri.be/tag/nextdns" target="_blank" rel="noreferrer noopener" class="aioseop-link">NextDNS</a> and want to apply a different config. </p>
<p>And of course your <a aria-label="wg0.conf (opens in a new tab)" href="https://gitlab.com/yeri/wireguard-docker/-/blob/master/files/ocean.wg0.conf" target="_blank" rel="noreferrer noopener" class="aioseop-link">wg0.conf</a>. </p>
<p>Running <code>docker exec wireguard wg</code> should give details about your connected hosts. </p>
]]></content:encoded>
      <category>Linux</category><category>Networking</category><category>Software</category>
      <category>debian</category><category>docker</category><category>wireguard</category>
    </item>
    
    <item>
      <title>WireGuard</title>
      <link>https://yeri.be/wireguard/</link>
      <pubDate>Mon, 27 Apr 2020 20:34:00 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/wireguard/</guid>
      <description>&lt;p&gt;This is the first post of &lt;a href=&#34;https://yeri.be/tag/wireguard&#34; target=&#34;_blank&#34; aria-label=&#34; (opens in a new tab)&#34; rel=&#34;noreferrer noopener&#34; class=&#34;aioseop-link&#34;&gt;several&lt;/a&gt;. Next posts will focus on running WireGuard inside a Docker container on &lt;a href=&#34;https://yeri.be/running-wireguard-in-a-docker-container-(amd64)&#34; target=&#34;_blank&#34; aria-label=&#34;amd64 Linux (opens in a new tab)&#34; rel=&#34;noreferrer noopener&#34; class=&#34;aioseop-link&#34;&gt;amd64 Linux&lt;/a&gt; and a &lt;a href=&#34;https://yeri.be/running-wireguard-in-a-docker-container-rpi&#34; target=&#34;_blank&#34; aria-label=&#34;Raspberry Pi (opens in a new tab)&#34; rel=&#34;noreferrer noopener&#34; class=&#34;aioseop-link&#34;&gt;Raspberry Pi&lt;/a&gt;. &lt;/p&gt;&#xA;&lt;p&gt;I&#39;ve been running &lt;a aria-label=&#34;Wireguard (opens in a new tab)&#34; href=&#34;https://www.wireguard.com/&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34; class=&#34;aioseop-link&#34;&gt;WireGuard&lt;/a&gt; for a few months now and I&#39;ve been loving it. &lt;/p&gt;&#xA;&lt;p&gt;I first started using it about a year ago when in &lt;a aria-label=&#34;China (opens in a new tab)&#34; rel=&#34;noreferrer noopener&#34; class=&#34;aioseop-link&#34; href=&#34;https://yeri.be/tag/china&#34; target=&#34;_blank&#34;&gt;China&lt;/a&gt; — OpenVPN was once again being actively blocked and it was driving me nuts. Overnight I set up a &lt;a aria-label=&#34;DigitalOcean (opens in a new tab)&#34; rel=&#34;noreferrer noopener&#34; class=&#34;aioseop-link&#34; href=&#34;https://m.do.co/c/3276c58fdbfd&#34; target=&#34;_blank&#34;&gt;DigitalOcean&lt;/a&gt; server in Singapore and ran WireGuard from it — both my phone and laptop were able to actively bypass the &lt;a aria-label=&#34;GFW (opens in a new tab)&#34; rel=&#34;noreferrer noopener&#34; class=&#34;aioseop-link&#34; href=&#34;https://yeri.be/tag/gfw&#34; target=&#34;_blank&#34;&gt;GFW&lt;/a&gt; and (at that time) surf the internet freely once more. As WireGuard gains popularity, I am sure the GFW will start detecting it — it&#39;s a quiet but not a stealthy &lt;a aria-label=&#34;protocol (opens in a new tab)&#34; rel=&#34;noreferrer noopener&#34; class=&#34;aioseop-link&#34; href=&#34;https://www.wireguard.com/protocol/&#34; target=&#34;_blank&#34;&gt;protocol&lt;/a&gt;. &lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>This is the first post of <a href="https://yeri.be/tag/wireguard" target="_blank" aria-label=" (opens in a new tab)" rel="noreferrer noopener" class="aioseop-link">several</a>. Next posts will focus on running WireGuard inside a Docker container on <a href="https://yeri.be/running-wireguard-in-a-docker-container-(amd64)" target="_blank" aria-label="amd64 Linux (opens in a new tab)" rel="noreferrer noopener" class="aioseop-link">amd64 Linux</a> and a <a href="https://yeri.be/running-wireguard-in-a-docker-container-rpi" target="_blank" aria-label="Raspberry Pi (opens in a new tab)" rel="noreferrer noopener" class="aioseop-link">Raspberry Pi</a>. </p>
<p>I've been running <a aria-label="Wireguard (opens in a new tab)" href="https://www.wireguard.com/" target="_blank" rel="noreferrer noopener" class="aioseop-link">WireGuard</a> for a few months now and I've been loving it. </p>
<p>I first started using it about a year ago when in <a aria-label="China (opens in a new tab)" rel="noreferrer noopener" class="aioseop-link" href="https://yeri.be/tag/china" target="_blank">China</a> — OpenVPN was once again being actively blocked and it was driving me nuts. Overnight I set up a <a aria-label="DigitalOcean (opens in a new tab)" rel="noreferrer noopener" class="aioseop-link" href="https://m.do.co/c/3276c58fdbfd" target="_blank">DigitalOcean</a> server in Singapore and ran WireGuard from it — both my phone and laptop were able to actively bypass the <a aria-label="GFW (opens in a new tab)" rel="noreferrer noopener" class="aioseop-link" href="https://yeri.be/tag/gfw" target="_blank">GFW</a> and (at that time) surf the internet freely once more. As WireGuard gains popularity, I am sure the GFW will start detecting it — it's a quiet but not a stealthy <a aria-label="protocol (opens in a new tab)" rel="noreferrer noopener" class="aioseop-link" href="https://www.wireguard.com/protocol/" target="_blank">protocol</a>. </p>
<p>Since then I've dug quite a bit deeper in WireGuard and am really looking forward to what it's going to bring. </p>
<p>WireGuard differentiates itself to be an extremely simple VPN server (which can make getting started and debugging a bit more challenging) — but it wants to seamlessly work together with existing tools. One of the main features still missing is for example running a DHCP server on the server and dynamically assigning IPs (like oVPN does). </p>
<figure class="wp-block-image size-large"><a href="https://static.yeri.be/2020/04/WireGuard-network.png" target="_blank" rel="noopener noreferrer"><img src="https://static.yeri.be/2020/04/WireGuard-network.png" alt="WireGuard network" class="wp-image-8750"/></a><figcaption>Simplified diagram of my network. Using static routing my clients can access the WireGuard network even without running WireGuard directly. (Some of) my containers are also able to access the network, this allows me to run Resilio Sync over WireGuard. It's using one big subnet to create one big LAN. </figcaption></figure>
<p>It's also pretty cool because any node can both be a server and a client at the same time. In my setup I am running two servers: one running at home in Singapore on a RPi4 (1Gbit fiber connection) and one on a virtual machine in <a aria-label="Amsterdam (opens in a new tab)" href="https://yeri.be/tag/rootspirit/" target="_blank" rel="noreferrer noopener" class="aioseop-link">Amsterdam</a> (1Gbit as well). The RPis at my parents are connected to the server in Amsterdam, my iPad and phones are connected to the server in Singapore. If I am in Europe I might switch over and let my iDevices connect to the AMS server instead. </p>
<figure class="wp-block-image size-large"><a href="https://static.yeri.be/2020/04/WireGuard-and-traffic-shaping.png" target="_blank" rel="noopener noreferrer"><img src="https://static.yeri.be/2020/04/WireGuard-and-traffic-shaping-1024x150.png" alt="WireGuard and traffic shaping" class="wp-image-8751"/></a><figcaption>Click to enlarge. <br />Bandwidth stats from Resilio Sync, transferring several big files. We can clearly see a speed increase (from 2-5mb/s to 11mb/s) when routing the exact same traffic over WireGuard. <a aria-label="Traffic shaping (opens in a new tab)" rel="noreferrer noopener" class="aioseop-link" href="https://en.wikipedia.org/wiki/Traffic_shaping" target="_blank">Traffic shaping</a> at its best.</figcaption></figure>
<p>The example above clearly shows speed gains by cloaking the traffic in UDP packets. The shared folder has only two nodes (sender and receiver) and shows several big files being transferred from Amsterdam to Singapore. <a aria-label="Resilio Sync (opens in a new tab)" href="https://www.resilio.com/individuals/" target="_blank" rel="noreferrer noopener" class="aioseop-link">Resilio Sync</a> uses the <a aria-label="Bittorrent protocol (opens in a new tab)" href="https://en.wikipedia.org/wiki/Resilio_Sync#Technology" target="_blank" rel="noreferrer noopener" class="aioseop-link">Bittorrent protocol</a>, something ISPs generally hate and tend to slow down as much as they can — thanks Starhub. </p>
<p>Wireguard also allows the client to decide what to route through the server: only the VPN LAN traffic, or a whole subnet, or 0.0.0.0/0? So for my iPhone I for example route all traffic through VPN to avoid hotel/airport/... WiFi's to mine/log/scan my data. For my laptop I have two configs, one to only connect to the LAN, but another that routes all my traffic through the VPN if I want to avoid exposure or circumvent censoring. </p>
<p>Note that I am not running WireGuard to remain anonymous and I'll definitely leak some information — just trying to minimise and remain in control of what I leak. This is not a <a aria-label="Tor (opens in a new tab)" rel="noreferrer noopener" href="https://www.torproject.org/" target="_blank" class="aioseop-link">Tor</a> replacement. </p>
]]></content:encoded>
      <category>Linux</category><category>Networking</category><category>Software</category>
      <category>debian</category><category>docker</category><category>raspberrypi</category><category>vpn</category><category>wireguard</category>
    </item>
    
    <item>
      <title>Smokeping</title>
      <link>https://yeri.be/smokeping/</link>
      <pubDate>Sun, 26 Apr 2020 16:03:00 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/smokeping/</guid>
      <description>&lt;p&gt;Back in the days -- when I was 16 or so -- &lt;a href=&#34;https://oss.oetiker.ch/smokeping/&#34; target=&#34;_blank&#34; aria-label=&#34;Smokeping (opens in a new tab)&#34; rel=&#34;noreferrer noopener&#34; class=&#34;aioseop-link&#34;&gt;Smokeping&lt;/a&gt; was the rage. Every colo provider in Amsterdam, every NOC, they all had their own Smokeping. &lt;/p&gt;&#xA;&lt;p&gt;Playing around with Docker I saw some &lt;a href=&#34;https://docs.linuxserver.io/images/docker-smokeping&#34; target=&#34;_blank&#34; aria-label=&#34; (opens in a new tab)&#34; rel=&#34;noreferrer noopener&#34; class=&#34;aioseop-link&#34;&gt;Smokeping image&lt;/a&gt; and that made me want to set it up again. &lt;/p&gt;&#xA;&lt;p&gt;I&#39;m running Smokeping on my server in Amsterdam (Leaseweb colo): &lt;a href=&#34;http://smokeping.rootspirit.com&#34; target=&#34;_blank&#34; aria-label=&#34; (opens in a new tab)&#34; rel=&#34;noreferrer noopener&#34; class=&#34;aioseop-link&#34;&gt;smokeping.rootspirit.com&lt;/a&gt;.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>Back in the days -- when I was 16 or so -- <a href="https://oss.oetiker.ch/smokeping/" target="_blank" aria-label="Smokeping (opens in a new tab)" rel="noreferrer noopener" class="aioseop-link">Smokeping</a> was the rage. Every colo provider in Amsterdam, every NOC, they all had their own Smokeping. </p>
<p>Playing around with Docker I saw some <a href="https://docs.linuxserver.io/images/docker-smokeping" target="_blank" aria-label=" (opens in a new tab)" rel="noreferrer noopener" class="aioseop-link">Smokeping image</a> and that made me want to set it up again. </p>
<p>I'm running Smokeping on my server in Amsterdam (Leaseweb colo): <a href="http://smokeping.rootspirit.com" target="_blank" aria-label=" (opens in a new tab)" rel="noreferrer noopener" class="aioseop-link">smokeping.rootspirit.com</a>.</p>
<p>At home, in Singapore, I am also running it on a Raspberry Pi 4: <a href="http://smokeping-sg.superuser.one" target="_blank" aria-label=" (opens in a new tab)" rel="noreferrer noopener" class="aioseop-link">smokeping-sg.superuser.one</a>.</p>
<p>Note that this is actually the same config used on both, as the RPi and server are on the same <a aria-label=" (opens in a new tab)" href="https://yeri.be/tag/wireguard" target="_blank" rel="noreferrer noopener" class="aioseop-link">WireGuard</a> network that works out nicely. </p>
<p>This is my <code>docker run</code> command to start it up:</p>
<p><pre>docker run --name=smokeping --hostname=smokeping -e PUID=1000 -e PGID=1000 -e TZ=`cat /etc/timezone` -d -p 8000:8000 -v /srv/smokeping/config:/config -v /srv/smokeping/data:/data --restart unless-stopped --network 0x04 linuxserver/smokeping</pre></p>
<p>Be sure to create the needed paths, and I am running it in my specific network <code>0x04</code>. Change (or remove) <code>--network 0x04</code> to something that works for you. </p>
]]></content:encoded>
      <category>Linux</category><category>Networking</category>
      <category>smokeping</category>
    </item>
    
    <item>
      <title>Box — Docker shell server</title>
      <link>https://yeri.be/box-docker-shell-server/</link>
      <pubDate>Fri, 24 Apr 2020 10:27:00 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/box-docker-shell-server/</guid>
      <description>&lt;p&gt;A couple of months ago I had the great idea to set up a shell server in Docker. Simply because my docker skillz were quite rusty and a shell server was something I actually genuinely needed. &lt;/p&gt;&#xA;&lt;p&gt;Shell servers... so 2005. I remember in the good old IRC days people asking for (free) shell servers to run their &lt;a aria-label=&#34;eggdrop (opens in a new tab)&#34; href=&#34;https://eggheads.org/&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34; class=&#34;aioseop-link&#34;&gt;eggdrop&lt;/a&gt; and stuff. OMG am I getting old? Anyhow... &lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>A couple of months ago I had the great idea to set up a shell server in Docker. Simply because my docker skillz were quite rusty and a shell server was something I actually genuinely needed. </p>
<p>Shell servers... so 2005. I remember in the good old IRC days people asking for (free) shell servers to run their <a aria-label="eggdrop (opens in a new tab)" href="https://eggheads.org/" target="_blank" rel="noreferrer noopener" class="aioseop-link">eggdrop</a> and stuff. OMG am I getting old? Anyhow... </p>
<p>I ssh quite often. I manage quite a few <a href="https://yeri.be/tag/rootspirit" target="_blank" aria-label="servers (opens in a new tab)" rel="noreferrer noopener" class="aioseop-link">servers</a> (~15?) and <a href="https://yeri.be/?s=edgerouter" target="_blank" aria-label="routers (opens in a new tab)" rel="noreferrer noopener" class="aioseop-link">routers</a> that require me to login and do some random stuff. I also work on a laptop quite often and that means closing the lid and moving around. </p>
<p>First of all, <a aria-label=" (opens in a new tab)" href="https://mosh.org/" target="_blank" rel="noreferrer noopener" class="aioseop-link">mosh</a> is amazing and allows you to stay connected via ssh, even with crappy (airport/hotel) internet as well as moving around networks -- that solves half the problem. If you are not using it, start using it now!</p>
<p>Second, during my <a aria-label="datacenter technician (opens in a new tab)" href="https://www.google.com/about/datacenters/" target="_blank" rel="noreferrer noopener" class="aioseop-link">datacenter technician</a> days at Google we used to have a "jump server" -- a shell server that allowed us to bridge the corporate network and ssh into prod machines. Doubt that's still used nowadays, but the idea stuck. I wanted something similar to ssh from, wherever I was, and easily connect to my servers. And as the network the shell server is running on is stable, I only need to use mosh to the shell server. Thereafter, the connection very rarely dies. </p>
<p>And I guess, third, I recently purchased an iPad Pro and I really need to have my local "dev" environment with my git repo that I edit quite frequently but iPadOS isn't really your average computer, and doesn't even have a proper terminal. This is my experiment to make iPadOS work as a main computer when on the move. </p>
<p>Enter box -- <a href="https://gitlab.com/yeri/box-public" target="_blank" aria-label="Docker shell server (opens in a new tab)" rel="noreferrer noopener" class="aioseop-link">Docker shell server</a>... <a href="https://gitlab.com/yeri/box-public" class="aioseop-link"></a></p>
<p>I've copied over the files I use to this <a aria-label="example repo (opens in a new tab)" href="https://gitlab.com/yeri/box-public" target="_blank" rel="noreferrer noopener" class="aioseop-link">example repo</a>, and added some comments. Mind you that this repo acts as a proof of concept and isn't kept up to date, as I have my own private repo -- but this should give you a good idea on how to set up your own shell server with Docker. </p>
<p><a aria-label=" (opens in a new tab)" href="https://gitlab.com/yeri/box-public/-/blob/master/start.sh" target="_blank" rel="noreferrer noopener" class="aioseop-link">start.sh</a> -- this is a simple script that I execute when I first run or need to update the container. I execute the same file on two different servers: <a label="Liana (opens in a new tab)" href="http://smokeping-sg.superuser.one/" target="_blank" rel="noreferrer noopener" class="aioseop-link">Liana</a>, my Raspberry Pi at home and <a aria-label="Ocean (opens in a new tab)" href="http://smokeping.rootspirit.com/" target="_blank" rel="noreferrer noopener" class="aioseop-link">Ocean</a>, my server in <a aria-label="Amsterdam (opens in a new tab)" href="https://yeri.be/tag/rootspirit" target="_blank" rel="noreferrer noopener" class="aioseop-link">Amsterdam</a>. </p>
<p><a href="https://gitlab.com/yeri/box-public/-/blob/master/zsh.sh" target="_blank" aria-label=" (opens in a new tab)" rel="noreferrer noopener" class="aioseop-link">zsh.sh</a> -- this installs what I care about for zsh. This could be part of the Dockerfile but for some reason I separated it. ¯\_(ツ)_/¯ </p>
<p><a aria-label=" (opens in a new tab)" href="https://gitlab.com/yeri/box-public/-/blob/master/git.sh" target="_blank" rel="noreferrer noopener" class="aioseop-link">git.sh</a> -- this clones my Git repos so I can edit and commit stuff from the shell server. </p>
<p><a aria-label="run.sh (opens in a new tab)" href="https://gitlab.com/yeri/box-public/-/blob/master/run.sh" target="_blank" rel="noreferrer noopener" class="aioseop-link">run.sh</a> -- this file is launched by Dockerfile at the end and executes what matters: the ssh daemon. It also adds a <a aria-label="Wireguard (opens in a new tab)" href="https://yeri.be/tag/wireguard" target="_blank" rel="noreferrer noopener" class="aioseop-link">Wireguard</a> route and executes the scripts above. </p>
<p><a aria-label=" (opens in a new tab)" href="https://gitlab.com/yeri/box-public/-/blob/master/Dockerfile" target="_blank" rel="noreferrer noopener" class="aioseop-link">Dockerfile</a> -- this installs everything I need and configures the whole thing. I've added tons of comments that should get you going. </p>
<p>I am also cloning <a aria-label="misc (opens in a new tab)" href="https://gitlab.com/yeri/homefiles/" target="_blank" rel="noreferrer noopener" class="aioseop-link">misc</a> and <a aria-label="homefiles (opens in a new tab)" href="https://gitlab.com/yeri/homefiles/" target="_blank" rel="noreferrer noopener" class="aioseop-link">homefiles</a> as submodules in <a aria-label="files/ (opens in a new tab)" href="https://gitlab.com/yeri/box-public/-/tree/master/files" target="_blank" rel="noreferrer noopener" class="aioseop-link">files/</a> -- but you should change this to something that works for you. See the Dockerfile for more info. </p>
]]></content:encoded>
      <category>Apple</category><category>Linux</category><category>Networking</category><category>Software</category><category>Virtualisation</category>
      <category>debian</category><category>docker</category><category>raspberrypi</category><category>rootspirit</category><category>vpn</category><category>wireguard</category>
    </item>
    
    <item>
      <title>NextDNS &#43; EdgeRouter &#43; Redirecting DNS requests</title>
      <link>https://yeri.be/nextdns-edgerouter-redirecting-dns-requests/</link>
      <pubDate>Tue, 21 Apr 2020 18:14:00 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/nextdns-edgerouter-redirecting-dns-requests/</guid>
      <description>&lt;p&gt;Realised I haven&#39;t updated this in a long while (life happened).&lt;/p&gt;&#xA;&lt;p&gt;Couple of weeks ago I started to play with &lt;a href=&#34;http://nextdns.io&#34; target=&#34;_blank&#34; aria-label=&#34; (opens in a new tab)&#34; rel=&#34;noreferrer noopener&#34; class=&#34;aioseop-link&#34;&gt;NextDNS&lt;/a&gt; -- and I really recommend anyone that&#39;s something privacy minded and cares about the stuff happening on their network. &lt;/p&gt;&#xA;&lt;p&gt;I&#39;ve set up several configs (home, parents, FlatTurtle &lt;a aria-label=&#34; (opens in a new tab)&#34; href=&#34;https://blog.flatturtle.com/image/103073818135&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34; class=&#34;aioseop-link&#34;&gt;TurtleBox&lt;/a&gt; (the NUCs controlling the &lt;a aria-label=&#34; (opens in a new tab)&#34; href=&#34;https://flatturtle.com/screens&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34; class=&#34;aioseop-link&#34;&gt;screens&lt;/a&gt;)) and Servers. Once it&#39;s out of beta and better supported on Unifi and Ubiquiti hardware I might deploy it to our &lt;a aria-label=&#34; (opens in a new tab)&#34; href=&#34;https://blog.flatturtle.com/image/101035897937&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34; class=&#34;aioseop-link&#34;&gt;public WiFi&lt;/a&gt; (well, most access points don&#39;t look like that -- but you get the point) networks too. &lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>Realised I haven't updated this in a long while (life happened).</p>
<p>Couple of weeks ago I started to play with <a href="http://nextdns.io" target="_blank" aria-label=" (opens in a new tab)" rel="noreferrer noopener" class="aioseop-link">NextDNS</a> -- and I really recommend anyone that's something privacy minded and cares about the stuff happening on their network. </p>
<p>I've set up several configs (home, parents, FlatTurtle <a aria-label=" (opens in a new tab)" href="https://blog.flatturtle.com/image/103073818135" target="_blank" rel="noreferrer noopener" class="aioseop-link">TurtleBox</a> (the NUCs controlling the <a aria-label=" (opens in a new tab)" href="https://flatturtle.com/screens" target="_blank" rel="noreferrer noopener" class="aioseop-link">screens</a>)) and Servers. Once it's out of beta and better supported on Unifi and Ubiquiti hardware I might deploy it to our <a aria-label=" (opens in a new tab)" href="https://blog.flatturtle.com/image/101035897937" target="_blank" rel="noreferrer noopener" class="aioseop-link">public WiFi</a> (well, most access points don't look like that -- but you get the point) networks too. </p>
<p>Looking at the logs was an eye-opener seeing what goes through your network. You can play around and block (or whitelist) certain domains. </p>
<figure class="wp-block-image size-large"><a href="https://static.yeri.be/2020/04/nextdns_0x04.png" target="_blank" rel="noopener noreferrer"><img src="https://static.yeri.be/2020/04/nextdns_0x04-902x1024.png" alt="" class="wp-image-8310"/></a></figure>
<p>I figured out my <a href="https://www.devialet.com" target="_blank" aria-label=" (opens in a new tab)" rel="noreferrer noopener" class="aioseop-link">Devialet</a> does an insane amount of requests to <a href="http://cache.radioline.fr" target="_blank" aria-label=" (opens in a new tab)" rel="noreferrer noopener" class="aioseop-link">cache.radioline.fr</a> for example. This domain has a 30s TTL. It shows that the majority of my DNS requests are actually automated pings and not in any way human traffic. </p>
<p>Anyhow -- I've since installed the <a href="https://github.com/nextdns/nextdns/wiki/EdgeOS" target="_blank" aria-label=" (opens in a new tab)" rel="noreferrer noopener" class="aioseop-link">NextDNS CLI</a> straight on my <a href="https://yeri.be/edgerouter-fritzbox-ipsec" class="aioseop-link">EdgeRouter</a> Lite acting as a caching DNS server and forwarding using <a href="https://en.wikipedia.org/wiki/DNS_over_HTTPS" target="_blank" aria-label=" (opens in a new tab)" rel="noreferrer noopener" class="aioseop-link">DoH</a>. </p>
<p>I've turned off dnsmasq (<code>/etc/default/dnsmasq</code> =&gt; <code>DNSMASQ_OPTS="-p0"</code>) and have NextDNS listen to :53 directly. </p>
<p>Note that every EdgeOS update seems to wipe out the NextDNS installation, and requires a fresh install... Pain in the ass and doesn't seem like that's fixable. </p>
<p>This is my ERL NextDNS config (<code>/etc/nextdns.conf</code>)</p>
<pre class="wp-block-preformatted">hardened-privacy false
bogus-priv true
log-queries false
cache-size 10MB
cache-max-age 0s
report-client-info true
timeout 5s
listen :53
use-hosts true
setup-router false
auto-activate true
config 34xyz8
detect-captive-portals false
max-ttl 0s</pre>
<p>The explanation of every flag is explain on their <a href="https://github.com/nextdns/nextdns/" target="_blank" aria-label=" (opens in a new tab)" rel="noreferrer noopener" class="aioseop-link">Github</a> page and they are very responsive via issues or through their chat on <a href="http://my.nextdns.io" target="_blank" aria-label="my.nextdns.io (opens in a new tab)" rel="noreferrer noopener" class="aioseop-link">my.nextdns.io</a>.  </p>
<p>All right -- next thing I've noticed is that my Google Home devices are not sending any DNS requests -- which means the devices use hard coded DNS servers. </p>
<p>I have a separate vlan (<code>eth1.90</code>) for Google Home (includes my Android TV, <a aria-label=" (opens in a new tab)" href="https://osmc.tv/" target="_blank" rel="noreferrer noopener" class="aioseop-link">OSMC</a>, Nest Home Hub and all other GHome and Chromecast devices). For this vlan I set up a deflector to be able to cast and ping/ssh from my "main" network/vlan to GHome vlan. </p>
<p>Using <a href="https://iperf.io/2019/12/27/intercept-and-redirect-dns-requests/" target="_blank" aria-label=" (opens in a new tab)" rel="noreferrer noopener" class="aioseop-link">this guide</a> I redirected all external DNS traffic to the ERL so I can monitor what's happening. The important part was the following:</p>
<pre class="wp-block-preformatted">yeri@sg-erl# show service nat rule 4053<br />destination {<br />port 53<br />}<br />inbound-interface eth1.90<br />inside-address {<br />address 10.3.34.1<br />port 53<br />}<br />protocol tcp_udp<br />type destination</pre>
<p>This allows to "catch" all UDP and TCP connections to :53 and redirect them the ERL DNS server (10.3.34.1). The GHome devices were acting a bit weird after committing the change, but a reboot of the device fixed it. </p>
<p>Note that you need to set this up per vlan. If you want to catch DNS requests for your Guest or IoT vlan, you'll need to do the same. </p>
]]></content:encoded>
      <category>Google</category><category>Linux</category><category>Networking</category>
      <category>debian</category><category>dns</category><category>nextdns</category><category>router</category><category>ubiquiti</category>
    </item>
    
    <item>
      <title>Edgerouter IPsec tunnel to Fritzbox</title>
      <link>https://yeri.be/edgerouter-fritzbox-ipsec/</link>
      <pubDate>Wed, 08 Feb 2017 21:18:10 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/edgerouter-fritzbox-ipsec/</guid>
      <description>&lt;p&gt;So, I have an EdgeRouter Lite in Singapore (Starhub) and a FritzBox in Belgium (EDPnet).&lt;/p&gt;&#xA;&lt;p&gt;This is mostly stuff that I have found from several articles, mostly from &lt;a href=&#34;https://community.ubnt.com/t5/EdgeMAX/HOW-TO-IPSec-Site-to-Site-VPN-with-both-dynamic-IPs-between/m-p/1548055#U1548055&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;here&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;ERL: eth0 is WAN, eth1 (10.60.111.0/24) and eth2 (unused, not VPN&amp;rsquo;ed) are LAN&#xA;FritzBoz: 192.168.1.0/24&lt;/p&gt;&#xA;&lt;p&gt;This is the FritzBox config (go to VPN and them Import a config) &lt;code&gt;fritzvpn.cfg&lt;/code&gt;:&lt;/p&gt;&#xA;&lt;pre&gt;vpncfg {&#xA;        connections {&#xA;                enabled = yes;&#xA;                conn_type = conntype_lan;&#xA;                name = &#34;VPN Yeri&#34;;&#xA;                always_renew = yes;&#xA;                reject_not_encrypted = no;&#xA;                dont_filter_netbios = yes;&#xA;                localip = 0.0.0.0;&#xA;                local_virtualip = 0.0.0.0;&#xA;                remoteip = 0.0.0.0;&#xA;                remote_virtualip = 0.0.0.0;&#xA;                remotehostname = &#34;erl.yeri.be&#34;;&#xA;                localid {&#xA;                        fqdn = &#34;fritz.yeri.be&#34;;&#xA;                }&#xA;                remoteid {&#xA;                        fqdn = &#34;erl.yeri.be&#34;;&#xA;                }&#xA;                mode = phase1_mode_idp;&#xA;                phase1ss = &#34;all/all/all&#34;;&#xA;                keytype = connkeytype_pre_shared;&#xA;                key = &#34;SOMEPASSWORD&#34;;&#xA;                cert_do_server_auth = no;&#xA;                use_nat_t = yes;&#xA;                use_xauth = no;&#xA;                use_cfgmode = no;&#xA;                phase2localid {&#xA;                        ipnet {&#xA;                                ipaddr = 192.168.1.0;&#xA;                                mask = 255.255.255.0;&#xA;                        }&#xA;                }&#xA;                phase2remoteid {&#xA;                        ipnet {&#xA;                                ipaddr = 10.60.111.0;&#xA;                                mask = 255.255.255.0;&#xA;                        }&#xA;                }&#xA;                phase2ss = &#34;esp-all-all/ah-none/comp-all/pfs&#34;;&#xA;                accesslist = &#34;permit ip any 10.60.111.0 255.255.255.0&#34;;&#xA;        }&#xA;        ike_forward_rules = &#34;udp 0.0.0.0:500 0.0.0.0:500&#34;, &#xA;                            &#34;udp 0.0.0.0:4500 0.0.0.0:4500&#34;;&#xA;}&lt;/pre&gt;&#xA;&lt;p&gt;Be sure to modify the password, local (Fritz) and remote (ERL) LAN and edit the local and remote fqdn.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>So, I have an EdgeRouter Lite in Singapore (Starhub) and a FritzBox in Belgium (EDPnet).</p>
<p>This is mostly stuff that I have found from several articles, mostly from <a href="https://community.ubnt.com/t5/EdgeMAX/HOW-TO-IPSec-Site-to-Site-VPN-with-both-dynamic-IPs-between/m-p/1548055#U1548055" target="_blank" rel="noopener">here</a>.</p>
<p>ERL: eth0 is WAN, eth1 (10.60.111.0/24) and eth2 (unused, not VPN&rsquo;ed) are LAN
FritzBoz: 192.168.1.0/24</p>
<p>This is the FritzBox config (go to VPN and them Import a config) <code>fritzvpn.cfg</code>:</p>
<pre>vpncfg {
        connections {
                enabled = yes;
                conn_type = conntype_lan;
                name = "VPN Yeri";
                always_renew = yes;
                reject_not_encrypted = no;
                dont_filter_netbios = yes;
                localip = 0.0.0.0;
                local_virtualip = 0.0.0.0;
                remoteip = 0.0.0.0;
                remote_virtualip = 0.0.0.0;
                remotehostname = "erl.yeri.be";
                localid {
                        fqdn = "fritz.yeri.be";
                }
                remoteid {
                        fqdn = "erl.yeri.be";
                }
                mode = phase1_mode_idp;
                phase1ss = "all/all/all";
                keytype = connkeytype_pre_shared;
                key = "SOMEPASSWORD";
                cert_do_server_auth = no;
                use_nat_t = yes;
                use_xauth = no;
                use_cfgmode = no;
                phase2localid {
                        ipnet {
                                ipaddr = 192.168.1.0;
                                mask = 255.255.255.0;
                        }
                }
                phase2remoteid {
                        ipnet {
                                ipaddr = 10.60.111.0;
                                mask = 255.255.255.0;
                        }
                }
                phase2ss = "esp-all-all/ah-none/comp-all/pfs";
                accesslist = "permit ip any 10.60.111.0 255.255.255.0";
        }
        ike_forward_rules = "udp 0.0.0.0:500 0.0.0.0:500", 
                            "udp 0.0.0.0:4500 0.0.0.0:4500";
}</pre>
<p>Be sure to modify the password, local (Fritz) and remote (ERL) LAN and edit the local and remote fqdn.</p>
<p>This is the ERL config (via ssh, you&rsquo;ll need to <code>set</code> this:</p>
<pre>yeri@sg-erl# show vpn ipsec 
 auto-update 60
 auto-firewall-nat-exclude enable
 esp-group FOO0 {
     proposal 1 {
         encryption aes256
         hash sha1
     }
 }
 ike-group FOO0 {
     dead-peer-detection {
         action restart
         interval 60
         timeout 60
     }
     lifetime 3600
     proposal 1 {
         dh-group 2
         encryption aes256
         hash sha1
     }
 }
 ipsec-interfaces {
     interface eth0
 }
 nat-networks {
     allowed-network 0.0.0.0/0 {
     }
 }
 nat-traversal enable
 site-to-site {
     peer fritz.yeri.be {
         authentication {
             mode pre-shared-secret
             pre-shared-secret SOMEPASSWORD
         }
         connection-type initiate
         description "VPN to fritz.yeri.be"
         ike-group FOO0
         local-address erl.yeri.be
         tunnel 1 {
             esp-group FOO0
             local {
                 prefix 10.60.111.0/24
             }
             remote {
                 prefix 192.168.1.0/24
             }
         }
     }
 }</pre>
<p>Status:</p>
<pre>yeri@sg:~$ show vpn ipsec status
IPSec Process Running PID: 20140

1 Active IPsec Tunnels

IPsec Interfaces :
        eth0    (no IP on interface statically configured as local-address for any VPN peer)
yeri@sg:~$ show vpn ipsec sa
peer-be.yeri.be-tunnel-1: #9, ESTABLISHED, IKEv1, 85a2d010ada73113:ca439c40ac3bca06
  local  'erl.yeri.be' @ 116.87.x.y
  remote 'fritz.yeri.be' @ 109.236.x.y
  AES_CBC-256/HMAC_SHA1_96/PRF_HMAC_SHA1/MODP_1024
  established 1592s ago, reauth in 1333s
  peer-fritz.yeri.be-tunnel-1: #1, INSTALLED, TUNNEL, ESP:AES_CBC-256/HMAC_SHA1_96/MODP_1024
    installed 1592 ago, rekeying in 1200s, expires in 2009s
    in  c0bb652e, 1038032 bytes, 10726 packets,     0s ago
    out 8d5df3f5, 532685 bytes,  6062 packets,     0s ago
    local  10.60.111.0/24
    remote 192.168.1.0/24</pre>
<p>I haven&rsquo;t really figured out what <code>no IP on interface statically configured as local-address for any VPN peer</code> means yet though.</p>
<p>Next up: VLANs</p>
]]></content:encoded>
      <category>Hardware</category><category>Linux</category><category>Networking</category>
      <category>1</category><category>9</category><category>ubiquiti</category><category>vpn</category>
    </item>
    
    <item>
      <title>Blockchain</title>
      <link>https://yeri.be/blockchain/</link>
      <pubDate>Sun, 05 Feb 2017 15:46:50 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/blockchain/</guid>
      <description>&lt;p&gt;Probably the best and easiest to understand Blockchain explanation I&amp;rsquo;ve seen.&lt;/p&gt;&#xA;&lt;div class=&#34;embed-responsive embed-youtube&#34;&gt;&#xA;&#x9;&lt;iframe src=&#34;https://www.youtube-nocookie.com/embed/_160oMzblY8&#34; title=&#34;YouTube video&#34; loading=&#34;lazy&#34; allow=&#34;accelerometer; clipboard-write; encrypted-media; gyroscope; picture-in-picture&#34; allowfullscreen&gt;&lt;/iframe&gt;&#xA;&lt;/div&gt;&#xA;&#xA;&lt;p&gt;(&lt;a href=&#34;https://web.archive.org/web/20191014221938/https://anders.com/blockchain/&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;&lt;em&gt;Source&lt;/em&gt;&lt;/a&gt;)&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>Probably the best and easiest to understand Blockchain explanation I&rsquo;ve seen.</p>
<div class="embed-responsive embed-youtube">
	<iframe src="https://www.youtube-nocookie.com/embed/_160oMzblY8" title="YouTube video" loading="lazy" allow="accelerometer; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
</div>

<p>(<a href="https://web.archive.org/web/20191014221938/https://anders.com/blockchain/" target="_blank" rel="noopener"><em>Source</em></a>)</p>
]]></content:encoded>
      <category>Networking</category><category>Software</category>
      <category>bitcoin</category><category>blockchain</category>
    </item>
    
    <item>
      <title>EVA and WiFi</title>
      <link>https://yeri.be/eva-and-wifi/</link>
      <pubDate>Sat, 28 Jan 2017 16:26:10 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/eva-and-wifi/</guid>
      <description>&lt;p style=&#34;text-align: left;&#34;&gt;So I am flying EVA from &lt;a href=&#34;http://flightdiary.net/Tuinslak&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;SIN - TPE - JFK&lt;/a&gt; and back. For the first time I also went to the dark side (16hrs was too long to be locked up with just my mind) and got onboard WiFi.&lt;/p&gt;&#xA;&lt;p style=&#34;text-align: center;&#34;&gt;&lt;a href=&#34;https://static.yeri.be/2017/01/evawifi.png&#34;&gt;&lt;img class=&#34;alignnone size-medium wp-image-8253&#34; src=&#34;https://static.yeri.be/2017/01/evawifi-300x260.png&#34; alt=&#34;&#34; width=&#34;300&#34; height=&#34;260&#34; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;This seems to come with unlimited data for ~20USD for 24hrs. I manage to stream Google Music just fine.&lt;/p&gt;&#xA;&lt;p&gt;I totally went Matrix mode during the flight. While the flight is half empty I am wondering if they think I am haxoring it now.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p style="text-align: left;">So I am flying EVA from <a href="http://flightdiary.net/Tuinslak" target="_blank" rel="noopener noreferrer">SIN - TPE - JFK</a> and back. For the first time I also went to the dark side (16hrs was too long to be locked up with just my mind) and got onboard WiFi.</p>
<p style="text-align: center;"><a href="https://static.yeri.be/2017/01/evawifi.png"><img class="alignnone size-medium wp-image-8253" src="https://static.yeri.be/2017/01/evawifi-300x260.png" alt="" width="300" height="260" /></a></p>
<p>This seems to come with unlimited data for ~20USD for 24hrs. I manage to stream Google Music just fine.</p>
<p>I totally went Matrix mode during the flight. While the flight is half empty I am wondering if they think I am haxoring it now.</p>
<p>EVA uses T-Mobile Germany as carrier.</p>
<p>Public IP routes to a German IP (and Google redirects to Google.de).</p>
<pre>nazgul<span class="s2"> ~ </span><span class="s3">$</span><span class="s4"> curl canhazip.com
88.128.80.215</span></pre>
<p class="p1">Whois info:</p>
<p class="p1">[...]</p>
<pre>inetnum: 88.128.80.0 - 88.128.95.255
netname: ca-de
descr: Telekom Deutschland GmbH
country: DE
admin-c: TH12429-RIPE
tech-c: AS8728-RIPE
tech-c: MS47198-RIPE
remarks: ***************************************************************************
remarks: Please send any abuse complaints to: abuse@telekom.de
remarks: Behoerdenauskuenfte koennen nur ueber folgende Ruf- bzw. Faxnummern beantwortet werden:
remarks: Fax: 0180-18812-66 (0,039 Euro/Minute aus dem Festnetz der Deutschen Telekom AG.)
remarks: Tel.: 0180-18812-77 (0,039 Euro/Minute aus dem Festnetz der Deutschen Telekom AG.)
remarks: ***************************************************************************
status: ASSIGNED PA
mnt-by: MNT-TMD
created: 2008-05-06T07:54:12Z
last-modified: 2012-07-30T08:54:39Z
source: RIPE</pre>
<p>Trace routes are quite odd:</p>
<pre>nazgul ~ $ traceroute yeri.be
traceroute to yeri.be (83.149.69.152), 64 hops max, 52 byte packets
1 ns.evawifi.com (172.19.248.1) 3.429 ms 2.746 ms 2.921 ms
2 10.207.1.1 (10.207.1.1) 2.998 ms 2.535 ms 2.455 ms
3 172.18.15.41 (172.18.15.41) 553.837 ms 536.711 ms 541.207 ms
4 172.18.14.34 (172.18.14.34) 615.658 ms 534.722 ms 536.465 ms
5 * * *
6 yeri.be (83.149.69.152) 728.306 ms 749.172 ms 738.020 ms
7 yeri.be (83.149.69.152) 743.171 ms 735.898 ms 858.885 ms
8 yeri.be (83.149.69.152) 731.611 ms 764.056 ms 734.694 ms
9 yeri.be (83.149.69.152) 745.765 ms 745.182 ms 729.407 ms
10 yeri.be (83.149.69.152) 745.248 ms 1002.078 ms 750.183 ms
11 yeri.be (83.149.69.152) 901.702 ms 758.616 ms 898.359 ms
12 yeri.be (83.149.69.152) 750.162 ms 779.888 ms 863.083 ms
13 yeri.be (83.149.69.152) 777.654 ms 777.442 ms 750.133 ms
14 yeri.be (83.149.69.152) 745.435 ms 783.786 ms 942.607 ms
15 yeri.be (83.149.69.152) 926.653 ms 939.882 ms 830.519 ms
16 yeri.be (83.149.69.152) 1239.295 ms 754.112 ms 753.986 ms</pre>
<pre>nazgul ~ $ traceroute google.com
traceroute to google.com (172.217.17.46), 64 hops max, 52 byte packets
1 ns.evawifi.com (172.19.248.1) 1.716 ms 1.200 ms 2.627 ms
2 10.207.1.1 (10.207.1.1) 2.155 ms 1.932 ms 2.165 ms
3 172.18.15.41 (172.18.15.41) 583.366 ms 588.440 ms 730.303 ms
4 172.18.14.34 (172.18.14.34) 552.347 ms 963.682 ms 550.350 ms
5 172.30.1.34 (172.30.1.34) 841.324 ms * 637.136 ms
6 ams16s29-in-f46.1e100.net (172.217.17.46) 752.359 ms 744.614 ms 819.851 ms
7 ams16s29-in-f46.1e100.net (172.217.17.46) 735.554 ms 737.249 ms 785.678 ms
8 ams16s29-in-f46.1e100.net (172.217.17.46) 766.046 ms 738.774 ms 750.276 ms
9 ams16s29-in-f46.1e100.net (172.217.17.46) 817.491 ms 736.133 ms 765.344 ms
10 ams16s29-in-f46.1e100.net (172.217.17.46) 1047.754 ms 754.939 ms *
11 * ams16s29-in-f46.1e100.net (172.217.17.46) 761.013 ms 762.848 ms
12 * ams16s29-in-f46.1e100.net (172.217.17.46) 840.602 ms 750.186 ms
13 ams16s29-in-f46.1e100.net (172.217.17.46) 935.149 ms 808.133 ms 745.638 ms
14 ams16s29-in-f46.1e100.net (172.217.17.46) 736.075 ms 881.481 ms 788.661 ms
15 * * *
16 ams16s29-in-f46.1e100.net (172.217.17.46) 876.269 ms 1195.194 ms 754.661 ms
17 ams16s29-in-f46.1e100.net (172.217.17.46) 749.985 ms 850.065 ms 742.763 ms
18 ams16s29-in-f46.1e100.net (172.217.17.46) 737.418 ms 1079.194 ms 751.415 ms
19 ams16s29-in-f46.1e100.net (172.217.17.46) 765.339 ms 763.116 ms 754.928 ms
20 ams16s29-in-f46.1e100.net (172.217.17.46) 765.059 ms 767.733 ms 762.777 ms
21 ams16s29-in-f46.1e100.net (172.217.17.46) 860.458 ms 780.965 ms 757.507 ms
22 ams16s29-in-f46.1e100.net (172.217.17.46) 768.432 ms 747.930 ms 764.553 ms
23 ams16s29-in-f46.1e100.net (172.217.17.46) 758.869 ms 747.489 ms 751.329 ms
24 ams16s29-in-f46.1e100.net (172.217.17.46) 797.699 ms 818.899 ms *</pre>
<pre>nazgul ~ $ traceroute t-mobile.de
traceroute to t-mobile.de (46.29.100.15), 64 hops max, 52 byte packets
1 ns.evawifi.com (172.19.248.1) 1.978 ms 1.080 ms 1.071 ms
2 10.207.1.1 (10.207.1.1) 4.575 ms 1.885 ms 1.847 ms
3 172.18.15.41 (172.18.15.41) 540.670 ms 739.430 ms 787.836 ms
4 172.18.14.34 (172.18.14.34) 646.621 ms 775.771 ms 562.301 ms
5 * 172.30.1.34 (172.30.1.34) 630.660 ms *
6 46.29.100.15 (46.29.100.15) 1014.377 ms 813.739 ms 755.431 ms
7 46.29.100.15 (46.29.100.15) 766.290 ms 805.572 ms 735.697 ms
8 46.29.100.15 (46.29.100.15) 806.918 ms 792.377 ms 945.535 ms
9 46.29.100.15 (46.29.100.15) 783.751 ms 736.085 ms 781.832 ms
10 46.29.100.15 (46.29.100.15) 817.682 ms 738.980 ms 1031.463 ms
11 46.29.100.15 (46.29.100.15) 872.993 ms 767.682 ms 807.777 ms
12 46.29.100.15 (46.29.100.15) 986.659 ms 804.279 ms 806.750 ms
13 46.29.100.15 (46.29.100.15) 846.340 ms 767.556 ms 939.215 ms
14 46.29.100.15 (46.29.100.15) 737.330 ms 759.259 ms 786.724 ms
15 * * *
16 * * *</pre>
<p>Not very sure what witchery is going on here.</p>
<p>arp shows AP isolation and two different servers running for the WiFi:</p>
<pre>nazgul ~ $ arp -a
ns.evawifi.com (172.19.248.1) at 0:d:2e:0:40:1 on en0 ifscope [ethernet]
www.evawifi.com (172.19.248.2) at 0:d:2e:0:0:a8 on en0 ifscope [ethernet]
? (172.19.249.255) at (incomplete) on en0 ifscope [ethernet]
? (224.0.0.251) at 1:0:5e:0:0:fb on en0 ifscope permanent [ethernet]
? (239.192.0.0) at 1:0:5e:40:0:0 on en0 ifscope permanent [ethernet]
? (239.255.255.250) at 1:0:5e:7f:ff:fa on en0 ifscope permanent [ethernet]</pre>
<p>There seems to be a transparant Squid/<a href="https://www.cvedetails.com/vulnerability-list/vendor_id-9950/product_id-17766/version_id-171780/Squid-cache-Squid-3.4.6.html" target="_blank" rel="noopener noreferrer">3.4.6</a> caching proxy running:</p>
<p style="text-align: center;"><a href="https://static.yeri.be/2017/01/evasquid.png"><img class="alignnone size-medium wp-image-8254" src="https://static.yeri.be/2017/01/evasquid-300x228.png" alt="" width="300" height="228" /></a></p>
<p style="text-align: left;">More random things can be found <a href="https://static.yeri.be/2017/01/eva.txt">here</a>.</p>
]]></content:encoded>
      <category>Networking</category><category>Travel</category>
      <category>nginx</category><category>squid</category><category>wifi</category>
    </item>
    
    <item>
      <title>Yard Sale - Free pick up</title>
      <link>https://yeri.be/yard-sale-free-pick-up/</link>
      <pubDate>Sat, 16 Jul 2016 11:23:37 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/yard-sale-free-pick-up/</guid>
      <description>&lt;p&gt;&lt;strong&gt;Free&lt;/strong&gt; &lt;strong&gt;pick up&lt;/strong&gt; in Grimbergen, Diegem or Brussels North.&lt;/p&gt;&#xA;&lt;p&gt;Email: &lt;a href=&#34;mailto:yeri&amp;#43;sale@tiete.be&#34;&gt;yeri+sale@tiete.be&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Everything has been stored for a while in my garage and is &lt;span style=&#34;text-decoration: underline;&#34;&gt;&lt;strong&gt;untested&lt;/strong&gt;&lt;/span&gt;.&lt;/p&gt;&#xA;&lt;h4&gt;Dual P3 1u server&lt;/h4&gt;&#xA;&lt;a href=&#34;https://static.yeri.be/2016/07/IMG_20160716_110703.jpg&#34;&gt;&lt;img class=&#34;alignnone size-thumbnail wp-image-8064&#34; src=&#34;https://static.yeri.be/2016/07/IMG_20160716_110703-150x150.jpg&#34; alt=&#34;IMG_20160716_110703&#34; width=&#34;150&#34; height=&#34;150&#34; /&gt;&lt;/a&gt;  &lt;a href=&#34;https://static.yeri.be/2016/07/IMG_20160716_110708.jpg&#34;&gt;&lt;img class=&#34;alignnone size-thumbnail wp-image-8065&#34; src=&#34;https://static.yeri.be/2016/07/IMG_20160716_110708-150x150.jpg&#34; alt=&#34;IMG_20160716_110708&#34; width=&#34;150&#34; height=&#34;150&#34; /&gt;&lt;/a&gt;  &lt;a href=&#34;https://static.yeri.be/2016/07/IMG_20160716_110720.jpg&#34;&gt;&lt;img class=&#34;alignnone size-thumbnail wp-image-8066&#34; src=&#34;https://static.yeri.be/2016/07/IMG_20160716_110720-150x150.jpg&#34; alt=&#34;IMG_20160716_110720&#34; width=&#34;150&#34; height=&#34;150&#34; /&gt;&lt;/a&gt;&#xA;&lt;ul&gt;&#xA; &#x9;&lt;li&gt;1u dual Pentium 3 1Ghz server&lt;/li&gt;&#xA; &#x9;&lt;li&gt;2x 72.8Gb 10k rpm SCSI (one probably died)&lt;/li&gt;&#xA; &#x9;&lt;li&gt;1280Mb RAM&lt;/li&gt;&#xA; &#x9;&lt;li&gt;Served for years as mail &amp;amp; web server in Amsterdam datacenter, got it myself 2nd hand where it served in a Belgian datacenter (IIRC)&lt;/li&gt;&#xA; &#x9;&lt;li&gt;&lt;a href=&#34;http://www.2dehands.be/computer-game-consoles/computersystemen/servers/dual-p3-1u-server-300151185.html?utm_content=link&amp;amp;utm_campaign=link_advertentie&amp;amp;utm_source=ad_geplaatst&amp;amp;utm_medium=email&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;2dehands&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h4&gt;Intel Pentium D desktop server&lt;/h4&gt;&#xA;&lt;a href=&#34;https://static.yeri.be/2016/07/IMG_20160716_110005.jpg&#34;&gt;&lt;img class=&#34;alignnone size-thumbnail wp-image-8069&#34; src=&#34;https://static.yeri.be/2016/07/IMG_20160716_110005-150x150.jpg&#34; alt=&#34;IMG_20160716_110005&#34; width=&#34;150&#34; height=&#34;150&#34; /&gt;&lt;/a&gt;  &lt;a href=&#34;https://static.yeri.be/2016/07/IMG_20160716_110011.jpg&#34;&gt;&lt;img class=&#34;alignnone size-thumbnail wp-image-8070&#34; src=&#34;https://static.yeri.be/2016/07/IMG_20160716_110011-150x150.jpg&#34; alt=&#34;IMG_20160716_110011&#34; width=&#34;150&#34; height=&#34;150&#34; /&gt;&lt;/a&gt;  &lt;a href=&#34;https://static.yeri.be/2016/07/IMG_20160716_110153.jpg&#34;&gt;&lt;img class=&#34;alignnone size-thumbnail wp-image-8071&#34; src=&#34;https://static.yeri.be/2016/07/IMG_20160716_110153-150x150.jpg&#34; alt=&#34;IMG_20160716_110153&#34; width=&#34;150&#34; height=&#34;150&#34; /&gt;&lt;/a&gt;&#xA;&lt;ul&gt;&#xA; &#x9;&lt;li&gt;Pentium D CPU (32bit), don&#39;t remember any more specs&lt;/li&gt;&#xA; &#x9;&lt;li&gt;Seems to have 4Gb of RAM (untested)&lt;/li&gt;&#xA; &#x9;&lt;li&gt;2x 160Gb SATA disk&lt;/li&gt;&#xA; &#x9;&lt;li&gt;&lt;a href=&#34;http://www.2dehands.be/computer-game-consoles/computersystemen/servers/intel-pentium-d-desktop-server-300151661.html?ignore.plaats=1&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;2dehands&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h4&gt;AMD64 Athlon desktop&lt;/h4&gt;&#xA;&lt;a href=&#34;https://static.yeri.be/2016/07/IMG_20160716_110055.jpg&#34;&gt;&lt;img class=&#34;alignnone size-thumbnail wp-image-8072&#34; src=&#34;https://static.yeri.be/2016/07/IMG_20160716_110055-150x150.jpg&#34; alt=&#34;IMG_20160716_110055&#34; width=&#34;150&#34; height=&#34;150&#34; /&gt;&lt;/a&gt;&#xA;&lt;ul&gt;&#xA; &#x9;&lt;li&gt;No disks&lt;/li&gt;&#xA; &#x9;&lt;li&gt;Seems to have 1GB of RAM (untested)&lt;/li&gt;&#xA; &#x9;&lt;li&gt;Athlon64 something. You know. One of those first 64 bit CPUs when AMD was still awesome. :)&lt;/li&gt;&#xA; &#x9;&lt;li&gt;&lt;a href=&#34;http://www.2dehands.be/computer-game-consoles/computersystemen/amd-64/amd64-athlon-desktop-300151941.html?ignore.plaats=1&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;2dehands&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h4&gt;APC Smart UPS&lt;/h4&gt;&#xA;&lt;a href=&#34;https://static.yeri.be/2016/07/IMG_20160716_110640.jpg&#34;&gt;&lt;img class=&#34;alignnone size-thumbnail wp-image-8073&#34; src=&#34;https://static.yeri.be/2016/07/IMG_20160716_110640-150x150.jpg&#34; alt=&#34;IMG_20160716_110640&#34; width=&#34;150&#34; height=&#34;150&#34; /&gt;&lt;/a&gt;  &lt;a href=&#34;https://static.yeri.be/2016/07/IMG_20160716_110646.jpg&#34;&gt;&lt;img class=&#34;alignnone size-thumbnail wp-image-8074&#34; src=&#34;https://static.yeri.be/2016/07/IMG_20160716_110646-150x150.jpg&#34; alt=&#34;IMG_20160716_110646&#34; width=&#34;150&#34; height=&#34;150&#34; /&gt;&lt;/a&gt;&#xA;&lt;ul&gt;&#xA; &#x9;&lt;li&gt;4u rack mounted UPS&lt;/li&gt;&#xA; &#x9;&lt;li&gt;&#34;SmartUPS 1000&#34;&lt;/li&gt;&#xA; &#x9;&lt;li&gt;With the right cables (not provided) I believe there was a managed console/interface&lt;/li&gt;&#xA; &#x9;&lt;li&gt;Comes with batteries but I&#39;m 99% sure the batteries are dead by now&lt;/li&gt;&#xA; &#x9;&lt;li&gt;it&#39;s freaking heavy&lt;/li&gt;&#xA; &#x9;&lt;li&gt;Awesome UPS that proved its use back in the days&lt;/li&gt;&#xA; &#x9;&lt;li&gt;&lt;a href=&#34;http://www.2dehands.be/computer-game-consoles/computer-onderdelen/ups/apc-smartups-1000-300150697.html?ignore.plaats=1&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;2dehands&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;</description>
      <content:encoded><![CDATA[<p><strong>Free</strong> <strong>pick up</strong> in Grimbergen, Diegem or Brussels North.</p>
<p>Email: <a href="mailto:yeri&#43;sale@tiete.be">yeri+sale@tiete.be</a></p>
<p>Everything has been stored for a while in my garage and is <span style="text-decoration: underline;"><strong>untested</strong></span>.</p>
<h4>Dual P3 1u server</h4>
<a href="https://static.yeri.be/2016/07/IMG_20160716_110703.jpg"><img class="alignnone size-thumbnail wp-image-8064" src="https://static.yeri.be/2016/07/IMG_20160716_110703-150x150.jpg" alt="IMG_20160716_110703" width="150" height="150" /></a>  <a href="https://static.yeri.be/2016/07/IMG_20160716_110708.jpg"><img class="alignnone size-thumbnail wp-image-8065" src="https://static.yeri.be/2016/07/IMG_20160716_110708-150x150.jpg" alt="IMG_20160716_110708" width="150" height="150" /></a>  <a href="https://static.yeri.be/2016/07/IMG_20160716_110720.jpg"><img class="alignnone size-thumbnail wp-image-8066" src="https://static.yeri.be/2016/07/IMG_20160716_110720-150x150.jpg" alt="IMG_20160716_110720" width="150" height="150" /></a>
<ul>
 	<li>1u dual Pentium 3 1Ghz server</li>
 	<li>2x 72.8Gb 10k rpm SCSI (one probably died)</li>
 	<li>1280Mb RAM</li>
 	<li>Served for years as mail &amp; web server in Amsterdam datacenter, got it myself 2nd hand where it served in a Belgian datacenter (IIRC)</li>
 	<li><a href="http://www.2dehands.be/computer-game-consoles/computersystemen/servers/dual-p3-1u-server-300151185.html?utm_content=link&amp;utm_campaign=link_advertentie&amp;utm_source=ad_geplaatst&amp;utm_medium=email" target="_blank" rel="noopener noreferrer">2dehands</a></li>
</ul>
<h4>Intel Pentium D desktop server</h4>
<a href="https://static.yeri.be/2016/07/IMG_20160716_110005.jpg"><img class="alignnone size-thumbnail wp-image-8069" src="https://static.yeri.be/2016/07/IMG_20160716_110005-150x150.jpg" alt="IMG_20160716_110005" width="150" height="150" /></a>  <a href="https://static.yeri.be/2016/07/IMG_20160716_110011.jpg"><img class="alignnone size-thumbnail wp-image-8070" src="https://static.yeri.be/2016/07/IMG_20160716_110011-150x150.jpg" alt="IMG_20160716_110011" width="150" height="150" /></a>  <a href="https://static.yeri.be/2016/07/IMG_20160716_110153.jpg"><img class="alignnone size-thumbnail wp-image-8071" src="https://static.yeri.be/2016/07/IMG_20160716_110153-150x150.jpg" alt="IMG_20160716_110153" width="150" height="150" /></a>
<ul>
 	<li>Pentium D CPU (32bit), don't remember any more specs</li>
 	<li>Seems to have 4Gb of RAM (untested)</li>
 	<li>2x 160Gb SATA disk</li>
 	<li><a href="http://www.2dehands.be/computer-game-consoles/computersystemen/servers/intel-pentium-d-desktop-server-300151661.html?ignore.plaats=1" target="_blank" rel="noopener noreferrer">2dehands</a></li>
</ul>
<h4>AMD64 Athlon desktop</h4>
<a href="https://static.yeri.be/2016/07/IMG_20160716_110055.jpg"><img class="alignnone size-thumbnail wp-image-8072" src="https://static.yeri.be/2016/07/IMG_20160716_110055-150x150.jpg" alt="IMG_20160716_110055" width="150" height="150" /></a>
<ul>
 	<li>No disks</li>
 	<li>Seems to have 1GB of RAM (untested)</li>
 	<li>Athlon64 something. You know. One of those first 64 bit CPUs when AMD was still awesome. :)</li>
 	<li><a href="http://www.2dehands.be/computer-game-consoles/computersystemen/amd-64/amd64-athlon-desktop-300151941.html?ignore.plaats=1" target="_blank" rel="noopener noreferrer">2dehands</a></li>
</ul>
<h4>APC Smart UPS</h4>
<a href="https://static.yeri.be/2016/07/IMG_20160716_110640.jpg"><img class="alignnone size-thumbnail wp-image-8073" src="https://static.yeri.be/2016/07/IMG_20160716_110640-150x150.jpg" alt="IMG_20160716_110640" width="150" height="150" /></a>  <a href="https://static.yeri.be/2016/07/IMG_20160716_110646.jpg"><img class="alignnone size-thumbnail wp-image-8074" src="https://static.yeri.be/2016/07/IMG_20160716_110646-150x150.jpg" alt="IMG_20160716_110646" width="150" height="150" /></a>
<ul>
 	<li>4u rack mounted UPS</li>
 	<li>"SmartUPS 1000"</li>
 	<li>With the right cables (not provided) I believe there was a managed console/interface</li>
 	<li>Comes with batteries but I'm 99% sure the batteries are dead by now</li>
 	<li>it's freaking heavy</li>
 	<li>Awesome UPS that proved its use back in the days</li>
 	<li><a href="http://www.2dehands.be/computer-game-consoles/computer-onderdelen/ups/apc-smartups-1000-300150697.html?ignore.plaats=1" target="_blank" rel="noopener noreferrer">2dehands</a></li>
</ul>
]]></content:encoded>
      <category>Hardware</category><category>Networking</category>
      <category>yard sale</category>
    </item>
    
    <item>
      <title>Postfix &amp; Courier &amp; Letsencrypt</title>
      <link>https://yeri.be/postfix-courier-letsencrypt/</link>
      <pubDate>Sun, 12 Jun 2016 13:35:10 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/postfix-courier-letsencrypt/</guid>
      <description>&lt;p&gt;First of all, &lt;a href=&#34;https://letsencrypt.org/getting-started/&#34; target=&#34;_blank&#34;&gt;create&lt;/a&gt; your certificates (the regular way). I created one with multiple domains: webmail.rootspirit.com, mail.rootspirit.com, smtp.rootspirit.com.&lt;/p&gt;&#xA;&lt;p&gt;In &lt;a href=&#34;http://rootspirit.com/&#34; target=&#34;_blank&#34;&gt;my case&lt;/a&gt;, as the mailserver and webserver are behind a proxy (postfix, imap, Roundcube Webmail), I create the certificate on the proxy (nginx) and scp the cert to the mail server. All this is automated with a tiny script.&lt;/p&gt;&#xA;&lt;p&gt;For Postfix, edit &lt;code&gt;main.cf&lt;/code&gt; and change/edit/add these lines (check the right path too!):&lt;/p&gt;&#xA;&lt;pre&gt;smtpd_use_tls = yes&#xA;smtpd_tls_key_file = /etc/ssl/letsencrypt/webmail.privkey.pem&#xA;smtpd_tls_cert_file = /etc/ssl/letsencrypt/webmail.fullchain.pem&#xA;smtpd_tls_received_header = yes&#xA;smtpd_tls_session_cache_timeout = 3600s&#xA;tls_random_exchange_name = /var/run/prng_exch&#xA;tls_random_source = dev:/dev/urandom&#xA;smtpd_tls_exclude_ciphers = aNULL, eNULL, EXPORT, DES, RC4, MD5, PSK, aECDH, EDH-DSS-DES-CBC3-SHA, EDH-RSA-DES-CDB3-SHA, KRB5-DES, CBC3-SHA&#xA;smtpd_tls_dh1024_param_file = /etc/ssl/postfix/dhparams.pem&#xA;smtpd_tls_auth_only = yes&#xA;smtp_tls_security_level = may&#xA;smtpd_use_tls=yes&#xA;smtpd_tls_security_level=may&#xA;smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache&#xA;smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache&#xA;smtpd_tls_loglevel=1&#xA;smtp_tls_loglevel=1&lt;/pre&gt;&#xA;&lt;p&gt;And restart postfix: &lt;code&gt;/etc/init.d/postfix restart&lt;/code&gt;&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>First of all, <a href="https://letsencrypt.org/getting-started/" target="_blank">create</a> your certificates (the regular way). I created one with multiple domains: webmail.rootspirit.com, mail.rootspirit.com, smtp.rootspirit.com.</p>
<p>In <a href="http://rootspirit.com/" target="_blank">my case</a>, as the mailserver and webserver are behind a proxy (postfix, imap, Roundcube Webmail), I create the certificate on the proxy (nginx) and scp the cert to the mail server. All this is automated with a tiny script.</p>
<p>For Postfix, edit <code>main.cf</code> and change/edit/add these lines (check the right path too!):</p>
<pre>smtpd_use_tls = yes
smtpd_tls_key_file = /etc/ssl/letsencrypt/webmail.privkey.pem
smtpd_tls_cert_file = /etc/ssl/letsencrypt/webmail.fullchain.pem
smtpd_tls_received_header = yes
smtpd_tls_session_cache_timeout = 3600s
tls_random_exchange_name = /var/run/prng_exch
tls_random_source = dev:/dev/urandom
smtpd_tls_exclude_ciphers = aNULL, eNULL, EXPORT, DES, RC4, MD5, PSK, aECDH, EDH-DSS-DES-CBC3-SHA, EDH-RSA-DES-CDB3-SHA, KRB5-DES, CBC3-SHA
smtpd_tls_dh1024_param_file = /etc/ssl/postfix/dhparams.pem
smtpd_tls_auth_only = yes
smtp_tls_security_level = may
smtpd_use_tls=yes
smtpd_tls_security_level=may
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtpd_tls_loglevel=1
smtp_tls_loglevel=1</pre>
<p>And restart postfix: <code>/etc/init.d/postfix restart</code></p>
<p>As for Courier you&rsquo;ll need to concatenate the files (again, check the path, it&rsquo;s most likely <code>/etc/letsencrypt/live/domain/xyz.pem</code>):</p>
<p><code>cat /etc/ssl/letsencrypt/webmail.privkey.pem /etc/ssl/letsencrypt/webmail.fullchain.pem &gt; /etc/ssl/letsencrypt/webmail.all.pem</code></p>
<p>Then edit both <code>/etc/courier/pop3d-ssl</code> and <code>/etc/courier/imapd-ssl</code></p>
<p>And add/change the path of the certificate:</p>
<p><code>TLS_CERTFILE=/etc/ssl/letsencrypt/webmail.all.pem</code></p>
<p>And restart Courier: <code>/etc/init.d/courier-imap-ssl restart &amp;&amp; /etc/init.d/courier-pop-ssl restart</code></p>
]]></content:encoded>
      <category>Linux</category><category>Networking</category><category>Software</category><category>www</category>
      <category>encryption</category><category>mail</category><category>rootspirit</category><category>ssl</category>
    </item>
    
    <item>
      <title>Postfix delete mails from/to one address</title>
      <link>https://yeri.be/postfix-delete-mails-fromto-one-address/</link>
      <pubDate>Fri, 25 Mar 2016 17:41:34 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/postfix-delete-mails-fromto-one-address/</guid>
      <description>&lt;p&gt;Monit suddenly sending 18.000 e-mail? Gmail blocking your mx IP &amp;amp; getting all other incoming emails to your Gmail account (as it&#39;s getting forwarded to Gmail) delayed?&lt;/p&gt;&#xA;&lt;p&gt;Have no fear...&lt;/p&gt;&#xA;&lt;p&gt;&lt;code&gt;mailq | grep monit@hawk-62e9e0.botnet.corp.flatturtle.com | cut -d&#39; &#39; -f1 | xargs -rn1 postsuper -d&lt;/code&gt;&lt;/p&gt;&#xA;&lt;p&gt;Edit the e-mail address.&lt;/p&gt;&#xA;&lt;p&gt;Note: mainly a reminder for myself. ;)&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>Monit suddenly sending 18.000 e-mail? Gmail blocking your mx IP &amp; getting all other incoming emails to your Gmail account (as it's getting forwarded to Gmail) delayed?</p>
<p>Have no fear...</p>
<p><code>mailq | grep monit@hawk-62e9e0.botnet.corp.flatturtle.com | cut -d' ' -f1 | xargs -rn1 postsuper -d</code></p>
<p>Edit the e-mail address.</p>
<p>Note: mainly a reminder for myself. ;)</p>
]]></content:encoded>
      <category>Google</category><category>Linux</category><category>Networking</category>
      <category>mail</category>
    </item>
    
    <item>
      <title>Gmail &amp; Postfix: unencrypted emails?</title>
      <link>https://yeri.be/gmail-unencrypted-emails/</link>
      <pubDate>Mon, 07 Mar 2016 19:14:52 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/gmail-unencrypted-emails/</guid>
      <description>&lt;p style=&#34;text-align: left;&#34;&gt;&lt;a href=&#34;https://static.yeri.be/2016/03/gmail-unencrypted-tls.png&#34; rel=&#34;attachment wp-att-7458&#34;&gt;&lt;img class=&#34;alignnone wp-image-7458 size-full&#34; src=&#34;https://static.yeri.be/2016/03/gmail-unencrypted-tls.png&#34; alt=&#34;gmail-unencrypted-tls&#34; width=&#34;762&#34; height=&#34;222&#34; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p style=&#34;text-align: left;&#34;&gt;If you&#39;re running Postfix, add this line to &lt;code&gt;main.cf&lt;/code&gt;:&lt;/p&gt;&#xA;&lt;code&gt;smtp_tls_security_level = may&lt;/code&gt;&#xA;&lt;p style=&#34;text-align: left;&#34;&gt;Restart Postfix, and retry.&lt;/p&gt;&#xA;&lt;p style=&#34;text-align: left;&#34;&gt;&lt;a href=&#34;https://static.yeri.be/2016/03/gmail-encrypted-tls.png&#34; rel=&#34;attachment wp-att-7464&#34;&gt;&lt;img class=&#34;alignnone size-full wp-image-7464&#34; src=&#34;https://static.yeri.be/2016/03/gmail-encrypted-tls.png&#34; alt=&#34;gmail-encrypted-tls&#34; width=&#34;850&#34; height=&#34;370&#34; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p style=&#34;text-align: left;&#34;&gt;PS: You can set &lt;code&gt;encrypt&lt;/code&gt; instead of &lt;code&gt;may&lt;/code&gt; -- but this can cause issues with Amavis and/or SpamAssassin.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p style="text-align: left;"><a href="https://static.yeri.be/2016/03/gmail-unencrypted-tls.png" rel="attachment wp-att-7458"><img class="alignnone wp-image-7458 size-full" src="https://static.yeri.be/2016/03/gmail-unencrypted-tls.png" alt="gmail-unencrypted-tls" width="762" height="222" /></a></p>
<p style="text-align: left;">If you're running Postfix, add this line to <code>main.cf</code>:</p>
<code>smtp_tls_security_level = may</code>
<p style="text-align: left;">Restart Postfix, and retry.</p>
<p style="text-align: left;"><a href="https://static.yeri.be/2016/03/gmail-encrypted-tls.png" rel="attachment wp-att-7464"><img class="alignnone size-full wp-image-7464" src="https://static.yeri.be/2016/03/gmail-encrypted-tls.png" alt="gmail-encrypted-tls" width="850" height="370" /></a></p>
<p style="text-align: left;">PS: You can set <code>encrypt</code> instead of <code>may</code> -- but this can cause issues with Amavis and/or SpamAssassin.</p>
]]></content:encoded>
      <category>Linux</category><category>Networking</category><category>Software</category><category>www</category>
      <category>rootspirit</category><category>ssl</category>
    </item>
    
    <item>
      <title>Belgian banks &amp; SSL — part 5</title>
      <link>https://yeri.be/belgian-banks-ssl-part-5/</link>
      <pubDate>Fri, 18 Dec 2015 11:35:57 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/belgian-banks-ssl-part-5/</guid>
      <description>&lt;p&gt;Minor &lt;a href=&#34;https://yeri.be/belgian-banks-ssl-part-4&#34;&gt;end of year update&lt;/a&gt;. No big SSL exploits have been released since (bar DH, see below).&lt;/p&gt;&#xA;&lt;p&gt;Once again, this is testing the public websites I can access. There might be other gateways, APIs, etc that are not (as) secure.&lt;/p&gt;&#xA;&lt;p&gt;It&amp;rsquo;s worthy to note that some banks are serious about security and fixing their SSL. Most improved their rating and solved all issues (especially getting rid of SHA1 in the chain). However, a couple lowered from B to C (see below). But&amp;hellip; No more F&amp;rsquo;s. :)&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>Minor <a href="https://yeri.be/belgian-banks-ssl-part-4">end of year update</a>. No big SSL exploits have been released since (bar DH, see below).</p>
<p>Once again, this is testing the public websites I can access. There might be other gateways, APIs, etc that are not (as) secure.</p>
<p>It&rsquo;s worthy to note that some banks are serious about security and fixing their SSL. Most improved their rating and solved all issues (especially getting rid of SHA1 in the chain). However, a couple lowered from B to C (see below). But&hellip; No more F&rsquo;s. :)</p>
<p>The noteworthy changers:</p>
<ul>
	<li>Hello Bank! went from A to B though due to weak DH,</li>
	<li>Triodos lost their Forward Secrecy,</li>
	<li>Optima from F to A(-) (and a bunch others from B to A, and higher),</li>
	<li>A bunch from B to C due to SSLLabs being more severe (see below). Most did solve some of their issues,</li>
	<li>BKCP is doing a lot wrong.</li>
</ul>
Edit: Tested wrong AXA domain; updated to A+.
<p><em>Update 11 Jan 2016</em>: ABK &amp; BvB updated to A.</p>
<p>Note that not supporting TLS 1.2 or supporting RC4 capped sites to grade B about a year ago; it now caps to grade C (aka SSLLabs is more severe).</p>
<p><span style="color: #008000;">Grade A</span></p>
<ul>
	<li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=secure1.rabobank.be" target="_blank">Rabobank</a> (<span style="color: #339966;">A+</span>): <span style="color: #339966;">no known issues</span>.</li>
	<li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=secure.evi.be" target="_blank">Evi</a> (<span style="color: #339966;">A+</span>): <span style="color: #339966;">no known issues</span>.</li>
	<li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=crelan-online.be" target="_blank">Crelan</a> (<span style="color: #339966;">A+</span>): <span style="color: #339966;">no known issues</span>.</li>
	<li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=login.binck.be&amp;hideResults=on" target="_blank">Binck</a> (<span style="color: #339966;">A+</span>): <span style="color: #339966;">no known issues</span>.</li>
	<li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.ing.be&amp;s=193.58.129.66&amp;hideResults=on" target="_blank">ING</a> (<span style="color: #339966;">A+</span>): <span style="color: #339966;">no known issues</span>.</li>
	<li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.keytradebank.be&amp;s=93.191.218.12" target="_blank">Keytrade Bank</a> (<span style="color: #339966;">A+</span>): <span style="color: #339966;">no known issues</span>.</li>
	<li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=cph.be" target="_blank">CPH</a> (<span style="color: #339966;">A+</span>): <span style="color: #339966;">no known issues</span>.</li>
	<li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=ebanking.nibcdirect.be" target="_blank">NIBC Direct</a> (<span style="color: #339966;">A+</span>): <span style="color: #339966;">no known issues</span>.</li>
	<li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=home.axabank.be&amp;latest" target="_blank">AXA</a> (<span style="color: #339966;">A+</span>): <span style="color: #339966;">no known issues</span>.</li>
	<li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.deltalloydbank.be" target="_blank">Delta Lloyd Bank</a> (<span style="color: #339966;">A</span>): <span style="color: #339966;">no known issues</span>.</li>
	<li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=secure.deutschebank.be" target="_blank">Deutsche Bank</a> (<span style="color: #339966;">A</span>): weak signature (SHA1).</li>
	<li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=elogin.medirectbank.be" target="_blank">MeDirect Bank</a> (<span style="color: #339966;">A</span>): <span style="color: #339966;">no known issues</span>.</li>
	<li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.montepaschi.be" target="_blank">Monte Paschi</a> (<span style="color: #339966;">A</span>): <span style="color: #339966;">no known issues</span>.</li>
	<li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.belfius.be&amp;s=212.63.233.37" target="_blank">Belfius</a> (<span style="color: #339966;">A</span>): <span style="color: #339966;">no known issues</span>.</li>
	<li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.bnpparibasfortis.be&amp;s=193.58.4.82" target="_blank">BNP Paribas Fortis</a> (<span style="color: #339966;">A</span>): <span style="color: #339966;">no known issues</span>.</li>
	<li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.bpostbank.be" target="_blank">bpost bank</a> (<span style="color: #339966;">A</span>): <span style="color: #339966;">no known issues</span>.</li>
	<li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=internetbanking.argenta.be" target="_blank">Argenta</a> (<span style="color: #339966;">A</span>): <span style="color: #339966;">no known issues</span>.</li>
	<li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=fortuneo.be&amp;s=93.20.42.107" target="_blank">Fortuneo</a> (<span style="color: #339966;">A</span>): invalid HSTS policy.</li>
	<li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=fintro.be" target="_blank">Fintro</a> (<span style="color: #339966;">A</span>): <span style="color: #339966;">no known issues</span>.</li>
	<li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=netbanking.dhbbank.com" target="_blank">DHB Bank</a> (<span style="color: #339966;">A</span>): <span style="color: #339966;">no known issues</span>.</li>
	<li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=online.vdk.be" target="_blank">VDK</a> (<span style="color: #339966;">A</span>): <span style="color: #339966;">no known issues</span>.</li>
	<li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=abkonline.abk.be" target="_blank">ABK</a>: (<span style="color: #339966;">A</span>): <span style="color: #339966;">no known issues</span>.</li>
	<li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=secure.bankvanbreda.be&amp;latest" target="_blank">Bank Van Breda</a> (<span style="color: #339966;">A</span>): <span style="color: #339966;">no known issues</span>.</li>
	<li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=secure.ogone.com" target="_blank">Ogone</a> (<em>payment facilitator</em> -- <span style="color: #339966;">A</span>): <span style="color: #339966;">no known issues</span>.</li>
	<li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=moneyou.be" target="_blank">Moneyou</a> (<span style="color: #339966;">A-</span>): no Forward Secrecy.</li>
	<li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=homebank.recordbank.be" target="_blank">Record Bank</a> (<span style="color: #339966;">A-</span>): no Forward Secrecy.</li>
	<li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=banking.triodos.be&amp;latest" target="_blank">Triodos</a> (<span style="color: #339966;">A-</span>): no Forward Secrecy.</li>
	<li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=optimaonline.optimabank.be" target="_blank">Optima Bank</a> (<span style="color: #339966;">A-</span>): no Forward Secrecy.</li>
	<li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.kbc.be">KBC</a> (<span style="color: #339966;">A-</span>): no Forward Secrecy.</li>
	<li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=isabel.eu" target="_blank">Isabel</a> (<em>banking tool for corps</em> -- <span style="color: #339966;">A-</span>): no Forward Secrecy.</li>
</ul>
<span style="color: #ff6600;">Grade B</span>
<ul>
	<li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.hellobank.be" target="_blank">Hello bank!</a>: Weak Diffie-Hell (aka DH) (<a href="https://weakdh.org/" target="_blank">info</a>).</li>
</ul>
<span style="color: #ff0000;">Grade C</span>
<ul>
	<li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.psabank.be&amp;s=93.20.46.143&amp;hideResults=on" target="_blank">PSA Bank</a>: weak signature (SHA1), no TLS 1.2, no Forward Secrecy.</li>
	<li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=beobank.be" target="_blank">beobank</a>: weak DH, no TLS 1.2, RC4 (insecure), no Forward Secrecy, no secure renegotiation.</li>
	<li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=ident.bkcp.be&amp;hideResults=on&amp;latest" target="_blank">BKCP</a>: weak signature (SHA1), no TLS 1.2, RC4 (insecure), no Forward Secrecy, weak DH.</li>
</ul>
<span style="color: #ff0000;">Grade D</span>
<ul>
	<li>n/a</li>
</ul>
<span style="color: #ff0000;">Grade E</span>
<ul>
	<li>n/a</li>
</ul>
<span style="color: #ff0000;">Grade F</span>
<ul>
	<li>n/a</li>
</ul>
]]></content:encoded>
      <category>Linux</category><category>Networking</category><category>Software</category><category>www</category>
      <category>belgium</category><category>ssl</category>
    </item>
    
    <item>
      <title>Mobile: It Changes Everything</title>
      <link>https://yeri.be/mobile-it-changes-everything/</link>
      <pubDate>Tue, 23 Jun 2015 10:14:20 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/mobile-it-changes-everything/</guid>
      <description>&lt;iframe src=&#34;//www.slideshare.net/slideshow/embed_code/key/qiAtR7qjmJw7Y5&#34; width=&#34;595&#34; height=&#34;485&#34; frameborder=&#34;0&#34; marginwidth=&#34;0&#34; marginheight=&#34;0&#34; scrolling=&#34;no&#34; style=&#34;border:1px solid #CCC; border-width:1px; margin-bottom:5px; max-width: 100%;&#34; allowfullscreen&gt; &lt;/iframe&gt; &#xA;&lt;p&gt;(&lt;em&gt;&lt;a href=&#34;https://a16z.com/2015/06/19/mobile-it-changes-everything/&#34; target=&#34;_blank&#34;&gt;Source&lt;/a&gt;&lt;/em&gt;)&lt;/p&gt;</description>
      <content:encoded><![CDATA[<iframe src="//www.slideshare.net/slideshow/embed_code/key/qiAtR7qjmJw7Y5" width="595" height="485" frameborder="0" marginwidth="0" marginheight="0" scrolling="no" style="border:1px solid #CCC; border-width:1px; margin-bottom:5px; max-width: 100%;" allowfullscreen> </iframe> 
<p>(<em><a href="https://a16z.com/2015/06/19/mobile-it-changes-everything/" target="_blank">Source</a></em>)</p>
]]></content:encoded>
      <category>Apple</category><category>Google</category><category>Hardware</category><category>Linux</category><category>Networking</category>
      <category>mobile</category>
    </item>
    
    <item>
      <title>Qatar WiFi</title>
      <link>https://yeri.be/qatar-wifi/</link>
      <pubDate>Thu, 11 Jun 2015 19:56:41 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/qatar-wifi/</guid>
      <description>&lt;p&gt;I flew from Doha to Brussels on a &lt;a href=&#34;https://web.archive.org/web/20150426061024/http://www.planespotters.net:80/Production_List/Boeing/787/38338,A7-BCT-Qatar-Airways.php&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;brand new&lt;/a&gt; (0.4 year old) Dreamliner.&lt;/p&gt;&#xA;&lt;p&gt;There is on board WiFi, and it&amp;rsquo;s unlike those I&amp;rsquo;ve seen before on Lufthansa.&lt;/p&gt;&#xA;&lt;p&gt;The WiFi is provided by &lt;a href=&#34;https://web.archive.org/web/20160409223830/http://www.onair.aero/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;OnAir&lt;/a&gt; (&lt;a href=&#34;https://en.wikipedia.org/wiki/OnAir_%28telecommunications%29&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;owned by SITA&lt;/a&gt;, ex Airbus), a Swiss-Merican company using what cell towers (that&amp;rsquo;s what their landing page said &amp;ndash; but their website says satellites + and it worked over the sea).&lt;/p&gt;&#xA;&lt;p style=&#34;text-align: center;&#34;&gt;&lt;a href=&#34;https://static.yeri.be/2015/06/2015-06-11.png&#34;&gt;&lt;img class=&#34;alignnone size-large wp-image-7166&#34; src=&#34;https://static.yeri.be/2015/06/2015-06-11-768x1024.png&#34; alt=&#34;2015-06-11&#34; width=&#34;768&#34; height=&#34;1024&#34; /&gt;&lt;/a&gt;&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>I flew from Doha to Brussels on a <a href="https://web.archive.org/web/20150426061024/http://www.planespotters.net:80/Production_List/Boeing/787/38338,A7-BCT-Qatar-Airways.php" target="_blank" rel="noopener noreferrer">brand new</a> (0.4 year old) Dreamliner.</p>
<p>There is on board WiFi, and it&rsquo;s unlike those I&rsquo;ve seen before on Lufthansa.</p>
<p>The WiFi is provided by <a href="https://web.archive.org/web/20160409223830/http://www.onair.aero/" target="_blank" rel="noopener noreferrer">OnAir</a> (<a href="https://en.wikipedia.org/wiki/OnAir_%28telecommunications%29" target="_blank" rel="noopener noreferrer">owned by SITA</a>, ex Airbus), a Swiss-Merican company using what cell towers (that&rsquo;s what their landing page said &ndash; but their website says satellites + and it worked over the sea).</p>
<p style="text-align: center;"><a href="https://static.yeri.be/2015/06/2015-06-11.png"><img class="alignnone size-large wp-image-7166" src="https://static.yeri.be/2015/06/2015-06-11-768x1024.png" alt="2015-06-11" width="768" height="1024" /></a></p>
<p style="text-align: center;"><a href="https://static.yeri.be/2015/06/Screenshot_2015-06-11-05-26-55.png"><img class="alignnone size-large wp-image-7165" src="https://static.yeri.be/2015/06/Screenshot_2015-06-11-05-26-55-768x1024.png" alt="Screenshot_2015-06-11-05-26-55" width="768" height="1024" /></a></p>
<p>I only had a tablet, so very limited information I could dig.</p>
<ul>
    <li>There is a private SSID active at all times (QTR&lt;plane registration&gt;, in my case it was QTRA7-BCT)</li>
    <li>Once in the air, a new SSID pops up, called "Oryx Comms" (Oryx being Qatar's entertainment system, including personal movie/music displays)</li>
    <li>IP of the gateway is 172.16.64.1</li>
    <li>Blocks all and redirects you to a landing page</li>
    <li>Landing page https://web.archive.org/web/20130802092743/http://onboard.onair.aero -- which seems to be locally hosted in the airplane (it was too fast to be over satellite).</li>
    <li>Price is exuberant</li>
    <li>End user license agreement was dodgy: "personal information logged in Switzerland and/or US of A", "some data retained for quality improvements and better services", "Data not given to third parties, with the exception of XYZ", "both anonymous and personal information used".</li>
    <li>More interestingly: while above a certain height, there was <a href="https://en.wikipedia.org/wiki/OnAir_%28telecommunications%29#GSM_Network" target="_blank" rel="noopener noreferrer">cell coverage</a> inside the plane: "OnAir" network (roaming), allowing you to text and call from the plane.</li>
</ul>
<p style="text-align: center;"><a href="https://static.yeri.be/2015/06/Screenshot_2015-06-11-08-11-05.png"><img class="alignnone size-large wp-image-7164" src="https://static.yeri.be/2015/06/Screenshot_2015-06-11-08-11-05-576x1024.png" alt="Screenshot_2015-06-11-08-11-05" width="576" height="1024" /></a></p>
<p style="text-align: center;"><a href="https://static.yeri.be/2015/06/Screenshot_2015-06-16-00-21-49.png"><img class="alignnone size-large wp-image-7176" src="https://static.yeri.be/2015/06/Screenshot_2015-06-16-00-21-49-576x1024.png" alt="Screenshot_2015-06-16-00-21-49" width="576" height="1024" /></a></p>
<p style="text-align: center;"></p>
]]></content:encoded>
      <category>Networking</category><category>Travel</category>
      <category>qatar</category>
    </item>
    
    <item>
      <title>The End of Privacy</title>
      <link>https://yeri.be/the-end-of-privacy/</link>
      <pubDate>Sun, 24 May 2015 00:59:38 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/the-end-of-privacy/</guid>
      <description>&lt;iframe src=&#34;https://www.youtube.com/embed/pBFjJ9DXPJk&#34; width=&#34;100%&#34; height=&#34;400&#34; frameborder=&#34;0&#34; allowfullscreen=&#34;allowfullscreen&#34;&gt;&lt;/iframe&gt;&#xA;&lt;p&gt;(&lt;em&gt;&lt;a href=&#34;http://thenextweb.com/insider/2015/05/23/watch-the-end-of-privacy-if-youve-got-nothing-to-hide-youve-got-nothing-to-live-for/&#34; target=&#34;_blank&#34;&gt;Source&lt;/a&gt;&lt;/em&gt;).&lt;/p&gt;</description>
      <content:encoded><![CDATA[<iframe src="https://www.youtube.com/embed/pBFjJ9DXPJk" width="100%" height="400" frameborder="0" allowfullscreen="allowfullscreen"></iframe>
<p>(<em><a href="http://thenextweb.com/insider/2015/05/23/watch-the-end-of-privacy-if-youve-got-nothing-to-hide-youve-got-nothing-to-live-for/" target="_blank">Source</a></em>).</p>
]]></content:encoded>
      <category>Misc</category><category>Networking</category>
      <category>privacy</category><category>youtube</category>
    </item>
    
    <item>
      <title>Proximus Innovation: D-Link DCS-2132L</title>
      <link>https://yeri.be/proximus-innovation-d-link-dcs-2132l/</link>
      <pubDate>Thu, 14 May 2015 15:11:01 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/proximus-innovation-d-link-dcs-2132l/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;https://web.archive.org/web/20150629195028/http://www.proximusinnovation.be/en/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Proximus Innovation&lt;/a&gt; team handed me a D-Link DCS-2132L (ver. B1) to play with. I have some experience with, what is considered, a professional (~€120 + tax) PoE surveillance camera: the &lt;a href=&#34;https://web.archive.org/web/20160722065729/https://www.ubnt.com/unifi-video/unifi-video-camera/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Unifi Video Camera&lt;/a&gt; (basic version).&lt;/p&gt;&#xA;&lt;p&gt;Amazon retails this D-Link for around €120 (including tax). So it&amp;rsquo;s worth noting it&amp;rsquo;s almost the same price as a metal, semi outdoor, cloud based camera.&lt;/p&gt;&#xA;&lt;p&gt;The first things I noticed unpacking:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;    &lt;li&gt;Plastic. And it feels very plastic.&lt;/li&gt;&#xA;    &lt;li&gt;Indoor only.&lt;/li&gt;&#xA;    &lt;li&gt;The base is a bit light if you just want to set it on a table without screwing it or using glue. The utp and power cable can make it trip easily.&lt;/li&gt;&#xA;    &lt;li&gt;No PoE (power-over-ethernet).&lt;/li&gt;&#xA;    &lt;li&gt;Infrared (you can clearly hear the filter &#39;clicking&#39; when booting up the camera)&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;This thing comes with ethernet, and, surprisingly, with WiFi. That&amp;rsquo;ll make it easier to use in small shops. There&amp;rsquo;s also an option to add a micro SD card as local storage.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p><a href="https://web.archive.org/web/20150629195028/http://www.proximusinnovation.be/en/" target="_blank" rel="noopener noreferrer">Proximus Innovation</a> team handed me a D-Link DCS-2132L (ver. B1) to play with. I have some experience with, what is considered, a professional (~€120 + tax) PoE surveillance camera: the <a href="https://web.archive.org/web/20160722065729/https://www.ubnt.com/unifi-video/unifi-video-camera/" target="_blank" rel="noopener noreferrer">Unifi Video Camera</a> (basic version).</p>
<p>Amazon retails this D-Link for around €120 (including tax). So it&rsquo;s worth noting it&rsquo;s almost the same price as a metal, semi outdoor, cloud based camera.</p>
<p>The first things I noticed unpacking:</p>
<ul>
    <li>Plastic. And it feels very plastic.</li>
    <li>Indoor only.</li>
    <li>The base is a bit light if you just want to set it on a table without screwing it or using glue. The utp and power cable can make it trip easily.</li>
    <li>No PoE (power-over-ethernet).</li>
    <li>Infrared (you can clearly hear the filter 'clicking' when booting up the camera)</li>
</ul>
<p>This thing comes with ethernet, and, surprisingly, with WiFi. That&rsquo;ll make it easier to use in small shops. There&rsquo;s also an option to add a micro SD card as local storage.</p>
<p>While setting up WiFi, I managed to already bug it and lose access by setting up both WiFi and having an ethernet cable connected; and updating the firmware didn&rsquo;t seem to solve that issue. So it&rsquo;s basically one or the other. Want to use WiFi? Don&rsquo;t plug in a cable!</p>
<p>There is a live view (using Java) from the interface: FPS wise it seems quite low, around two-three frames per second, and there is some lag on the interface (setting is set to &ldquo;max 25 fps&rdquo; &ndash; which apparently is only used when recording).</p>
<p><a href="https://static.yeri.be/2015/05/dark-ir.png"><img class="alignnone size-large wp-image-7080" src="https://static.yeri.be/2015/05/dark-ir-1024x660.png" alt="dark-ir" width="780" height="503" /></a></p>
<p><a href="https://static.yeri.be/2015/05/dark-room.jpeg"><img class="alignnone size-large wp-image-7088" src="https://static.yeri.be/2015/05/dark-room-1024x576.jpeg" alt="dark room" width="780" height="439" /></a></p>
<p><a href="https://static.yeri.be/2015/05/desk.jpeg"><img class="alignnone size-large wp-image-7082" src="https://static.yeri.be/2015/05/desk-1024x576.jpeg" alt="desk" width="780" height="439" /></a></p>
<p>Quality in a close to dark room is okay-ish &ndash; infrared enabled (+ time still wrong on most of the pictures).</p>
<p><a href="https://static.yeri.be/2015/05/antwerp.jpeg"><img class="alignnone size-large wp-image-7083" src="https://static.yeri.be/2015/05/antwerp-1024x576.jpeg" alt="antwerp" width="780" height="439" /></a></p>
<p>Outdoor picture of Antwerp without IR. Not so detailed and CMOS sensor quality is fairly crap.</p>
<p><a href="https://static.yeri.be/2015/05/indoor-day.jpeg"><img class="alignnone size-large wp-image-7133" src="https://static.yeri.be/2015/05/indoor-day-1024x576.jpeg" alt="indoor-day" width="780" height="439" /></a></p>
<p><a href="https://static.yeri.be/2015/05/highview.jpeg"><img class="alignnone size-large wp-image-7136" src="https://static.yeri.be/2015/05/highview-1024x576.jpeg" alt="highview" width="780" height="439" /></a></p>
<p>Indoor pictures during the day (it&rsquo;s always quite dark in my room &ndash; no direct sun).</p>
<p><a href="https://static.yeri.be/2015/05/god-delusion.jpeg"><img class="alignnone size-large wp-image-7134" src="https://static.yeri.be/2015/05/god-delusion-1024x576.jpeg" alt="god-delusion" width="780" height="439" /></a></p>
<p>Close up &amp; view of my kitchen: a bit blurry.</p>
<p>On the other hand &ndash; for a D-Link I was surprised with the options from the interface though. You can set up motion (+ select an area to detect motion &ndash; not necessarily the whole area) &amp; sound detection, WiFi &ldquo;just works&rdquo;, you can generate new self signed or upload your own SSL certificates, access list, QoS, uPnP, DDNS, PPPoE, NTP, IPv6, privacy masking (cover an area), etc.</p>
<p><a href="https://static.yeri.be/2015/05/d-link-interface.png"><img class="alignnone size-full wp-image-7085" src="https://static.yeri.be/2015/05/d-link-interface.png" alt="d-link interface" width="846" height="518" /></a></p>
<p>UX &amp; design isn&rsquo;t their thing though.</p>
<p>The whole interface, unlike UVC which streams content to a cloud server (and everything is recorded/stored there), is ran from the onboard web interface. There is some separate Windows software you can download &ndash; but I have a Mac and it didn&rsquo;t seem to add much value.</p>
<p style="text-align: center;"><a href="https://static.yeri.be/2015/05/zoom-ie.png"><img class="alignnone size-full wp-image-7079" src="https://static.yeri.be/2015/05/zoom-ie.png" alt="zoom-ie" width="567" height="277" /></a></p>
<p style="text-align: center;"><a href="https://static.yeri.be/2015/05/whether-or-not.png"><img class="alignnone size-full wp-image-7081" src="https://static.yeri.be/2015/05/whether-or-not.png" alt="whether-or-not" width="532" height="265" /></a></p>
<p style="text-align: left;">It's still made and translated by Taiwanese people... ;)</p>
<p style="text-align: left;">All in all, this is a decent camera for small businesses or personal surveillance. It's a bit too expensive, but it does the job and has a decent amount of options.</p>
<p>PS: the default username is admin with no password. Remember to change it, or you&rsquo;ll have voyeurs looking at you (in case it has a public IP and/or if it automatically opens ports using uPnP) &ndash; like I am looking at this man using simple Google queries (I needed examples about for a panel talk at <a href="https://yeri.be/stibbe-cybercrime">Stibbe</a> about internet security).</p>
<p><a href="https://static.yeri.be/2015/05/angry-man-doesnt-know-his-webcam-is-on.png"><img class="alignnone size-full wp-image-7091" src="https://static.yeri.be/2015/05/angry-man-doesnt-know-his-webcam-is-on.png" alt="angry-man-doesnt-know-his-webcam-is-on" width="810" height="610" /></a></p>
]]></content:encoded>
      <category>Hardware</category><category>Misc</category><category>Networking</category><category>Software</category>
      <category>dlink</category><category>webcam</category>
    </item>
    
    <item>
      <title>Stibbe - Cybercrime</title>
      <link>https://yeri.be/stibbe-cybercrime/</link>
      <pubDate>Wed, 06 May 2015 11:14:55 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/stibbe-cybercrime/</guid>
      <description>&lt;p&gt;Short presentation about the ease of finding and getting into unprotected systems.&lt;/p&gt;&#xA;&lt;iframe src=&#34;https://www.slideshare.net/slideshow/embed_code/key/JjloQH8mJ8rVZG&#34; width=&#34;476&#34; height=&#34;400&#34; frameborder=&#34;0&#34; marginwidth=&#34;0&#34; marginheight=&#34;0&#34; scrolling=&#34;no&#34;&gt;&lt;/iframe&gt;&#xA;&lt;p&gt;PDF can be downloaded &lt;a href=&#34;https://static.yeri.be/2015/05/stibbe.pdf&#34;&gt;here&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Presentation given at Stibbe on 5 May 2015.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>Short presentation about the ease of finding and getting into unprotected systems.</p>
<iframe src="https://www.slideshare.net/slideshow/embed_code/key/JjloQH8mJ8rVZG" width="476" height="400" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
<p>PDF can be downloaded <a href="https://static.yeri.be/2015/05/stibbe.pdf">here</a>.</p>
<p>Presentation given at Stibbe on 5 May 2015.</p>
]]></content:encoded>
      <category>Networking</category><category>Software</category>
      <category>law</category><category>security</category>
    </item>
    
    <item>
      <title>CIFS: mount error(13): Permission denied</title>
      <link>https://yeri.be/cifs-mount-error13-permission-denied/</link>
      <pubDate>Thu, 30 Apr 2015 11:46:40 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/cifs-mount-error13-permission-denied/</guid>
      <description>&lt;p&gt;You&amp;rsquo;ve just updated your Raspberry Pi (or whatever Linux) and you&amp;rsquo;re noticing your CIFS (smb) mounts aren&amp;rsquo;t getting auto mounted anymore. You curse and start noticing this error:&lt;/p&gt;&#xA;&lt;p&gt;&lt;code&gt;# mount -t cifs //192.168.1.100/public -o username=public,password=public sam/&#xA;mount error(13): Permission denied&#xA;Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)&lt;/code&gt;&lt;/p&gt;&#xA;&lt;p&gt;The solution is to add after &lt;code&gt;-o username=X,password=Y&lt;/code&gt; the following: &lt;code&gt;sec=ntlm&lt;/code&gt;; thus it becomes &lt;code&gt;-o username=X,password=Y,sec=ntlm&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;p&gt;You can do the same in &lt;code&gt;fstab&lt;/code&gt;:&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>You&rsquo;ve just updated your Raspberry Pi (or whatever Linux) and you&rsquo;re noticing your CIFS (smb) mounts aren&rsquo;t getting auto mounted anymore. You curse and start noticing this error:</p>
<p><code># mount -t cifs //192.168.1.100/public -o username=public,password=public sam/
mount error(13): Permission denied
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)</code></p>
<p>The solution is to add after <code>-o username=X,password=Y</code> the following: <code>sec=ntlm</code>; thus it becomes <code>-o username=X,password=Y,sec=ntlm</code>.</p>
<p>You can do the same in <code>fstab</code>:</p>
<p><code>//192.168.1.100/public	/mnt/sam/	cifs	domain=TIETE,username=public,password=public,sec=ntlm		0	0</code></p>
<p>No idea why it&rsquo;s suddenly required, but whatevs.</p>
]]></content:encoded>
      <category>Linux</category><category>Networking</category><category>Software</category>
      <category>raspberrypi</category><category>samba</category>
    </item>
    
    <item>
      <title>WiFi by night</title>
      <link>https://yeri.be/wifi-by-night/</link>
      <pubDate>Fri, 13 Mar 2015 22:42:14 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/wifi-by-night/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;https://static.yeri.be/2015/03/IMG_20150301_190145.jpg&#34;&gt;&lt;img class=&#34;alignnone size-large wp-image-7036&#34; src=&#34;https://static.yeri.be/2015/03/IMG_20150301_190145-1024x758.jpg&#34; alt=&#34;IMG_20150301_190145&#34; width=&#34;780&#34; height=&#34;577&#34; /&gt;&lt;/a&gt;&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p><a href="https://static.yeri.be/2015/03/IMG_20150301_190145.jpg"><img class="alignnone size-large wp-image-7036" src="https://static.yeri.be/2015/03/IMG_20150301_190145-1024x758.jpg" alt="IMG_20150301_190145" width="780" height="577" /></a></p>
]]></content:encoded>
      <category>Hardware</category><category>Networking</category>
      <category>flatturtle</category><category>wifi</category>
    </item>
    
    <item>
      <title>T-EBBR55 antenna (@Flightradar24)</title>
      <link>https://yeri.be/t-ebbr55-antenna/</link>
      <pubDate>Sat, 21 Feb 2015 08:55:38 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/t-ebbr55-antenna/</guid>
      <description>&lt;p&gt;Flightradar24 (T-EBBR55) antenna being installed right next to &lt;a href=&#34;http://www.belgocontrol.be/website/eaip/eAIP_Main/html/eAIP/EB-AD-2.EBBR-en-GB.html&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;BRU&lt;/a&gt; airport.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://static.yeri.be/2015/01/2015-01-28.jpg&#34;&gt;&lt;img class=&#34;alignnone size-large wp-image-6812&#34; src=&#34;https://static.yeri.be/2015/01/2015-01-28-768x1024.jpg&#34; alt=&#34;2015-01-28&#34; width=&#34;768&#34; height=&#34;1024&#34; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Due to interference (GSM? WiFi (very very unlikely)? High voltage power lines?) we moved it to the side, as seen below.&lt;/p&gt;&#xA;&lt;p&gt;While it is blind from half a side, it can see all the way up to London and beyond.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://static.yeri.be/2015/02/IMG_20150204_093522.jpg&#34;&gt;&lt;img class=&#34;alignnone size-large wp-image-6879&#34; src=&#34;https://static.yeri.be/2015/02/IMG_20150204_093522-758x1024.jpg&#34; alt=&#34;IMG_20150204_093522&#34; width=&#34;758&#34; height=&#34;1024&#34; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;This is the result:&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://static.yeri.be/2015/02/Screen-Shot-2015-02-04-at-15.31.42.png&#34;&gt;&lt;img class=&#34;alignnone size-large wp-image-6880&#34; src=&#34;https://static.yeri.be/2015/02/Screen-Shot-2015-02-04-at-15.31.42-1024x594.png&#34; alt=&#34;Screen Shot 2015-02-04 at 15.31.42&#34; width=&#34;780&#34; height=&#34;452&#34; /&gt;&lt;/a&gt;&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>Flightradar24 (T-EBBR55) antenna being installed right next to <a href="http://www.belgocontrol.be/website/eaip/eAIP_Main/html/eAIP/EB-AD-2.EBBR-en-GB.html" target="_blank" rel="noopener noreferrer">BRU</a> airport.</p>
<p><a href="https://static.yeri.be/2015/01/2015-01-28.jpg"><img class="alignnone size-large wp-image-6812" src="https://static.yeri.be/2015/01/2015-01-28-768x1024.jpg" alt="2015-01-28" width="768" height="1024" /></a></p>
<p>Due to interference (GSM? WiFi (very very unlikely)? High voltage power lines?) we moved it to the side, as seen below.</p>
<p>While it is blind from half a side, it can see all the way up to London and beyond.</p>
<p><a href="https://static.yeri.be/2015/02/IMG_20150204_093522.jpg"><img class="alignnone size-large wp-image-6879" src="https://static.yeri.be/2015/02/IMG_20150204_093522-758x1024.jpg" alt="IMG_20150204_093522" width="758" height="1024" /></a></p>
<p>This is the result:</p>
<p><a href="https://static.yeri.be/2015/02/Screen-Shot-2015-02-04-at-15.31.42.png"><img class="alignnone size-large wp-image-6880" src="https://static.yeri.be/2015/02/Screen-Shot-2015-02-04-at-15.31.42-1024x594.png" alt="Screen Shot 2015-02-04 at 15.31.42" width="780" height="452" /></a></p>
<p><a href="https://static.yeri.be/2015/02/Screen-Shot-2015-02-05-at-23.27.54.png"><img class="alignnone size-full wp-image-6901" src="https://static.yeri.be/2015/02/Screen-Shot-2015-02-05-at-23.27.54.png" alt="Screen Shot 2015-02-05 at 23.27.54" width="492" height="395" /></a></p>
<p><a href="https://static.yeri.be/2015/02/Screen-Shot-2015-02-05-at-23.28.48.png"><img class="alignnone size-large wp-image-6902" src="https://static.yeri.be/2015/02/Screen-Shot-2015-02-05-at-23.28.48.png" alt="Screen Shot 2015-02-05 at 23.28.48" width="780" height="344" /></a></p>
<p><a href="https://static.yeri.be/2015/02/Screen-Shot-2015-02-04-at-15.33.07.png"><img class="alignnone size-large wp-image-6881" src="https://static.yeri.be/2015/02/Screen-Shot-2015-02-04-at-15.33.07-499x1024.png" alt="Screen Shot 2015-02-04 at 15.33.07" width="499" height="1024" /></a></p>
<p>As comparison, this is T-EBBR43 (Not placed as high, at my parents&rsquo; house):</p>
<p><a href="https://static.yeri.be/2015/02/Screen-Shot-2015-02-04-at-15.43.24.png"><img class="alignnone size-large wp-image-6884" src="https://static.yeri.be/2015/02/Screen-Shot-2015-02-04-at-15.43.24-574x1024.png" alt="Screen Shot 2015-02-04 at 15.43.24" width="574" height="1024" /></a> <a href="https://static.yeri.be/2015/02/Screen-Shot-2015-02-04-at-15.44.02.png"><img class="alignnone size-large wp-image-6885" src="https://static.yeri.be/2015/02/Screen-Shot-2015-02-04-at-15.44.02-1024x587.png" alt="Screen Shot 2015-02-04 at 15.44.02" width="780" height="447" /></a></p>
<p>Merged data from EBBR43, EBBR44 and EBBR55:</p>
<p><a href="https://static.yeri.be/2015/02/merged.png"><img class="alignnone size-large wp-image-6985" src="https://static.yeri.be/2015/02/merged-1024x520.png" alt="merged" width="780" height="396" /></a></p>
]]></content:encoded>
      <category>Hardware</category><category>Linux</category><category>Networking</category>
      <category>flightradar24</category>
    </item>
    
    <item>
      <title>Belgian banks &amp; SSL — part 4</title>
      <link>https://yeri.be/belgian-banks-ssl-part-4/</link>
      <pubDate>Mon, 16 Feb 2015 20:32:24 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/belgian-banks-ssl-part-4/</guid>
      <description>&lt;p&gt;Because of the &lt;a href=&#34;https://www.google.be/search?ie=UTF-8&amp;amp;q=yeri+tiete+ssl&amp;amp;gws_rd=cr&amp;amp;ei=6x_jVPHHIpG5adrIgNgJ&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;mediastorm&lt;/a&gt; it&amp;rsquo;s time for an update. The previous (&lt;a href=&#34;https://yeri.be/belgian-banks-ssl&#34;&gt;1&lt;/a&gt;, &lt;a href=&#34;https://yeri.be/belgian-banks-ssl-part-2&#34;&gt;2&lt;/a&gt;, &lt;a href=&#34;https://yeri.be/belgian-banks-ssl-part-3&#34;&gt;3&lt;/a&gt;) blog posts are &lt;strong&gt;outdated&lt;/strong&gt;!&lt;/p&gt;&#xA;&lt;p&gt;I&amp;rsquo;ll do my usual &lt;a href=&#34;https://yeri.be/irail-slashdot-effect&#34;&gt;slashdot-effect&lt;/a&gt; post in a couple of days (it&amp;rsquo;s already at 10k views today).&lt;/p&gt;&#xA;&lt;p&gt;Banks that changed rank since last post (all for the better):&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;    &lt;li&gt;16/02/2015:&#xA;&lt;ul&gt;&#xA;    &lt;li&gt;Keytrade: B to A&lt;/li&gt;&#xA;    &lt;li&gt;Hello Bank!: C to A&lt;/li&gt;&#xA;    &lt;li&gt;ING: F to A-&lt;/li&gt;&#xA;    &lt;li&gt;Record Bank: F to A-&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;    &lt;li&gt;17/02/2015:&#xA;&lt;ul&gt;&#xA;    &lt;li&gt;ABK: F to B&lt;/li&gt;&#xA;    &lt;li&gt;Bank Van Breda: C to B&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;    &lt;li&gt;18/02/2015:&#xA;&lt;ul&gt;&#xA;    &lt;li&gt;MeDirect: F to A&lt;/li&gt;&#xA;    &lt;li&gt;Added 6 new (small) banks&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;    &lt;li&gt;27/02/2015&#xA;&lt;ul&gt;&#xA;    &lt;li&gt;Ogone: C to A-&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;    &lt;li&gt;02/03/2015&#xA;&lt;ul&gt;&#xA;    &lt;li&gt;Fortuneo: C to B&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;    &lt;li&gt;03/03/2015&#xA;&lt;ul&gt;&#xA;    &lt;li&gt;Crelan: B to A&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;I cannot test &lt;a href=&#34;https://www.ssllabs.com/ssltest/analyze.html?d=www.europabank.be&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Europabank&lt;/a&gt; using SSL Labs. I can only speculate they &lt;a href=&#34;https://www.ssllabs.com/about/assessment.html&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;requested SSL Labs to not scan them&lt;/a&gt;. I have also added a couple new banks (Delta Lloyd, Deutsche Bank, Moneyou, Fortuneo, BKCP, Binck, and Isabel as bank tool).&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>Because of the <a href="https://www.google.be/search?ie=UTF-8&amp;q=yeri+tiete+ssl&amp;gws_rd=cr&amp;ei=6x_jVPHHIpG5adrIgNgJ" target="_blank" rel="noopener noreferrer">mediastorm</a> it&rsquo;s time for an update. The previous (<a href="https://yeri.be/belgian-banks-ssl">1</a>, <a href="https://yeri.be/belgian-banks-ssl-part-2">2</a>, <a href="https://yeri.be/belgian-banks-ssl-part-3">3</a>) blog posts are <strong>outdated</strong>!</p>
<p>I&rsquo;ll do my usual <a href="https://yeri.be/irail-slashdot-effect">slashdot-effect</a> post in a couple of days (it&rsquo;s already at 10k views today).</p>
<p>Banks that changed rank since last post (all for the better):</p>
<ul>
    <li>16/02/2015:
<ul>
    <li>Keytrade: B to A</li>
    <li>Hello Bank!: C to A</li>
    <li>ING: F to A-</li>
    <li>Record Bank: F to A-</li>
</ul>
</li>
    <li>17/02/2015:
<ul>
    <li>ABK: F to B</li>
    <li>Bank Van Breda: C to B</li>
</ul>
</li>
    <li>18/02/2015:
<ul>
    <li>MeDirect: F to A</li>
    <li>Added 6 new (small) banks</li>
</ul>
</li>
    <li>27/02/2015
<ul>
    <li>Ogone: C to A-</li>
</ul>
</li>
    <li>02/03/2015
<ul>
    <li>Fortuneo: C to B</li>
</ul>
</li>
    <li>03/03/2015
<ul>
    <li>Crelan: B to A</li>
</ul>
</li>
</ul>
<p>I cannot test <a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.europabank.be" target="_blank" rel="noopener noreferrer">Europabank</a> using SSL Labs. I can only speculate they <a href="https://www.ssllabs.com/about/assessment.html" target="_blank" rel="noopener noreferrer">requested SSL Labs to not scan them</a>. I have also added a couple new banks (Delta Lloyd, Deutsche Bank, Moneyou, Fortuneo, BKCP, Binck, and Isabel as bank tool).</p>
<p>I would like to apologise for every IT&rsquo;er that had a crappy Monday morning, and thank you for fixing SSL so fast. :)</p>
<p>The entire <strong>list updated </strong>(last partial update 18/02/2015 around 20h00):</p>
<p>I&rsquo;ve updated the sites to now correctly test the login page and not the main homepage. If that&rsquo;s not the case somewhere, please tell me.</p>
<p><span style="color: #008000;">Grade A</span></p>
<ul>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=secure1.rabobank.be" target="_blank" rel="noopener noreferrer">Rabobank</a> (<span style="color: #339966;">A+</span>): <span style="color: #339966;">no known issues</span>. Support for HTTP Strict Transport Security and prevented downgrade attacks.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=banking.triodos.be&amp;latest" target="_blank" rel="noopener noreferrer">Triodos</a> (<span style="color: #339966;">A+</span>): <span style="color: #339966;">no known issues</span>. Support for HTTP Strict Transport Security and prevented downgrade attacks.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=secure.evi.be" target="_blank" rel="noopener noreferrer">Evi</a> (<span style="color: #339966;">A+</span>): <span style="color: #339966;">no known issues</span>.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=crelan-online.be" target="_blank" rel="noopener noreferrer">Crelan</a> (<span style="color: #339966;">A</span>): weak signature (SHA1).</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.deltalloydbank.be" target="_blank" rel="noopener noreferrer">Delta Lloyd Bank</a> (<span style="color: #339966;">A</span>): <span style="color: #339966;">no known issues</span>. [<a href="https://www.deltalloydbank.be/nl/actueel/detail/probleem-met-het-beveiligingsniveau-van-onze-websites" target="_blank" rel="noopener noreferrer">news post</a>]</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=secure.deutschebank.be" target="_blank" rel="noopener noreferrer">Deutsche Bank</a> (<span style="color: #339966;">A</span>): weak signature (SHA1).</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.hellobank.be" target="_blank" rel="noopener noreferrer">Hello bank!</a> (<span style="color: #339966;">A</span>): <span style="color: #339966;">no known issues</span>.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.keytradebank.be&amp;s=93.191.218.12" target="_blank" rel="noopener noreferrer">Keytrade Bank</a> (<span style="color: #339966;">A</span>): weak signature (SHA1, intermediate, very very minor issue).</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=elogin.medirectbank.be" target="_blank" rel="noopener noreferrer">MeDirect Bank</a> (<span style="color: #339966;">A</span>): <span style="color: #339966;">no known issues</span>. [newsletter: <a href="https://static.yeri.be/2015/02/medirect.jpg" target="_blank" rel="noopener noreferrer">1</a>, <a href="https://static.yeri.be/2015/02/medirect2.png" target="_blank" rel="noopener noreferrer">2</a>]</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.montepaschi.be" target="_blank" rel="noopener noreferrer">Monte Paschi</a> (<span style="color: #339966;">A</span>): <span style="color: #339966;">no known issues</span>.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.belfius.be&amp;s=212.63.233.37" target="_blank" rel="noopener noreferrer">Belfius</a> (<span style="color: #339966;">A-</span>): weak signature (SHA1), no Forward Secrecy.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.bnpparibasfortis.be&amp;s=193.58.4.82" target="_blank" rel="noopener noreferrer">BNP Paribas Fortis</a> (<span style="color: #339966;">A-</span>): weak signature (SHA1), no Forward Secrecy.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.bpostbank.be" target="_blank" rel="noopener noreferrer">bpost bank</a> (<span style="color: #339966;">A-</span>): weak signature (SHA1), no Forward Secrecy.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=login.binck.be&amp;hideResults=on" target="_blank" rel="noopener noreferrer">Binck</a> (<span style="color: #339966;">A-</span>): weak signature (SHA1), no Forward Secrecy.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=fintro.be" target="_blank" rel="noopener noreferrer">Fintro</a> (<span style="color: #339966;">A-</span>): weak signature (SHA1), no Forward Secrecy.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.ing.be&amp;s=193.58.129.66&amp;hideResults=on" target="_blank" rel="noopener noreferrer">ING</a> (<span style="color: #339966;">A-</span>): no Forward Secrecy. [<a href="http://www.standaard.be/cnt/dmf20150216_01531736" target="_blank" rel="noopener noreferrer">press release via Standaard</a>]</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=moneyou.be" target="_blank" rel="noopener noreferrer">Moneyou</a> (<span style="color: #339966;">A-</span>): weak signature (SHA1), no Forward Secrecy.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=homebank.recordbank.be" target="_blank" rel="noopener noreferrer">Record Bank</a> (<span style="color: #339966;">A-</span>): no Forward Secrecy. [<a href="https://static.yeri.be/2015/02/recordbank.png" target="_blank" rel="noopener noreferrer">news post</a>]</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=isabel.eu" target="_blank" rel="noopener noreferrer">Isabel</a> (banking tool for big corps - <span style="color: #339966;">A-</span>): weak signature (SHA1), no Forward Secrecy.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=secure.ogone.com" target="_blank" rel="noopener noreferrer">Ogone</a> (payment facilitator): no Forward Secrecy. [<a href="https://twitter.com/stroobl/status/567586488712699905" target="_blank" rel="noopener noreferrer">newsletter via twitter</a>]</li>
</ul>
<p><span style="color: #ff6600;">Grade B</span></p>
<ul>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=internetbanking.argenta.be" target="_blank" rel="noopener noreferrer">Argenta</a>: SSL3 (insecure), weak signature (SHA1), RC4 (insecure), no Forward Secrecy.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=abkonline.abk.be" target="_blank" rel="noopener noreferrer">ABK</a>: weak signature (SHA1), no TLS 1.2, no Forward Secrecy, no support for secure renegotiation. [<a href="https://yeri.be/belgian-banks-ssl-part-4/comment-page-1#comment-32154">update</a>]</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=fe.axa.be" target="_blank" rel="noopener noreferrer">AXA</a>: weak signature (SHA1), SSL3 (insecure), RC4 (insecure), no Forward Secrecy.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=secure.vanbredaonline.be" target="_blank" rel="noopener noreferrer">Bank Van Breda</a>: weak signature (SHA1), no TLS 1.2, no Forward Secrecy, no support for secure renegotiation. [<a href="https://yeri.be/belgian-banks-ssl-part-4/comment-page-1#comment-32154">update</a>]</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=beobank.be" target="_blank" rel="noopener noreferrer">beobank</a>: weak signature (SHA1), no TLS 1.2, RC4 (insecure), no Forward Secrecy.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=ident.bkcp.be&amp;hideResults=on&amp;latest" target="_blank" rel="noopener noreferrer">BKCP</a>: weak signature (SHA1), no TLS 1.2, RC4 (insecure), no Forward Secrecy. [<a href="https://static.yeri.be/2015/02/bkcp.png" target="_blank" rel="noopener noreferrer">newsletter</a>]</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=cph.be" target="_blank" rel="noopener noreferrer">CPH</a>: no TLS 1.2, RC4 (insecure), no Forward Secrecy.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=netbanking.dhbbank.com" target="_blank" rel="noopener noreferrer">DHB Bank</a>: weak signature (SHA1), RC4 (insecure).</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=fortuneo.be&amp;s=93.20.42.107" target="_blank" rel="noopener noreferrer">Fortuneo</a>: weak signature (SHA1), no TLS 1.2, no Forward Secrecy.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.kbc.be">KBC</a>: weak signature (SHA1), no TLS 1.2, no Forward Secrecy.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=ebanking.nibcdirect.be" target="_blank" rel="noopener noreferrer">NIBC Direct</a>: weak signature (SHA1), RC4 (insecure), no Forward Secrecy.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=online.vdk.be" target="_blank" rel="noopener noreferrer">VDK</a>: SSL3 (insecure),no TLS 1.2, weak signature (SHA1), RC4 (insecure), no Forward Secrecy</li>
</ul>
<p><span style="color: #ff0000;">Grade C</span></p>
<ul>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.psabank.be&amp;s=93.20.46.143&amp;hideResults=on" target="_blank" rel="noopener noreferrer">PSA Bank</a>: weak signature (SHA1), no TLS 1.2, RC4 (insecure), no Forward Secrecy.</li>
</ul>
<p><span style="color: #ff0000;">Grade D</span></p>
<ul>
    <li>n/a</li>
</ul>
<p><span style="color: #ff0000;">Grade E</span></p>
<ul>
    <li>n/a</li>
</ul>
<p><span style="color: #ff0000;">Grade F</span></p>
<ul>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=optimaonline.optimabank.be" target="_blank" rel="noopener noreferrer">Optima Bank</a>: vulnerable to POODLE attack in SSL3 and TLS format, weak signature (SHA1), RC4, no Forward Secrecy.</li>
</ul>
<p>Information about SSL Labs grading can be found <a href="https://web.archive.org/web/20170119124000/https://www.ssllabs.com/downloads/SSL_Server_Rating_Guide.pdf" target="_blank" rel="noopener noreferrer">here</a>. Grade A (+) being the best possible ranking, and F the worst.</p>
<p>Respect to those that send a mailing list to their customers with more detailed information. Communication++</p>
<p>Respect to Rabobank to be the only bank that directly contacted me (officially, not hiding behind a Gmail or Hotmail address) and thanked me for the work I did, asking for more details, etc.</p>
<p>And thank you for an anonymous person, working for one of the big banks, to give me more details about why they are slow at patching this, how legacy works, etc. I wish he could take this discussion public, but alas.</p>
]]></content:encoded>
      <category>Linux</category><category>Misc</category><category>Networking</category><category>Software</category><category>www</category>
      <category>belgium</category><category>ssl</category>
    </item>
    
    <item>
      <title>Belgian banks &amp; SSL — part 3</title>
      <link>https://yeri.be/belgian-banks-ssl-part-3/</link>
      <pubDate>Sun, 15 Feb 2015 11:11:42 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/belgian-banks-ssl-part-3/</guid>
      <description>&lt;p&gt;&lt;span style=&#34;text-decoration: underline;&#34;&gt;&lt;strong&gt;EDIT&lt;/strong&gt;&lt;/span&gt;: ING is now A- (not reflected in this blog post).&#xA;&lt;strong&gt;&lt;span style=&#34;text-decoration: underline;&#34;&gt;EDIT 2&lt;/span&gt;&lt;/strong&gt;: Keytrade &amp;amp; Hello Bank also went to A. I&amp;rsquo;ll post a new blog post later tonight.&#xA;&lt;strong&gt;&lt;span style=&#34;text-decoration: underline;&#34;&gt;EDIT 3&lt;/span&gt;&lt;/strong&gt;: Updated post &lt;a href=&#34;https://yeri.be/belgian-banks-ssl-part-4&#34;&gt;here&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Part three, or how I single-handedly &amp;ldquo;fixed&amp;rdquo; SSL at the Belgian banks. ;)&lt;/p&gt;&#xA;&lt;p&gt;Part &lt;a href=&#34;https://yeri.be/belgian-banks-ssl&#34;&gt;one&lt;/a&gt; and &lt;a href=&#34;https://yeri.be/belgian-banks-ssl-part-2&#34;&gt;two&lt;/a&gt; are available here. Not related but useful nonetheless &lt;a href=&#34;http://www.nytimes.com/2015/02/15/world/bank-hackers-steal-millions-via-malware.html&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;NY Times article&lt;/a&gt; about bank hackers.&lt;/p&gt;&#xA;&lt;p&gt;Argenta &lt;a href=&#34;https://www.facebook.com/argenta/posts/10206360815449230&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;promised to fix their SSL&lt;/a&gt;, so it&amp;rsquo;s the time to check everything again.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p><span style="text-decoration: underline;"><strong>EDIT</strong></span>: ING is now A- (not reflected in this blog post).
<strong><span style="text-decoration: underline;">EDIT 2</span></strong>: Keytrade &amp; Hello Bank also went to A. I&rsquo;ll post a new blog post later tonight.
<strong><span style="text-decoration: underline;">EDIT 3</span></strong>: Updated post <a href="https://yeri.be/belgian-banks-ssl-part-4">here</a>.</p>
<p>Part three, or how I single-handedly &ldquo;fixed&rdquo; SSL at the Belgian banks. ;)</p>
<p>Part <a href="https://yeri.be/belgian-banks-ssl">one</a> and <a href="https://yeri.be/belgian-banks-ssl-part-2">two</a> are available here. Not related but useful nonetheless <a href="http://www.nytimes.com/2015/02/15/world/bank-hackers-steal-millions-via-malware.html" target="_blank" rel="noopener noreferrer">NY Times article</a> about bank hackers.</p>
<p>Argenta <a href="https://www.facebook.com/argenta/posts/10206360815449230" target="_blank" rel="noopener noreferrer">promised to fix their SSL</a>, so it&rsquo;s the time to check everything again.</p>
<p>TL;DR: Only Argenta&rsquo;s status changed for the better.</p>
<p>Those that <strong>did not</strong> change:</p>
<ul>
    <li><span style="color: #339966;">Rabobank</span>: A+</li>
    <li><span style="color: #339966;">Triodos</span>: A+</li>
    <li><span style="color: #339966;">Belfius</span>: A-</li>
    <li><span style="color: #339966;">BNP Paribas Fortis</span>: A-</li>
    <li><span style="color: #339966;">bpost bank</span>: A-</li>
    <li><span style="color: #ff9900;">AXA</span>: B</li>
    <li><span style="color: #ff9900;">beobank</span>: B</li>
    <li><span style="color: #ff9900;">CPH</span>: B</li>
    <li><span style="color: #ff9900;">KBC</span>: B</li>
    <li><span style="color: #ff9900;">Keytrade Bank</span>: B</li>
    <li><span style="color: #ff9900;">Crelan</span> (internet banking): B</li>
    <li><span style="color: #ff0000;">Hello bank!</span>: C</li>
    <li><span style="color: #ff0000;">Bank Van Breda</span> (internet banking): C
<ul>
    <li>BvB no longer supports <a href="https://community.qualys.com/blogs/securitylabs/2010/10/06/disabling-ssl-renegotiation-is-a-crutch-not-a-fix" target="_blank" rel="noopener noreferrer">secure renegotiation</a> (which, afaik, it did before). However, it's still rated as C, as this isn't a real issue.</li>
</ul>
</li>
    <li><span style="color: #ff0000;">ING</span>: F</li>
    <li><span style="color: #ff0000;">Record Bank</span> (internet banking): F</li>
</ul>
<p>Those that <strong>did</strong> change:</p>
<ul>
    <li>Argenta (internet banking): <span style="color: #ff0000;">F</span> to <span style="color: #ff9900;">B</span>
<ul>
    <li><span style="color: #339966;">No longer vulnerable to POODLE</span>,</li>
    <li>Support for <span style="color: #339966;">protocol downgrade attacks prevention</span>,</li>
    <li><span style="color: #ff9900;">Still using SSL3 </span>(obsolete and insecure),</li>
    <li><span style="color: #ff9900;">Weak signature </span>(SHA1),</li>
    <li><span style="color: #ff9900;">RC4 cipher is supported</span> (insecure),</li>
    <li><span style="color: #ff9900;">No Forward Secrecy</span>.</li>
</ul>
</li>
</ul>
<p>Still a little way to go for Argenta, but it&rsquo;s on the right path.</p>
<p>Those that I <strong>hadn&rsquo;t tested</strong> before:</p>
<ul>
    <li><span style="color: #ff9900;">VDK</span>: B</li>
    <li><span style="color: #ff0000;">ABK</span>: F</li>
    <li><span style="color: #ff0000;">MeDirect Bank</span>: F</li>
    <li><span style="color: #ff0000;">Ogone</span>: C (technically not a bank, and <a href="https://twitter.com/stroobl/status/561920969800171520" target="_blank" rel="noopener noreferrer">promised a fix</a>, but it <a href="https://twitter.com/stroobl/status/566910029685850112" target="_blank" rel="noopener noreferrer">got delayed</a>).</li>
</ul>
<hr />
<p>The entire <strong>list updated</strong>:</p>
<p><span style="color: #008000;">Grade A</span></p>
<ul>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.rabobank.be&amp;s=172.230.225.200" target="_blank" rel="noopener noreferrer">Rabobank</a> (<span style="color: #339966;">A+</span>): <span style="color: #339966;">no known issues</span>. Support for HTTP Strict Transport Security and prevented downgrade attacks.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.triodos.be" target="_blank" rel="noopener noreferrer">Triodos</a> (<span style="color: #339966;">A+</span>): <span style="color: #339966;">no known issues</span>. Support for HTTP Strict Transport Security and prevented downgrade attacks.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.belfius.be&amp;s=212.63.233.37" target="_blank" rel="noopener noreferrer">Belfius</a> (<span style="color: #339966;">A-</span>): weak signature (SHA1), no Forward Secrecy.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.bnpparibasfortis.be&amp;s=193.58.4.82" target="_blank" rel="noopener noreferrer">BNP Paribas Fortis</a>: (<span style="color: #339966;">A-</span>) weak signature (SHA1), no Forward Secrecy.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.bpostbank.be" target="_blank" rel="noopener noreferrer">bpost bank</a>: (<span style="color: #339966;">A-</span>) weak signature (SHA1), no Forward Secrecy.</li>
</ul>
<p><span style="color: #ff6600;">Grade B</span></p>
<ul>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=argenta.be" target="_blank" rel="noopener noreferrer">Argenta</a>: no SSL on main page.
<ul>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=internetbanking.argenta.be" target="_blank" rel="noopener noreferrer">internet banking</a>: SSL3 (insecure), weak signature (SHA1), RC4 (insecure), no Forward Secrecy.</li>
</ul>
</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.axa.be" target="_blank" rel="noopener noreferrer">AXA</a>: weak signature (SHA1), SSL3 (insecure), RC4 (insecure), no Forward Secrecy.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=beobank.be" target="_blank" rel="noopener noreferrer">beobank</a>: weak signature (SHA1), no TLS 1.2, RC4 (insecure), no Forward Secrecy.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=cph.be" target="_blank" rel="noopener noreferrer">CPH</a>: no TLS 1.2, RC4 (insecure), no Forward Secrecy.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.kbc.be">KBC</a>: weak signature (SHA1), no TLS 1.2, no Forward Secrecy.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.keytradebank.be&amp;s=93.191.218.12" target="_blank" rel="noopener noreferrer">Keytrade Bank</a>: weak signature (SHA1), RC4 (insecure).</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=online.vdk.be" target="_blank" rel="noopener noreferrer">VDK</a>: SSL3 (insecure),no TLS 1.2, weak signature (SHA1), RC4 (insecure), no Forward Secrecy</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=crelan.be&amp;latest" target="_blank" rel="noopener noreferrer">Crelan</a>: <span style="color: #33cccc;">no SSL on main page.</span>
<ul>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=crelan-online.be" target="_blank" rel="noopener noreferrer">internet banking</a>: weak signature (SHA1), SSL3 (insecure), no TLS 1.2, RC4, no Forward Secrecy.</li>
</ul>
</li>
</ul>
<p><span style="color: #ff0000;">Grade C</span></p>
<ul>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.hellobank.be" target="_blank" rel="noopener noreferrer">Hello bank!</a>: vulnerable to POODLE attack, weak signature (SHA1), RC4 (insecure).</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=bankvanbreda.be&amp;latest" target="_blank" rel="noopener noreferrer">Bank Van Breda</a>: <span style="color: #33cccc;">no SSL on main page.</span>
<ul>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=secure.vanbredaonline.be" target="_blank" rel="noopener noreferrer">internet banking</a>: vulnerable to POODLE attack, weak signature (SHA1), no TLS 1.2, no Forward Secrecy, no support for secure renegotiation.</li>
</ul>
</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=secure.ogone.com" target="_blank" rel="noopener noreferrer">Ogone</a>: payment facilitator
<ul>
    <li>weak signature (SHA1), RC4, vulnerable to POODLE, no Forward Secrecy</li>
</ul>
</li>
</ul>
<p><span style="color: #ff0000;">Grade D</span></p>
<ul>
    <li>n/a</li>
</ul>
<p><span style="color: #ff0000;">Grade E</span></p>
<ul>
    <li>n/a</li>
</ul>
<p><span style="color: #ff0000;">Grade F</span></p>
<ul>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=abkonline.abk.be" target="_blank" rel="noopener noreferrer">ABK</a>: SSL2 (insecure), vulnerable to POODLE attack, weak signature (SHA1), RC4 (insecure), no Forward Secrecy, no TLS 1.2.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.ing.be&amp;s=193.58.129.66&amp;hideResults=on" target="_blank" rel="noopener noreferrer">ING</a>: vulnerable to POODLE attack, SSL3 (insecure), weak signature (SHA1), RC4 (insecure), no Forward Secrecy.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=elogin.medirectbank.be" target="_blank" rel="noopener noreferrer">MeDirect Bank</a>: vulnerable to POODLE attack, <a href="https://community.qualys.com/blogs/securitylabs/2014/06/13/ssl-pulse-49-vulnerable-to-cve-2014-0224-14-exploitable" target="_blank" rel="noopener noreferrer">OpenSSL CCS vulnerability</a> (quite bad),</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=recordbank.be&amp;latest" target="_blank" rel="noopener noreferrer">Record Bank</a>: <span style="color: #33cccc;">no SSL on main page.</span>
<ul>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=homebank.recordbank.be" target="_blank" rel="noopener noreferrer">internet banking</a>: vulnerable to POODLE attack, RC4 (insecure), no Forward Secrecy.</li>
</ul>
</li>
</ul>
<p>Information about SSL Labs grading can be found <a href="https://web.archive.org/web/20170119124000/https://www.ssllabs.com/downloads/SSL_Server_Rating_Guide.pdf" target="_blank" rel="noopener noreferrer">here</a>. Grade A (+) being the best possible ranking, and F the worst.</p>
<p>Also, shame on you ING. More than any other bank.</p>
]]></content:encoded>
      <category>Linux</category><category>Misc</category><category>Networking</category><category>Software</category><category>Windows</category><category>www</category>
      <category>belgium</category><category>ssl</category>
    </item>
    
    <item>
      <title>Turtle shaped WiFi</title>
      <link>https://yeri.be/turtle-shaped-wifi/</link>
      <pubDate>Tue, 10 Feb 2015 16:03:09 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/turtle-shaped-wifi/</guid>
      <description>&lt;p&gt;demolished a &lt;a href=&#34;http://www.ubnt.com/unifi/unifi-ap/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;unifi&lt;/a&gt; from &lt;a href=&#34;https://web.archive.org/web/20220706202838/https://auki.io/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Auki&lt;/a&gt; and build a 3D printed Turtle around it.&lt;/p&gt;&#xA;&lt;p&gt;Came out very nicely, and it&amp;rsquo;s quite solid.&lt;/p&gt;&#xA;&lt;p&gt;3D renders:&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://static.yeri.be/2015/01/WT-blk1.jpg&#34;&gt;&lt;img class=&#34;alignnone size-large wp-image-6647&#34; src=&#34;https://static.yeri.be/2015/01/WT-blk1-1024x530.jpg&#34; alt=&#34;WT-blk1&#34; width=&#34;780&#34; height=&#34;404&#34; /&gt;&lt;/a&gt; &lt;a href=&#34;https://static.yeri.be/2015/01/WT-blk2.jpg&#34;&gt;&lt;img class=&#34;alignnone size-large wp-image-6648&#34; src=&#34;https://static.yeri.be/2015/01/WT-blk2-1024x530.jpg&#34; alt=&#34;WT-blk2&#34; width=&#34;780&#34; height=&#34;404&#34; /&gt;&lt;/a&gt; &lt;a href=&#34;https://static.yeri.be/2015/01/WT-blk3.jpg&#34;&gt;&lt;img class=&#34;alignnone size-large wp-image-6649&#34; src=&#34;https://static.yeri.be/2015/01/WT-blk3-1024x530.jpg&#34; alt=&#34;WT-blk3&#34; width=&#34;780&#34; height=&#34;404&#34; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Actual printed design:&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://static.yeri.be/2015/02/sfeer-1.jpg&#34;&gt;&lt;img class=&#34;alignnone size-large wp-image-6652&#34; src=&#34;https://static.yeri.be/2015/02/sfeer-1-928x1024.jpg&#34; alt=&#34;sfeer 1&#34; width=&#34;780&#34; height=&#34;861&#34; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://static.yeri.be/2015/02/schaduw-3.jpg&#34;&gt;&lt;img class=&#34;alignnone size-large wp-image-6653&#34; src=&#34;https://static.yeri.be/2015/02/schaduw-3-1024x682.jpg&#34; alt=&#34;schaduw 3&#34; width=&#34;780&#34; height=&#34;519&#34; /&gt;&lt;/a&gt; &lt;a href=&#34;https://static.yeri.be/2015/02/schaduw-4.jpg&#34;&gt;&lt;img class=&#34;alignnone size-large wp-image-6654&#34; src=&#34;https://static.yeri.be/2015/02/schaduw-4-1024x682.jpg&#34; alt=&#34;schaduw 4&#34; width=&#34;780&#34; height=&#34;519&#34; /&gt;&lt;/a&gt; &lt;a href=&#34;https://static.yeri.be/2015/02/schaduw-5.jpg&#34;&gt;&lt;img class=&#34;alignnone size-large wp-image-6655&#34; src=&#34;https://static.yeri.be/2015/02/schaduw-5-1024x681.jpg&#34; alt=&#34;schaduw 5&#34; width=&#34;780&#34; height=&#34;519&#34; /&gt;&lt;/a&gt; &lt;a href=&#34;https://static.yeri.be/2015/02/closeup.jpg&#34;&gt;&lt;img class=&#34;alignnone size-large wp-image-6656&#34; src=&#34;https://static.yeri.be/2015/02/closeup-1024x681.jpg&#34; alt=&#34;closeup&#34; width=&#34;780&#34; height=&#34;519&#34; /&gt;&lt;/a&gt;&lt;a href=&#34;https://static.yeri.be/2015/02/IMG_20141014_124319.jpg&#34;&gt;&lt;img class=&#34;alignnone size-large wp-image-6679&#34; src=&#34;https://static.yeri.be/2015/02/IMG_20141014_124319-1024x758.jpg&#34; alt=&#34;IMG_20141014_124319&#34; width=&#34;780&#34; height=&#34;577&#34; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Opened up unifi:&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://static.yeri.be/2015/02/IMG_20140923_224646.jpg&#34;&gt;&lt;img class=&#34;alignnone size-large wp-image-6685&#34; src=&#34;https://static.yeri.be/2015/02/IMG_20140923_224646-758x1024.jpg&#34; alt=&#34;IMG_20140923_224646&#34; width=&#34;758&#34; height=&#34;1024&#34; /&gt;&lt;/a&gt; &lt;a href=&#34;https://static.yeri.be/2015/02/IMG_20140923_224706.jpg&#34;&gt;&lt;img class=&#34;alignnone size-large wp-image-6686&#34; src=&#34;https://static.yeri.be/2015/02/IMG_20140923_224706-758x1024.jpg&#34; alt=&#34;IMG_20140923_224706&#34; width=&#34;758&#34; height=&#34;1024&#34; /&gt;&lt;/a&gt;&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>demolished a <a href="http://www.ubnt.com/unifi/unifi-ap/" target="_blank" rel="noopener noreferrer">unifi</a> from <a href="https://web.archive.org/web/20220706202838/https://auki.io/" target="_blank" rel="noopener noreferrer">Auki</a> and build a 3D printed Turtle around it.</p>
<p>Came out very nicely, and it&rsquo;s quite solid.</p>
<p>3D renders:</p>
<p><a href="https://static.yeri.be/2015/01/WT-blk1.jpg"><img class="alignnone size-large wp-image-6647" src="https://static.yeri.be/2015/01/WT-blk1-1024x530.jpg" alt="WT-blk1" width="780" height="404" /></a> <a href="https://static.yeri.be/2015/01/WT-blk2.jpg"><img class="alignnone size-large wp-image-6648" src="https://static.yeri.be/2015/01/WT-blk2-1024x530.jpg" alt="WT-blk2" width="780" height="404" /></a> <a href="https://static.yeri.be/2015/01/WT-blk3.jpg"><img class="alignnone size-large wp-image-6649" src="https://static.yeri.be/2015/01/WT-blk3-1024x530.jpg" alt="WT-blk3" width="780" height="404" /></a></p>
<p>Actual printed design:</p>
<p><a href="https://static.yeri.be/2015/02/sfeer-1.jpg"><img class="alignnone size-large wp-image-6652" src="https://static.yeri.be/2015/02/sfeer-1-928x1024.jpg" alt="sfeer 1" width="780" height="861" /></a></p>
<p><a href="https://static.yeri.be/2015/02/schaduw-3.jpg"><img class="alignnone size-large wp-image-6653" src="https://static.yeri.be/2015/02/schaduw-3-1024x682.jpg" alt="schaduw 3" width="780" height="519" /></a> <a href="https://static.yeri.be/2015/02/schaduw-4.jpg"><img class="alignnone size-large wp-image-6654" src="https://static.yeri.be/2015/02/schaduw-4-1024x682.jpg" alt="schaduw 4" width="780" height="519" /></a> <a href="https://static.yeri.be/2015/02/schaduw-5.jpg"><img class="alignnone size-large wp-image-6655" src="https://static.yeri.be/2015/02/schaduw-5-1024x681.jpg" alt="schaduw 5" width="780" height="519" /></a> <a href="https://static.yeri.be/2015/02/closeup.jpg"><img class="alignnone size-large wp-image-6656" src="https://static.yeri.be/2015/02/closeup-1024x681.jpg" alt="closeup" width="780" height="519" /></a><a href="https://static.yeri.be/2015/02/IMG_20141014_124319.jpg"><img class="alignnone size-large wp-image-6679" src="https://static.yeri.be/2015/02/IMG_20141014_124319-1024x758.jpg" alt="IMG_20141014_124319" width="780" height="577" /></a></p>
<p>Opened up unifi:</p>
<p><a href="https://static.yeri.be/2015/02/IMG_20140923_224646.jpg"><img class="alignnone size-large wp-image-6685" src="https://static.yeri.be/2015/02/IMG_20140923_224646-758x1024.jpg" alt="IMG_20140923_224646" width="758" height="1024" /></a> <a href="https://static.yeri.be/2015/02/IMG_20140923_224706.jpg"><img class="alignnone size-large wp-image-6686" src="https://static.yeri.be/2015/02/IMG_20140923_224706-758x1024.jpg" alt="IMG_20140923_224706" width="758" height="1024" /></a></p>
<p>Design by <a href="http://www.seendesign.be/" target="_blank" rel="noopener noreferrer">Seendesign</a>.</p>
<p>More at <a href="http://blog.flatturtle.com/" target="_blank" rel="noopener noreferrer">FlatTurtle&rsquo;s blog</a>.</p>
]]></content:encoded>
      <category>Hardware</category><category>Networking</category>
      <category>flatturtle</category><category>ubiquiti</category><category>wifi</category>
    </item>
    
    <item>
      <title>Outdoor WiFi (120onCortenbergh)</title>
      <link>https://yeri.be/outdoor-wifi-120oncortenbergh/</link>
      <pubDate>Fri, 06 Feb 2015 16:17:26 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/outdoor-wifi-120oncortenbergh/</guid>
      <description>&lt;p&gt;About a year later&amp;hellip; Except not being white anymore, it still looks good. &lt;a href=&#34;http://www.ubnt.com/unifi/unifi-ap-outdoor/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Outdoor unifi&lt;/a&gt; (previous model) connected to &lt;a href=&#34;https://web.archive.org/web/20211216112944/http://auki.be/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Auki&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://static.yeri.be/2015/01/2015-01-21.jpg&#34;&gt;&lt;img class=&#34;alignnone size-large wp-image-6668&#34; src=&#34;https://static.yeri.be/2015/01/2015-01-21-768x1024.jpg&#34; alt=&#34;2015-01-21&#34; width=&#34;768&#34; height=&#34;1024&#34; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Picture enhanced by Google Plus to add dramatic effect. ;)&lt;/p&gt;&#xA;&lt;p&gt;Original picture &lt;a href=&#34;https://static.yeri.be/2015/01/2015-01-21_original.jpg&#34;&gt;here&lt;/a&gt;.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>About a year later&hellip; Except not being white anymore, it still looks good. <a href="http://www.ubnt.com/unifi/unifi-ap-outdoor/" target="_blank" rel="noopener noreferrer">Outdoor unifi</a> (previous model) connected to <a href="https://web.archive.org/web/20211216112944/http://auki.be/" target="_blank" rel="noopener noreferrer">Auki</a>.</p>
<p><a href="https://static.yeri.be/2015/01/2015-01-21.jpg"><img class="alignnone size-large wp-image-6668" src="https://static.yeri.be/2015/01/2015-01-21-768x1024.jpg" alt="2015-01-21" width="768" height="1024" /></a></p>
<p>Picture enhanced by Google Plus to add dramatic effect. ;)</p>
<p>Original picture <a href="https://static.yeri.be/2015/01/2015-01-21_original.jpg">here</a>.</p>
]]></content:encoded>
      <category>Hardware</category><category>Networking</category>
      <category>flatturtle</category><category>ubiquiti</category><category>wifi</category>
    </item>
    
    <item>
      <title>Courier IMAP and auto deleting trash after 7 days</title>
      <link>https://yeri.be/courier-imap-and-auto-deleting-trash-after-7-days/</link>
      <pubDate>Tue, 03 Feb 2015 11:53:20 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/courier-imap-and-auto-deleting-trash-after-7-days/</guid>
      <description>&lt;p&gt;E-mails that had been deleted for over 7 days were automatically removed from the IMAP server. E-mail date was ignored (ie the mail could have been from 2010; the actual time in &amp;ldquo;Trash&amp;rdquo; counted). This didn&amp;rsquo;t happen to other folders (Sent, Archive, Spam). This recently happened and hadn&amp;rsquo;t happened before.&lt;/p&gt;&#xA;&lt;p&gt;I had to restore my trash folder from backups every 7 days (yay for &lt;a href=&#34;http://www.nongnu.org/rdiff-backup/&#34; target=&#34;_blank&#34;&gt;rdiff-backup&lt;/a&gt;).&lt;/p&gt;&#xA;&lt;p&gt;It took me a while to figure it out&amp;hellip; The problem first appeared in October, right after several big changes:&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>E-mails that had been deleted for over 7 days were automatically removed from the IMAP server. E-mail date was ignored (ie the mail could have been from 2010; the actual time in &ldquo;Trash&rdquo; counted). This didn&rsquo;t happen to other folders (Sent, Archive, Spam). This recently happened and hadn&rsquo;t happened before.</p>
<p>I had to restore my trash folder from backups every 7 days (yay for <a href="http://www.nongnu.org/rdiff-backup/" target="_blank">rdiff-backup</a>).</p>
<p>It took me a while to figure it out&hellip; The problem first appeared in October, right after several big changes:</p>
<ul>
	<li>Yosemite update</li>
	<li>Airmail to <a href="http://airmailapp.com/" target="_blank">Airmail 2</a> update (I was <a href="https://twitter.com/Tuinslak/status/543457760525180929" target="_blank">convinced this was the root cause</a>, looking at my clients instead of the server)</li>
	<li>Android 5.0.x</li>
	<li>Android Email app sunset, changes to GMail app</li>
	<li>IPv6 working decently at home after updating my <a href="https://yeri.be/connect-different-lans-over-openvpn">RPi</a> to <a href="http://en.avm.de/" target="_blank">Fritzbox</a> devices.</li>
	<li>Random connection errors in GMail app (this was due to misconfigured DNS in the GMail app and causing IPv6 catch all to redirect to the webserver instead of the mailserver. It didn't happen consistently because over mobile (4G &amp; lower) there is no IPv6 and at home is randomly falls back to IPv4 as well. IPv4 DNS was well configured.</li>
	<li>Moving my ~100.000 deleted e-mails from "Deleted Items" (OS X Mail default) to "Trash" (Android &amp; Courier default) to stop having to move them manually from one folder to the other every so often. =&gt; this was eventually the cause but I didn't realize.</li>
</ul>
Being convinced it was most likely Airmail 2 and very maybe Android I had been looking in that direction.
<p>Debugging was also extremely slow as I had to wait 7 days before being able to check if the changes I made helped anything.</p>
<p>I eventually figured out that it was not Airmail when I rebuild my whole mail database and it defaulted back to putting my deleted mails into the Archive folder instead of Trash. Archive mails were kept over 7 days, but items in Trash still removed.</p>
<p>That&rsquo;s when I started looking at Courier IMAP config: <code>/etc/courier/imapd</code> (and not <code>imapd-ssl</code>).</p>
<p>There&rsquo;s an option that says:</p>
<pre>##NAME: IMAP_EMPTYTRASH:0
#
# The following setting is optional, and causes messages from the given
# folder to be automatically deleted after the given number of days.
# IMAP_EMPTYTRASH is a comma-separated list of folder:days.  The default
# setting, below, purges 7 day old messages from the Trash folder.
# Another useful setting would be:
#  
# IMAP_EMPTYTRASH=Trash:7,Sent:30
#
# This would also delete messages from the Sent folder (presumably copies
# of sent mail) after 30 days.  This is a global setting that is applied to
# every mail account, and is probably useful in a controlled, corporate
# environment.
#
# Important: the purging is controlled by CTIME, not MTIME (the file time
# as shown by ls).  It is perfectly ordinary to see stuff in Trash that's
# a year old.  That's the file modification time, MTIME, that's displayed.
# This is generally when the message was originally delivered to this
# mailbox.  Purging is controlled by a different timestamp, CTIME, which is
# changed when the file is moved to the Trash folder (and at other times too).
#
# You might want to disable this setting in certain situations - it results
# in a stat() of every file in each folder, at login and logout.
#
IMAP_EMPTYTRASH=Trash:7</pre>
<p>Comment out that last line, and restart courier-imap(-ssl)&hellip; Simple as that.</p>
<p>This solved my issue.</p>
<p>I&rsquo;m not sure when that config change happened (Debian update?) and I do not know who at Courier thought it was a good idea &hellip;. But sheesh.</p>
]]></content:encoded>
      <category>Apple</category><category>Errors</category><category>Linux</category><category>Networking</category><category>Software</category>
      <category>gmail</category><category>imap</category><category>mac os x</category><category>mail</category>
    </item>
    
    <item>
      <title>Belgian banks &amp; SSL -- part 2</title>
      <link>https://yeri.be/belgian-banks-ssl-part-2/</link>
      <pubDate>Sun, 01 Feb 2015 11:32:43 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/belgian-banks-ssl-part-2/</guid>
      <description>&lt;p&gt;I previously wrote about &lt;a href=&#34;https://yeri.be/belgian-banks-ssl&#34;&gt;Belgian banks &amp;amp; SSL&lt;/a&gt;. Updated version (15/02/2015) &lt;a href=&#34;https://yeri.be/belgian-banks-ssl-part-3&#34;&gt;here&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Going through my Google Analytics I noticed some noteworthy network domains, which Google discribes as &amp;ldquo;The fully qualified domain names of your visitors&amp;rsquo; Internet service providers (ISPs)&amp;rdquo;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://static.yeri.be/2015/02/Screen-Shot-2015-02-01-at-01.35.01.png&#34;&gt;&lt;img class=&#34;alignnone size-full wp-image-6815&#34; src=&#34;https://static.yeri.be/2015/02/Screen-Shot-2015-02-01-at-01.35.01.png&#34; alt=&#34;Screen Shot 2015-02-01 at 01.35.01&#34; width=&#34;651&#34; height=&#34;34&#34; /&gt;&lt;/a&gt;&lt;a href=&#34;https://static.yeri.be/2015/02/Screen-Shot-2015-02-01-at-01.35.23.png&#34;&gt;&lt;img class=&#34;alignnone size-large wp-image-6816&#34; src=&#34;https://static.yeri.be/2015/02/Screen-Shot-2015-02-01-at-01.35.23.png&#34; alt=&#34;Screen Shot 2015-02-01 at 01.35.23&#34; width=&#34;650&#34; height=&#34;34&#34; /&gt;&lt;/a&gt;&lt;a href=&#34;https://static.yeri.be/2015/02/Screen-Shot-2015-02-01-at-01.35.34.png&#34;&gt;&lt;img class=&#34;alignnone size-large wp-image-6817&#34; src=&#34;https://static.yeri.be/2015/02/Screen-Shot-2015-02-01-at-01.35.34.png&#34; alt=&#34;Screen Shot 2015-02-01 at 01.35.34&#34; width=&#34;650&#34; height=&#34;33&#34; /&gt;&lt;/a&gt;&lt;a href=&#34;https://static.yeri.be/2015/02/Screen-Shot-2015-02-01-at-01.36.59.png&#34;&gt;&lt;img class=&#34;alignnone size-large wp-image-6818&#34; src=&#34;https://static.yeri.be/2015/02/Screen-Shot-2015-02-01-at-01.36.59.png&#34; alt=&#34;Screen Shot 2015-02-01 at 01.36.59&#34; width=&#34;649&#34; height=&#34;103&#34; /&gt;&lt;/a&gt;&lt;a href=&#34;https://static.yeri.be/2015/02/Screen-Shot-2015-02-01-at-01.37.32.png&#34;&gt;&lt;img class=&#34;alignnone size-large wp-image-6819&#34; src=&#34;https://static.yeri.be/2015/02/Screen-Shot-2015-02-01-at-01.37.32.png&#34; alt=&#34;Screen Shot 2015-02-01 at 01.37.32&#34; width=&#34;651&#34; height=&#34;34&#34; /&gt;&lt;/a&gt;&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>I previously wrote about <a href="https://yeri.be/belgian-banks-ssl">Belgian banks &amp; SSL</a>. Updated version (15/02/2015) <a href="https://yeri.be/belgian-banks-ssl-part-3">here</a>.</p>
<p>Going through my Google Analytics I noticed some noteworthy network domains, which Google discribes as &ldquo;The fully qualified domain names of your visitors&rsquo; Internet service providers (ISPs)&rdquo;.</p>
<p><a href="https://static.yeri.be/2015/02/Screen-Shot-2015-02-01-at-01.35.01.png"><img class="alignnone size-full wp-image-6815" src="https://static.yeri.be/2015/02/Screen-Shot-2015-02-01-at-01.35.01.png" alt="Screen Shot 2015-02-01 at 01.35.01" width="651" height="34" /></a><a href="https://static.yeri.be/2015/02/Screen-Shot-2015-02-01-at-01.35.23.png"><img class="alignnone size-large wp-image-6816" src="https://static.yeri.be/2015/02/Screen-Shot-2015-02-01-at-01.35.23.png" alt="Screen Shot 2015-02-01 at 01.35.23" width="650" height="34" /></a><a href="https://static.yeri.be/2015/02/Screen-Shot-2015-02-01-at-01.35.34.png"><img class="alignnone size-large wp-image-6817" src="https://static.yeri.be/2015/02/Screen-Shot-2015-02-01-at-01.35.34.png" alt="Screen Shot 2015-02-01 at 01.35.34" width="650" height="33" /></a><a href="https://static.yeri.be/2015/02/Screen-Shot-2015-02-01-at-01.36.59.png"><img class="alignnone size-large wp-image-6818" src="https://static.yeri.be/2015/02/Screen-Shot-2015-02-01-at-01.36.59.png" alt="Screen Shot 2015-02-01 at 01.36.59" width="649" height="103" /></a><a href="https://static.yeri.be/2015/02/Screen-Shot-2015-02-01-at-01.37.32.png"><img class="alignnone size-large wp-image-6819" src="https://static.yeri.be/2015/02/Screen-Shot-2015-02-01-at-01.37.32.png" alt="Screen Shot 2015-02-01 at 01.37.32" width="651" height="34" /></a></p>
<p>There are a few more (Belgian) government institutions and universities, and the top in the list are &ldquo;(not set)&rdquo; and &ldquo;unknown&rdquo;.</p>
<p>Clearly some people at the banks read the post during their work time. So it&rsquo;s only fair to recheck the websites&hellip; Here goes:</p>
<p>Those that I <strong>hadn&rsquo;t tested</strong> before:</p>
<ul>
    <li><span style="color: #ff9900;">CPH</span>: B</li>
    <li><span style="color: #ff0000;">Record Bank</span> (internet banking): F</li>
</ul>
<p>Those that <strong>did not</strong> change:</p>
<ul>
    <li><span style="color: #339966;">Rabobank</span>: A+</li>
    <li><span style="color: #339966;">Belfius</span>: A-</li>
    <li><span style="color: #ff9900;">AXA</span>: B</li>
    <li><span style="color: #ff9900;">beobank</span>: B</li>
    <li><span style="color: #ff9900;">KBC</span>: B</li>
    <li><span style="color: #ff9900;">Keytrade Bank</span>: B</li>
    <li><span style="color: #ff9900;">Crelan</span> (internet banking): B</li>
    <li><span style="color: #ff0000;">Hello bank!</span>: C</li>
    <li><span style="color: #ff0000;">Bank Van Breda</span> (internet banking): C</li>
    <li><span style="color: #ff0000;">ING</span>: F</li>
    <li><span style="color: #ff0000;">Argenta</span> (internet banking): F</li>
</ul>
<p>Those that <strong>did</strong> change:</p>
<ul>
    <li><span style="color: #339966;">Triodos</span>: <span style="color: #339966;">A</span> to <span style="color: #339966;">A+</span>
<ul>
    <li>downgrade prevention correctly applied.</li>
</ul>
</li>
    <li><span style="color: #339966;">BNP Paribas Fortis</span>: <span style="color: #ff0000;">F</span> to <span style="color: #339966;">A-</span>
<ul>
    <li>No longer vulnerable to POODLE,</li>
    <li>Disabled SSL3 (insecure),</li>
    <li>Disabled RC4 (insecure),</li>
    <li>Still using a weak signature (SHA1),</li>
    <li>No Forward Secrecy.</li>
</ul>
</li>
    <li><span style="color: #339966;">bpost bank</span>: <span style="color: #ff0000;">F</span> to <span style="color: #339966;">A-</span>
<ul>
    <li>No longer vulnerable to POODLE,</li>
    <li>Disabled SSL3 (insecure),</li>
    <li>Disabled RC4 (insecure),</li>
    <li>Still using a weak signature (SHA1),</li>
    <li>No Forward Secrecy.</li>
</ul>
</li>
</ul>
<p>Huge thumbs up for these last three banks! Well done, especially BNP &amp; bpost! :)</p>
<p>Keep on shaming the others.</p>
<hr />
<p>The entire <strong>list updated</strong>:</p>
<p><span style="color: #008000;">Grade A</span></p>
<ul>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.rabobank.be&amp;s=172.230.225.200" target="_blank" rel="noopener noreferrer">Rabobank</a> (<span style="color: #339966;">A+</span>): <span style="color: #339966;">no known issues</span>. Support for HTTP Strict Transport Security and prevented downgrade attacks.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.triodos.be" target="_blank" rel="noopener noreferrer">Triodos</a> (<span style="color: #339966;">A+</span>): <span style="color: #339966;">no known issues</span>. Support for HTTP Strict Transport Security and prevented downgrade attacks.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.belfius.be&amp;s=212.63.233.37" target="_blank" rel="noopener noreferrer">Belfius</a> (<span style="color: #339966;">A-</span>): weak signature (SHA1), no Forward Secrecy.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.bnpparibasfortis.be&amp;s=193.58.4.82" target="_blank" rel="noopener noreferrer">BNP Paribas Fortis</a>: (<span style="color: #339966;">A-</span>) weak signature (SHA1), no Forward Secrecy.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.bpostbank.be" target="_blank" rel="noopener noreferrer">bpost bank</a>: (<span style="color: #339966;">A-</span>) weak signature (SHA1), no Forward Secrecy.</li>
</ul>
<p><span style="color: #ff6600;">Grade B</span></p>
<ul>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.axa.be" target="_blank" rel="noopener noreferrer">AXA</a>: weak signature (SHA1), SSL3 (insecure), RC4 (insecure), no Forward Secrecy.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=beobank.be" target="_blank" rel="noopener noreferrer">beobank</a>: weak signature (SHA1), no TLS 1.2, RC4 (insecure), no Forward Secrecy.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=cph.be" target="_blank" rel="noopener noreferrer">CPH</a>: no TLS 1.2, RC4 (insecure), no Forward Secrecy.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.kbc.be">KBC</a>: weak signature (SHA1), no TLS 1.2, no Forward Secrecy.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.keytradebank.be&amp;s=93.191.218.12" target="_blank" rel="noopener noreferrer">Keytrade Bank</a>: weak signature (SHA1), RC4 (insecure).</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=crelan.be&amp;latest" target="_blank" rel="noopener noreferrer">Crelan</a>: <span style="color: #33cccc;">no SSL on main page.</span>
<ul>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=crelan-online.be" target="_blank" rel="noopener noreferrer">internet banking</a>: weak signature (SHA1), SSL3 (insecure), no TLS 1.2, RC4, no Forward Secrecy.</li>
</ul>
</li>
</ul>
<p><span style="color: #ff0000;">Grade C</span></p>
<ul>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.hellobank.be" target="_blank" rel="noopener noreferrer">Hello bank!</a>: vulnerable to POODLE attack, weak signature (SHA1), RC4 (insecure).</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=bankvanbreda.be&amp;latest" target="_blank" rel="noopener noreferrer">Bank Van Breda</a>: <span style="color: #33cccc;">no SSL on main page.</span>
<ul>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=secure.vanbredaonline.be" target="_blank" rel="noopener noreferrer">internet banking</a>: vulnerable to POODLE attack, weak signature (SHA1), no TLS 1.2, no Forward Secrecy.</li>
</ul>
</li>
</ul>
<p><span style="color: #ff0000;">Grade D</span></p>
<ul>
    <li>n/a</li>
</ul>
<p><span style="color: #ff0000;">Grade E</span></p>
<ul>
    <li>n/a</li>
</ul>
<p><span style="color: #ff0000;">Grade F</span></p>
<ul>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.ing.be&amp;s=193.58.129.66&amp;hideResults=on" target="_blank" rel="noopener noreferrer">ING</a>: vulnerable to POODLE attack, SSL3 (insecure), weak signature (SHA1), RC4 (insecure), no Forward Secrecy.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=argenta.be" target="_blank" rel="noopener noreferrer">Argenta</a>: <span style="color: #33cccc;">no SSL on main page.</span>
<ul>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=internetbanking.argenta.be" target="_blank" rel="noopener noreferrer">internet banking</a>: vulnerable to POODLE attack, SSL3 (insecure), weak signature (SHA1), RC4 (insecure), no Forward Secrecy.</li>
</ul>
</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=recordbank.be&amp;latest" target="_blank" rel="noopener noreferrer">Record Bank</a>: <span style="color: #33cccc;">no SSL on main page.</span>
<ul>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=homebank.recordbank.be" target="_blank" rel="noopener noreferrer">internet banking</a>: vulnerable to POODLE attack, RC4 (insecure), no Forward Secrecy.</li>
</ul>
</li>
</ul>
<p>Information about SSL Labs grading can be found <a href="https://web.archive.org/web/20170119124000/https://www.ssllabs.com/downloads/SSL_Server_Rating_Guide.pdf" target="_blank" rel="noopener noreferrer">here</a>. Grade A (+) being the best possible ranking, and F the worst.</p>
]]></content:encoded>
      <category>Linux</category><category>Misc</category><category>Networking</category><category>Software</category><category>Windows</category><category>www</category>
      <category>belgium</category><category>ssl</category>
    </item>
    
    <item>
      <title>Outdoor WiFi (Pegasus Park)</title>
      <link>https://yeri.be/outdoor-wifi-pegasus-park/</link>
      <pubDate>Sat, 24 Jan 2015 00:11:45 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/outdoor-wifi-pegasus-park/</guid>
      <description>&lt;p&gt;Point to Point transmitters (&lt;a href=&#34;http://www.ubnt.com/airmax/nanostationm/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Loco M2&lt;/a&gt;)&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://static.yeri.be/2015/01/IMG_20150116_114629.jpg&#34;&gt;&lt;img class=&#34;alignnone size-large wp-image-6621&#34; src=&#34;https://static.yeri.be/2015/01/IMG_20150116_114629-1024x758.jpg&#34; alt=&#34;Point to Point WiFi&#34; width=&#34;780&#34; height=&#34;577&#34; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Point to Point receiver (Loco M2)&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://static.yeri.be/2015/01/2015-01-15.jpg&#34;&gt;&lt;img class=&#34;alignnone size-large wp-image-6623&#34; src=&#34;https://static.yeri.be/2015/01/2015-01-15-758x1024.jpg&#34; alt=&#34;Point to Point receiver&#34; width=&#34;758&#34; height=&#34;1024&#34; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Boxes with power, PoE and switches&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://static.yeri.be/2015/01/2015-01-16.jpg&#34;&gt;&lt;img class=&#34;alignnone size-large wp-image-6624&#34; src=&#34;https://static.yeri.be/2015/01/2015-01-16-1024x758.jpg&#34; alt=&#34;Tidy boxes&#34; width=&#34;780&#34; height=&#34;577&#34; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Outdoor Access Point (&lt;a href=&#34;http://www.ubnt.com/unifi/unifi-ap-outdoor/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;UAP Outdoor+&lt;/a&gt;)&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://static.yeri.be/2015/01/2015-01-19.jpg&#34;&gt;&lt;img class=&#34;alignnone size-large wp-image-6625&#34; src=&#34;https://static.yeri.be/2015/01/2015-01-19-758x1024.jpg&#34; alt=&#34;Outdoor access point&#34; width=&#34;758&#34; height=&#34;1024&#34; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://static.yeri.be/2015/01/IMG_20150128_085038.jpg&#34;&gt;&lt;img class=&#34;alignnone size-large wp-image-6809&#34; src=&#34;https://static.yeri.be/2015/01/IMG_20150128_085038-758x1024.jpg&#34; alt=&#34;IMG_20150128_085038&#34; width=&#34;758&#34; height=&#34;1024&#34; /&gt;&lt;/a&gt;&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>Point to Point transmitters (<a href="http://www.ubnt.com/airmax/nanostationm/" target="_blank" rel="noopener noreferrer">Loco M2</a>)</p>
<p><a href="https://static.yeri.be/2015/01/IMG_20150116_114629.jpg"><img class="alignnone size-large wp-image-6621" src="https://static.yeri.be/2015/01/IMG_20150116_114629-1024x758.jpg" alt="Point to Point WiFi" width="780" height="577" /></a></p>
<p>Point to Point receiver (Loco M2)</p>
<p><a href="https://static.yeri.be/2015/01/2015-01-15.jpg"><img class="alignnone size-large wp-image-6623" src="https://static.yeri.be/2015/01/2015-01-15-758x1024.jpg" alt="Point to Point receiver" width="758" height="1024" /></a></p>
<p>Boxes with power, PoE and switches</p>
<p><a href="https://static.yeri.be/2015/01/2015-01-16.jpg"><img class="alignnone size-large wp-image-6624" src="https://static.yeri.be/2015/01/2015-01-16-1024x758.jpg" alt="Tidy boxes" width="780" height="577" /></a></p>
<p>Outdoor Access Point (<a href="http://www.ubnt.com/unifi/unifi-ap-outdoor/" target="_blank" rel="noopener noreferrer">UAP Outdoor+</a>)</p>
<p><a href="https://static.yeri.be/2015/01/2015-01-19.jpg"><img class="alignnone size-large wp-image-6625" src="https://static.yeri.be/2015/01/2015-01-19-758x1024.jpg" alt="Outdoor access point" width="758" height="1024" /></a></p>
<p><a href="https://static.yeri.be/2015/01/IMG_20150128_085038.jpg"><img class="alignnone size-large wp-image-6809" src="https://static.yeri.be/2015/01/IMG_20150128_085038-758x1024.jpg" alt="IMG_20150128_085038" width="758" height="1024" /></a></p>
]]></content:encoded>
      <category>Hardware</category><category>Networking</category>
      <category>flatturtle</category><category>ubiquiti</category><category>wifi</category>
    </item>
    
    <item>
      <title>WiFi</title>
      <link>https://yeri.be/wifi/</link>
      <pubDate>Fri, 23 Jan 2015 03:45:01 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/wifi/</guid>
      <description>&lt;p&gt;An update from &lt;a href=&#34;https://yeri.be/wifi-ssids&#34;&gt;last time&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p style=&#34;text-align: center;&#34;&gt; &lt;a href=&#34;https://static.yeri.be/2015/01/2014-2015_wifi_stats.png&#34;&gt;&lt;img class=&#34;alignnone size-large wp-image-6631&#34; src=&#34;https://static.yeri.be/2015/01/2014-2015_wifi_stats-1024x326.png&#34; alt=&#34;2014-2015_wifi_stats&#34; width=&#34;780&#34; height=&#34;248&#34; /&gt;&lt;/a&gt;&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>An update from <a href="https://yeri.be/wifi-ssids">last time</a>.</p>
<p style="text-align: center;"> <a href="https://static.yeri.be/2015/01/2014-2015_wifi_stats.png"><img class="alignnone size-large wp-image-6631" src="https://static.yeri.be/2015/01/2014-2015_wifi_stats-1024x326.png" alt="2014-2015_wifi_stats" width="780" height="248" /></a></p>
]]></content:encoded>
      <category>Hardware</category><category>Networking</category><category>www</category>
      <category>flatturtle</category><category>wifi</category>
    </item>
    
    <item>
      <title>Updated @Flightradar24 Ansible cookbook</title>
      <link>https://yeri.be/updated-flightradar24-ansible-cookbook/</link>
      <pubDate>Wed, 21 Jan 2015 17:04:04 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/updated-flightradar24-ansible-cookbook/</guid>
      <description>&lt;p&gt;I had to wait a little while for the ARMv7 version for my EfikaMX devices, but they finally had time to compile it. Yay!&lt;/p&gt;&#xA;&lt;p&gt;The updated &lt;a href=&#34;https://yeri.be/flightradar24-ansible-playbook&#34;&gt;cookbooks&lt;/a&gt; are &lt;a href=&#34;https://github.com/Tuinslak/ansible-flightradar24&#34; target=&#34;_blank&#34;&gt;on Github&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Changes (&lt;a href=&#34;https://github.com/Tuinslak/ansible-flightradar24/commits/master&#34; target=&#34;_blank&#34;&gt;commits&lt;/a&gt;):&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&#x9;&lt;li&gt;Better key management&lt;/li&gt;&#xA;&#x9;&lt;li&gt;fr24feed.ini&lt;/li&gt;&#xA;&#x9;&lt;li&gt;No more separate dump1090 launch&lt;/li&gt;&#xA;&#x9;&lt;li&gt;newest fr24 version&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;Download links for &lt;a href=&#34;http://feed.flightradar24.com/linux/&#34; target=&#34;_blank&#34;&gt;Linux&lt;/a&gt; &amp;amp; &lt;a href=&#34;http://feed.flightradar24.com/raspberry-pi/&#34; target=&#34;_blank&#34;&gt;RPi&lt;/a&gt;.</description>
      <content:encoded><![CDATA[<p>I had to wait a little while for the ARMv7 version for my EfikaMX devices, but they finally had time to compile it. Yay!</p>
<p>The updated <a href="https://yeri.be/flightradar24-ansible-playbook">cookbooks</a> are <a href="https://github.com/Tuinslak/ansible-flightradar24" target="_blank">on Github</a>.</p>
<p>Changes (<a href="https://github.com/Tuinslak/ansible-flightradar24/commits/master" target="_blank">commits</a>):</p>
<ul>
	<li>Better key management</li>
	<li>fr24feed.ini</li>
	<li>No more separate dump1090 launch</li>
	<li>newest fr24 version</li>
</ul>
Download links for <a href="http://feed.flightradar24.com/linux/" target="_blank">Linux</a> &amp; <a href="http://feed.flightradar24.com/raspberry-pi/" target="_blank">RPi</a>.
]]></content:encoded>
      <category>Linux</category><category>Networking</category><category>Software</category><category>Virtualisation</category>
      <category>ansible</category><category>dvb-t</category><category>flightradar24</category>
    </item>
    
    <item>
      <title>Belgian banks &amp; SSL</title>
      <link>https://yeri.be/belgian-banks-ssl/</link>
      <pubDate>Tue, 20 Jan 2015 11:40:50 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/belgian-banks-ssl/</guid>
      <description>&lt;p&gt;Tested using &lt;a href=&#34;https://www.ssllabs.com&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;SSL Labs&lt;/a&gt; on 20/01/2015. Updated version 01/02/2015 &lt;a href=&#34;https://yeri.be/belgian-banks-ssl-part-2&#34;&gt;here&lt;/a&gt; and 15/02/2015 &lt;a href=&#34;https://yeri.be/belgian-banks-ssl-part-3&#34;&gt;here&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Only providing the weak points. Once there is one SHA1 key in the chain, I will report everything as weak.&lt;/p&gt;&#xA;&lt;p&gt;Check SSL Labs for a full report, including what they actually did good (if anything).&lt;/p&gt;&#xA;&lt;p&gt;&lt;span style=&#34;color: #008000;&#34;&gt;Grade A&lt;/span&gt;&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://www.ssllabs.com/ssltest/analyze.html?d=www.rabobank.be&amp;amp;s=172.230.225.200&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Rabobank&lt;/a&gt; (&lt;span style=&#34;color: #339966;&#34;&gt;A+&lt;/span&gt;): &lt;span style=&#34;color: #339966;&#34;&gt;no known issues&lt;/span&gt;. Support for &lt;a href=&#34;https://en.wikipedia.org/wiki/HTTP_Strict_Transport_Security&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;HTTP Strict Transport Security&lt;/a&gt; and prevented &lt;a href=&#34;https://crypto.stackexchange.com/questions/10493/why-is-tls-susceptible-to-protocol-downgrade-attacks&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;downgrade attacks&lt;/a&gt;.&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://www.ssllabs.com/ssltest/analyze.html?d=www.triodos.be&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Triodos&lt;/a&gt; (&lt;span style=&#34;color: #339966;&#34;&gt;A&lt;/span&gt;): no downgrade attack prevention.&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://www.ssllabs.com/ssltest/analyze.html?d=www.belfius.be&amp;amp;s=212.63.233.37&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Belfius&lt;/a&gt; (&lt;span style=&#34;color: #339966;&#34;&gt;A-&lt;/span&gt;): weak signature (&lt;a href=&#34;https://community.qualys.com/blogs/securitylabs/2014/09/09/sha1-deprecation-what-you-need-to-know&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;SHA1&lt;/a&gt;), no &lt;a href=&#34;https://en.wikipedia.org/wiki/Forward_secrecy&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Forward Secrecy&lt;/a&gt;.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;&lt;span style=&#34;color: #ff6600;&#34;&gt;Grade B&lt;/span&gt;&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>Tested using <a href="https://www.ssllabs.com" target="_blank" rel="noopener noreferrer">SSL Labs</a> on 20/01/2015. Updated version 01/02/2015 <a href="https://yeri.be/belgian-banks-ssl-part-2">here</a> and 15/02/2015 <a href="https://yeri.be/belgian-banks-ssl-part-3">here</a>.</p>
<p>Only providing the weak points. Once there is one SHA1 key in the chain, I will report everything as weak.</p>
<p>Check SSL Labs for a full report, including what they actually did good (if anything).</p>
<p><span style="color: #008000;">Grade A</span></p>
<ul>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.rabobank.be&amp;s=172.230.225.200" target="_blank" rel="noopener noreferrer">Rabobank</a> (<span style="color: #339966;">A+</span>): <span style="color: #339966;">no known issues</span>. Support for <a href="https://en.wikipedia.org/wiki/HTTP_Strict_Transport_Security" target="_blank" rel="noopener noreferrer">HTTP Strict Transport Security</a> and prevented <a href="https://crypto.stackexchange.com/questions/10493/why-is-tls-susceptible-to-protocol-downgrade-attacks" target="_blank" rel="noopener noreferrer">downgrade attacks</a>.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.triodos.be" target="_blank" rel="noopener noreferrer">Triodos</a> (<span style="color: #339966;">A</span>): no downgrade attack prevention.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.belfius.be&amp;s=212.63.233.37" target="_blank" rel="noopener noreferrer">Belfius</a> (<span style="color: #339966;">A-</span>): weak signature (<a href="https://community.qualys.com/blogs/securitylabs/2014/09/09/sha1-deprecation-what-you-need-to-know" target="_blank" rel="noopener noreferrer">SHA1</a>), no <a href="https://en.wikipedia.org/wiki/Forward_secrecy" target="_blank" rel="noopener noreferrer">Forward Secrecy</a>.</li>
</ul>
<p><span style="color: #ff6600;">Grade B</span></p>
<ul>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.axa.be" target="_blank" rel="noopener noreferrer">AXA</a>: weak signature (SHA1), <a href="https://community.qualys.com/blogs/securitylabs/2014/10/15/ssl-3-is-dead-killed-by-the-poodle-attack" target="_blank" rel="noopener noreferrer">SSL3</a> (insecure), <a href="https://community.qualys.com/blogs/securitylabs/2013/03/19/rc4-in-tls-is-broken-now-what" target="_blank" rel="noopener noreferrer">RC4</a> (insecure), no Forward Secrecy.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=beobank.be" target="_blank" rel="noopener noreferrer">beobank</a>: weak signature (SHA1), no TLS 1.2, RC4 (insecure), no Forward Secrecy.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.kbc.be">KBC</a>: weak signature (SHA1), no TLS 1.2, no Forward Secrecy.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.keytradebank.be&amp;s=93.191.218.12" target="_blank" rel="noopener noreferrer">Keytrade Bank</a>: weak signature (SHA1), RC4 (insecure).</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=crelan.be&amp;latest" target="_blank" rel="noopener noreferrer">Crelan</a>: <span style="color: #33cccc;">no SSL on main page.</span>
<ul>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=crelan-online.be" target="_blank" rel="noopener noreferrer">internet banking</a>: weak signature (SHA1), SSL3 (insecure), no TLS 1.2, RC4, no Forward Secrecy.</li>
</ul>
</li>
</ul>
<p><span style="color: #ff0000;">Grade C</span></p>
<ul>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.hellobank.be" target="_blank" rel="noopener noreferrer">Hello bank!</a>: vulnerable to <a href="https://community.qualys.com/blogs/securitylabs/2014/10/15/ssl-3-is-dead-killed-by-the-poodle-attack" target="_blank" rel="noopener noreferrer">POODLE</a> attack, weak signature (SHA1), RC4 (insecure).</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=bankvanbreda.be&amp;latest" target="_blank" rel="noopener noreferrer">Bank Van Breda</a>: <span style="color: #33cccc;">no SSL on main page.</span>
<ul>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=secure.vanbredaonline.be" target="_blank" rel="noopener noreferrer">internet banking</a>: vulnerable to POODLE attack, weak signature (SHA1), no TLS 1.2, no Forward Secrecy.</li>
</ul>
</li>
</ul>
<p><span style="color: #ff0000;">Grade D</span></p>
<ul>
    <li>n/a</li>
</ul>
<p><span style="color: #ff0000;">Grade E</span></p>
<ul>
    <li>n/a</li>
</ul>
<p><span style="color: #ff0000;">Grade F</span></p>
<ul>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.bnpparibasfortis.be&amp;s=193.58.4.82" target="_blank" rel="noopener noreferrer">BNP Paribas Fortis</a>: vulnerable to POODLE attack, SSL3 (insecure), weak signature (SHA1), RC4 (insecure), no Forward Secrecy.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.bpostbank.be" target="_blank" rel="noopener noreferrer">bpost bank</a>: vulnerable to POODLE attack, SSL3 (insecure), weak signature (SHA1), RC4 (insecure), no Forward Secrecy.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=www.ing.be&amp;s=193.58.129.66&amp;hideResults=on" target="_blank" rel="noopener noreferrer">ING</a>: vulnerable to POODLE attack, SSL3 (insecure), weak signature (SHA1), RC4 (insecure), no Forward Secrecy.</li>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=argenta.be" target="_blank" rel="noopener noreferrer">Argenta</a>: <span style="color: #33cccc;">no SSL on main page.</span>
<ul>
    <li><a href="https://www.ssllabs.com/ssltest/analyze.html?d=internetbanking.argenta.be" target="_blank" rel="noopener noreferrer">internet banking</a>: vulnerable to POODLE attack, SSL3 (insecure), weak signature (SHA1), RC4 (insecure), no Forward Secrecy.</li>
</ul>
</li>
</ul>
<p>Information about SSL Labs grading can be found <a href="https://web.archive.org/web/20170119124000/https://www.ssllabs.com/downloads/SSL_Server_Rating_Guide.pdf" target="_blank" rel="noopener noreferrer">here</a>. Grade A (+) being the best possible ranking, and F the worst.</p>
<p><span style="text-decoration: underline;">PS</span>: none of the domains support IPv6 (while expected, it would have been nice &ndash; Belgium has the <a href="https://www.google.com/intl/en/ipv6/statistics.html#tab=per-country-ipv6-adoption" target="_blank" rel="noopener noreferrer">highest IPv6 adoption rate</a> for end users, but almost no IPv6 websites or businesses).</p>
]]></content:encoded>
      <category>Linux</category><category>Misc</category><category>Networking</category><category>Software</category><category>Windows</category><category>www</category>
      <category>belgium</category><category>ssl</category>
    </item>
    
    <item>
      <title>Theme</title>
      <link>https://yeri.be/theme/</link>
      <pubDate>Sat, 27 Dec 2014 06:47:34 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/theme/</guid>
      <description>&lt;p&gt;I had the &lt;a href=&#34;https://yeri.be/theme-blog-and-stuff&#34;&gt;same theme&lt;/a&gt; for over four years. I&amp;rsquo;ve made quite a few custom css and PHP edits myself, and it had been &lt;a href=&#34;http://azeemazeez.com/blogs/white-as-milk/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;outdated for ages&lt;/a&gt;&amp;hellip; But it served me well.&lt;/p&gt;&#xA;&lt;p style=&#34;text-align: center;&#34;&gt;&lt;a href=&#34;https://static.yeri.be/2014/12/theme-2011.png&#34;&gt;&lt;img class=&#34;alignnone size-full wp-image-6554&#34; src=&#34;https://static.yeri.be/2014/12/theme-2011.png&#34; alt=&#34;theme-2011&#34; width=&#34;1817&#34; height=&#34;1192&#34; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;However, it&amp;rsquo;s now time for &lt;a href=&#34;https://wordpress.org/themes/opal&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;something new&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p style=&#34;text-align: center;&#34;&gt;&lt;a href=&#34;https://static.yeri.be/2014/12/theme-2015.png&#34;&gt;&lt;img class=&#34;alignnone size-full wp-image-6542&#34; src=&#34;https://static.yeri.be/2014/12/theme-2015.png&#34; alt=&#34;theme-2015&#34; width=&#34;1411&#34; height=&#34;1174&#34; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;As always, as minimalistic as possible.&lt;/p&gt;&#xA;&lt;p&gt;On a side note, this blog has been moved from &lt;a href=&#34;https://yeri.be/blog-changes&#34;&gt;vm1&lt;/a&gt; (and &lt;a href=&#34;https://yeri.be/one-2&#34;&gt;one&lt;/a&gt; before that) a virtual machine running on a dual Xeon 3070 (2.66Ghz) at &lt;a href=&#34;https://yeri.be/four&#34;&gt;Databarn&lt;/a&gt; to &lt;a href=&#34;http://www.wowwiki.com/Akama&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Akama&lt;/a&gt;, a VM on an 8 core Xeon E3-1230 (3.2Ghz) at &lt;a href=&#34;https://www.facebook.com/photo.php?fbid=10203828300326081&amp;amp;set=pb.1177197811.-2207520000.1419638163.&amp;amp;type=3&amp;amp;theater&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Leaseweb&lt;/a&gt;.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>I had the <a href="https://yeri.be/theme-blog-and-stuff">same theme</a> for over four years. I&rsquo;ve made quite a few custom css and PHP edits myself, and it had been <a href="http://azeemazeez.com/blogs/white-as-milk/" target="_blank" rel="noopener noreferrer">outdated for ages</a>&hellip; But it served me well.</p>
<p style="text-align: center;"><a href="https://static.yeri.be/2014/12/theme-2011.png"><img class="alignnone size-full wp-image-6554" src="https://static.yeri.be/2014/12/theme-2011.png" alt="theme-2011" width="1817" height="1192" /></a></p>
<p>However, it&rsquo;s now time for <a href="https://wordpress.org/themes/opal" target="_blank" rel="noopener noreferrer">something new</a>.</p>
<p style="text-align: center;"><a href="https://static.yeri.be/2014/12/theme-2015.png"><img class="alignnone size-full wp-image-6542" src="https://static.yeri.be/2014/12/theme-2015.png" alt="theme-2015" width="1411" height="1174" /></a></p>
<p>As always, as minimalistic as possible.</p>
<p>On a side note, this blog has been moved from <a href="https://yeri.be/blog-changes">vm1</a> (and <a href="https://yeri.be/one-2">one</a> before that) a virtual machine running on a dual Xeon 3070 (2.66Ghz) at <a href="https://yeri.be/four">Databarn</a> to <a href="http://www.wowwiki.com/Akama" target="_blank" rel="noopener noreferrer">Akama</a>, a VM on an 8 core Xeon E3-1230 (3.2Ghz) at <a href="https://www.facebook.com/photo.php?fbid=10203828300326081&amp;set=pb.1177197811.-2207520000.1419638163.&amp;type=3&amp;theater" target="_blank" rel="noopener noreferrer">Leaseweb</a>.</p>
<p>I&rsquo;ve also correctly repaired IPv6 on this blog. Apparently nginx never and/or stopped correctly listening to IPv6 (suddenly my Android devices displayed errors on this page, Chrome &amp; Firefox on OS X seemed to fall back to IPv4 instantly&hellip; Not sure how long it was broken, but it&rsquo;s back).</p>
<p>Note to self:</p>
<pre>listen          yeri.be:443;
server_name     yeri.be;</pre>
<p>Does not work with IPv6, it has to be</p>
<pre>listen          [::]:443;
server_name     yeri.be;</pre>
]]></content:encoded>
      <category>Hardware</category><category>Linux</category><category>Networking</category><category>Software</category><category>Virtualisation</category><category>www</category>
      <category>Tuinslak</category><category>blog</category><category>nginx</category><category>rootspirit</category>
    </item>
    
    <item>
      <title>@Flightradar24 Ansible playbook</title>
      <link>https://yeri.be/flightradar24-ansible-playbook/</link>
      <pubDate>Wed, 03 Dec 2014 10:53:25 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/flightradar24-ansible-playbook/</guid>
      <description>&lt;p&gt;Here&amp;rsquo;s my very &lt;a href=&#34;https://github.com/Tuinslak/anisble-flightradar24&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;simple Ansible playbook&lt;/a&gt; for &lt;a href=&#34;https://yeri.be/raspberry-pi-flightradar24&#34;&gt;Flightradar24&lt;/a&gt; nodes.&lt;/p&gt;&#xA;&lt;p&gt;While I run it on &lt;a href=&#34;https://web.archive.org/web/20221211143434/https://genesi.company/products/efika&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;EfikaMX&lt;/a&gt;, it should work on most Debian based devices. Just be sure to modify the FR24 software &lt;a href=&#34;https://github.com/Tuinslak/anisble-flightradar24/blob/master/site.yml&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;download URL&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;This Ansible playbook is untested on its own. It comes out of a way bigger (private) Ansible playbook, and I kind of just copy pasted this part, as others might benefit from it.&lt;/p&gt;&#xA;&lt;p&gt;After running Ansible, you should reboot for driver blacklisting to work in cases it&amp;rsquo;s needed on your device (it is on RPis). And be sure to edit &lt;code&gt;/root/flightradar24.sh&lt;/code&gt; with your key.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>Here&rsquo;s my very <a href="https://github.com/Tuinslak/anisble-flightradar24" target="_blank" rel="noopener">simple Ansible playbook</a> for <a href="https://yeri.be/raspberry-pi-flightradar24">Flightradar24</a> nodes.</p>
<p>While I run it on <a href="https://web.archive.org/web/20221211143434/https://genesi.company/products/efika" target="_blank" rel="noopener">EfikaMX</a>, it should work on most Debian based devices. Just be sure to modify the FR24 software <a href="https://github.com/Tuinslak/anisble-flightradar24/blob/master/site.yml" target="_blank" rel="noopener">download URL</a>.</p>
<p>This Ansible playbook is untested on its own. It comes out of a way bigger (private) Ansible playbook, and I kind of just copy pasted this part, as others might benefit from it.</p>
<p>After running Ansible, you should reboot for driver blacklisting to work in cases it&rsquo;s needed on your device (it is on RPis). And be sure to edit <code>/root/flightradar24.sh</code> with your key.</p>
]]></content:encoded>
      <category>Linux</category><category>Networking</category><category>Software</category><category>Virtualisation</category>
      <category>ansible</category><category>flightradar24</category>
    </item>
    
    <item>
      <title>WiFi SSIDs</title>
      <link>https://yeri.be/wifi-ssids/</link>
      <pubDate>Sat, 23 Aug 2014 10:40:46 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/wifi-ssids/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://googleonlinesecurity.blogspot.be/2014/08/https-as-ranking-signal_6.html&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;HTTPS affects Google Page Rank&lt;/a&gt;. Best idea ever. Now read &lt;a href=&#34;http://httpshaming.tumblr.com/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;this&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;This is the effect, of giving a &lt;a href=&#34;https://web.archive.org/web/20220706202838/https://auki.io/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;WiFi hotspot&lt;/a&gt; (near a window at traffic lights) two additional SSID; by coincidence the same used by the two biggest local ISPs. You can clearly see when I made the change.&lt;/p&gt;&#xA;&lt;p style=&#34;text-align: center;&#34;&gt;&lt;a href=&#34;https://static.yeri.be/2014/08/honeypot-wifi.png&#34;&gt;&lt;img class=&#34;alignnone wp-image-6333&#34; src=&#34;https://static.yeri.be/2014/08/honeypot-wifi-1024x392.png&#34; alt=&#34;honeypot wifi&#34; width=&#34;600&#34; height=&#34;230&#34; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p style=&#34;text-align: left;&#34;&gt;Edit (07/09/2014):&lt;/p&gt;&#xA;&lt;p style=&#34;text-align: center;&#34;&gt;&lt;a href=&#34;https://static.yeri.be/2014/08/wifi-7-sept-2014.png&#34;&gt;&lt;img class=&#34;alignnone wp-image-6345&#34; src=&#34;https://static.yeri.be/2014/08/wifi-7-sept-2014-1024x550.png&#34; alt=&#34;wifi 7 sept 2014&#34; width=&#34;601&#34; height=&#34;323&#34; /&gt;&lt;/a&gt;&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p><a href="http://googleonlinesecurity.blogspot.be/2014/08/https-as-ranking-signal_6.html" target="_blank" rel="noopener noreferrer">HTTPS affects Google Page Rank</a>. Best idea ever. Now read <a href="http://httpshaming.tumblr.com/" target="_blank" rel="noopener noreferrer">this</a>.</p>
<p>This is the effect, of giving a <a href="https://web.archive.org/web/20220706202838/https://auki.io/" target="_blank" rel="noopener noreferrer">WiFi hotspot</a> (near a window at traffic lights) two additional SSID; by coincidence the same used by the two biggest local ISPs. You can clearly see when I made the change.</p>
<p style="text-align: center;"><a href="https://static.yeri.be/2014/08/honeypot-wifi.png"><img class="alignnone wp-image-6333" src="https://static.yeri.be/2014/08/honeypot-wifi-1024x392.png" alt="honeypot wifi" width="600" height="230" /></a></p>
<p style="text-align: left;">Edit (07/09/2014):</p>
<p style="text-align: center;"><a href="https://static.yeri.be/2014/08/wifi-7-sept-2014.png"><img class="alignnone wp-image-6345" src="https://static.yeri.be/2014/08/wifi-7-sept-2014-1024x550.png" alt="wifi 7 sept 2014" width="601" height="323" /></a></p>
]]></content:encoded>
      <category>Hardware</category><category>Networking</category><category>www</category>
      <category>flatturtle</category><category>wifi</category>
    </item>
    
    <item>
      <title>Raspberry Pi &amp; @Flightradar24</title>
      <link>https://yeri.be/raspberry-pi-flightradar24/</link>
      <pubDate>Sun, 20 Jul 2014 14:28:26 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/raspberry-pi-flightradar24/</guid>
      <description>&lt;p&gt;In a couple of lines: how to get FR24 (+ dump1090) to work on your Raspberry Pi.&lt;/p&gt;&#xA;&lt;p&gt;Be sure to have the right hardware: &lt;a href=&#34;http://www.flightradar24.com/dvbt-stick&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;flightradar24.com/dvbt-stick&lt;/a&gt; and &amp;hellip; obviously &amp;hellip; a &lt;a href=&#34;http://benl.rs-online.com/web/p/processor-microcontroller-development-kits/8111284/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;RPi&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;I got a &lt;a href=&#34;http://www.amazon.co.uk/gp/product/B00JQX5HT6/ref=oh_details_o00_s00_i00?ie=UTF8&amp;amp;psc=1&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;NooElec from Amazon&lt;/a&gt; because I didn&amp;rsquo;t have the patience to wait for something (that might not work) from &lt;a href=&#34;http://www.aliexpress.com/wholesale?SearchText=RTL2832U%2FR820T&amp;amp;catId=0&amp;amp;initiative_id=SB_20140719070441&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;AliExpress&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;As root:&lt;/p&gt;&#xA;&lt;p&gt;&lt;code&gt;apt-get update &amp;amp;&amp;amp; apt-get install cmake gcc pkg-config libusb-1.0 make git-core libc-dev&#xA;git clone git://git.osmocom.org/rtl-sdr.git&#xA;cd rtl-sdr&#xA;mkdir build&#xA;cd build&#xA;cmake ../ -DINSTALL_UDEV_RULES=ON&#xA;make &amp;amp;&amp;amp; make install&#xA;ldconfig&#xA;cd ../..&lt;/code&gt;&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>In a couple of lines: how to get FR24 (+ dump1090) to work on your Raspberry Pi.</p>
<p>Be sure to have the right hardware: <a href="http://www.flightradar24.com/dvbt-stick" target="_blank" rel="noopener noreferrer">flightradar24.com/dvbt-stick</a> and &hellip; obviously &hellip; a <a href="http://benl.rs-online.com/web/p/processor-microcontroller-development-kits/8111284/" target="_blank" rel="noopener noreferrer">RPi</a>.</p>
<p>I got a <a href="http://www.amazon.co.uk/gp/product/B00JQX5HT6/ref=oh_details_o00_s00_i00?ie=UTF8&amp;psc=1" target="_blank" rel="noopener noreferrer">NooElec from Amazon</a> because I didn&rsquo;t have the patience to wait for something (that might not work) from <a href="http://www.aliexpress.com/wholesale?SearchText=RTL2832U%2FR820T&amp;catId=0&amp;initiative_id=SB_20140719070441" target="_blank" rel="noopener noreferrer">AliExpress</a>.</p>
<p>As root:</p>
<p><code>apt-get update &amp;&amp; apt-get install cmake gcc pkg-config libusb-1.0 make git-core libc-dev
git clone git://git.osmocom.org/rtl-sdr.git
cd rtl-sdr
mkdir build
cd build
cmake ../ -DINSTALL_UDEV_RULES=ON
make &amp;&amp; make install
ldconfig
cd ../..</code></p>
<p>And be sure to Blacklist the normal driver:</p>
<p><code>echo &ldquo;blacklist dvb_usb_rtl28xxu&rdquo; &gt; /etc/modprobe.d/dvb-t.conf</code></p>
<p>And at this point you should <code>reboot</code>.</p>
<p>As regular user (<code>screen</code> part is no longer needed as the new FR24 program will automatically launch and execute it for you):</p>
<p><code>git clone <a href="https://github.com/MalcolmRobb/dump1090.git" target="_blank" rel="noopener noreferrer">https://github.com/MalcolmRobb/dump1090.git</a>
cd dump1090
make
ln -s dump1090 /bin/
<strike>screen -dmS dump ./dump1090 &ndash;interactive &ndash;net &ndash;net-beast &ndash;net-ro-port 31001 &ndash;net-http-port 8888</strike>
cd ..</code></p>
<p>Now get the FR24 software. In case you get a 404, <span style="text-decoration: line-through;">get the latest version <a href="http://forum.flightradar24.com/threads/4270-Linux-feeder-software-for-Flightradar24" target="_blank" rel="noopener noreferrer">here</a></span> new Raspberry Pi version is <a href="http://feed.flightradar24.com/raspberry-pi/" target="_blank" rel="noopener noreferrer">here</a>, Linux (AMD64 &amp; ARMv7) is <a href="http://feed.flightradar24.com/linux/" target="_blank" rel="noopener noreferrer">here</a>.
You can get your long &amp; lat <a href="https://web.archive.org/web/20211117100953/https://www.latlong.net/" target="_blank" rel="noopener noreferrer">here</a>.
Follow the updated howto on the page. The underlying code is no longer relevant.</p>
<p><code>wget <a href="https://web.archive.org/web/20141002002531/https://dl.dropboxusercontent.com/u/66906/fr24feed_arm-rpi_242.tgz" target="_blank" rel="noopener noreferrer">https://web.archive.org/web/20141002002531/https://dl.dropboxusercontent.com/u/66906/fr24feed_arm-rpi_242.tgz</a>
tar xvzf fr24feed*
./fr24feed_arm-rpi_242 &ndash;signup</code></p>
<p>I&rsquo;ll ask a couple of questions (answer them correctly):</p>
<p><code>Step 1/5 - Enter Latitude (DD.DDDD)
$:50.927358
Step 2/5 - Enter Longitude (DD.DDDD)
$:4.399928
Step 3/5 - Enter your email address (<a href="mailto:username@domain.tld">username@domain.tld</a>)
$:yeri@tiete.be
Step 4/5 - Enter your the hostname of the data feed (leave empty for localhost)
$:
Step 5/5 - Enter your the port number of the data feed (leave empty for 30003)
$:</p>
<p>Validating form data&hellip;OK</p>
<p>The closest airport found is &lsquo;Brussels Airport (ICAO:EBBR IATA:BRU)&rsquo; near Brussels.</p>
<p>Latitude: 50.901379
Longitude: 4.484444
Country: Belgium</p>
<p>Flightradar24 may, if needed, use your email address to contact you regarding your data feed.</p>
<p>Would you like to continue using these settings?</p>
<p>(yes/no)$:yes</p>
<p>[&hellip;].</code></p>
<p>It will give you a key (and e-mail it to you) after a couple of minutes. Keep this key, as it&rsquo;s important.</p>
<p>That&rsquo;s it. As dump1090 is already running, all you have to do is start flightradar and you&rsquo;re good to go.</p>
<p>This is the script I use to start it all (in screen, allowing me to check it). As normal user:</p>
<p><code>nano -w flightradar.sh</code></p>
<p>And copy paste the following (+ edit the variables):</p>
<p><code>#!/bin/bash
KEY=YOUR-KEY-EDIT-THIS
DIR=/home/PATH-TO-YOU-SCRIPT</p>
<h3>pro script</h3>
<p>cd $DIR</p>
<h1>Start dump1090</h1>
<p>cd dump1090</p>
<h1>I run on port 8888 because 8080 is taken on my rasp</h1>
<h3>THIS IS NO LONGER NEEDED</h3>
<p>#screen -dmS dump ./dump1090 &ndash;interactive &ndash;net &ndash;net-beast &ndash;net-ro-port 31001 &ndash;net-http-port 8888
cd ..</p>
<h1>Start Flightradar24</h1>
<p>screen -dmS flightradar24 ./fr24feed_arm-rpi_242 &ndash;fr24key=$KEY</code></p>
<p>And run: <code>chmod +x flightradar.sh</code></p>
<p>To start the script, simply run <code>./flightradar.sh</code>, and check what&rsquo;s happening with <code>screen -r dump</code> or <code>screen -r flightradar</code>.</p>
<p>To auto start this script at boot time, I edit rc.local as root:</p>
<p><code>nano -w /etc/rc.local</code></p>
<p>And add the following at the end but <strong>BEFORE</strong> exit 0:</p>
<p><code>su yeri -c /home/yeri/flightradar.sh</code></p>
<p>Obviously, modify the path and the user it should run under (in this case as &ldquo;yeri&rdquo;).</p>
<p>PS: Be sure to signup again every time you move your Raspberry around (the coords seem to be hardcoded in the key).
PPS: You can get Premium access here now: <a href="https://www.flightradar24.com/premium/" target="_blank" rel="noopener noreferrer">flightradar24.com/premium</a> (and check fancy graphs about your &ldquo;radar&rdquo;).</p>
]]></content:encoded>
      <category>Hardware</category><category>Linux</category><category>Networking</category><category>Software</category>
      <category>dvb-t</category><category>flightradar24</category><category>raspberrypi</category>
    </item>
    
    <item>
      <title>Gmail (&amp; Google Apps) &amp; IPv6</title>
      <link>https://yeri.be/gmail-google-apps-ipv6/</link>
      <pubDate>Wed, 18 Jun 2014 13:02:56 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/gmail-google-apps-ipv6/</guid>
      <description>&lt;p&gt;It seems that &lt;a href=&#34;https://support.google.com/mail/answer/81126?p=ipv6_authentication_error&amp;amp;rd=1#authentication&#34; target=&#34;_blank&#34;&gt;Google&amp;rsquo;s anti spam measurement&lt;/a&gt; for IPv6 is basically checking if the IP has a reverse DNS. If not, reject the e-mail:&lt;/p&gt;&#xA;&lt;pre&gt;This is the mail system at host rootspirit.com.&#xA;&#xA;I&#39;m sorry to have to inform you that your message could not&#xA;be delivered to one or more recipients. It&#39;s attached below.&#xA;&#xA;For further assistance, please send mail to postmaster.&#xA;&#xA;If you do so, please include this problem report. You can&#xA;delete your own text from the attached returned message.&#xA;&#xA;The mail system&#xA;&#xA;&amp;lt;xxx@gmail.com&amp;gt;: host&#xA;gmail-smtp-in.l.google.com[2a00:1450:4013:c01::1b] said: 550-5.7.1&#xA;[2001:1af8:3100:a00a:21::1010 12] Our system has detected that&#xA;550-5.7.1 &lt;strong&gt;this message is likely unsolicited mail&lt;/strong&gt;. To reduce the amount&#xA;of spam 550-5.7.1 sent to Gmail, this message has been blocked.&#xA;Please visit 550-5.7.1 http://support.google.com/mail/bin/answer.py?hl=en&amp;amp;answer=188131 for 550 5.7.1 more information. df5si15766518wjb.42 - gsmtp (in reply to end of DATA command)&lt;/pre&gt;&#xA;&lt;p&gt;There is no difference if the mail is a one word e-mail or a wall of text that crits over 9000.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>It seems that <a href="https://support.google.com/mail/answer/81126?p=ipv6_authentication_error&amp;rd=1#authentication" target="_blank">Google&rsquo;s anti spam measurement</a> for IPv6 is basically checking if the IP has a reverse DNS. If not, reject the e-mail:</p>
<pre>This is the mail system at host rootspirit.com.

I'm sorry to have to inform you that your message could not
be delivered to one or more recipients. It's attached below.

For further assistance, please send mail to postmaster.

If you do so, please include this problem report. You can
delete your own text from the attached returned message.

The mail system

&lt;xxx@gmail.com&gt;: host
gmail-smtp-in.l.google.com[2a00:1450:4013:c01::1b] said: 550-5.7.1
[2001:1af8:3100:a00a:21::1010 12] Our system has detected that
550-5.7.1 <strong>this message is likely unsolicited mail</strong>. To reduce the amount
of spam 550-5.7.1 sent to Gmail, this message has been blocked.
Please visit 550-5.7.1 http://support.google.com/mail/bin/answer.py?hl=en&amp;answer=188131 for 550 5.7.1 more information. df5si15766518wjb.42 - gsmtp (in reply to end of DATA command)</pre>
<p>There is no difference if the mail is a one word e-mail or a wall of text that crits over 9000.</p>
<p>The easiest way to bypass this silly check is to set up a rDNS (reverse DNS or PTR) for all your IPv6 addresses on the mail server. If you do not have this set, Google will flag all your mails over IPv6 as spam.</p>
<p>If you run <code>dig -x &lt;IPv6 address&gt;</code> you can find out if it&rsquo;s set (answer section, after &ldquo;IN PTR&rdquo;):</p>
<pre># dig -x 2001:1af8:3100:a00a:21::1010

; < <>> DiG 9.8.4-rpz2+rl005.12-P1 < <>> -x 2001:1af8:3100:a00a:21::1010
;; global options: +cmd
;; Got answer:
;; ->>HEADER< <- opcode: QUERY, status: NOERROR, id: 30041
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 13, ADDITIONAL: 0

;; QUESTION SECTION:
;0.1.0.1.0.0.0.0.0.0.0.0.1.2.0.0.a.0.0.a.0.0.1.3.8.f.a.1.1.0.0.2.ip6.arpa. IN PTR

;; ANSWER SECTION:
0.1.0.1.0.0.0.0.0.0.0.0.1.2.0.0.a.0.0.a.0.0.1.3.8.f.a.1.1.0.0.2.ip6.arpa. 21599	IN PTR mail.rootspirit.com.</pre>
<p><a href="http://tanguy.ortolo.eu/blog/article109/google-ipv6-smtp-restrictions" target="_blank">Here</a> is a work around if you cannot set rDNS. This still allows Google to send mail to you, using IPv6. The downside is that you&rsquo;ll have to do this for ALL Google Apps domains you send e-mail to. Good luck.</pre></p>
]]></content:encoded>
      <category>Google</category><category>Linux</category><category>Networking</category>
      <category>gmail</category><category>ipv6</category>
    </item>
    
    <item>
      <title>Yard Sale: P2P Wireless (TP-Link WA7510N)</title>
      <link>https://yeri.be/yard-sale-p2p-wireless-tp-link-wa7510n/</link>
      <pubDate>Tue, 22 Apr 2014 16:55:55 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/yard-sale-p2p-wireless-tp-link-wa7510n/</guid>
      <description>&lt;p style=&#34;text-align: center;&#34;&gt;&lt;a href=&#34;https://static.yeri.be/2014/04/IMG_20140417_180252.jpg&#34;&gt;&lt;img class=&#34;alignnone size-medium wp-image-6128&#34; src=&#34;https://static.yeri.be/2014/04/IMG_20140417_180252-225x300.jpg&#34; alt=&#34;IMG_20140417_180252&#34; width=&#34;225&#34; height=&#34;300&#34; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;For &lt;a href=&#34;https://yeri.be/tag/yard-sale&#34;&gt;sale&lt;/a&gt;: two &lt;a href=&#34;http://www.tp-link.com/lk/products/details/?model=TL-WA7510N&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;TP-Link WA7510N&lt;/a&gt; (5Ghz). These devices are about a year old, and served for about 10 months to provide internet from my apartment to a neighbouring building in Antwerp.&lt;/p&gt;&#xA;&lt;p&gt;Because our office moved (&lt;a href=&#34;https://web.archive.org/web/20190223112909/https://www.rentalvalue.eu/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;all space got rent&lt;/a&gt;), internet is no longer required. Right now, I do not have a use-case for these devices (although, it was pretty cool, and I wish I could keep using them somehow).&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p style="text-align: center;"><a href="https://static.yeri.be/2014/04/IMG_20140417_180252.jpg"><img class="alignnone size-medium wp-image-6128" src="https://static.yeri.be/2014/04/IMG_20140417_180252-225x300.jpg" alt="IMG_20140417_180252" width="225" height="300" /></a></p>
<p>For <a href="https://yeri.be/tag/yard-sale">sale</a>: two <a href="http://www.tp-link.com/lk/products/details/?model=TL-WA7510N" target="_blank" rel="noopener noreferrer">TP-Link WA7510N</a> (5Ghz). These devices are about a year old, and served for about 10 months to provide internet from my apartment to a neighbouring building in Antwerp.</p>
<p>Because our office moved (<a href="https://web.archive.org/web/20190223112909/https://www.rentalvalue.eu/" target="_blank" rel="noopener noreferrer">all space got rent</a>), internet is no longer required. Right now, I do not have a use-case for these devices (although, it was pretty cool, and I wish I could keep using them somehow).</p>
<p>For the past 10 months, except for <a href="https://twitter.com/Tuinslak/status/428129219496144896" target="_blank" rel="noopener noreferrer">some water</a> in the UTP cable, this has been working perfectly, with a good and stable ping.</p>
<p>While I used them for Point-to-Point WiFi, they can be used in a wide variety of modes, including regular AP, etc. Just remember, they run at 5Ghz.</p>
<p style="text-align: center;"><a href="https://static.yeri.be/2014/04/IMG_20140417_174816_2.jpg"><img class="alignnone size-medium wp-image-6129" src="https://static.yeri.be/2014/04/IMG_20140417_174816_2-222x300.jpg" alt="IMG_20140417_174816_2" width="222" height="300" /></a> <a href="https://static.yeri.be/2014/04/IMG_20140417_174824_2.jpg"><img class="alignnone size-medium wp-image-6130" src="https://static.yeri.be/2014/04/IMG_20140417_174824_2-222x300.jpg" alt="IMG_20140417_174824_2" width="222" height="300" /></a> <a href="https://static.yeri.be/2014/04/IMG_20140417_174837_2.jpg"><img class="alignnone size-medium wp-image-6131" src="https://static.yeri.be/2014/04/IMG_20140417_174837_2-222x300.jpg" alt="IMG_20140417_174837_2" width="222" height="300" /></a></p>
<p>Invoice is possible.</p>
<p>Price: discussable</p>
<p>Contact: <a href="mailto:yeri&#43;wifi@tiete.be">yeri+wifi@tiete.be</a></p>
]]></content:encoded>
      <category>Hardware</category><category>Networking</category>
      <category>wifi</category><category>yard sale</category>
    </item>
    
    <item>
      <title>Yard Sale: GSM signal jammer</title>
      <link>https://yeri.be/yard-sale-gsm-signal-jammer/</link>
      <pubDate>Fri, 18 Apr 2014 17:36:17 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/yard-sale-gsm-signal-jammer/</guid>
      <description>&lt;p style=&#34;text-align: center;&#34;&gt;&lt;a href=&#34;https://static.yeri.be/2014/04/IMG_20140413_173249.jpg&#34;&gt;&lt;img class=&#34;alignnone  wp-image-6089 aligncenter&#34; alt=&#34;IMG_20140413_173249&#34; src=&#34;https://static.yeri.be/2014/04/IMG_20140413_173249-757x1024.jpg&#34; width=&#34;454&#34; height=&#34;614&#34; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;Giving away this Chinese GSM signal jammer. Bought it in &lt;a href=&#34;https://yeri.be/off-to-shenzhen&#34;&gt;Shenzhen&lt;/a&gt; (summer 2013). While it&#39;s working, the range of this is only about 50cm (and not the advertised 5-10m).&#xA;This jammer probably doesn&#39;t give you any more cancer than staying next to a cell tower. Fun thing to play with, but I do not have any use case for it.&#xA;The jammer has a rechargeable battery. It becomes quite warm, so signal can probably not be boosted any more without burning the components.&#xA;&lt;p&gt;Last I checked this is kind of illegal in Belgium, but who cares.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p style="text-align: center;"><a href="https://static.yeri.be/2014/04/IMG_20140413_173249.jpg"><img class="alignnone  wp-image-6089 aligncenter" alt="IMG_20140413_173249" src="https://static.yeri.be/2014/04/IMG_20140413_173249-757x1024.jpg" width="454" height="614" /></a></p>
Giving away this Chinese GSM signal jammer. Bought it in <a href="https://yeri.be/off-to-shenzhen">Shenzhen</a> (summer 2013). While it's working, the range of this is only about 50cm (and not the advertised 5-10m).
This jammer probably doesn't give you any more cancer than staying next to a cell tower. Fun thing to play with, but I do not have any use case for it.
The jammer has a rechargeable battery. It becomes quite warm, so signal can probably not be boosted any more without burning the components.
<p>Last I checked this is kind of illegal in Belgium, but who cares.</p>
<p>Price: free (pick up Antwerp or Grimbergen)</p>
<p>Contact: <a href="mailto:yeri&#43;gsm@tiete.be">yeri+gsm@tiete.be</a></p>
<p style="text-align: center;"><a href="https://static.yeri.be/2014/04/IMG_20140413_173127.jpg"><img class="alignnone size-medium wp-image-6088" alt="IMG_20140413_173127" src="https://static.yeri.be/2014/04/IMG_20140413_173127-300x222.jpg" width="300" height="222" /></a></p>
<p style="text-align: center;"><a href="https://static.yeri.be/2014/04/IMG_20140413_173310.jpg"><img class="alignnone size-medium wp-image-6090" alt="IMG_20140413_173310" src="https://static.yeri.be/2014/04/IMG_20140413_173310-300x222.jpg" width="300" height="222" /></a></p>
]]></content:encoded>
      <category>Hardware</category><category>Networking</category>
      <category>yard sale</category>
    </item>
    
    <item>
      <title>Yard Sale: WiFi adapters</title>
      <link>https://yeri.be/yard-sale-wifi-adapters/</link>
      <pubDate>Wed, 16 Apr 2014 17:31:25 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/yard-sale-wifi-adapters/</guid>
      <description>&lt;p&gt;Another day, another &lt;a href=&#34;https://yeri.be/tag/yard-sale&#34;&gt;Yard Sale&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;I&amp;rsquo;m selling about &lt;span style=&#34;text-decoration: underline;&#34;&gt;&lt;em&gt;100&lt;/em&gt;&lt;/span&gt;&lt;em&gt; &lt;/em&gt;&lt;a href=&#34;https://web.archive.org/web/20140803083703/http://www.dlink.com/us/en/home-solutions/connect/adapters/dwa-160-xtreme-n-dual-band-usb-adapter&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;DWA-160&lt;/a&gt; D-Link USB WiFi adapters (Atheros).&lt;/p&gt;&#xA;&lt;p&gt;These are compatible with Raspberry Pi and do not require an external power source. And are obviously compatible with Linux (&lt;code&gt;firmware-linux-free&lt;/code&gt;).&lt;/p&gt;&#xA;&lt;p&gt;Some of these adapters are new, others are used. Two different generation mixed (see the WPS button in the picture).&lt;/p&gt;&#xA;&lt;p&gt;These adapters can be used in Master (Acces Point) mode using &lt;a href=&#34;http://hostap.epitest.fi/hostapd/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;hostapd&lt;/a&gt;, but certain Macbook Pro&amp;rsquo;s (Broadcom driver afaik) make the driver/firmware crash; last time I checked (1.5 year ago) this bug was known but not solved (yet).&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>Another day, another <a href="https://yeri.be/tag/yard-sale">Yard Sale</a>.</p>
<p>I&rsquo;m selling about <span style="text-decoration: underline;"><em>100</em></span><em> </em><a href="https://web.archive.org/web/20140803083703/http://www.dlink.com/us/en/home-solutions/connect/adapters/dwa-160-xtreme-n-dual-band-usb-adapter" target="_blank" rel="noopener noreferrer">DWA-160</a> D-Link USB WiFi adapters (Atheros).</p>
<p>These are compatible with Raspberry Pi and do not require an external power source. And are obviously compatible with Linux (<code>firmware-linux-free</code>).</p>
<p>Some of these adapters are new, others are used. Two different generation mixed (see the WPS button in the picture).</p>
<p>These adapters can be used in Master (Acces Point) mode using <a href="http://hostap.epitest.fi/hostapd/" target="_blank" rel="noopener noreferrer">hostapd</a>, but certain Macbook Pro&rsquo;s (Broadcom driver afaik) make the driver/firmware crash; last time I checked (1.5 year ago) this bug was known but not solved (yet).</p>
<p>Price: €5/piece (discount possible on bulk).</p>
<p>Contact: <a href="mailto:yeri&#43;wifi@tiete.be">yeri+wifi@tiete.be</a></p>
<p>Located in Antwerp, can ship.</p>
<p>Invoice is possible if required.</p>
<p>Dmesg: v1 (no button):</p>
<pre>[  646.386291] usb 1-1: <strong>Product: USB2.0 WLAN</strong>
[  646.386423] usb 1-1: Manufacturer: ATHER
[  646.386553] usb 1-1: SerialNumber: 12345
[  646.502214] usb 1-1: reset high-speed USB device number 3 using ehci_hcd
[  646.678337] usb 1-1: firmware: agent loaded carl9170-1.fw into memory
[  646.678659] usb 1-1: driver   API: 1.9.4 2011-08-15 [1-1]
[  646.678836] usb 1-1: firmware API: 1.9.6 2012-07-07
[  646.679032] usb 1-1: driver does not support all firmware features.</pre>
<p>v2 (button):</p>
<pre>[    4.400971] usb 1-1.3: <strong>Product: 11n adapter</strong>
[    4.411771] usb 1-1.3: Manufacturer: ATHER
[    4.416202] usb 1-1.3: SerialNumber: 12345
[    5.303410] usb 1-1.3: reset high-speed USB device number 4 using dwc_otg
[    5.487969] usbcore: registered new interface driver carl9170
[    5.504670] usb 1-1.3: driver   API: 1.9.7 2012-12-15 [1-1]
[    5.510264] usb 1-1.3: firmware API: 1.9.6 2012-07-07</pre>
<p style="text-align: center;"><a href="https://static.yeri.be/2014/04/IMG_20140413_152911.jpg"><img class="alignnone size-medium wp-image-6079" src="https://static.yeri.be/2014/04/IMG_20140413_152911-300x222.jpg" alt="IMG_20140413_152911" width="300" height="222" /></a></p>
<p style="text-align: center;"><a href="https://static.yeri.be/2014/04/IMG_20140413_152918.jpg"><img class="alignnone size-medium wp-image-6080" src="https://static.yeri.be/2014/04/IMG_20140413_152918-300x222.jpg" alt="IMG_20140413_152918" width="300" height="222" /></a></p>
<p style="text-align: center;"><a href="https://static.yeri.be/2014/04/IMG_20140418_225720.jpg"><img class="alignnone size-medium wp-image-6159" src="https://static.yeri.be/2014/04/IMG_20140418_225720-300x222.jpg" alt="IMG_20140418_225720" width="300" height="222" /></a></p>
]]></content:encoded>
      <category>Hardware</category><category>Linux</category><category>Networking</category>
      <category>yard sale</category>
    </item>
    
    <item>
      <title>Best DNS tool ever.</title>
      <link>https://yeri.be/best-dns-tool-ever/</link>
      <pubDate>Thu, 17 Oct 2013 19:46:23 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/best-dns-tool-ever/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;https://web.archive.org/web/20160417172300/http://samarudge.github.io/dnsyo/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Dnsyo&lt;/a&gt;.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p><a href="https://web.archive.org/web/20160417172300/http://samarudge.github.io/dnsyo/" target="_blank" rel="noopener noreferrer">Dnsyo</a>.</p>
]]></content:encoded>
      <category>Linux</category><category>Networking</category>
      <category>dns</category>
    </item>
    
    <item>
      <title>Powerdns no answer on A records and others</title>
      <link>https://yeri.be/powerdns-no-answer-on-a-records/</link>
      <pubDate>Fri, 04 Oct 2013 20:10:09 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/powerdns-no-answer-on-a-records/</guid>
      <description>&lt;p&gt;Observed:&lt;/p&gt;&#xA;&lt;pre&gt;mother ~ # dig mother.titify.com&#xA;&#xA;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.8.4-rpz2+rl005.12-P1 &amp;lt;&amp;lt;&amp;gt;&amp;gt; mother.titify.com&#xA;;; global options: +cmd&#xA;;; Got answer:&#xA;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 12227&#xA;;; flags: qr aa rd; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0&#xA;;; WARNING: recursion requested but not available&#xA;&#xA;;; QUESTION SECTION:&#xA;;mother.titify.com. IN A&#xA;&#xA;;; Query time: 1 msec&#xA;;; SERVER: 127.0.0.1#53(127.0.0.1)&#xA;;; WHEN: Sat Sep 28 18:08:19 2013&#xA;;; MSG SIZE rcvd: 35&lt;/pre&gt;&#xA;&lt;p&gt;As you can see, there is a QUESTION section, but no ANSWER. This is an example with a CNAME:&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>Observed:</p>
<pre>mother ~ # dig mother.titify.com

; &lt;&lt;&gt;&gt; DiG 9.8.4-rpz2+rl005.12-P1 &lt;&lt;&gt;&gt; mother.titify.com
;; global options: +cmd
;; Got answer:
;; -&gt;&gt;HEADER&lt;&lt;- opcode: QUERY, status: NOERROR, id: 12227
;; flags: qr aa rd; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0
;; WARNING: recursion requested but not available

;; QUESTION SECTION:
;mother.titify.com. IN A

;; Query time: 1 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Sat Sep 28 18:08:19 2013
;; MSG SIZE rcvd: 35</pre>
<p>As you can see, there is a QUESTION section, but no ANSWER. This is an example with a CNAME:</p>
<pre>airgul ~ $ dig netly.io

; &lt;&lt;&gt;&gt; DiG 9.8.5-P1 &lt;&lt;&gt;&gt; netly.io
;; global options: +cmd
;; Got answer:
;; -&gt;&gt;HEADER&lt;&lt;- opcode: QUERY, status: NOERROR, id: 2513
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;netly.io. IN A

;; ANSWER SECTION:
netly.io. 21600 IN CNAME mother.netly.io.
mother.netly.io. 21600 IN CNAME mother.titify.com.

;; Query time: 277 msec
;; SERVER: 10.60.111.1#53(10.60.111.1)
;; WHEN: Sat Sep 28 20:06:00 CEST 2013
;; MSG SIZE rcvd: 78</pre>
<p>Solution:</p>
<pre>mother # /etc/init.d/pdns stop
mother # /etc/init.d/pdns monitor</pre>
<p>Will probably give an error message such as:</p>
<pre>Sep 28 18:08:02 Should not get here (ns1.titify.com|1): 
please run pdnssec rectify-zone titify.com
Sep 28 18:08:02 Should not get here (ns2.titify.com|1): 
please run pdnssec rectify-zone titify.com
Sep 28 18:08:02 Should not get here (ns1.netly.io|1): 
please run pdnssec rectify-zone titify.com
Sep 28 18:08:02 Should not get here (ns2.netly.io|1): 
please run pdnssec rectify-zone titify.com
Sep 28 18:08:10 Should not get here (mother.titify.com|1): 
please run pdnssec rectify-zone titify.com
Sep 28 18:08:19 Should not get here (mother.titify.com|1): 
please run pdnssec rectify-zone titify.com</pre>
<p>Execute that command:</p>
<pre>pdnssec rectify-zone titify.com</pre>
<p>and it&rsquo;s magically fixed.</p>
]]></content:encoded>
      <category>Errors</category><category>Linux</category><category>Networking</category><category>Software</category>
      <category>dns</category>
    </item>
    
    <item>
      <title>Hint of the day: @digitalocean and not mounting sshfs at boot</title>
      <link>https://yeri.be/hint-of-the-day-digital-ocean-and-sshfs/</link>
      <pubDate>Fri, 27 Sep 2013 20:35:04 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/hint-of-the-day-digital-ocean-and-sshfs/</guid>
      <description>&lt;p&gt;In /etc/fstab, be sure to add the option:&lt;/p&gt;&#xA;&lt;pre&gt;_netdev&lt;/pre&gt;&#xA;&lt;p&gt;As it will attempt to start the network mounted sshfs before networking has been started.&lt;/p&gt;&#xA;&lt;p&gt;The entire line looks like this:&lt;/p&gt;&#xA;&lt;pre&gt;user@host:/some/dir /local/path fuse.sshfs defaults,idmap=user,_netdev  0 0&lt;/pre&gt;&#xA;&lt;p&gt;From the man pages:&lt;/p&gt;&#xA;&lt;p&gt;&lt;b&gt;_netdev&lt;/b&gt;&lt;/p&gt;&#xA;&lt;blockquote&gt;The filesystem resides on a device that requires network access (used to prevent the system from attempting to mount these filesystems until the network has been enabled on the system).&lt;/blockquote&gt;</description>
      <content:encoded><![CDATA[<p>In /etc/fstab, be sure to add the option:</p>
<pre>_netdev</pre>
<p>As it will attempt to start the network mounted sshfs before networking has been started.</p>
<p>The entire line looks like this:</p>
<pre>user@host:/some/dir /local/path fuse.sshfs defaults,idmap=user,_netdev  0 0</pre>
<p>From the man pages:</p>
<p><b>_netdev</b></p>
<blockquote>The filesystem resides on a device that requires network access (used to prevent the system from attempting to mount these filesystems until the network has been enabled on the system).</blockquote>
]]></content:encoded>
      <category>Linux</category><category>Networking</category><category>Software</category><category>Virtualisation</category>
      <category>ssh</category>
    </item>
    
    <item>
      <title>GCHQ hacks Belgacom</title>
      <link>https://yeri.be/gchq-hacks-belgacom/</link>
      <pubDate>Sat, 21 Sep 2013 11:28:33 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/gchq-hacks-belgacom/</guid>
      <description>&lt;p&gt;And thus, &lt;a href=&#34;http://www.theregister.co.uk/2013/09/20/gchq_belgacom_hack_link/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;we can assume&lt;/a&gt;, they had (have?) access to a lot of European instances and personnel, both residing here in Belgium and roaming using BGC&amp;rsquo;s network.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;http://deredactie.be/cm/vrtnieuws/1.516538?text=belgacom&amp;amp;action=submit&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;And not a single fuck was giving&lt;/a&gt;. &lt;a href=&#34;https://static.yeri.be/2013/09/nofuck-lesoir.png&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Not one&lt;/a&gt;. &lt;a href=&#34;https://www.google.com/search?{google:acceptedSuggestion}oq=gc&amp;amp;{google:instantFieldTrialGroupParameter}sourceid=chrome&amp;amp;ie=UTF-8&amp;amp;q=gchq+belgacom#q=gchq+belgacom+site:.be&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Please remain calm&lt;/a&gt; and keep on &lt;a href=&#34;https://www.youtube.com/watch?v=8AOfbnGkuGc&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;hypnotoad&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;blockquote&gt;&lt;em&gt;If GCHQ was indeed the agency concerned then this investigation is unlikely to go anywhere and the most that can be expected is some sort of diplomatic complaint from Belgium to the UK, its EU and Nato partner.&lt;/em&gt;&lt;/blockquote&gt;</description>
      <content:encoded><![CDATA[<p>And thus, <a href="http://www.theregister.co.uk/2013/09/20/gchq_belgacom_hack_link/" target="_blank" rel="noopener noreferrer">we can assume</a>, they had (have?) access to a lot of European instances and personnel, both residing here in Belgium and roaming using BGC&rsquo;s network.</p>
<p><a href="http://deredactie.be/cm/vrtnieuws/1.516538?text=belgacom&amp;action=submit" target="_blank" rel="noopener noreferrer">And not a single fuck was giving</a>. <a href="https://static.yeri.be/2013/09/nofuck-lesoir.png" target="_blank" rel="noopener noreferrer">Not one</a>. <a href="https://www.google.com/search?{google:acceptedSuggestion}oq=gc&amp;{google:instantFieldTrialGroupParameter}sourceid=chrome&amp;ie=UTF-8&amp;q=gchq+belgacom#q=gchq+belgacom+site:.be" target="_blank" rel="noopener noreferrer">Please remain calm</a> and keep on <a href="https://www.youtube.com/watch?v=8AOfbnGkuGc" target="_blank" rel="noopener noreferrer">hypnotoad</a>.</p>
<blockquote><em>If GCHQ was indeed the agency concerned then this investigation is unlikely to go anywhere and the most that can be expected is some sort of diplomatic complaint from Belgium to the UK, its EU and Nato partner.</em></blockquote>
]]></content:encoded>
      <category>Misc</category><category>Networking</category><category>Software</category>
      <category>belgacom</category><category>belgium</category><category>politics</category><category>uk</category><category>usa</category>
    </item>
    
    <item>
      <title>Raspberry Pi &#43; ad blocking &#43; nginx</title>
      <link>https://yeri.be/raspberry-pi-ad-blocking/</link>
      <pubDate>Thu, 19 Sep 2013 20:13:26 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/raspberry-pi-ad-blocking/</guid>
      <description>&lt;p&gt;There&amp;rsquo;s &lt;a href=&#34;http://learn.adafruit.com/raspberry-pi-as-an-ad-blocking-access-point/install-software&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;this howto&lt;/a&gt; that explains how to set up the RPi as ad blocker.&lt;/p&gt;&#xA;&lt;p&gt;I&amp;rsquo;ve two RPi&amp;rsquo;s acting a router and was already running dnsmasq. I decided to give it a try. Note that this howto can actually be used on any DNS serving Linux server.&lt;/p&gt;&#xA;&lt;p&gt;First of all, don&amp;rsquo;t go with the pixelserv as it crashes after a few minutes.&lt;/p&gt;&#xA;&lt;p&gt;Apache is an option that worked fine. A general hint: if you&amp;rsquo;re already running Apache or whatever on port 80, just add a 2nd static IP and make Apache listen to that.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>There&rsquo;s <a href="http://learn.adafruit.com/raspberry-pi-as-an-ad-blocking-access-point/install-software" target="_blank" rel="noopener noreferrer">this howto</a> that explains how to set up the RPi as ad blocker.</p>
<p>I&rsquo;ve two RPi&rsquo;s acting a router and was already running dnsmasq. I decided to give it a try. Note that this howto can actually be used on any DNS serving Linux server.</p>
<p>First of all, don&rsquo;t go with the pixelserv as it crashes after a few minutes.</p>
<p>Apache is an option that worked fine. A general hint: if you&rsquo;re already running Apache or whatever on port 80, just add a 2nd static IP and make Apache listen to that.</p>
<p>For example (/etc/network/interfaces) &ndash; be sure it&rsquo;s in the same subnet:</p>
<pre>auto eth0:0
iface eth0:0 inet static
 address 10.100.200.254
 netmask 255.255.255.0
 broadcast 10.100.200.255</pre>
<p>10.100.200.254 is the Apache IP that just serves a HTTP 200 (or 204).</p>
<p>Here&rsquo;s the relevant config part (note the HTTP 204 code, more info on that later):</p>
<pre>&lt;VirtualHost adblock:80&gt;
 ServerAdmin webmaster@domain.net
 DocumentRoot /var/www
 &lt;Directory /&gt;
 Options FollowSymLinks
 AllowOverride All
 &lt;/Directory&gt;
 &lt;Directory /var/www/&gt;
 Options Indexes FollowSymLinks MultiViews
 AllowOverride None
 Order allow,deny
 allow from all
 RewriteEngine on
 RedirectMatch 204 (.*)$
 ErrorDocument 204 " "
 &lt;/Directory&gt;

ErrorLog ${APACHE_LOG_DIR}/error.log
 LogLevel warn
 CustomLog ${APACHE_LOG_DIR}/access.log combined
&lt;/VirtualHost&gt;</pre>
<p>And edit /etc/hosts to add &ldquo;adblock&rdquo;:</p>
<pre>10.100.200.254 adblock.local adblock</pre>
<p>If I had used the IP instead of adblock I would have had this error:</p>
<pre># apache2ctl configtest
[Mon Sep 16 20:27:21 2013] [error] (EAI 2)Name or service not known: 
Failed to resolve server name for 10.100.200.254 (check DNS) 
-- or specify an explicit ServerName
Syntax OK</pre>
<p>With the HTTP 200 code, some browsers expect some content/file in return. So it&rsquo;s generally safer to use HTTP 204 &ldquo;<a href="https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#2xx_Success" target="_blank" rel="noopener noreferrer">No Content</a>&rdquo;; which basically means &ldquo;all good but I have nothing to serve you.&rdquo;</p>
<p>Now, I call myself an nginx fan. Running Apache on a RPi is a no go (at least for me). I could&rsquo;ve ran nginx on the RPi, but decided to run it on a remote server with an additional IP. At least for now. To preserve resources on the RPi.</p>
<p>Here&rsquo;s the relevant config to run it on nginx (and be sure this config is the first file nginx parses; or it might redirect all the domains to some other site):</p>
<pre>server {
 listen 80;
 server_name pixel.0x04.com 10.100.200.254 _;
 access_log /var/log/nginx/pixel.access.log;
 error_log /var/log/nginx/pixel.error.log;
 expires max;
 autoindex off; 
 rewrite ^(.*)$ /;
 location / {
  return 204 'pixel';
 }
}</pre>
<p>And if we test it, this is what we get:</p>
<pre>HTTP/1.1 204 No Content
Server: nginx/1.4.0
Date: Mon, 16 Sep 2013 18:36:52 GMT
Connection: close
Expires: Thu, 31 Dec 2037 23:55:55 GMT
Cache-Control: max-age=315360000</pre>
<p>And that&rsquo;s it.</p>
<p>&lt;3 nginx</p>
<p>The only downside is that this won&rsquo;t work with HTTPS. You can run your webbrowser with a self signed certificate, but this will throw errors&hellip;</p>
<p>The result:</p>
<p><a href="https://static.yeri.be/2013/09/adblock.png"><img class="alignnone size-medium wp-image-5298 aligncenter" alt="adblock" src="https://static.yeri.be/2013/09/adblock-300x171.png" width="300" height="171" /></a></p>
]]></content:encoded>
      <category>Linux</category><category>Networking</category><category>Software</category><category>www</category>
      <category>dns</category><category>nginx</category><category>raspberrypi</category>
    </item>
    
    <item>
      <title>Unable to complete backup. An error occurred while creating the backup folder.</title>
      <link>https://yeri.be/unable-to-complete-backup-an-error-occurred-while-creating-the-backup-folder/</link>
      <pubDate>Wed, 22 May 2013 16:30:18 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/unable-to-complete-backup-an-error-occurred-while-creating-the-backup-folder/</guid>
      <description>&lt;p&gt;5 or so days ago, this error suddenly popped up:&lt;/p&gt;&#xA;&lt;pre&gt;Unable to complete backup. An error occurred while creating the backup folder.&lt;/pre&gt;&#xA;&lt;p&gt;I have a Raspberry Pi, &lt;a href=&#34;https://yeri.be/home-made-timemachine&#34;&gt;acting as TimeMachine&lt;/a&gt; (using afp/Bonjour/Netatalk).&lt;/p&gt;&#xA;&lt;p&gt;There are &lt;a href=&#34;https://discussions.apple.com/thread/3524877?start=15&amp;amp;tstart=0&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;several things&lt;/a&gt; I tried to solve this, including messing in the sparebundle from Linux (chowning) and deleting my &lt;a href=&#34;http://pondini.org/TM/A4.html&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;TM .plist&lt;/a&gt;. This probably messed up my backup a bit.&lt;/p&gt;&#xA;&lt;p&gt;But what seemed to &amp;lsquo;solve&amp;rsquo; it for me was:&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>5 or so days ago, this error suddenly popped up:</p>
<pre>Unable to complete backup. An error occurred while creating the backup folder.</pre>
<p>I have a Raspberry Pi, <a href="https://yeri.be/home-made-timemachine">acting as TimeMachine</a> (using afp/Bonjour/Netatalk).</p>
<p>There are <a href="https://discussions.apple.com/thread/3524877?start=15&amp;tstart=0" target="_blank" rel="noopener noreferrer">several things</a> I tried to solve this, including messing in the sparebundle from Linux (chowning) and deleting my <a href="http://pondini.org/TM/A4.html" target="_blank" rel="noopener noreferrer">TM .plist</a>. This probably messed up my backup a bit.</p>
<p>But what seemed to &lsquo;solve&rsquo; it for me was:</p>
<ol>
    <li><span style="line-height: 13px;">Start a backup manually (it will fail after a minute or two with the above mentioned error)</span></li>
    <li>Open finder, and go to the now mounted disk</li>
    <li>In my case, there was a &lt;date&gt;.inProgress file
<a href="https://static.yeri.be/2013/05/Screen-Shot-2013-05-22-at-15.32.19.png">
<img class="alignnone size-full wp-image-5065 aligncenter" alt="Screen Shot 2013-05-22 at 15.32.19" src="https://static.yeri.be/2013/05/Screen-Shot-2013-05-22-at-15.32.19.png" width="794" height="460" /></a></li>
    <li>If TimeMachine mounted the share for you, you will have write access (see notes below)</li>
    <li>Delete the inProgress file</li>
    <li>Empty your trash</li>
    <li>It should be gone:
<p><em id="__mceDel" style="text-align: center;"><a href="https://static.yeri.be/2013/05/Screen-Shot-2013-05-22-at-15.43.13.png"><img class="alignnone size-full wp-image-5069 aligncenter" alt="Screen Shot 2013-05-22 at 15.43.13" src="https://static.yeri.be/2013/05/Screen-Shot-2013-05-22-at-15.43.13.png" width="230" height="383" /></p>
<p></a></em></li>
<li>Unmount everything</li>
<li>Try backing up again</li></p>
</ol>
<p>In my case it changed to this error, which happens to me every so often due to corrupt backups (loss of network (because the drive is on VPN, and when I connect to my VPN Mac starts backing up, eventhough I actually don&rsquo;t really need/want that, it just happens to find the LAN), sleeping at the wrong moment, and Apple just generally not supporting DIY-TimeMachine). So this does mean I have to start from scratch anyhow&hellip; :(</p>
<p><a href="https://static.yeri.be/2013/05/Screen-Shot-2013-05-22-at-15.58.35.png"><img class="alignnone size-full wp-image-5070 aligncenter" alt="Screen Shot 2013-05-22 at 15.58.35" src="https://static.yeri.be/2013/05/Screen-Shot-2013-05-22-at-15.58.35.png" width="423" height="257" /></a></p>
<p><em>Notes</em>: I&rsquo;ve tried to manually mount the afp or smb share first, and open  the .sparebundle myself via finder.</p>
<p>Like this:</p>
<p style="text-align: center;"><a href="https://static.yeri.be/2013/05/Screen-Shot-2013-05-22-at-15.45.04.png"><img class="alignnone size-full wp-image-5067 aligncenter" alt="Screen Shot 2013-05-22 at 15.45.04" src="https://static.yeri.be/2013/05/Screen-Shot-2013-05-22-at-15.45.04.png" width="424" height="134" /></a></p>
<p style="text-align: center;"><a href="https://static.yeri.be/2013/05/Screen-Shot-2013-05-22-at-15.45.04.png"></a><a href="https://static.yeri.be/2013/05/Screen-Shot-2013-05-22-at-15.43.21.png"><img class="alignnone size-full wp-image-5068" alt="Screen Shot 2013-05-22 at 15.43.21" src="https://static.yeri.be/2013/05/Screen-Shot-2013-05-22-at-15.43.21.png" width="222" height="164" /></a></p>
<p>However, both via Finder as via terminal (including sudo) gave permission errors (partly reading, mostly writing) such as:</p>
<p><a href="https://static.yeri.be/2013/05/Screen-Shot-2013-05-22-at-15.32.38.png"><img class="alignnone size-full wp-image-5066 aligncenter" alt="Screen Shot 2013-05-22 at 15.32.38" src="https://static.yeri.be/2013/05/Screen-Shot-2013-05-22-at-15.32.38.png" width="410" height="134" /></a></p>
]]></content:encoded>
      <category>Apple</category><category>Errors</category><category>Linux</category><category>Networking</category><category>Software</category>
      <category>backup</category>
    </item>
    
    <item>
      <title>London public transport sign rebooting</title>
      <link>https://yeri.be/london-public-transport-sign-rebooting/</link>
      <pubDate>Thu, 28 Mar 2013 09:29:29 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/london-public-transport-sign-rebooting/</guid>
      <description>&lt;p&gt;Seems to have a modem in it. After about 5 minutes it managed to get an IP, which was partly masked (number changed to &amp;ldquo;xxx&amp;rdquo;).&lt;/p&gt;&#xA;&lt;p&gt;Picture taking on 23 July 2012 at 02h55 (local time).&lt;/p&gt;&#xA;&lt;p style=&#34;text-align: center;&#34;&gt;&lt;a href=&#34;https://static.yeri.be/2013/03/IMG_20120723_015514.jpg&#34;&gt;&lt;img class=&#34;alignnone size-medium wp-image-5011&#34; alt=&#34;IMG_20120723_015514&#34; src=&#34;https://static.yeri.be/2013/03/IMG_20120723_015514-300x225.jpg&#34; width=&#34;300&#34; height=&#34;225&#34; /&gt;&lt;/a&gt;&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>Seems to have a modem in it. After about 5 minutes it managed to get an IP, which was partly masked (number changed to &ldquo;xxx&rdquo;).</p>
<p>Picture taking on 23 July 2012 at 02h55 (local time).</p>
<p style="text-align: center;"><a href="https://static.yeri.be/2013/03/IMG_20120723_015514.jpg"><img class="alignnone size-medium wp-image-5011" alt="IMG_20120723_015514" src="https://static.yeri.be/2013/03/IMG_20120723_015514-300x225.jpg" width="300" height="225" /></a></p>
]]></content:encoded>
      <category>Errors</category><category>Networking</category>
      <category>london</category>
    </item>
    
    <item>
      <title>Home made TimeMachine</title>
      <link>https://yeri.be/home-made-timemachine/</link>
      <pubDate>Sat, 23 Mar 2013 04:01:21 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/home-made-timemachine/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://www.bootc.net/archives/2010/11/07/apple-time-machine-and-netatalk/&#34; target=&#34;_blank&#34;&gt;This&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Used my Raspberry Pi, with an USB disk as TimeMachine. Another disk as NAS/storage. It&amp;rsquo;s just quite slow&amp;hellip; Not sure whether it&amp;rsquo;s my WiFi or RPi that can&amp;rsquo;t keep up.&lt;/p&gt;&#xA;&lt;p&gt;But for now, it&amp;rsquo;s working.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p><a href="http://www.bootc.net/archives/2010/11/07/apple-time-machine-and-netatalk/" target="_blank">This</a>.</p>
<p>Used my Raspberry Pi, with an USB disk as TimeMachine. Another disk as NAS/storage. It&rsquo;s just quite slow&hellip; Not sure whether it&rsquo;s my WiFi or RPi that can&rsquo;t keep up.</p>
<p>But for now, it&rsquo;s working.</p>
]]></content:encoded>
      <category>Apple</category><category>Hardware</category><category>Linux</category><category>Networking</category><category>Software</category>
      <category>backup</category><category>raspberrypi</category>
    </item>
    
    <item>
      <title>First 5 Minutes Troubleshooting A Server</title>
      <link>https://yeri.be/first-5-minutes-troubleshooting-a-server/</link>
      <pubDate>Thu, 14 Mar 2013 06:22:18 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/first-5-minutes-troubleshooting-a-server/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;https://web.archive.org/web/20140401081039/http://devo.ps/blog/2013/03/06/troubleshooting-5minutes-on-a-yet-unknown-box.html&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;This&lt;/a&gt;.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p><a href="https://web.archive.org/web/20140401081039/http://devo.ps/blog/2013/03/06/troubleshooting-5minutes-on-a-yet-unknown-box.html" target="_blank" rel="noopener noreferrer">This</a>.</p>
]]></content:encoded>
      <category>Errors</category><category>Linux</category><category>Networking</category><category>Software</category>
      <category>Ubuntu</category><category>debian</category>
    </item>
    
    <item>
      <title>OpenVPN: Can&#39;t assign requested address</title>
      <link>https://yeri.be/openvpn-cant-assign-requested-address/</link>
      <pubDate>Tue, 12 Feb 2013 13:17:22 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/openvpn-cant-assign-requested-address/</guid>
      <description>&lt;p&gt;For no clear reason, OpenVPN on Mac with Tunnelblick (any version, had this problem for a few years already) results in these kind of error messages (and refuses to connect):&lt;/p&gt;&#xA;&lt;pre&gt;2013-02-05 17:44:31 write UDPv4: Can&#39;t assign requested address (code=49)&#xA;2013-02-05 17:44:33 write UDPv4: Can&#39;t assign requested address (code=49)&lt;/pre&gt;&#xA;&lt;p&gt;This seems to appear more often when swapping WiFi/IP range (after my Mac goes into sleep). But also happens when connecting to the same WiFi. It doesn&amp;rsquo;t change anything whether I disconnect OpenVPN before putting the Mac to sleep.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>For no clear reason, OpenVPN on Mac with Tunnelblick (any version, had this problem for a few years already) results in these kind of error messages (and refuses to connect):</p>
<pre>2013-02-05 17:44:31 write UDPv4: Can't assign requested address (code=49)
2013-02-05 17:44:33 write UDPv4: Can't assign requested address (code=49)</pre>
<p>This seems to appear more often when swapping WiFi/IP range (after my Mac goes into sleep). But also happens when connecting to the same WiFi. It doesn&rsquo;t change anything whether I disconnect OpenVPN before putting the Mac to sleep.</p>
<p>The solution I&rsquo;ve found to solve this is:</p>
<ol>
	<li><span style="line-height: 13px;">Disconnect OpenVPN (via Tunnelblick)</span></li>
	<li>Turn off WiFi</li>
	<li>Run the script I've attached below (flush.sh)</li>
	<li>Fill in your admin/sudo password</li>
	<li>Hit ctrl+C if it doesn't exit instantly (happens in 99% of the cases)</li>
	<li>Run the script once or twice more to be sure, it will exit correctly this time</li>
	<li>Reconnect to the WiFi</li>
	<li>Reconnect OpenVPN (via Tunnelblick): this time it will work</li>
</ol>
The script (name it flush.sh, chmod +x, and run ./flush.sh via Terminal):
<p><span style="text-decoration: underline;">Edit</span>: updated script (29/01/2014)</p>
<pre>#!/bin/bash
# Change IFACE to match your WiFi interface 
# (en0 on Macbook Air and Retina, en1 on old Macbook Pros with ethernet) 
IFACE=en0
sudo ifconfig $IFACE down
sudo route flush
sudo ifconfig $IFACE up</pre>
<p>In case the script hangs (sometimes, route flush hangs): hit ctrl+C, and execute it again.</p>
]]></content:encoded>
      <category>Apple</category><category>Errors</category><category>Linux</category><category>Networking</category><category>Software</category>
      <category>bash</category><category>openvpn</category>
    </item>
    
    <item>
      <title>Connect different LANs over openVPN</title>
      <link>https://yeri.be/connect-different-lans-over-openvpn/</link>
      <pubDate>Tue, 29 Jan 2013 11:47:50 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/connect-different-lans-over-openvpn/</guid>
      <description>&lt;p&gt;I now own three &lt;a href=&#34;http://www.raspberrypi.org/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Raspberry Pi&amp;rsquo;s&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Using two of them (and my &lt;a href=&#34;https://yeri.be/?s=guruplug&amp;amp;x=0&amp;amp;y=0&#34;&gt;Guruplug&lt;/a&gt; as WiFi AP) I connected my new apartment with my old house (= parents) over VPN.&lt;/p&gt;&#xA;&lt;p&gt;This way I can access the printers/scanners and NAS at home.&lt;/p&gt;&#xA;&lt;p&gt;The 2 rPI&amp;rsquo;s are used as router (using a Macbook Air USB-to-Ethernet adapter as 2nd ethernet (eth1) port). Basic howto&amp;rsquo;s are easily found using Google to do this (a &lt;a href=&#34;https://web.archive.org/web/20131205200223/http://www.gentoo.org:80/doc/en/home-router-howto.xml&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;good starting point&lt;/a&gt;).&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>I now own three <a href="http://www.raspberrypi.org/" target="_blank" rel="noopener noreferrer">Raspberry Pi&rsquo;s</a>.</p>
<p>Using two of them (and my <a href="https://yeri.be/?s=guruplug&amp;x=0&amp;y=0">Guruplug</a> as WiFi AP) I connected my new apartment with my old house (= parents) over VPN.</p>
<p>This way I can access the printers/scanners and NAS at home.</p>
<p>The 2 rPI&rsquo;s are used as router (using a Macbook Air USB-to-Ethernet adapter as 2nd ethernet (eth1) port). Basic howto&rsquo;s are easily found using Google to do this (a <a href="https://web.archive.org/web/20131205200223/http://www.gentoo.org:80/doc/en/home-router-howto.xml" target="_blank" rel="noopener noreferrer">good starting point</a>).</p>
<p>I made my own installation of Raspbian (as the downloadable image contains too much crap), details <a href="http://www.raspbian.org/RaspbianInstaller" target="_blank" rel="noopener noreferrer">here</a> (actually not that easy to find when Googling for bootstrap raspbian etc).</p>
<p> </p>
<p>I&rsquo;ve connected three different LANs over an OpenVPN connection:</p>
<ul>
    <li>LAN1 (home): 192.168.1.0 (Gateway: 192.168.1.1, VPN ip: 10.9.8.254)</li>
    <li>LAN2 (apartment, ethernet): 10.60.111.0 (Gateway: 10.60.111.1, VPN ip: 10.9.8.250)</li>
    <li>LAN3 (apartment, wifi): 10.10.10.0 (Gateway: 10.10.10.1, VPN ip: 10.9.8.246)</li>
</ul>
<p>OpenVPN range: 10.9.8.0. The subnet is 255.255.255.0 in all cases.</p>
<p>LAN3 is connected via LAN2 to the internet. So the default gateway of router 10.10.10.1 is 10.60.111.1.</p>
<p>The gateway/routers are all Debian-based Linux systems. I&rsquo;m using <a href="http://www.edpnet.be/" target="_blank" rel="noopener noreferrer">EDPnet</a> as ISP, and thus need to use those Sagem/Belgacom approved routers (BBox-2 hardware). These Sagems are set in bridged mode, and don&rsquo;t do the PPP stuff. <a href="http://wiki.debian.org/PPPoE" target="_blank" rel="noopener noreferrer">PPPoeconfig</a> on Debian takes care of most of the stuff. As EDPnet provides ipv6, I can ping6 from those routers.</p>
<p>The idea is to connect/ping each and every LAN from any of the clients connected the LANs (without running OpenVPN on the clients; only run it on the gateways).</p>
<p>For example: my PC with ip 10.10.10.15 wants to connect to the NAS with ip 192.168.1.100.</p>
<p>This can easily be achieved by setting a client-config-dir in the openvpn.conf file (or whatever the name of your config):</p>
<pre>client-config-dir /etc/openvpn/tiete</pre>
<p>And don&rsquo;t forget to add route pushes:</p>
<pre>push "route 192.168.1.0 255.255.255.0"
push "route 10.60.111.0 255.255.255.0"
push "route 10.10.10.0 255.255.255.0"</pre>
<p>But here comes the annoying part. As I&rsquo;m pushing routes 10.60.111.0 via VPN, which is supposed to be my Guruplug&rsquo;s default gateway as well (ISP &gt; eth0:RaspberryPi:eth1 &gt; eth0:Guruplug, remember?) this was causing quite some routing fuck ups.</p>
<p>The easiest way to solve this was to turn off VPN on the Guruplug all together, and route 10.10.10.0 over the Raspberry Pi, by adding this line to /etc/network/interfaces:</p>
<pre>up route add -net 10.10.10.0 netmask 255.255.255.0 gw 10.60.111.2 dev eth1</pre>
<p>Then I&rsquo;ll change the client specific configs on the VPN. Create a file in whatever you picked as client-config-dir, and name it the actual VPN name (the name used when creating the key).</p>
<p>As I have three routers, I created three files (sheeva for my guruplug, Pi for my first rPI and Industry for my 2nd. Yep&hellip; Fancy names).</p>
<p>I also want to give a static IP address to the gateways, so I use the option:</p>
<pre>ifconfig-push 10.9.8.&lt;valid-ip&gt; 10.9.8.&lt;valid-ip - 1&gt;</pre>
<p>And I&rsquo;ll also add the iroute option to push routes.</p>
<p>This is what it looks like for the router on the 192.168.1.0 network (&ldquo;Pi&rdquo;):</p>
<pre>ifconfig-push 10.9.8.254 10.9.8.253
iroute 192.168.1.0 255.255.255.0</pre>
<p>For &ldquo;Sheeva&rdquo;, the WiFi AP on 10.10.10.0:</p>
<pre>ifconfig-push 10.9.8.246 10.9.8.245</pre>
<p>And for 10.60.111.0 plus 10.10.10.0 routed over 10.60.111.0 (&ldquo;Industry&rdquo;):</p>
<pre>ifconfig-push 10.9.8.250 10.9.8.249
iroute 10.60.111.0 255.255.255.0
iroute 10.10.10.0 255.255.255.0</pre>
<p>And don&rsquo;t forget to set up masquerading over tun0 (or tun+) with iptables.</p>
<p>Now&hellip; Oddly enough, this didn&rsquo;t require that much configuration, cursing and stress&hellip; And, well, it kind of just works.</p>
<p>From my Mac to my NAS:</p>
<pre>nazgul ~ $ traceroute 192.168.1.100
traceroute to 192.168.1.100 (192.168.1.100), 64 hops max, 52 byte packets
 1 sheeva (10.10.10.1) 1.936 ms 1.159 ms 0.800 ms
 2 10.60.111.1 (10.60.111.1) 1.456 ms 1.776 ms 1.539 ms
 3 10.9.8.254 (10.9.8.254) 55.745 ms 55.046 ms 54.734 ms
 4 192.168.1.100 (192.168.1.100) 62.302 ms 55.327 ms 54.795 ms</pre>
<p>From Pi (gateway 192.168.1.1) to nazgul, my Mac:</p>
<pre>pi ~ # traceroute 10.10.10.15
traceroute to 10.10.10.15 (10.10.10.15), 30 hops max, 60 byte packets
 1 10.9.8.250 (10.9.8.250) 65.892 ms 74.177 ms 73.957 ms
 2 10.60.111.2 (10.60.111.2) 73.441 ms 72.902 ms 72.342 ms
 3 10.10.10.15 (10.10.10.15) 71.780 ms 71.187 ms 70.760 ms</pre>
<p>From Heartbeat (10.9.8.102), my Munin stats server to the printer:</p>
<pre>heartbeat ~/bin # traceroute 192.168.1.90
traceroute to 192.168.1.90 (192.168.1.90), 30 hops max, 60 byte packets
 1 pi (10.9.8.254) 39.835 ms 40.794 ms 41.567 ms
 2 192.168.1.90 (192.168.1.90) 41.541 ms 42.452 ms 43.307 ms</pre>
<p>From Heartbeat to Sheeva&rsquo;s eth0 IP:</p>
<pre>heartbeat ~/bin # traceroute 10.60.111.2
traceroute to 10.60.111.2 (10.60.111.2), 30 hops max, 60 byte packets
 1 industry (10.9.8.250) 32.716 ms 32.615 ms 34.359 ms
 2 sheeva (10.60.111.2) 34.405 ms 34.349 ms 35.014 ms</pre>
<p>From Heartbeat to an Android device (not sure why the latency spike):</p>
<pre>heartbeat ~/bin # traceroute 10.10.10.72
traceroute to 10.10.10.72 (10.10.10.72), 30 hops max, 60 byte packets
 1 industry (10.9.8.250) 31.337 ms 32.269 ms 32.218 ms
 2 sheeva (10.60.111.2) 33.006 ms 33.052 ms 32.996 ms
 3 10.10.10.72 (10.10.10.72) 471.564 ms 472.169 ms 473.082 ms</pre>
<p>Next up (once I have spare time): try to sync local DNS and fix local ipv6.</p>
<p>I&rsquo;ll put most of the configs on Github at some point.</p>
]]></content:encoded>
      <category>Hardware</category><category>Linux</category><category>Networking</category><category>Software</category>
      <category>debian</category><category>raspberrypi</category>
    </item>
    
    <item>
      <title>Defcon 18: Pwned By the owner</title>
      <link>https://yeri.be/defcon-18-pwned-by-the-owner/</link>
      <pubDate>Sat, 29 Dec 2012 12:56:40 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/defcon-18-pwned-by-the-owner/</guid>
      <description>&lt;p style=&#34;text-align: center&#34;&gt;&lt;div class=&#34;embed-responsive embed-youtube&#34;&gt;&#xA;&#x9;&lt;iframe src=&#34;https://www.youtube-nocookie.com/embed/U4oB28ksiIo&#34; title=&#34;YouTube video&#34; loading=&#34;lazy&#34; allow=&#34;accelerometer; clipboard-write; encrypted-media; gyroscope; picture-in-picture&#34; allowfullscreen&gt;&lt;/iframe&gt;&#xA;&lt;/div&gt;&#xA;&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p style="text-align: center"><div class="embed-responsive embed-youtube">
	<iframe src="https://www.youtube-nocookie.com/embed/U4oB28ksiIo" title="YouTube video" loading="lazy" allow="accelerometer; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
</div>
</p>
]]></content:encoded>
      <category>Apple</category><category>Linux</category><category>Misc</category><category>Networking</category><category>Software</category>
      <category>defcon</category><category>youtube</category>
    </item>
    
    <item>
      <title>Xen: NAT and Bridging</title>
      <link>https://yeri.be/xen-nat-and-bridging/</link>
      <pubDate>Sun, 04 Dec 2011 21:41:54 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/xen-nat-and-bridging/</guid>
      <description>&lt;p&gt;Because dom0 was running NAT, and I needed bridging;&lt;/p&gt;&#xA;&lt;p&gt;Debian network file (/etc/network/interfaces):&lt;/p&gt;&#xA;&lt;pre&gt;iface eth3 inet manual&#xA;&#xA;auto xenbr0&#xA;iface xenbr0 inet static&#xA;        bridge_ports eth3&#xA;        address 10.19.86.1&#xA;        broadcast 10.19.86.255&#xA;        netmask 255.255.255.0&lt;/pre&gt;&#xA;&lt;p&gt;&lt;span class=&#34;Apple-style-span&#34; style=&#34;font-family: Georgia, &#39;Times New Roman&#39;, &#39;Bitstream Charter&#39;, Times, serif; font-size: 13px; line-height: 19px; white-space: normal;&#34;&gt;NAT is running on eth2, bridging on eth3 (/etc/xen/xend-config.sxp):&lt;/span&gt;&lt;/p&gt;&#xA;&lt;pre&gt;(network-script &#39;network-nat netdev=eth2&#39;)&lt;/pre&gt;&#xA;&lt;p&gt;Now, for the VM configs:&lt;/p&gt;&#xA;&lt;p&gt;NAT:&lt;/p&gt;&#xA;&lt;pre&gt;vif         = [ &#39;ip=172.16.1.12,mac=00:16:3E:5E:0D:1A&#39; ]&lt;/pre&gt;&#xA;&lt;p&gt;Bridge:&lt;/p&gt;&#xA;&lt;pre&gt;vif         = [ &#39;ip=85.12.6.178,mac=00:16:3E:1D:F5:6C,script=vif-bridge,bridge=xenbr0&#39; ]&lt;/pre&gt;&#xA;&lt;p&gt;It&amp;rsquo;s magic and it works! ;)&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>Because dom0 was running NAT, and I needed bridging;</p>
<p>Debian network file (/etc/network/interfaces):</p>
<pre>iface eth3 inet manual

auto xenbr0
iface xenbr0 inet static
        bridge_ports eth3
        address 10.19.86.1
        broadcast 10.19.86.255
        netmask 255.255.255.0</pre>
<p><span class="Apple-style-span" style="font-family: Georgia, 'Times New Roman', 'Bitstream Charter', Times, serif; font-size: 13px; line-height: 19px; white-space: normal;">NAT is running on eth2, bridging on eth3 (/etc/xen/xend-config.sxp):</span></p>
<pre>(network-script 'network-nat netdev=eth2')</pre>
<p>Now, for the VM configs:</p>
<p>NAT:</p>
<pre>vif         = [ 'ip=172.16.1.12,mac=00:16:3E:5E:0D:1A' ]</pre>
<p>Bridge:</p>
<pre>vif         = [ 'ip=85.12.6.178,mac=00:16:3E:1D:F5:6C,script=vif-bridge,bridge=xenbr0' ]</pre>
<p>It&rsquo;s magic and it works! ;)</p>
]]></content:encoded>
      <category>Linux</category><category>Networking</category>
      <category>xen</category>
    </item>
    
    <item>
      <title>Shell(s) for my Great Firewall Checker</title>
      <link>https://yeri.be/shells-for-my-great-firewall-checker/</link>
      <pubDate>Sat, 23 Jul 2011 23:38:32 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/shells-for-my-great-firewall-checker/</guid>
      <description>&lt;p&gt;As my last shell has been &lt;a href=&#34;https://github.com/Tuinslak/GFW-URL-checker/tree/master/testResults/cn&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;disconnected&lt;/a&gt; in China (not because I was probing websites, but because the building the Guruplug was in got closed) I&amp;rsquo;m &lt;a href=&#34;https://yeri.be/great-firewall-checker&#34;&gt;looking for shells&lt;/a&gt;. Linux or Unix. With Git installed. I&amp;rsquo;ll barely use any disk space and it will probe the websites at most once/day (at night, when you won&amp;rsquo;t notice it).&lt;/p&gt;&#xA;&lt;p&gt;And not just China, but any country where they tend to censor certain websites.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>As my last shell has been <a href="https://github.com/Tuinslak/GFW-URL-checker/tree/master/testResults/cn" target="_blank" rel="noopener noreferrer">disconnected</a> in China (not because I was probing websites, but because the building the Guruplug was in got closed) I&rsquo;m <a href="https://yeri.be/great-firewall-checker">looking for shells</a>. Linux or Unix. With Git installed. I&rsquo;ll barely use any disk space and it will probe the websites at most once/day (at night, when you won&rsquo;t notice it).</p>
<p>And not just China, but any country where they tend to censor certain websites.</p>
<p>Greatly appreciated. :)</p>
]]></content:encoded>
      <category>Linux</category><category>Networking</category><category>Software</category><category>www</category>
      <category>china</category><category>firewall</category><category>gfw</category>
    </item>
    
    <item>
      <title>Telenet, the satire</title>
      <link>https://yeri.be/telenet-the-satire/</link>
      <pubDate>Tue, 07 Jun 2011 11:02:02 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/telenet-the-satire/</guid>
      <description>&lt;p&gt;Another news site that gets the facts wrong.&lt;/p&gt;&#xA;&lt;p&gt;I only &lt;a href=&#34;https://twitter.com/#!/raf__/status/76935897681100800&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;retweeted&lt;/a&gt; and posted the image on &lt;a href=&#34;https://twitter.com/#!/Tuinslak/status/76953348007411712&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;my blog&lt;/a&gt;. &lt;a href=&#34;https://twitter.com/#!/raf__&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;@raf__&lt;/a&gt; is the author of this image (or at least, the one that spread it). &lt;span style=&#34;text-decoration: underline;&#34;&gt;Not me&lt;/span&gt;.&lt;/p&gt;&#xA;&lt;p&gt;I thought the &amp;ldquo;&lt;a href=&#34;https://yeri.be/telenet/&#34;&gt;Source&lt;/a&gt;&amp;rdquo; part at the end of my blog was clear enough&amp;hellip;&lt;/p&gt;&#xA;&lt;blockquote&gt;&lt;em&gt;De aanhoudende YouTube-problemen bij Telenet inspireerden Twitteraar Yeri Tiete (&lt;a href=&#34;http://twitter.com/#!/@Tuinslak&#34;&gt;@Tuinslak&lt;/a&gt;) tot deze satirische advertentie.&lt;/em&gt;&lt;/blockquote&gt;&#xA;&lt;p&gt;&lt;a href=&#34;http://www.zdnet.be/news/128357/weer-youtube-problemen-bij-telenet-update-/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;ZDnet&lt;/a&gt; was wrong. Now &lt;a href=&#34;https://web.archive.org/web/20110609073435/http://www.itprofessional.be:80/nieuws/128380/weer%2Dyoutube%2Dproblemen%2Dbij%2Dtelenet%2Dupdate%2D/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;ITprofessionals&lt;/a&gt;. Who&amp;rsquo;s next?&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>Another news site that gets the facts wrong.</p>
<p>I only <a href="https://twitter.com/#!/raf__/status/76935897681100800" target="_blank" rel="noopener noreferrer">retweeted</a> and posted the image on <a href="https://twitter.com/#!/Tuinslak/status/76953348007411712" target="_blank" rel="noopener noreferrer">my blog</a>. <a href="https://twitter.com/#!/raf__" target="_blank" rel="noopener noreferrer">@raf__</a> is the author of this image (or at least, the one that spread it). <span style="text-decoration: underline;">Not me</span>.</p>
<p>I thought the &ldquo;<a href="https://yeri.be/telenet/">Source</a>&rdquo; part at the end of my blog was clear enough&hellip;</p>
<blockquote><em>De aanhoudende YouTube-problemen bij Telenet inspireerden Twitteraar Yeri Tiete (<a href="http://twitter.com/#!/@Tuinslak">@Tuinslak</a>) tot deze satirische advertentie.</em></blockquote>
<p><a href="http://www.zdnet.be/news/128357/weer-youtube-problemen-bij-telenet-update-/" target="_blank" rel="noopener noreferrer">ZDnet</a> was wrong. Now <a href="https://web.archive.org/web/20110609073435/http://www.itprofessional.be:80/nieuws/128380/weer%2Dyoutube%2Dproblemen%2Dbij%2Dtelenet%2Dupdate%2D/" target="_blank" rel="noopener noreferrer">ITprofessionals</a>. Who&rsquo;s next?</p>
]]></content:encoded>
      <category>Misc</category><category>Networking</category>
      <category>belgium</category>
    </item>
    
    <item>
      <title>Telenet</title>
      <link>https://yeri.be/telenet/</link>
      <pubDate>Sat, 04 Jun 2011 12:07:57 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/telenet/</guid>
      <description>&lt;p style=&#34;text-align: center;&#34;&gt;&lt;a href=&#34;https://static.yeri.be/2011/06/telenet.jpg&#34;&gt;&lt;img class=&#34;size-large wp-image-3017 aligncenter&#34; title=&#34;telenet&#34; src=&#34;https://static.yeri.be/2011/06/telenet-701x1024.jpg&#34; alt=&#34;&#34; width=&#34;701&#34; height=&#34;1024&#34; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;em&gt;&lt;a href=&#34;https://twitter.com/#!/raf__/status/76935897681100800&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Source&lt;/a&gt;&lt;/em&gt;.</description>
      <content:encoded><![CDATA[<p style="text-align: center;"><a href="https://static.yeri.be/2011/06/telenet.jpg"><img class="size-large wp-image-3017 aligncenter" title="telenet" src="https://static.yeri.be/2011/06/telenet-701x1024.jpg" alt="" width="701" height="1024" /></a></p>
<em><a href="https://twitter.com/#!/raf__/status/76935897681100800" target="_blank" rel="noopener noreferrer">Source</a></em>.
]]></content:encoded>
      <category>Misc</category><category>Networking</category>
      <category>belgium</category>
    </item>
    
    <item>
      <title>Data roaming</title>
      <link>https://yeri.be/data-roaming/</link>
      <pubDate>Wed, 18 May 2011 07:50:26 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/data-roaming/</guid>
      <description>&lt;p&gt;I bricked my Nexus S yesterday, while trying to root it (with an howto for an old Android version). As usual I was trying to do too much stuff with too little time (as I had to catch my plane later that evening).&lt;/p&gt;&#xA;&lt;p&gt;I had to root it to get OpenVPN, ssh tunnel, or system wide proxies up and running. Things I needed to by-pass the Great Firewall in China on my mobile.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>I bricked my Nexus S yesterday, while trying to root it (with an howto for an old Android version). As usual I was trying to do too much stuff with too little time (as I had to catch my plane later that evening).</p>
<p>I had to root it to get OpenVPN, ssh tunnel, or system wide proxies up and running. Things I needed to by-pass the Great Firewall in China on my mobile.</p>
<p>However, when landing in Beijing, and connecting to Twitter, Facebook, and all that <a href="https://github.com/Tuinslak/GFW-URL-checker/blob/master/testResults/cn/results_nok.csv" target="_blank">other shizzle</a> on my &ldquo;backup&rdquo; Nexus S; I noticed all sites were working just fine. Just a tad slow&hellip;</p>
<p>I was amazed. As if someone turned off the Great Firewall&hellip; ;)</p>
<p>But apparently, when checking what public IP my phone had, it was a Belgian IP address. So basically it seems when <a href="http://business.proximus.be/en/Surf_Mobile_Abroad/SMA_Rates.html" target="_blank">roaming</a>, all traffic is rerouted from, say, China Mobile to Proximus (through a VPN?), and routed to the internet, in my case, from Belgium. Which is pretty cool here in China. Means I can access everything as if I were in Belgium.</p>
<p>Anyway, something I didn&rsquo;t know. Learned something new today. ;)</p>
]]></content:encoded>
      <category>Google</category><category>Networking</category><category>Software</category><category>Travel</category>
      <category>china</category><category>mobile</category>
    </item>
    
    <item>
      <title>socket: Permission denied</title>
      <link>https://yeri.be/socket-permission-denied/</link>
      <pubDate>Wed, 06 Apr 2011 12:00:24 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/socket-permission-denied/</guid>
      <description>&lt;p&gt;After upgrading my &lt;a href=&#34;http://www.flickr.com/photos/tuinslak/5564073644/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Guruplug Display&lt;/a&gt; from Lenny to Squeeze I came along an odd error; every non-root user was unable to access anything related to the internet.&lt;/p&gt;&#xA;&lt;p&gt;NTP:&lt;/p&gt;&#xA;&lt;p&gt;&lt;code&gt;Mar 26 20:31:50 localhost ntpd[1055]: ./../lib/isc/unix/ifiter_ioctl.c:348:&#xA;unexpected error:&#xA;Mar 26 20:31:50 localhost ntpd[1055]: making interface scan socket:&#xA;Permission denied&#xA;Mar 26 20:35:09 localhost ntpd[1055]: ntpd exiting on signal 15&lt;/code&gt;&lt;/p&gt;&#xA;&lt;p&gt;Regular user:&lt;/p&gt;&#xA;&lt;p&gt;&lt;code&gt;yeri@gplugD ~ $ ping google.be&#xA;ping: unknown host google.be&#xA;yeri@gplugD ~ $ ping 85.12.6.171&#xA;socket: Permission denied&#xA;yeri@gplugD ~ $ ssh localhost&#xA;socket: Permission denied&#xA;ssh: connect to host localhost port 22: Permission denied&lt;/code&gt;&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>After upgrading my <a href="http://www.flickr.com/photos/tuinslak/5564073644/" target="_blank" rel="noopener noreferrer">Guruplug Display</a> from Lenny to Squeeze I came along an odd error; every non-root user was unable to access anything related to the internet.</p>
<p>NTP:</p>
<p><code>Mar 26 20:31:50 localhost ntpd[1055]: ./../lib/isc/unix/ifiter_ioctl.c:348:
unexpected error:
Mar 26 20:31:50 localhost ntpd[1055]: making interface scan socket:
Permission denied
Mar 26 20:35:09 localhost ntpd[1055]: ntpd exiting on signal 15</code></p>
<p>Regular user:</p>
<p><code>yeri@gplugD ~ $ ping google.be
ping: unknown host google.be
yeri@gplugD ~ $ ping 85.12.6.171
socket: Permission denied
yeri@gplugD ~ $ ssh localhost
socket: Permission denied
ssh: connect to host localhost port 22: Permission denied</code></p>
<p>Root:</p>
<p><code>gplugD ~ # ping 85.12.6.171 -c 1
PING 85.12.6.171 (85.12.6.171) 56(84) bytes of data.
64 bytes from 85.12.6.171: icmp_req=1 ttl=58 time=37.1 ms
&mdash; 85.12.6.171 ping statistics &mdash;
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 37.145/37.145/37.145/0.000 ms</code></p>
<p>Solution? It&rsquo;s an issue (well, not really an issue, more working like intended) of this kernel flag</p>
<p><code>CONFIG_ANDROID_PARANOID_NETWORK</code></p>
<p>And you can fix it by adding the aid_inet group &ndash; and adding your user(s) too it. Don&rsquo;t forget to add NTP etc as well.</p>
<p><code>gplugD ~ # groupadd -g 3003 aid_inet
gplugD ~ # usermod -G -a aid_inet $YOUR-USER</code></p>
<p>Special thanks to Tim Besard!</p>
<p><em>(My <a href="http://serverfault.com/questions/252261/network-access-issues-after-upgrading-to-squeeze" target="_blank" rel="noopener noreferrer">Serverfault</a> link)</em></p>
<p>Edit, from the Serverfault page:</p>
<blockquote><em>On Android Jelly Bean (4.1) used on the Nexus 7, I had to use the group name <code>inet</code> instead of <code>aid_inet</code>, thus:</em>
<p><code>$ groupadd -g 3004 inet</p>
<h1 id="i-used-3004-instead-of-3003-because-3003-was-already-taken-by-aid_inet">I used 3004 instead of 3003 because 3003 was already taken by aid_inet</h1>
<p>$ usermod -G inet &lt;username&gt;
</code>
<em>Some code snippets from the Android Kernel related to this go here: <a href="https://web.archive.org/web/20120730083915/http://blog.appuarium.com/2011/06/23/how-android-enforces-android-permission-internet/" rel="nofollow"><a href="http://blog.appuarium.com/2011/06/23/how-android-enforces-android-permission-internet/" target="_blank" rel="noopener noreferrer">http://blog.appuarium.com/2011/06/23/how-android-enforces-android-permission-internet/</a></a></em></blockquote></p>
]]></content:encoded>
      <category>Errors</category><category>Linux</category><category>Networking</category><category>Software</category>
      <category>board</category>
    </item>
    
    <item>
      <title>Great Firewall checker</title>
      <link>https://yeri.be/great-firewall-checker/</link>
      <pubDate>Sat, 12 Mar 2011 16:37:59 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/great-firewall-checker/</guid>
      <description>&lt;p&gt;An attempt to create a list of major blocked sites in China (or any other country/ISP). It&amp;rsquo;s written entirely in Bash.&lt;/p&gt;&#xA;&lt;p&gt;Github repo &lt;a href=&#34;https://github.com/Tuinslak/GFW-URL-checker&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;riiiiiiight here&lt;/a&gt;. It&amp;rsquo;s used by my &lt;a href=&#34;https://yeri.be/proxy-pac-generator/&#34;&gt;PAC-generator&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;The Github page is updated once a day by three hosts. One in &lt;a href=&#34;https://github.com/Tuinslak/GFW-URL-checker/tree/master/testResults/be&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Belgium&lt;/a&gt;, one in The &lt;a href=&#34;https://github.com/Tuinslak/GFW-URL-checker/tree/master/testResults/nl&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Netherlands&lt;/a&gt;, and a &lt;a href=&#34;http://www.flickr.com/photos/tuinslak/5412529505/in/set-72157612681729152/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Guruplug&lt;/a&gt; in &lt;a href=&#34;https://github.com/Tuinslak/GFW-URL-checker/tree/master/testResults/cn&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;China&lt;/a&gt;. This way you can compare the results (in case some are down or replying slowly).&lt;/p&gt;&#xA;&lt;p&gt;As it&amp;rsquo;s impossible to test every possible site, I just check popular sites (and a bunch of sites from &lt;a href=&#34;http://www.alexa.com/topsites&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Alexa&lt;/a&gt;). But if you know blocked sites not in the list, please &lt;a href=&#34;mailto:gfw@tuinslak.be&#34;&gt;submit&lt;/a&gt; them &amp;ndash; thanks!&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>An attempt to create a list of major blocked sites in China (or any other country/ISP). It&rsquo;s written entirely in Bash.</p>
<p>Github repo <a href="https://github.com/Tuinslak/GFW-URL-checker" target="_blank" rel="noopener noreferrer">riiiiiiight here</a>. It&rsquo;s used by my <a href="https://yeri.be/proxy-pac-generator/">PAC-generator</a>.</p>
<p>The Github page is updated once a day by three hosts. One in <a href="https://github.com/Tuinslak/GFW-URL-checker/tree/master/testResults/be" target="_blank" rel="noopener noreferrer">Belgium</a>, one in The <a href="https://github.com/Tuinslak/GFW-URL-checker/tree/master/testResults/nl" target="_blank" rel="noopener noreferrer">Netherlands</a>, and a <a href="http://www.flickr.com/photos/tuinslak/5412529505/in/set-72157612681729152/" target="_blank" rel="noopener noreferrer">Guruplug</a> in <a href="https://github.com/Tuinslak/GFW-URL-checker/tree/master/testResults/cn" target="_blank" rel="noopener noreferrer">China</a>. This way you can compare the results (in case some are down or replying slowly).</p>
<p>As it&rsquo;s impossible to test every possible site, I just check popular sites (and a bunch of sites from <a href="http://www.alexa.com/topsites" target="_blank" rel="noopener noreferrer">Alexa</a>). But if you know blocked sites not in the list, please <a href="mailto:gfw@tuinslak.be">submit</a> them &ndash; thanks!</p>
<p>At the moment I recheck every site once a day. However I might change this to once/week or something if the list of sites/URLs gets too big.</p>
<p>More shells are welcome, especially in countries such as Libya, Egypt, Tunis, etc ;)</p>
<p>But also additional shells in China are welcome, to prevent the government from blocking my current machine. All I need is a bit of CPU power once/day, 100Mb quota (at most), and Git installed.</p>
<p>Test results are written to three files; a file with sites that work, a file with sites that didn&rsquo;t get a HTTP 200 reply, and a file with both. You can directly use the file in your application from Github (for <a href="https://github.com/Tuinslak/GFW-URL-checker/blob/master/testResults/cn/results_nok.csv" target="_blank" rel="noopener noreferrer">example</a> the list of blocked sites in China).</p>
<p style="text-align: left;">The files are written as CSV-file; "url,check-date,check-time,{ok|nok}". Ok means the url/site got downloaded, nok means something went wrong (connection reset, time out, etc).</p>
<p style="text-align: left;">It does NOT check the content of the website (in case a ISP redirects to a different website instead).</p>
<p style="text-align: left;">This is work in progress though. So it's likely to change and, hopefully, improve in the future.</p>
<p style="text-align: left;">Feedback is also greatly appreciated.</p>
]]></content:encoded>
      <category>Linux</category><category>Networking</category><category>Software</category><category>www</category>
      <category>china</category><category>firewall</category><category>gfw</category>
    </item>
    
    <item>
      <title>Proxy.pac generator</title>
      <link>https://yeri.be/proxy-pac-generator/</link>
      <pubDate>Thu, 10 Mar 2011 23:48:54 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/proxy-pac-generator/</guid>
      <description>&lt;p&gt;I made a simple bash script that generates a proxy auto configuration file.&lt;/p&gt;&#xA;&lt;p&gt;The PAC file generated redirects all matching rules through the proxy.&lt;/p&gt;&#xA;&lt;p&gt;The only issue at the moment, is that, once the list gets big, it&amp;rsquo;s not very performance-friendly. Something I&amp;rsquo;ll try to fix in the coming days.&lt;/p&gt;&#xA;&lt;p&gt;I&amp;rsquo;m using this script to generate a proxy.pac file at work to &lt;a href=&#34;https://github.com/Tuinslak/GFW-URL-checker&#34; target=&#34;_blank&#34;&gt;redirect blocked content&lt;/a&gt; in China through the proxy for our employees currently in China.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>I made a simple bash script that generates a proxy auto configuration file.</p>
<p>The PAC file generated redirects all matching rules through the proxy.</p>
<p>The only issue at the moment, is that, once the list gets big, it&rsquo;s not very performance-friendly. Something I&rsquo;ll try to fix in the coming days.</p>
<p>I&rsquo;m using this script to generate a proxy.pac file at work to <a href="https://github.com/Tuinslak/GFW-URL-checker" target="_blank">redirect blocked content</a> in China through the proxy for our employees currently in China.</p>
<p>You can find the Github repo <a href="https://github.com/Tuinslak/PAC-Generator" target="_blank">here</a>. Keep in mind it&rsquo;s work in progress.</p>
<p> </p>
]]></content:encoded>
      <category>Linux</category><category>Networking</category><category>Software</category><category>www</category>
      <category>china</category><category>proxy</category>
    </item>
    
    <item>
      <title>blog over ssl</title>
      <link>https://yeri.be/blog-over-ssl/</link>
      <pubDate>Fri, 18 Feb 2011 01:35:44 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/blog-over-ssl/</guid>
      <description>&lt;p&gt;Starting a SSL test on this domain as of today. Free cert by &lt;a href=&#34;https://www.startssl.com/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;StartSSL&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;SSL is clearly the new hype, and this time I won&amp;rsquo;t be last to join it! ;)&lt;/p&gt;&#xA;&lt;p&gt;Just going to check how much (if any) SSL slows down my site.&lt;/p&gt;&#xA;&lt;p&gt;Every &lt;a href=&#34;https://yeri.be&#34;&gt;http&lt;/a&gt; requests gets automatically rewritten to &lt;a href=&#34;https://yeri.be&#34;&gt;https&lt;/a&gt;.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>Starting a SSL test on this domain as of today. Free cert by <a href="https://www.startssl.com/" target="_blank" rel="noopener noreferrer">StartSSL</a>.</p>
<p>SSL is clearly the new hype, and this time I won&rsquo;t be last to join it! ;)</p>
<p>Just going to check how much (if any) SSL slows down my site.</p>
<p>Every <a href="https://yeri.be">http</a> requests gets automatically rewritten to <a href="https://yeri.be">https</a>.</p>
]]></content:encoded>
      <category>Misc</category><category>Networking</category><category>www</category>
      <category>Tuinslak</category><category>blog</category><category>https</category><category>ssl</category>
    </item>
    
    <item>
      <title>Squid MRTG stats</title>
      <link>https://yeri.be/squid-mrtg-stats/</link>
      <pubDate>Sat, 05 Feb 2011 00:20:03 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/squid-mrtg-stats/</guid>
      <description>&lt;p&gt;I talked about &lt;a href=&#34;https://yeri.be/mrtg/&#34;&gt;MRTG stats for Squid&lt;/a&gt; in the past but apparently forgot to include the .mib file.&lt;/p&gt;&#xA;&lt;p&gt;So, here it is.  Download &lt;a href=&#34;https://static.yeri.be/2011/01/squid.mib_.txt&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;this file&lt;/a&gt; and put it in /usr/share/squid/mib.txt.&lt;/p&gt;&#xA;&lt;p&gt;I don&amp;rsquo;t quite remember where I found that mib file. Probably included with Squid on Gentoo or the world wide web&amp;hellip; But I couldn&amp;rsquo;t find it on Debian, so here it is.  And be sure to add these lines to your Squid config:&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>I talked about <a href="https://yeri.be/mrtg/">MRTG stats for Squid</a> in the past but apparently forgot to include the .mib file.</p>
<p>So, here it is.  Download <a href="https://static.yeri.be/2011/01/squid.mib_.txt" target="_blank" rel="noopener noreferrer">this file</a> and put it in /usr/share/squid/mib.txt.</p>
<p>I don&rsquo;t quite remember where I found that mib file. Probably included with Squid on Gentoo or the world wide web&hellip; But I couldn&rsquo;t find it on Debian, so here it is.  And be sure to add these lines to your Squid config:</p>
<pre style="background-color: #ffffff; line-height: 12pt; margin-right: 5px; padding: 5px; border: 1px dashed #489e06;">acl snmppublic snmp_community public
snmp_port 3401
snmp_access allow snmppublic all</pre>
<p>This is what it should look like (low usage Squid):</p>
<p style="text-align: center;"><a href="https://static.yeri.be/2011/02/mrtg.proxy-hit-day.png"><img class="alignnone size-full wp-image-2447" title="mrtg.proxy-hit-day" src="https://static.yeri.be/2011/02/mrtg.proxy-hit-day.png" alt="" width="500" height="135" /></a></p>
]]></content:encoded>
      <category>Hardware</category><category>Linux</category><category>Misc</category><category>Networking</category><category>Software</category><category>www</category>
      <category>mrtg</category><category>snmp</category><category>squid</category><category>stats</category>
    </item>
    
    <item>
      <title>MRTG and network interfaces</title>
      <link>https://yeri.be/mrtg-and-network-interfaces/</link>
      <pubDate>Mon, 17 Jan 2011 15:09:54 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/mrtg-and-network-interfaces/</guid>
      <description>&lt;p&gt;I tend to restart OpenVPN a lot due to config changes. As a result, this brings quite some issues to &lt;a href=&#34;https://yeri.be/mrtg/&#34;&gt;MRTG&lt;/a&gt; (or more precisely, SNMP), due to the fact tun devices change of ID.&lt;/p&gt;&#xA;&lt;p&gt;A while back, I found a quick fix for this; rename the interface targets from their respective ID to their name:&lt;/p&gt;&#xA;&lt;pre style=&#34;background-color: #ffffff; line-height: 12pt; margin-right: 5px; padding: 5px; border: 1px dashed #489e06;&#34;&gt;Target[eth0]: &lt;span style=&#34;color: #ff0000;&#34;&gt;2&lt;/span&gt;:public@localhost&lt;/pre&gt;&#xA;&lt;p&gt;becomes&lt;/p&gt;&#xA;&lt;pre style=&#34;background-color: #ffffff; line-height: 12pt; margin-right: 5px; padding: 5px; border: 1px dashed #489e06;&#34;&gt;Target[eth0]: &lt;span style=&#34;color: #ff0000;&#34;&gt;#eth0&lt;/span&gt;:public@localhost&lt;/pre&gt;&#xA;&lt;div&gt;&lt;/div&gt;&#xA;&lt;div&gt;For example:&lt;/div&gt;&#xA;&lt;div&gt;&lt;/div&gt;&#xA;&lt;pre style=&#34;background-color: #ffffff; line-height: 12pt; margin-right: 5px; padding: 5px; border: 1px dashed #489e06;&#34;&gt;&#xA;#&#xA;# Eth0 stats&#xA;#&#xA;Options[eth0]: growright, nobanner, pngdate, nopercent, noinfo&#xA;Target[eth0]: #eth0:public@localhost:&#xA;SetEnv[eth0]: MRTG_INT_DESCR=&#34;eth0&#34;&#xA;MaxBytes[eth0]: 1250000&#xA;Title[eth0]: Traffic Analysis for deng&#xA;PageTop[eth0]: &amp;#060;H1&gt;Traffic Analysis for deng (eth0)&amp;#060;/H1&gt;&#xA;#&#xA;# Eth1 stats&#xA;#&#xA;Options[eth1]: growright, nobanner, pngdate, nopercent, noinfo&#xA;Target[eth1]: #eth1:public@localhost:&#xA;SetEnv[eth1]: MRTG_INT_DESCR=&#34;eth1&#34;&#xA;MaxBytes[eth1]: 1250000&#xA;Title[eth1]: Traffic Analysis for deng&#xA;PageTop[eth1]: &amp;#060;H1&gt;Traffic Analysis for deng (eth1)&amp;#060;/H1&gt;&#xA;#&#xA;# tun0 stats&#xA;#&#xA;Options[tun0]: growright, nobanner, pngdate, nopercent, noinfo&#xA;Target[tun0]: #tun0:public@localhost:&#xA;SetEnv[tun0]: MRTG_INT_DESCR=&#34;tun0&#34;&#xA;MaxBytes[tun0]: 1250000&#xA;Title[tun0]: Traffic Analysis for deng&#xA;PageTop[tun0]: &amp;#060;H1&gt;Traffic Analysis for deng (tun0)&amp;#060;/H1&gt;&#xA;&lt;/pre&gt;</description>
      <content:encoded><![CDATA[<p>I tend to restart OpenVPN a lot due to config changes. As a result, this brings quite some issues to <a href="https://yeri.be/mrtg/">MRTG</a> (or more precisely, SNMP), due to the fact tun devices change of ID.</p>
<p>A while back, I found a quick fix for this; rename the interface targets from their respective ID to their name:</p>
<pre style="background-color: #ffffff; line-height: 12pt; margin-right: 5px; padding: 5px; border: 1px dashed #489e06;">Target[eth0]: <span style="color: #ff0000;">2</span>:public@localhost</pre>
<p>becomes</p>
<pre style="background-color: #ffffff; line-height: 12pt; margin-right: 5px; padding: 5px; border: 1px dashed #489e06;">Target[eth0]: <span style="color: #ff0000;">#eth0</span>:public@localhost</pre>
<div></div>
<div>For example:</div>
<div></div>
<pre style="background-color: #ffffff; line-height: 12pt; margin-right: 5px; padding: 5px; border: 1px dashed #489e06;">
#
# Eth0 stats
#
Options[eth0]: growright, nobanner, pngdate, nopercent, noinfo
Target[eth0]: #eth0:public@localhost:
SetEnv[eth0]: MRTG_INT_DESCR="eth0"
MaxBytes[eth0]: 1250000
Title[eth0]: Traffic Analysis for deng
PageTop[eth0]: &#060;H1>Traffic Analysis for deng (eth0)&#060;/H1>
#
# Eth1 stats
#
Options[eth1]: growright, nobanner, pngdate, nopercent, noinfo
Target[eth1]: #eth1:public@localhost:
SetEnv[eth1]: MRTG_INT_DESCR="eth1"
MaxBytes[eth1]: 1250000
Title[eth1]: Traffic Analysis for deng
PageTop[eth1]: &#060;H1>Traffic Analysis for deng (eth1)&#060;/H1>
#
# tun0 stats
#
Options[tun0]: growright, nobanner, pngdate, nopercent, noinfo
Target[tun0]: #tun0:public@localhost:
SetEnv[tun0]: MRTG_INT_DESCR="tun0"
MaxBytes[tun0]: 1250000
Title[tun0]: Traffic Analysis for deng
PageTop[tun0]: &#060;H1>Traffic Analysis for deng (tun0)&#060;/H1>
</pre>
]]></content:encoded>
      <category>Hardware</category><category>Linux</category><category>Misc</category><category>Networking</category><category>Software</category><category>www</category>
      <category>mrtg</category><category>snmp</category><category>stats</category>
    </item>
    
    <item>
      <title>Theme, blog, and stuff</title>
      <link>https://yeri.be/theme-blog-and-stuff/</link>
      <pubDate>Sun, 16 Jan 2011 00:12:45 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/theme-blog-and-stuff/</guid>
      <description>&lt;p&gt;As you noticed&amp;hellip; Or perhaps didn&amp;rsquo;t notice, I&amp;rsquo;ve started using a new, simplistic theme a couple of days ago.&lt;/p&gt;&#xA;&lt;p&gt;Kinda thought it might be too simplistic (I&amp;rsquo;ve hidden the sidebar, there&amp;rsquo;s no search or archive, etc), but I started to, you know, get attached to it.&lt;/p&gt;&#xA;&lt;p&gt;So it&amp;rsquo;s here to stay, for &lt;a href=&#34;https://yeri.be/new-theme/&#34;&gt;a year&lt;/a&gt; or something. I guess.&lt;/p&gt;&#xA;&lt;p&gt;I&amp;rsquo;ve also noticed that the long load times on my blog were &lt;a href=&#34;https://web.archive.org/web/20120830072143/http://code.google.com:80/p/wpbuzzcomments/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;WP_Buzz&lt;/a&gt;&amp;rsquo;s fault. Nice plugin, but 15 to 45 seconds of load time per uncached page wasn&amp;rsquo;t really worth it. Hope it &lt;a href=&#34;http://code.google.com/p/wpbuzzcomments/issues/detail?id=17&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;can be fixed&lt;/a&gt;.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>As you noticed&hellip; Or perhaps didn&rsquo;t notice, I&rsquo;ve started using a new, simplistic theme a couple of days ago.</p>
<p>Kinda thought it might be too simplistic (I&rsquo;ve hidden the sidebar, there&rsquo;s no search or archive, etc), but I started to, you know, get attached to it.</p>
<p>So it&rsquo;s here to stay, for <a href="https://yeri.be/new-theme/">a year</a> or something. I guess.</p>
<p>I&rsquo;ve also noticed that the long load times on my blog were <a href="https://web.archive.org/web/20120830072143/http://code.google.com:80/p/wpbuzzcomments/" target="_blank" rel="noopener noreferrer">WP_Buzz</a>&rsquo;s fault. Nice plugin, but 15 to 45 seconds of load time per uncached page wasn&rsquo;t really worth it. Hope it <a href="http://code.google.com/p/wpbuzzcomments/issues/detail?id=17" target="_blank" rel="noopener noreferrer">can be fixed</a>.</p>
<p>I&rsquo;ve always thought it was <a href="https://yeri.be/one/">One</a> that <a href="https://yeri.be/blog-changes/">wasn&rsquo;t keeping up</a> with the SQL queries, and as refreshing the page always fixed my problem, I thought it just was bad luck and/or my dodgy connection. Until I saw WordPress was doing half a minute for about 90ish SQL queries&hellip; Per page.</p>
<p>But on the other hand, seems like changing from <a href="http://one.rootspirit.com/" target="_blank" rel="noopener noreferrer">One</a> to <a href="https://web.archive.org/web/20110213161611/http://vm1.rootspirit.com:80/" target="_blank" rel="noopener noreferrer">vm1</a> was useful after all:</p>
<p style="text-align: center;"><a href="https://static.yeri.be/2011/01/crawlspeed.png"><img class="alignnone size-full wp-image-2285" title="google crawl speed" src="https://static.yeri.be/2011/01/crawlspeed.png" alt="" width="735" height="168" /></a></p>
<p>Anyway, to search on this blog use <a href="http://www.google.be/search?sourceid=chrome&amp;ie=UTF-8&amp;q=site:blog.tuinslak.org" target="_blank" rel="noopener noreferrer">Google</a> or, if you have Chrome, type in blog.tuinslak&lt;tab&gt; and add your search query. Kinda rocks feature!</p>
<p>Been on posting spree lately. Not all post quite as useful, but hey. Let&rsquo;s see how long I keep up! ;)</p>
]]></content:encoded>
      <category>Google</category><category>Hardware</category><category>Linux</category><category>Networking</category><category>Software</category><category>www</category>
      <category>Tuinslak</category><category>blog</category><category>rootspirit</category>
    </item>
    
    <item>
      <title>iRail slashdot effect</title>
      <link>https://yeri.be/irail-slashdot-effect/</link>
      <pubDate>Sun, 20 Jun 2010 00:15:18 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/irail-slashdot-effect/</guid>
      <description>&lt;p&gt;Only because stats are pretty awesome. The effects of &lt;a href=&#34;https://yeri.be/stopping-irail-be/&#34;&gt;my media attention&lt;/a&gt; a few days ago. I&amp;rsquo;ll give some more info than what &lt;a href=&#34;http://bvlg.blogspot.com/2010/06/nmbs-haalt-irailbe-offline.html&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;can be seen here&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;And pretty happy I set up my &lt;a href=&#34;https://yeri.be/tag/nginx/&#34;&gt;nginx caching&lt;/a&gt; up a few weeks ago.&lt;/p&gt;&#xA;&lt;p&gt;MRTG traffic stats on &lt;a href=&#34;https://web.archive.org/web/20110213161611/http://vm1.rootspirit.com:80/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;vm1&lt;/a&gt;, my nginx caching server, of the first 2 days (only major traffic source is this blog):&lt;/p&gt;&#xA;&lt;p style=&#34;text-align: center;&#34;&gt;&lt;a href=&#34;https://static.yeri.be/2010/06/vm1_eth0_1.png&#34;&gt;&lt;img class=&#34;size-full wp-image-1565 aligncenter&#34; title=&#34;vm1 mrtg traffic stats&#34; src=&#34;https://static.yeri.be/2010/06/vm1_eth0_1.png&#34; alt=&#34;&#34; width=&#34;500&#34; height=&#34;135&#34;/&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Top referrers (though not 100% accurate):&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>Only because stats are pretty awesome. The effects of <a href="https://yeri.be/stopping-irail-be/">my media attention</a> a few days ago. I&rsquo;ll give some more info than what <a href="http://bvlg.blogspot.com/2010/06/nmbs-haalt-irailbe-offline.html" target="_blank" rel="noopener noreferrer">can be seen here</a>.</p>
<p>And pretty happy I set up my <a href="https://yeri.be/tag/nginx/">nginx caching</a> up a few weeks ago.</p>
<p>MRTG traffic stats on <a href="https://web.archive.org/web/20110213161611/http://vm1.rootspirit.com:80/" target="_blank" rel="noopener noreferrer">vm1</a>, my nginx caching server, of the first 2 days (only major traffic source is this blog):</p>
<p style="text-align: center;"><a href="https://static.yeri.be/2010/06/vm1_eth0_1.png"><img class="size-full wp-image-1565 aligncenter" title="vm1 mrtg traffic stats" src="https://static.yeri.be/2010/06/vm1_eth0_1.png" alt="" width="500" height="135"/></a></p>
<p>Top referrers (though not 100% accurate):</p>
<p style="text-align: center;"><a href="https://static.yeri.be/2010/06/referrers.png"><img class="size-full wp-image-1566 aligncenter" title="referrers" src="https://static.yeri.be/2010/06/referrers.png" alt="" width="585" height="139"/></a></p>
<p>Website hits:</p>
<p style="text-align: center;"><a href="https://static.yeri.be/2010/06/peak_visitors.png"><img class="size-full wp-image-1570 aligncenter" title="peak visitors" src="https://static.yeri.be/2010/06/peak_visitors.png" alt="" width="489" height="188"/></a></p>
<p>Top posts last few days:</p>
<p style="text-align: center;"><a href="https://static.yeri.be/2010/06/top_posts.png"><img class="size-full wp-image-1572 aligncenter" title="top posts" src="https://static.yeri.be/2010/06/top_posts.png" alt="" width="571" height="155"/></a></p>
<p style="text-align: left;">Flickr hits last few days:</p>
<p style="text-align: center;"><a href="https://static.yeri.be/2010/06/flickr_hits.png"><img class="size-full wp-image-1577 aligncenter" title="flickr hits" src="https://static.yeri.be/2010/06/flickr_hits.png" alt="" width="585" height="210"/></a></p>
<p style="text-align: left;">Screenshots are all a few days old by the way.</p>
<p style="text-align: left;">This, and a bunch of other cool stats from Google Analytics. :)</p>
<p style="text-align: left;">Oh, and also, visits on iRail.be from the NMBS/SNCB network starting Sept 1 2008:</p>
<p style="text-align: center;"><a href="https://static.yeri.be/2010/06/irail_NMBS.png"><img class="alignnone size-large wp-image-1586" title="NMBS / SNCB visits for iRail" src="https://static.yeri.be/2010/06/irail_NMBS-1024x438.png" alt="" width="560" height="239"/></a></p>
<p style="text-align: left;"></p>
]]></content:encoded>
      <category>Linux</category><category>Networking</category><category>Software</category><category>iRail</category><category>www</category>
      <category>media</category><category>mrtg</category><category>nmbs</category><category>slashdot</category><category>sncb</category>
    </item>
    
    <item>
      <title>nginx reverse proxy with caching</title>
      <link>https://yeri.be/nginx-reverse-proxy-with-caching/</link>
      <pubDate>Sun, 23 May 2010 00:10:06 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/nginx-reverse-proxy-with-caching/</guid>
      <description>&lt;p&gt;Playing around and searching the &lt;a href=&#34;http://serverfault.com/questions/30705/how-to-set-up-nginx-as-a-caching-reverse-proxy&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;web&lt;/a&gt; I enabled some decent caching now.&lt;/p&gt;&#xA;&lt;p&gt;Here are some stats: &lt;a href=&#34;https://static.yeri.be/2010/05/nginx_rproxy_cache.txt&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;image+html&lt;/a&gt; and &lt;a href=&#34;https://static.yeri.be/2010/05/nginx_rproxy_cache2.txt&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;php&lt;/a&gt;. Note that the php on apache (recompiled each request, about 1.5-2sec between every request) versus the cached output has a huge difference. Difference between images and static text files aren&amp;rsquo;t that huge. Also note that nginx has gzip enabled. The downside is that nginx caches all pages (HTTP code 200) for one hour and isn&amp;rsquo;t notified when pages are modified (yet).&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>Playing around and searching the <a href="http://serverfault.com/questions/30705/how-to-set-up-nginx-as-a-caching-reverse-proxy" target="_blank" rel="noopener noreferrer">web</a> I enabled some decent caching now.</p>
<p>Here are some stats: <a href="https://static.yeri.be/2010/05/nginx_rproxy_cache.txt" target="_blank" rel="noopener noreferrer">image+html</a> and <a href="https://static.yeri.be/2010/05/nginx_rproxy_cache2.txt" target="_blank" rel="noopener noreferrer">php</a>. Note that the php on apache (recompiled each request, about 1.5-2sec between every request) versus the cached output has a huge difference. Difference between images and static text files aren&rsquo;t that huge. Also note that nginx has gzip enabled. The downside is that nginx caches all pages (HTTP code 200) for one hour and isn&rsquo;t notified when pages are modified (yet).</p>
<p>My &ldquo;live&rdquo; blog is also accessible using <a href="https://yeri.be">blog.yeri.be</a> as blog.tuinslak.org will now <a href="http://uptime.netcraft.com/up/graph?site=blog.tuinslak.org&amp;probe=1" target="_blank" rel="noopener noreferrer">point to the nginx</a> reverse proxy.</p>
<p>I&rsquo;ve come across a few issues though, pages such as <a href="https://static.yeri.be/2010/05/ip.php" target="_blank" rel="noopener noreferrer">this</a> (shows your current IP address) and <a href="https://static.yeri.be/2010/05/date.php" target="_blank" rel="noopener noreferrer">this</a> (compare to <a href="https://static.yeri.be/2010/05/date.php" target="_blank" rel="noopener noreferrer">this</a> and refresh a few times) are cached as well, and actually show the previous visitor (if any) their output and the pages aren&rsquo;t updated when a new visitor visits them. <em>Edit: fixed, correctly refreshes; </em><em>.php under wp-</em> isn&rsquo;t cached.</p>
<p>Same goes for layout (I use <a href="https://yeri.be/wptouch/" target="_blank" rel="noopener noreferrer">WPtouch</a> for mobile devices). <a href="https://static.yeri.be/2010/05/Screen-shot-2010-05-22-at-21.26.53-2.png" target="_blank" rel="noopener noreferrer">A page</a> that got visited on the iPhone and then on a desktop as well as <a href="https://static.yeri.be/2010/05/photo.jpg" target="_blank" rel="noopener noreferrer">a page</a> that got first cached using a desktop browser and then an iPhone. I&rsquo;ve disabled WPtouch for now.</p>
<p>And a 3rd issue is that the Wordpress stats image (<img class="alignnone" title=":)" src="http://stats.wordpress.com/g.gif" alt="" width="6" height="5" />) is cached as well. So if a regular visitor visits the site before a a registered user (admin), the stats image will still be present (and generate incorrect stats). This doesn&rsquo;t happen the other way around, as no pages are cached for a registered user (unless they are already in its cache)&hellip; Weird. <em>Edit: fixed by watching the http cookie and this <a href="http://wordpress.org/extend/plugins/nginx-proxy-cache-integrator/" target="_blank" rel="noopener noreferrer">plugin</a>. Admin pages are never cached now but at least stats are correct again.</em></p>
<p>Speed gain is insane though.</p>
]]></content:encoded>
      <category>Linux</category><category>Networking</category><category>Software</category><category>www</category>
      <category>nginx</category>
    </item>
    
    <item>
      <title>nginx reverse proxy IP</title>
      <link>https://yeri.be/nginx-reverse-proxy-ip/</link>
      <pubDate>Sat, 22 May 2010 17:32:59 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/nginx-reverse-proxy-ip/</guid>
      <description>&lt;p&gt;The issue with the wrong IP address being shown when using nginx &lt;a href=&#34;https://yeri.be/nginx-reverse-proxy/&#34;&gt;as reverse proxy&lt;/a&gt; can easily be solved with mod_rpaf.&lt;/p&gt;&#xA;&lt;div id=&#34;_mcePaste&#34;&gt;cache.blog.tuinslak.org &lt;strong&gt;&lt;a href=&#34;http://home.tiete.be&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;85.234.196.237&lt;/a&gt;&lt;/strong&gt; - - [22/May/2010:16:33:46 +0200] &#34;GET /2010/05/nginx-reverse-proxy/ HTTP/1.0&#34; 200 6184 &#34;-&#34; &#34;Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_3; en-US) AppleWebKit/533.4 (KHTML, like Gecko) Chrome/5.0.375.53 Safari/533.4&#34; 1766 6503&lt;/div&gt;&#xA;&lt;p&gt;vs&lt;/p&gt;&#xA;&lt;p&gt;cache.blog.tuinslak.org &lt;strong&gt;&lt;a href=&#34;https://web.archive.org/web/20130702144129/http://85.12.6.171&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;85.12.6.171&lt;/a&gt;&lt;/strong&gt; - - [22/May/2010:16:27:40 +0200] &amp;ldquo;GET /2010/05/nginx-reverse-proxy/ HTTP/1.0&amp;rdquo; 200 22639 &amp;ldquo;-&amp;rdquo; &amp;ldquo;Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_3; en-US) AppleWebKit/533.4 (KHTML, like Gecko) Chrome/5.0.375.53 Safari/533.4&amp;rdquo; 1771 23031&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>The issue with the wrong IP address being shown when using nginx <a href="https://yeri.be/nginx-reverse-proxy/">as reverse proxy</a> can easily be solved with mod_rpaf.</p>
<div id="_mcePaste">cache.blog.tuinslak.org <strong><a href="http://home.tiete.be" target="_blank" rel="noopener noreferrer">85.234.196.237</a></strong> - - [22/May/2010:16:33:46 +0200] "GET /2010/05/nginx-reverse-proxy/ HTTP/1.0" 200 6184 "-" "Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_3; en-US) AppleWebKit/533.4 (KHTML, like Gecko) Chrome/5.0.375.53 Safari/533.4" 1766 6503</div>
<p>vs</p>
<p>cache.blog.tuinslak.org <strong><a href="https://web.archive.org/web/20130702144129/http://85.12.6.171" target="_blank" rel="noopener noreferrer">85.12.6.171</a></strong> - - [22/May/2010:16:27:40 +0200] &ldquo;GET /2010/05/nginx-reverse-proxy/ HTTP/1.0&rdquo; 200 22639 &ldquo;-&rdquo; &ldquo;Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_3; en-US) AppleWebKit/533.4 (KHTML, like Gecko) Chrome/5.0.375.53 Safari/533.4&rdquo; 1771 23031</p>
<p>First one being my current home IP address, the second one being the nginx server IP address. The idea is to have the first line to show up in the logs.</p>
<p>On Gentoo (and I guess it&rsquo;s fairly similar on other distributions);</p>
<pre>*  www-apache/mod_rpaf
      Latest version available: 0.6
      Latest version installed: 0.6
      Size of files: 7 kB
      Homepage:      http://stderr.net/apache/rpaf/
      Description:   Reverse proxy add forward module
      License:       Apache-2.0</pre>
<p><span style="font-style: normal;">Emerge it, add &ldquo;-D RPAF&rdquo; to /etc/conf.d/apache2 and add the following the the correct vhost (e.g. /etc/apache2/vhosts.d/your_vhost.conf):</span></p>
<pre>&lt;IfModule mod_rpaf.c&gt;
      RPAFenable On
      RPAFsethostname On
      RPAFproxy_ips <strong>85.12.6.171</strong>
&lt;/IfModule&gt;</pre>
<p><span style="font-style: normal;">Change the bold IP address to your nginx rproxy IP address</span></p>
<p><span style="font-style: normal;">Might be safe to run &ldquo;apache2ctl configtest&rdquo; to make sure you don&rsquo;t have any errors in your config file(s).</span></p>
<p><span style="font-style: normal;">And restart Apache. This makes it show the correct IP address in its log files.</span></p>
<p><span style="font-style: normal;">Next on my to do list, getting it to actually cache something. </span></p>
]]></content:encoded>
      <category>Linux</category><category>Networking</category><category>Software</category><category>www</category>
      <category>nginx</category>
    </item>
    
    <item>
      <title>nginx reverse proxy</title>
      <link>https://yeri.be/nginx-reverse-proxy/</link>
      <pubDate>Sat, 22 May 2010 15:35:08 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/nginx-reverse-proxy/</guid>
      <description>&lt;p&gt;I&amp;rsquo;ve been &lt;a href=&#34;http://uptime.netcraft.com/up/graph?site=vm1.rootspirit.com&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;playing around&lt;/a&gt; a bit with &lt;a href=&#34;http://nginx.org/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;nginx&lt;/a&gt; and its reverse proxy module. The &amp;ldquo;real&amp;rdquo; website is accessible &lt;a href=&#34;https://yeri.be/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;here&lt;/a&gt;, whereas the cached version is &lt;a href=&#34;https://yeri.be/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;here&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;em&gt;I&amp;rsquo;m deliberately making a difference between cache.* and live.* as blog.tuinslak.* might move to the cached version lateron. &lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;The question, is it useful to reverse proxy this blog? No, probably not. But meh&amp;hellip; It&amp;rsquo;s fun. :)&lt;/p&gt;&#xA;&lt;p&gt;IP differences between both versions: &lt;a href=&#34;https://static.yeri.be/2010/05/ip.php&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;live&lt;/a&gt; vs &lt;a href=&#34;https://static.yeri.be/2010/05/ip.php&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;cache&lt;/a&gt;°. I&amp;rsquo;m guessing as most of the stats (Google Analytics and WP Stats) are JavaScript based, all stats should still be correctly generated. Only the Apache logs show the nginx proxy &lt;a href=&#34;https://web.archive.org/web/20110213161611/http://vm1.rootspirit.com:80/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;IP&lt;/a&gt; address. Which is normal, I guess.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>I&rsquo;ve been <a href="http://uptime.netcraft.com/up/graph?site=vm1.rootspirit.com" target="_blank" rel="noopener noreferrer">playing around</a> a bit with <a href="http://nginx.org/" target="_blank" rel="noopener noreferrer">nginx</a> and its reverse proxy module. The &ldquo;real&rdquo; website is accessible <a href="https://yeri.be/" target="_blank" rel="noopener noreferrer">here</a>, whereas the cached version is <a href="https://yeri.be/" target="_blank" rel="noopener noreferrer">here</a>.</p>
<p><em>I&rsquo;m deliberately making a difference between cache.* and live.* as blog.tuinslak.* might move to the cached version lateron. </em></p>
<p>The question, is it useful to reverse proxy this blog? No, probably not. But meh&hellip; It&rsquo;s fun. :)</p>
<p>IP differences between both versions: <a href="https://static.yeri.be/2010/05/ip.php" target="_blank" rel="noopener noreferrer">live</a> vs <a href="https://static.yeri.be/2010/05/ip.php" target="_blank" rel="noopener noreferrer">cache</a>°. I&rsquo;m guessing as most of the stats (Google Analytics and WP Stats) are JavaScript based, all stats should still be correctly generated. Only the Apache logs show the nginx proxy <a href="https://web.archive.org/web/20110213161611/http://vm1.rootspirit.com:80/" target="_blank" rel="noopener noreferrer">IP</a> address. Which is normal, I guess.</p>
<p>First small test doesn&rsquo;t seem too good. Apparently not a lot of caching is going on. Though most of this site&rsquo;s content is HTML (using WPSuperCache).</p>
<ul>
    <li>Live, on One, using Apache: <a href="https://static.yeri.be/2010/05/one_apache.txt" target="_blank" rel="noopener noreferrer">here</a> &amp; <a href="https://static.yeri.be/2010/05/one_apache_img.txt" target="_blank" rel="noopener noreferrer">here</a></li>
    <li>Proxy, on VM1, using nginx: <a href="https://static.yeri.be/2010/05/vm1_nginx.txt" target="_blank" rel="noopener noreferrer">here</a> &amp; <a href="https://static.yeri.be/2010/05/vm1_nginx_img.txt" target="_blank" rel="noopener noreferrer">here</a></li>
</ul>
<p>More tests &amp; fine tuning later!</p>
<p>(°): Due to a <a href="https://yeri.be/nginx-reverse-proxy-ip/">minor edit</a>, the live and cached version both show the <span style="text-decoration: line-through;"><a href="https://yeri.be/nginx-reverse-proxy-with-caching">correct</a></span> IP address (yours) instead of the nginx proxy IP address.</p>
]]></content:encoded>
      <category>Linux</category><category>Networking</category><category>Software</category><category>www</category>
      <category>nginx</category>
    </item>
    
    <item>
      <title>OpenVPN packet drops</title>
      <link>https://yeri.be/openvpn-packet-drops/</link>
      <pubDate>Mon, 08 Mar 2010 17:22:35 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/openvpn-packet-drops/</guid>
      <description>&lt;p&gt;I recently started to notice following error messages on my openVPN server.&lt;/p&gt;&#xA;&lt;address&gt;ovpn-server[6306]: vpn.rootspirit.com/85.234.x.y:62068 MULTI: packet dropped due to output saturation (multi_process_incoming_tun)&lt;/address&gt;This basically means that the TUN or TAP interface is making more packets than the real (TCP) interface can handle.&#xA;&lt;p&gt;As I need to run OpenVPN using the TCP protocol (instead of the faster UDP protocol; as UDP is often blocked in networks I use my VPN in) I experimented by increasing the tcp-queue-limit. The default is 64, and I&amp;rsquo;ve set it to 256. So far, everything still seems to be working fine (but more packets will be queued before being dropped by OpenVPN, requiring less retransmissions).&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>I recently started to notice following error messages on my openVPN server.</p>
<address>ovpn-server[6306]: vpn.rootspirit.com/85.234.x.y:62068 MULTI: packet dropped due to output saturation (multi_process_incoming_tun)</address>This basically means that the TUN or TAP interface is making more packets than the real (TCP) interface can handle.
<p>As I need to run OpenVPN using the TCP protocol (instead of the faster UDP protocol; as UDP is often blocked in networks I use my VPN in) I experimented by increasing the tcp-queue-limit. The default is 64, and I&rsquo;ve set it to 256. So far, everything still seems to be working fine (but more packets will be queued before being dropped by OpenVPN, requiring less retransmissions).</p>
<p>Add this to the OpenVPN server config:</p>
<address>tcp-queue-limit 256</address>And restart the daemon.
]]></content:encoded>
      <category>Errors</category><category>Linux</category><category>Networking</category><category>Software</category>
      <category>openvpn</category><category>vpn</category>
    </item>
    
    <item>
      <title>Barcamp WiFi: the statistics - #BCA2010</title>
      <link>https://yeri.be/barcamp-wifi-the-statistics-bca2010/</link>
      <pubDate>Sat, 06 Mar 2010 19:57:49 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/barcamp-wifi-the-statistics-bca2010/</guid>
      <description>&lt;ul&gt;&#xA;&#x9;&lt;li&gt;A total of 87 IPs have been handed out (so 87 different MAC addresses)&lt;/li&gt;&#xA;&#x9;&lt;li&gt;A total of 70 users used the (transparent) Squid proxy, so a few never logged in&lt;/li&gt;&#xA;&#x9;&lt;li&gt;There was a total of 1.3Gb of HTTP traffic (Saturday only)&lt;/li&gt;&#xA;&#x9;&lt;li&gt;There was a total of 720.91Mb upload and 2.11Gb download traffic (including Friday evening)&lt;/li&gt;&#xA;&#x9;&lt;li&gt;Total server uptime was 1 day, 1 hour and 31 minutes :)&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p style=&#34;text-align: center;&#34;&gt;&lt;a href=&#34;https://static.yeri.be/2010/03/status_rrd_graph_img2.png&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&lt;img class=&#34;size-full wp-image-1037 aligncenter&#34; title=&#34;RRD graph Saturday - BarCamp Antwerp&#34; src=&#34;https://static.yeri.be/2010/03/status_rrd_graph_img2.png&#34; alt=&#34;&#34; width=&#34;516&#34; height=&#34;251&#34; /&gt;&lt;/a&gt;&lt;/p&gt;</description>
      <content:encoded><![CDATA[<ul>
	<li>A total of 87 IPs have been handed out (so 87 different MAC addresses)</li>
	<li>A total of 70 users used the (transparent) Squid proxy, so a few never logged in</li>
	<li>There was a total of 1.3Gb of HTTP traffic (Saturday only)</li>
	<li>There was a total of 720.91Mb upload and 2.11Gb download traffic (including Friday evening)</li>
	<li>Total server uptime was 1 day, 1 hour and 31 minutes :)</li>
</ul>
<p style="text-align: center;"><a href="https://static.yeri.be/2010/03/status_rrd_graph_img2.png" target="_blank" rel="noopener noreferrer"><img class="size-full wp-image-1037 aligncenter" title="RRD graph Saturday - BarCamp Antwerp" src="https://static.yeri.be/2010/03/status_rrd_graph_img2.png" alt="" width="516" height="251" /></a></p>
]]></content:encoded>
      <category>Misc</category><category>Networking</category>
      <category>antwerp</category><category>barcamp</category>
    </item>
    
    <item>
      <title>Barcamp Antwerp - #BCA2010</title>
      <link>https://yeri.be/barcamp-antwerp/</link>
      <pubDate>Fri, 05 Mar 2010 16:00:38 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/barcamp-antwerp/</guid>
      <description>&lt;p&gt;For those visiting &lt;a href=&#34;http://en.wikipedia.org/wiki/BarCamp&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;BarCamp&lt;/a&gt; &lt;a href=&#34;http://www.barcampantwerpen.org/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Antwerp&lt;/a&gt; tomorrow, make sure to connect to the open &lt;a href=&#34;https://web.archive.org/web/20190120045452/http://www.userplus.org/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Userplus.org&lt;/a&gt; &amp;ldquo;barcamp&amp;rdquo; WiFi SSID.&lt;/p&gt;&#xA;&lt;p&gt;Any feedback or comments about it can be mailed (&lt;em&gt;yeri @ rootspirit . com&lt;/em&gt;) or left below.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>For those visiting <a href="http://en.wikipedia.org/wiki/BarCamp" target="_blank" rel="noopener noreferrer">BarCamp</a> <a href="http://www.barcampantwerpen.org/" target="_blank" rel="noopener noreferrer">Antwerp</a> tomorrow, make sure to connect to the open <a href="https://web.archive.org/web/20190120045452/http://www.userplus.org/" target="_blank" rel="noopener noreferrer">Userplus.org</a> &ldquo;barcamp&rdquo; WiFi SSID.</p>
<p>Any feedback or comments about it can be mailed (<em>yeri @ rootspirit . com</em>) or left below.</p>
]]></content:encoded>
      <category>Misc</category><category>Networking</category>
      <category>antwerp</category><category>barcamp</category>
    </item>
    
    <item>
      <title>Linux gateway/router &#43; unable to access certain (HTTPS) sites</title>
      <link>https://yeri.be/linux-gatewayrouter-unable-to-access-certain-https-sites/</link>
      <pubDate>Sat, 27 Feb 2010 13:56:47 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/linux-gatewayrouter-unable-to-access-certain-https-sites/</guid>
      <description>&lt;p&gt;I&amp;rsquo;ve had an issue for a while, being unable to access certain websites such as &lt;a href=&#34;https://fon.com&#34; target=&#34;_blank&#34;&gt;&lt;a href=&#34;https://fon.com&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;https://fon.com&lt;/a&gt;&lt;/a&gt;, but also certain parts of the Apple, Fortis and Microsoft site, while other (https) websites worked fine.&lt;/p&gt;&#xA;&lt;p&gt;Running Wireshark I found that only about 5ish packets got transferred, and all other data to that website abruptly stopped.&lt;/p&gt;&#xA;&lt;p&gt;I&amp;rsquo;m using ADSL (&lt;a href=&#34;http://www.edpnet.be/&#34; target=&#34;_blank&#34;&gt;EDPnet&lt;/a&gt;), which has an MTU of 1492, however, I was able to access all websites from the router (using lynx, for example), but not from any other PC within the network.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>I&rsquo;ve had an issue for a while, being unable to access certain websites such as <a href="https://fon.com" target="_blank"><a href="https://fon.com" target="_blank" rel="noopener noreferrer">https://fon.com</a></a>, but also certain parts of the Apple, Fortis and Microsoft site, while other (https) websites worked fine.</p>
<p>Running Wireshark I found that only about 5ish packets got transferred, and all other data to that website abruptly stopped.</p>
<p>I&rsquo;m using ADSL (<a href="http://www.edpnet.be/" target="_blank">EDPnet</a>), which has an MTU of 1492, however, I was able to access all websites from the router (using lynx, for example), but not from any other PC within the network.</p>
<pre># ifconfig<span style="color: #ff0000;"> ppp0</span>
ppp0      Link encap:Point-to-Point Protocol
inet addr:85.234.196.57  P-t-P:85.234.196.1  Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST  <span style="color: #ff0000;">MTU:1492</span> Metric:1
RX packets:38804442 errors:0 dropped:0 overruns:0 frame:0
TX packets:28930886 errors:0 dropped:5020 overruns:0 carrier:0
collisions:0 txqueuelen:3
RX bytes:45941523311 (42.7 GiB)  TX bytes:2887926670 (2.6 GiB)</pre>
<p style="padding-left: 60px;"><span style="color: #000000;"> </span></p>
As it had worked before without any issues, I was more thinking about a kernel problem (or a module of it), however, stripping down unnecessary modules and updating my kernel a few times didn't resolve the issue. I even booted an old kernel I had still lying around from when I could access the websites. However, all these attempts were in vain.
<p>Thinking it might have been a firewall issue, I flushed all my iptables rules, and started over from scratch. However, this too didn&rsquo;t solve my issue.</p>
<p>When I VPN&rsquo;ed or used my Macbook Pro directly as PPPoE device (by-passing the Gentoo router) I was able to access all the websites as well.</p>
<p>After being close to giving up, I found the following iptables rule:</p>
<pre>iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu -t mangle</pre>
<p>And try again.</p>
<p>This did solve my issue. :)</p>
<p>This is because the default 100mbit MTU is 1500, instead of 1492 for PPPoE.</p>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">http://www.edpnet.be/</div>
]]></content:encoded>
      <category>Errors</category><category>Linux</category><category>Networking</category>
      <category>Linux</category><category>https</category><category>mtu</category><category>router</category>
    </item>
    
    <item>
      <title>Public DNS server</title>
      <link>https://yeri.be/public-dns-server/</link>
      <pubDate>Tue, 16 Feb 2010 17:11:48 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/public-dns-server/</guid>
      <description>&lt;p&gt;I have been running a public DNS server for private purpose (never liked my ISP&amp;rsquo;s DNS servers, and the root servers were usually located too far away (at least those with easy to remember IPs).&lt;/p&gt;&#xA;&lt;p&gt;Anyway, been testing it since this summer, and so far it&amp;rsquo;s been working great.&lt;/p&gt;&#xA;&lt;p&gt;the DNS server running on a Debian &lt;a href=&#34;https://web.archive.org/web/20110213161611/http://vm1.rootspirit.com:80/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;virtual machine&lt;/a&gt;, hosted by &lt;a href=&#34;http://rootspirit.com&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Rootspirit&lt;/a&gt;, near Amsterdam.&lt;/p&gt;&#xA;&lt;p&gt;IP address: &lt;strong&gt;85.12.6.171&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;Hostname: vm1.rootspirit.com&lt;/p&gt;&#xA;&lt;p&gt;Might not be an easy to remember IP address (unlike 4.2.2.1), but as I use that IP pretty much every day, it&amp;rsquo;s okay for me. ;)&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>I have been running a public DNS server for private purpose (never liked my ISP&rsquo;s DNS servers, and the root servers were usually located too far away (at least those with easy to remember IPs).</p>
<p>Anyway, been testing it since this summer, and so far it&rsquo;s been working great.</p>
<p>the DNS server running on a Debian <a href="https://web.archive.org/web/20110213161611/http://vm1.rootspirit.com:80/" target="_blank" rel="noopener noreferrer">virtual machine</a>, hosted by <a href="http://rootspirit.com" target="_blank" rel="noopener noreferrer">Rootspirit</a>, near Amsterdam.</p>
<p>IP address: <strong>85.12.6.171</strong></p>
<p>Hostname: vm1.rootspirit.com</p>
<p>Might not be an easy to remember IP address (unlike 4.2.2.1), but as I use that IP pretty much every day, it&rsquo;s okay for me. ;)</p>
<p><em>Edit:</em> Let me remind you that I do not agree with NX domain hijacking, or falsifying/redirecting certain DNS requests (such as OpenDNS google.com to google.navigation.opendns.com or the Belgian ban on stopkinderporno.com and redirecting it to <a href="https://web.archive.org/web/20120117054730/http://84.199.40.99/" target="_blank" rel="noopener noreferrer">84.199.40.99</a>).</p>
<p>Check out <a href="http://code.google.com/p/namebench/" target="_blank" rel="noopener noreferrer">this</a> awesome tool to find the best DNS servers near you.</p>
]]></content:encoded>
      <category>Networking</category>
      <category>dns</category><category>rootspirit</category>
    </item>
    
    <item>
      <title>OpenVPN &amp; Windows 7</title>
      <link>https://yeri.be/openvpn-windows-7/</link>
      <pubDate>Sun, 14 Feb 2010 17:10:11 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/openvpn-windows-7/</guid>
      <description>&lt;p&gt;There&amp;rsquo;s a great GUI out for OpenVPN &amp;amp; Windows, located &lt;a href=&#34;http://openvpn.se/download.html&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;here&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;However, this GUI includes an old OpenVPN, that is no longer compatible with Windows 7 and Windows Vista.&lt;/p&gt;&#xA;&lt;p&gt;The TUN/TAP driver will be blocked due to compatibility issues, and when trying to connect to a VPN, you&amp;rsquo;ll get an error along the lines of:&lt;/p&gt;&#xA;&lt;p&gt;&lt;code&gt;All TAP-Win32 adapters on this system are currently in use&lt;/code&gt;&lt;/p&gt;&#xA;&lt;p&gt;The simplest fix, is to install the GUI package (including the old OpenVPN binaries), and reinstall OpenVPN afterwards.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>There&rsquo;s a great GUI out for OpenVPN &amp; Windows, located <a href="http://openvpn.se/download.html" target="_blank" rel="noopener noreferrer">here</a>.</p>
<p>However, this GUI includes an old OpenVPN, that is no longer compatible with Windows 7 and Windows Vista.</p>
<p>The TUN/TAP driver will be blocked due to compatibility issues, and when trying to connect to a VPN, you&rsquo;ll get an error along the lines of:</p>
<p><code>All TAP-Win32 adapters on this system are currently in use</code></p>
<p>The simplest fix, is to install the GUI package (including the old OpenVPN binaries), and reinstall OpenVPN afterwards.</p>
<p>You can find the latest OpenVPN binaries <a href="https://web.archive.org/web/20170607163358/https://openvpn.net/release/" target="_blank" rel="noopener noreferrer">here</a> and the latest version, when writing this post <a href="https://web.archive.org/web/20170607163358/https://openvpn.net/release/" target="_blank" rel="noopener noreferrer">here</a>.</p>
<p>This will overwrite the old files and update the driver with a Windows 7 compatible driver.</p>
<p>Try to connect now, everything should work like a charm. :)</p>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">http://openvpn.se/download.html</div>
]]></content:encoded>
      <category>Errors</category><category>Networking</category><category>Software</category><category>Windows</category>
      <category>openvpn</category><category>vpn</category><category>windows 7</category>
    </item>
    
    <item>
      <title>MRTG</title>
      <link>https://yeri.be/mrtg/</link>
      <pubDate>Wed, 18 Nov 2009 17:14:57 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/mrtg/</guid>
      <description>&lt;p&gt;As I often have people asking for the files I use to make my pretty MRTG graphs; I&amp;rsquo;ll publish them here.&lt;/p&gt;&#xA;&lt;p&gt;Here are some examples:&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://web.archive.org/web/20100712200524/http://mrtg.rootspirit.com:80/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Zero&lt;/a&gt; - &lt;a href=&#34;http://one.rootspirit.com/mrtg/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;One&lt;/a&gt; - &lt;a href=&#34;http://four.rootspirit.com/mrtg/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Four&lt;/a&gt; - &lt;a href=&#34;http://vm1.rootspirit.com/mrtg/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;vm1&lt;/a&gt; - &lt;a href=&#34;http://home.tiete.be/mrtg/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Sauron&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;The config files:&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://static.yeri.be/2009/11/sauron.tar&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Sauron&lt;/a&gt; (including Squid stats),&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://static.yeri.be/2009/11/zero.tar&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Zero&lt;/a&gt; (including fan stats).&lt;/p&gt;&#xA;&lt;p&gt;List of files included:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;indexmaker; simple script (included with MRTG) to generate a simple index file with all the graphs&lt;/li&gt;&#xA;&lt;li&gt;snmp-if.sh; will show you the IDs of the interfaces on the server/pc. These IDs have to be edited in the mrtg.cfg file; e.g.:&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Target[eth0]: &lt;span style=&#34;color: #ff0000;&#34;&gt;2&lt;/span&gt;:public@localhost:&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>As I often have people asking for the files I use to make my pretty MRTG graphs; I&rsquo;ll publish them here.</p>
<p>Here are some examples:</p>
<p><a href="https://web.archive.org/web/20100712200524/http://mrtg.rootspirit.com:80/" target="_blank" rel="noopener noreferrer">Zero</a> - <a href="http://one.rootspirit.com/mrtg/" target="_blank" rel="noopener noreferrer">One</a> - <a href="http://four.rootspirit.com/mrtg/" target="_blank" rel="noopener noreferrer">Four</a> - <a href="http://vm1.rootspirit.com/mrtg/" target="_blank" rel="noopener noreferrer">vm1</a> - <a href="http://home.tiete.be/mrtg/" target="_blank" rel="noopener noreferrer">Sauron</a></p>
<p>The config files:</p>
<p><a href="https://static.yeri.be/2009/11/sauron.tar" target="_blank" rel="noopener noreferrer">Sauron</a> (including Squid stats),</p>
<p><a href="https://static.yeri.be/2009/11/zero.tar" target="_blank" rel="noopener noreferrer">Zero</a> (including fan stats).</p>
<p>List of files included:</p>
<ul>
<li>indexmaker; simple script (included with MRTG) to generate a simple index file with all the graphs</li>
<li>snmp-if.sh; will show you the IDs of the interfaces on the server/pc. These IDs have to be edited in the mrtg.cfg file; e.g.:</li>
</ul>
<p>Target[eth0]: <span style="color: #ff0000;">2</span>:public@localhost:</p>
<p>Make sure 2 is indeed the ID of eth0. Be aware that virtual interfaces, like the TUN/TAP interfaces (using by openVPN for example), can change ID each time they are restarted/rebooted.</p>
<ul>
<li>mrtg.cfg; check the config file as an example.</li></ul>
<li>mrtg-&lt;xyz&gt;.sh; bunch of files to generate some data. Not all of  those still work, but I haven't deleted them yet in case. See the config to check those I'm using.
</li>
<li>
<p>mrtg._1 and mrtg.ok can be deleted/ignores. Those files are generated by MRTG and I was to lazy to remove them. :(</p>
</li>
<p>Some day, I&rsquo;ll write a decent howto, but for now, you&rsquo;ll have to do with this.</p>
<p>If there&rsquo;s any question, just leave a comment.</p>
]]></content:encoded>
      <category>Hardware</category><category>Misc</category><category>Networking</category><category>Software</category><category>www</category>
      <category>Linux</category><category>Ubuntu</category><category>debian</category><category>gentoo</category><category>mrtg</category><category>stats</category>
    </item>
    
    <item>
      <title>Windows 7 &#43; iPhone tethering</title>
      <link>https://yeri.be/windows-7-iphone-tethering/</link>
      <pubDate>Fri, 13 Nov 2009 11:56:25 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/windows-7-iphone-tethering/</guid>
      <description>&lt;p&gt;If Apple was so kind to give you tethering (and didn&amp;rsquo;t silently remove it after an update), or if you just happen to have enabled it using, let&amp;rsquo;s say, &lt;a href=&#34;http://blackra1n.com/&#34; target=&#34;_blank&#34;&gt;the alternative method&lt;/a&gt;. And you happen to be forced to use Windows, and you really are tired of XP, and Vista surely isn&amp;rsquo;t an option; you&amp;rsquo;re probably running Windows 7.&lt;/p&gt;&#xA;&lt;p&gt;To enable tethering on the iPhone + Windows; just pair the bluetooth devices (I actually haven&amp;rsquo;t tried with USB yet, and don&amp;rsquo;t really plan on doing that), Windows will start to &lt;a href=&#34;http://www.wowwiki.com/QQ&#34; target=&#34;_blank&#34;&gt;QQ&lt;/a&gt; about it being unable to find a suitable driver for the iPhone&amp;hellip; I even installed iTunes to see if the message would go away, but apparently it won&amp;rsquo;t. I&amp;rsquo;ll have to do some more Googling later on.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>If Apple was so kind to give you tethering (and didn&rsquo;t silently remove it after an update), or if you just happen to have enabled it using, let&rsquo;s say, <a href="http://blackra1n.com/" target="_blank">the alternative method</a>. And you happen to be forced to use Windows, and you really are tired of XP, and Vista surely isn&rsquo;t an option; you&rsquo;re probably running Windows 7.</p>
<p>To enable tethering on the iPhone + Windows; just pair the bluetooth devices (I actually haven&rsquo;t tried with USB yet, and don&rsquo;t really plan on doing that), Windows will start to <a href="http://www.wowwiki.com/QQ" target="_blank">QQ</a> about it being unable to find a suitable driver for the iPhone&hellip; I even installed iTunes to see if the message would go away, but apparently it won&rsquo;t. I&rsquo;ll have to do some more Googling later on.</p>
<p>Anyway, to tether, just go to &ldquo;Control Panel&rdquo; &gt; &ldquo;View devices and printers&rdquo; (under &ldquo;Hardware and Sound&rdquo;) &gt; Devices &gt; $iPhone_Name (it has a fancy yellow warning sign next to it&hellip;).</p>
<p>Right click, &ldquo;Connect using&rdquo; &gt; &ldquo;Access point&rdquo;.</p>
<p>Simple enough. Pick &ldquo;Public network&rdquo;, just to be sure (though, your ISP should already block most direct connections between devices, and your iPhone won&rsquo;t forward any ports I guess/hope).</p>
<p>And don&rsquo;t forget to disable WiFi or unplug your network cable if you want to test it at home.</p>
<p>Oh, right, and I probably should give you a bunch of warnings about data consumption and that AT&amp;T might brutally murder you and your family if you dare using tethering (as far as they can actually check you&rsquo;re tethering, and if they can, I&rsquo;m pretty sure they&rsquo;ll be violating a couple of privacy laws). As for the customers of the 95% other decent providers who allow tethering and aren&rsquo;t living in the middle ages, have fun using it. Finally work can be done on the train/while waiting/&hellip; ;)</p>
]]></content:encoded>
      <category>Networking</category><category>Windows</category>
      <category>iPhone</category><category>windows 7</category>
    </item>
    
    <item>
      <title>Prowl: check server status (using ping)</title>
      <link>https://yeri.be/prowl-check-server-status-using-ping/</link>
      <pubDate>Sun, 30 Aug 2009 11:35:57 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/prowl-check-server-status-using-ping/</guid>
      <description>&lt;p&gt;Yesterday I&amp;rsquo;ve start using &lt;a href=&#34;http://prowl.weks.net/&#34; target=&#34;_blank&#34;&gt;Prowl&lt;/a&gt;, as I heard good comments about it.  And one of the things I want it to check, are my server statuses.  I made a quick script using bash and crontab to check every 10 min if it replies on ping.  Per server, I created &amp;ldquo;host.domain.tld.sh&amp;rdquo; (e.g. zero.rootspirit.com.sh), and added this in the file:&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-BASH&#34; data-lang=&#34;BASH&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;cp&#34;&gt;#!/bin/bash&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;cp&#34;&gt;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;KEY&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;YourApiKey&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;HOST&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;zero.rootspirit.com&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ping -c &lt;span class=&#34;m&#34;&gt;1&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;$HOST&lt;/span&gt;   &lt;span class=&#34;p&#34;&gt;&amp;amp;&lt;/span&gt;&amp;gt;/dev/null&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;$?&lt;/span&gt; -ne &lt;span class=&#34;m&#34;&gt;0&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;then&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl -k -s &lt;span class=&#34;s2&#34;&gt;&amp;#34;https://prowl.weks.net/publicapi/add?apikey=&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$KEY&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;amp;application=Server%20Connectivity%20Failure&amp;amp;event=&amp;amp;description=&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$HOST&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;amp;priority=2&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;fi&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Of course, change KEY to &lt;a href=&#34;https://prowl.weks.net/settings.php&#34; target=&#34;_blank&#34;&gt;your API&lt;/a&gt; key, HOST to the IP or DNS of the server it should ping.  Also, make sure, that when pinging on your host where you&amp;rsquo;ll run the bash script on, a non-existing domain actually returns:&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>Yesterday I&rsquo;ve start using <a href="http://prowl.weks.net/" target="_blank">Prowl</a>, as I heard good comments about it.  And one of the things I want it to check, are my server statuses.  I made a quick script using bash and crontab to check every 10 min if it replies on ping.  Per server, I created &ldquo;host.domain.tld.sh&rdquo; (e.g. zero.rootspirit.com.sh), and added this in the file:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-BASH" data-lang="BASH"><span class="line"><span class="cl"><span class="cp">#!/bin/bash
</span></span></span><span class="line"><span class="cl"><span class="cp"></span><span class="nv">KEY</span><span class="o">=</span>YourApiKey
</span></span><span class="line"><span class="cl"><span class="nv">HOST</span><span class="o">=</span>zero.rootspirit.com
</span></span><span class="line"><span class="cl">ping -c <span class="m">1</span> <span class="nv">$HOST</span>   <span class="p">&amp;</span>&gt;/dev/null
</span></span><span class="line"><span class="cl"><span class="k">if</span> <span class="o">[</span> <span class="nv">$?</span> -ne <span class="m">0</span> <span class="o">]</span> <span class="p">;</span> <span class="k">then</span>
</span></span><span class="line"><span class="cl">curl -k -s <span class="s2">&#34;https://prowl.weks.net/publicapi/add?apikey=</span><span class="nv">$KEY</span><span class="s2">&amp;application=Server%20Connectivity%20Failure&amp;event=&amp;description=</span><span class="nv">$HOST</span><span class="s2">&amp;priority=2&#34;</span>
</span></span><span class="line"><span class="cl"><span class="k">fi</span>
</span></span></code></pre></div><p>Of course, change KEY to <a href="https://prowl.weks.net/settings.php" target="_blank">your API</a> key, HOST to the IP or DNS of the server it should ping.  Also, make sure, that when pinging on your host where you&rsquo;ll run the bash script on, a non-existing domain actually returns:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-BASH" data-lang="BASH"><span class="line"><span class="cl">ping: unknown host ezfzigjagaqg.reg
</span></span></code></pre></div><p>instead of</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-BASH" data-lang="BASH"><span class="line"><span class="cl">PING ezfzigjagaqg.reg.rootspirit.com <span class="o">(</span>85.12.6.130<span class="o">)</span> 56<span class="o">(</span>84<span class="o">)</span> bytes of data.
</span></span></code></pre></div><p>(Should depend on the search line in /etc/resolv.conf)  As I&rsquo;m pinging about 6 servers I created the file &ldquo;checkServers.sh&rdquo; with this content:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-BASH" data-lang="BASH"><span class="line"><span class="cl"><span class="cp">#!/bin/bash
</span></span></span><span class="line"><span class="cl"><span class="cp"></span>
</span></span><span class="line"><span class="cl"><span class="sb">`</span>/home/yeri/prowl/zero.rootspirit.com.sh <span class="p">&amp;</span>&gt;/dev/null<span class="sb">`</span>
</span></span><span class="line"><span class="cl"><span class="sb">`</span>/home/yeri/prowl/one.rootspirit.com.sh <span class="p">&amp;</span>&gt;/dev/null<span class="sb">`</span>
</span></span><span class="line"><span class="cl"><span class="sb">`</span>/home/yeri/prowl/two.rootspirit.com.sh <span class="p">&amp;</span>&gt;/dev/null<span class="sb">`</span>
</span></span><span class="line"><span class="cl"><span class="sb">`</span>/home/yeri/prowl/four.rootspirit.com.sh <span class="p">&amp;</span>&gt;/dev/null<span class="sb">`</span>
</span></span><span class="line"><span class="cl"><span class="sb">`</span>/home/yeri/prowl/vm0.rootspirit.com.sh <span class="p">&amp;</span>&gt;/dev/null<span class="sb">`</span>
</span></span><span class="line"><span class="cl"><span class="sb">`</span>/home/yeri/prowl/vm1.rootspirit.com.sh <span class="p">&amp;</span>&gt;/dev/null<span class="sb">`</span>
</span></span></code></pre></div><p>Make sure to chmod +x *.sh, to make it executable, and edit crontab and add something like that:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-BASH" data-lang="BASH"><span class="line"><span class="cl">*/10	*	*	*	*	/home/yeri/prowl/checkServers.sh <span class="p">&amp;</span>&gt;/dev/null
</span></span></code></pre></div><p>Don&rsquo;t forget to test it whether it works or not (try non-existing domain(s), and run the script again).</p>
]]></content:encoded>
      <category>Apple</category><category>Linux</category><category>Networking</category><category>Software</category>
      <category>bash</category><category>cron</category><category>crontab</category><category>iPhone</category><category>prowl</category><category>server status</category>
    </item>
    
    <item>
      <title>Vodafone Mobile Connect - Incorrect Pin code</title>
      <link>https://yeri.be/vodafone-mobile-connect-incorrect-pin-code/</link>
      <pubDate>Fri, 10 Jul 2009 22:25:49 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/vodafone-mobile-connect-incorrect-pin-code/</guid>
      <description>&lt;p&gt;As I usually use my SIM card in my iPhone, I booted my PC, plugged in the Vodafone USB Mobile Connect modem (HAUWEI 220 or something). I then inserted, with the USB device plugged in, my SIM card, and booted up the Mac (and later on Windows) Vodafone application, to connect my PC to the Proximus 3G network.&lt;/p&gt;&#xA;&lt;p&gt;This resulted in a constant error; &amp;ldquo;&lt;strong&gt;The pin code was not accepted by the mobile device&lt;/strong&gt;&amp;rdquo;.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>As I usually use my SIM card in my iPhone, I booted my PC, plugged in the Vodafone USB Mobile Connect modem (HAUWEI 220 or something). I then inserted, with the USB device plugged in, my SIM card, and booted up the Mac (and later on Windows) Vodafone application, to connect my PC to the Proximus 3G network.</p>
<p>This resulted in a constant error; &ldquo;<strong>The pin code was not accepted by the mobile device</strong>&rdquo;.</p>
<p>I of course removed the SIM card each time, and inserted it back in my iPhone, and unlocked it by inserting my code. I didn&rsquo;t want to lock my SIM card, and made sure I had at least 2 good tries left each time.</p>
<p>As you can let the application remember the pin code, I was 100% sure it were wrong settings. The worst part, was that the application quits after prompting  that message. I reinstalled, searching in the config files, removed all <em>vodafone</em> files, tried in Windows, changed my pin code a couple of times (the default 0000 one too), updated the HAUWEI firmware, updated the Mobile Connect client software, rebooted, and when I was about to give up, it hit me like a truck. I&rsquo;m from the bloody &ldquo;hotswap generation&rdquo;. And Vodafone sucks. Seriously. Wasted 2 hours on that. Such a waste of time, such a simple solution.</p>
<p>When inserting the SIM card into the device. UNPLUG THE USB MODEM. INSERT SIM. THEN, NOT BEFORE, INSERT IT IN THE DAMN PC. Start the application. Enjoy. No more dodgy error messages, the application works, and you can connect to the bloody internet.</p>
<p>GG Vodafone. GG hotswap.</p>
]]></content:encoded>
      <category>Errors</category><category>Hardware</category><category>Networking</category><category>Software</category>
      <category>hotswap</category><category>iPhone</category><category>usb</category><category>vodafone</category>
    </item>
    
    <item>
      <title>OpenVPN Linux &#43; Mac howto</title>
      <link>https://yeri.be/openvpn-linux-mac-howto/</link>
      <pubDate>Sun, 05 Jul 2009 05:14:01 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/openvpn-linux-mac-howto/</guid>
      <description>&lt;p&gt;A short howto, as I was unable to find any clear ones on the net.&lt;/p&gt;&#xA;&lt;p style=&#34;text-align: left;&#34;&gt;I&#39;m using Mac OS X (Leopard) as client, and a &lt;a href=&#34;http://home.tiete.be&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Gentoo server&lt;/a&gt; as server/host.&lt;/p&gt;&#xA;&lt;p style=&#34;text-align: left;&#34;&gt;I both tried &lt;a href=&#34;http://www.viscosityvpn.com/&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Viscosity&lt;/a&gt; and &lt;a href=&#34;https://tunnelblick.net/&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Tunnelblick&lt;/a&gt; on my Mac as OpenVPN software, and Viscosity is probably somewhat easier to configure (using the GUI), it was shareware. So I ended up using Tunnelblick and it seems to be doing its job quite well.&lt;/p&gt;&#xA;&lt;p style=&#34;text-align: left;&#34;&gt;First of all, make sure Gentoo is set up and working as intended. I used my home router as VPN server (having both eth0 and eth1 (= ppp0).&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>A short howto, as I was unable to find any clear ones on the net.</p>
<p style="text-align: left;">I'm using Mac OS X (Leopard) as client, and a <a href="http://home.tiete.be" target="_blank" rel="noopener">Gentoo server</a> as server/host.</p>
<p style="text-align: left;">I both tried <a href="http://www.viscosityvpn.com/" target="_blank" rel="noopener">Viscosity</a> and <a href="https://tunnelblick.net/" target="_blank" rel="noopener">Tunnelblick</a> on my Mac as OpenVPN software, and Viscosity is probably somewhat easier to configure (using the GUI), it was shareware. So I ended up using Tunnelblick and it seems to be doing its job quite well.</p>
<p style="text-align: left;">First of all, make sure Gentoo is set up and working as intended. I used my home router as VPN server (having both eth0 and eth1 (= ppp0).</p>
<p style="text-align: left;">Using this <a href="http://forums.gentoo.org/viewtopic-p-5849651.html" target="_blank" rel="noopener">howto</a>, you'll be able to get the server up and running.</p>
<p style="text-align: left;">Besides the installation, and perhaps (config) file locations it should be pretty similar on other Linux distros.</p>
<p style="text-align: left;">As I have dnsmasq running on my server (taking care of DNS) I added the following to the server.conf:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">push <span class="s2">&#34;dhcp-option DNS 10.0.0.1&#34;</span>
</span></span><span class="line"><span class="cl">push <span class="s2">&#34;redirect-gateway def1&#34;</span>
</span></span><span class="line"><span class="cl">client-config-dir ccd
</span></span><span class="line"><span class="cl">route 10.20.30.0 255.255.255.252
</span></span></code></pre></div><p>Don&rsquo;t forget to allow DNS requests over tun0 interface in dnsmasq.conf.</p>
<p>The first line tells the server to hand out 10.0.0.1 as DNS server to its connecting clients (10.0.0.1 being the internal eth0 IP of my server).</p>
<p>The 2nd line, tells all clients to route ALL of their traffic through the VPN. I used the VPN to access a website that allowed only Belgian IPs, and I was in The Netherlands at the time I had to access the site (Skynet&rsquo;s Rock Werchter stream). So I connected through my server at home.</p>
<p>And the 3rd and 4th line are needed if the client access the VPN is on a private IP subnet (like being connected on a WiFi router, using IP 192.168.178.x).</p>
<p>You&rsquo;ll have to add, in the client-config directory a file per username connecting to the VPN with something similar to this:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">iroute 192.168.178.0 255.255.255.0
</span></span></code></pre></div><p>I&rsquo;m not entirely sure if you can add multiple iroutes; something I&rsquo;ll have to figure out when being on a different network.</p>
<p>This is what my client config looks like (vpn-server-name.conf, located in ~<em>/</em>Library/openvpn/):</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">client
</span></span><span class="line"><span class="cl">dev tun
</span></span><span class="line"><span class="cl">proto udp
</span></span><span class="line"><span class="cl">remote home.tiete.be <span class="m">9000</span>
</span></span><span class="line"><span class="cl">resolv-retry infinite
</span></span><span class="line"><span class="cl">nobind
</span></span><span class="line"><span class="cl">tun-mtu <span class="m">1500</span>
</span></span><span class="line"><span class="cl">tun-mtu-extra <span class="m">32</span>
</span></span><span class="line"><span class="cl">mssfix <span class="m">1200</span>
</span></span><span class="line"><span class="cl">persist-key
</span></span><span class="line"><span class="cl">persist-tun
</span></span><span class="line"><span class="cl">ca <span class="s2">&#34;ca.crt&#34;</span>
</span></span><span class="line"><span class="cl">cert <span class="s2">&#34;yeri.crt&#34;</span>
</span></span><span class="line"><span class="cl">key <span class="s2">&#34;yeri.key&#34;</span>
</span></span><span class="line"><span class="cl">tls-auth <span class="s2">&#34;ta.key&#34;</span> <span class="m">1</span>
</span></span><span class="line"><span class="cl">comp-lzo
</span></span><span class="line"><span class="cl">verb <span class="m">3</span>
</span></span></code></pre></div><p>Yeri being my username. Don&rsquo;t forget to download and add the ca.crt, user.crt, user.key (located in /usr/share/openvpn/easy-rsa/keys/) and ta.key (located in /etc/openvpn/) you&rsquo;ve created on the server.</p>
<p>If your client asks for &ldquo;directions&rdquo;, pick 1.</p>
<p>Start up server and client software.</p>
<p>Hitting connect in Tunnelblick should connect you to the VPN server, and (in my case) giving me an IP similar to 10.20.30.6. You can check this using &ldquo;ifconfig&rdquo; in Terminal.</p>
<p>Client:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">tun0: <span class="nv">flags</span><span class="o">=</span><span class="m">8851</span> mtu <span class="m">1500</span>
</span></span><span class="line"><span class="cl">    inet 10.20.30.6 --&gt; 10.20.30.5 netmask 0xffffffff
</span></span><span class="line"><span class="cl">    open <span class="o">(</span>pid 20551<span class="o">)</span>
</span></span></code></pre></div><p>Server:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">tun0      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
</span></span><span class="line"><span class="cl">inet addr:10.20.30.1  P-t-P:10.20.30.2  Mask:255.255.255.255
</span></span><span class="line"><span class="cl">UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1500  Metric:1
</span></span><span class="line"><span class="cl">RX packets:407595 errors:0 dropped:0 overruns:0 frame:0
</span></span><span class="line"><span class="cl">TX packets:574351 errors:0 dropped:0 overruns:0 carrier:0
</span></span><span class="line"><span class="cl">collisions:0 txqueuelen:100
</span></span><span class="line"><span class="cl">RX bytes:27473209 <span class="o">(</span>26.2 MiB<span class="o">)</span>  TX bytes:603524377 <span class="o">(</span>575.5 MiB<span class="o">)</span>
</span></span></code></pre></div><p>Don&rsquo;t forget; when using &ldquo;tun&rdquo; as driver, your gateway/VPN server will always have the IP ending on .1 (e.g.: 10.20.30.1).</p>
<p>Now, if you want to route all traffic throug the VPN, like I did, you&rsquo;ll have to change some stuff in iptables (as the server is also acting as my home router, I already did have a few rules in it).</p>
<p>Allow all traffic through tun0 interface:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">iptables -A OUTPUT -o tun0 -j ACCEPT
</span></span><span class="line"><span class="cl">iptables -A INPUT -i tun0 -j ACCEPT
</span></span></code></pre></div><p>Allow traffic through the external port 9000 (UDP):</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">iptables -A INPUT -i ppp0 -p udp -m udp --dport <span class="m">9000</span> -j ACCEPT
</span></span></code></pre></div><p>Enable forwarding and NAT:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">iptables -A FORWARD -s 10.20.30.0/24 -i tun0 -j ACCEPT
</span></span><span class="line"><span class="cl">iptables -A FORWARD -d 10.20.30.0/24 -i ppp0 -j ACCEPT
</span></span><span class="line"><span class="cl">iptables -A POSTROUTING -o ppp0 -j MASQUERADE
</span></span></code></pre></div><p>And lastly, as I have Squid running on my server, I want to transparently forward all port 80 requests to the Squid server running on port 8080:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">iptables -t nat -A PREROUTING -i tun0 -p tcp -m tcp --dport <span class="m">80</span> -j REDIRECT --to-ports <span class="m">8080</span>
</span></span></code></pre></div><p>That&rsquo;s about it. You should have a running VPN from your current location to your VPN server. And you&rsquo;re able to use it as a gateway.</p>
<p>You can always traceroute/tracepath to your VPN server (10.20.30.1). It should only find one hop.</p>
]]></content:encoded>
      <category>Apple</category><category>Linux</category><category>Networking</category>
      <category>Apple</category><category>Linux</category><category>gentoo</category><category>openvpn</category><category>vpn</category>
    </item>
    
    <item>
      <title>Imap/Gmail mark as read</title>
      <link>https://yeri.be/imapgmail-mark-as-read/</link>
      <pubDate>Fri, 31 Oct 2008 02:38:51 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/imapgmail-mark-as-read/</guid>
      <description>&lt;p&gt;I&amp;rsquo;ve &amp;ldquo;updated&amp;rdquo; my &lt;a href=&#34;https://yeri.be/gmail-automatic-mark-spam-as-read/&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;previous php&lt;/a&gt;-app.&lt;/p&gt;&#xA;&lt;p&gt;Since today I ended up getting this error:&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Warning: imap_open&lt;span class=&#34;o&#34;&gt;()&lt;/span&gt;: Couldn&lt;span class=&#34;err&#34;&gt;&amp;#39;&lt;/span&gt;t open stream &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;imap.gmail.com:993/imap/ssl&lt;span class=&#34;o&#34;&gt;}[&lt;/span&gt;Google Mail&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;/Spam in /home/yeri/.gmail.php on line &lt;span class=&#34;m&#34;&gt;30&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Certificate failure &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; imap.gmail.com: unable to get &lt;span class=&#34;nb&#34;&gt;local&lt;/span&gt; issuer certificate: /C&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;US/ST&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;California/L&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;Mountain View/O&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;Google Inc/CN&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;imap.gmail.com - Connection failed.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Simply searching this line:&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-php&#34; data-lang=&#34;php&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;$open&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;nx&#34;&gt;imap_open&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;{imap.gmail.com:993/imap/ssl/}&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;$path&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;And editing it to:&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-php&#34; data-lang=&#34;php&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;$open&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;nx&#34;&gt;imap_open&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;{imap.gmail.com:993/imap/ssl/novalidate-cert}&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;$path&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Solves the problem.&lt;/p&gt;&#xA;&lt;p&gt;This will ignore the Google certificate. Please do double check that imap.google.com really points to Google, and it&amp;rsquo;s not some kind of DNS issue.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>I&rsquo;ve &ldquo;updated&rdquo; my <a href="https://yeri.be/gmail-automatic-mark-spam-as-read/" target="_blank" rel="noopener">previous php</a>-app.</p>
<p>Since today I ended up getting this error:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">Warning: imap_open<span class="o">()</span>: Couldn<span class="err">&#39;</span>t open stream <span class="o">{</span>imap.gmail.com:993/imap/ssl<span class="o">}[</span>Google Mail<span class="o">]</span>/Spam in /home/yeri/.gmail.php on line <span class="m">30</span>
</span></span><span class="line"><span class="cl">Certificate failure <span class="k">for</span> imap.gmail.com: unable to get <span class="nb">local</span> issuer certificate: /C<span class="o">=</span>US/ST<span class="o">=</span>California/L<span class="o">=</span>Mountain View/O<span class="o">=</span>Google Inc/CN<span class="o">=</span>imap.gmail.com - Connection failed.
</span></span></code></pre></div><p>Simply searching this line:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-php" data-lang="php"><span class="line"><span class="cl"><span class="nv">$open</span> <span class="o">=</span> <span class="nx">imap_open</span> <span class="p">(</span><span class="s2">&#34;{imap.gmail.com:993/imap/ssl/}</span><span class="si">$path</span><span class="s2">&#34;</span>
</span></span></code></pre></div><p>And editing it to:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-php" data-lang="php"><span class="line"><span class="cl"><span class="nv">$open</span> <span class="o">=</span> <span class="nx">imap_open</span> <span class="p">(</span><span class="s2">&#34;{imap.gmail.com:993/imap/ssl/novalidate-cert}</span><span class="si">$path</span><span class="s2">&#34;</span>
</span></span></code></pre></div><p>Solves the problem.</p>
<p>This will ignore the Google certificate. Please do double check that imap.google.com really points to Google, and it&rsquo;s not some kind of DNS issue.</p>
<p>I&rsquo;ve <a href="https://static.yeri.be/2008/10/gmail_spamreader_v002.phps" target="_blank" rel="noopener">updated</a> the 1st version, that ignores the certificate.</p>
]]></content:encoded>
      <category>Errors</category><category>Linux</category><category>Misc</category><category>Networking</category><category>Software</category>
      <category>gmail</category><category>imap</category><category>spam</category>
    </item>
    
    <item>
      <title>Gmail automatic &#34;mark (spam) as read&#34;</title>
      <link>https://yeri.be/gmail-automatic-mark-spam-as-read/</link>
      <pubDate>Wed, 27 Aug 2008 01:07:28 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/gmail-automatic-mark-spam-as-read/</guid>
      <description>&lt;p&gt;I hate having unread mail. I hate having spam. And most of all, I hate spam that asks for attention.&lt;/p&gt;&#xA;&lt;p&gt;When receiving spam in Gmail, you get the annoying bold &lt;strong&gt;&lt;a href=&#34;https://static.yeri.be/2008/08/spam.png&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Spam (12353434)&lt;/a&gt; &lt;/strong&gt;with &amp;lsquo;12353434&amp;rsquo; being the number of unread spam messages.&lt;/p&gt;&#xA;&lt;p&gt;With the introduction of Gmail Labs I&amp;rsquo;d hope to see an &amp;ldquo;automaticly mark spam message as seen&amp;rdquo; feature, which, well, I haven&amp;rsquo;t found yet.&lt;/p&gt;&#xA;&lt;p&gt;Being tired of all these increasing spam numbers, and my daily efforts to &amp;ldquo;select all unread + mark as read&amp;rdquo;, I ended up writing a small PHP file which connects to the Gmail (using IMAP, so I asume you&amp;rsquo;ll need IMAP enabled in your settings..) and marks all spam messages as read. Running this script locally with a curl or cron every X time will solve most of your problems, I hope.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>I hate having unread mail. I hate having spam. And most of all, I hate spam that asks for attention.</p>
<p>When receiving spam in Gmail, you get the annoying bold <strong><a href="https://static.yeri.be/2008/08/spam.png" target="_blank" rel="noopener">Spam (12353434)</a> </strong>with &lsquo;12353434&rsquo; being the number of unread spam messages.</p>
<p>With the introduction of Gmail Labs I&rsquo;d hope to see an &ldquo;automaticly mark spam message as seen&rdquo; feature, which, well, I haven&rsquo;t found yet.</p>
<p>Being tired of all these increasing spam numbers, and my daily efforts to &ldquo;select all unread + mark as read&rdquo;, I ended up writing a small PHP file which connects to the Gmail (using IMAP, so I asume you&rsquo;ll need IMAP enabled in your settings..) and marks all spam messages as read. Running this script locally with a curl or cron every X time will solve most of your problems, I hope.</p>
<p>Download the file <a href="https://static.yeri.be/2008/08/gmail_spamreader.phps" target="_blank" rel="noopener">here</a> (phps) or <a href="https://static.yeri.be/2008/08/gmail_spamreader.txt" target="_blank" rel="noopener">here</a> (txt).</p>
<p>Or just copy paste it!</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-PHP" data-lang="PHP"><span class="line"><span class="cl"><span class="o">&lt;</span> <span class="o">?</span><span class="nx">php</span>
</span></span><span class="line"><span class="cl"><span class="cm">/*
</span></span></span><span class="line"><span class="cl"><span class="cm">Gmail &#34;spam mark-as-read&#34;
</span></span></span><span class="line"><span class="cl"><span class="cm">
</span></span></span><span class="line"><span class="cl"><span class="cm">by Tuinslak
</span></span></span><span class="line"><span class="cl"><span class="cm">www.tuinslak.be
</span></span></span><span class="line"><span class="cl"><span class="cm">
</span></span></span><span class="line"><span class="cl"><span class="cm">v0.01 :: 26/08/2008 . init php codez
</span></span></span><span class="line"><span class="cl"><span class="cm">*/</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1">// Config starts here
</span></span></span><span class="line"><span class="cl"><span class="c1"></span>
</span></span><span class="line"><span class="cl"><span class="c1">// Gmail user &amp; pass
</span></span></span><span class="line"><span class="cl"><span class="c1"></span><span class="nv">$user</span> <span class="o">=</span> <span class="s2">&#34;YOU&#34;</span><span class="p">;</span>
</span></span><span class="line"><span class="cl"><span class="nv">$pass</span> <span class="o">=</span> <span class="s2">&#34;hiddensecretz&#34;</span><span class="p">;</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1">// Debugging - Outputs a list of mailboxes and status on the imap server (1/0)
</span></span></span><span class="line"><span class="cl"><span class="c1"></span><span class="nv">$listmailbox</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1">// Advanced config :o
</span></span></span><span class="line"><span class="cl"><span class="c1"></span>
</span></span><span class="line"><span class="cl"><span class="c1">// &#34;Path&#34; of the (spam) mailbox and/or its name.
</span></span></span><span class="line"><span class="cl"><span class="c1">// default should be ok with Gmail.
</span></span></span><span class="line"><span class="cl"><span class="c1"></span><span class="nv">$path</span> <span class="o">=</span> <span class="s2">&#34;[Google Mail]/Spam&#34;</span><span class="p">;</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1">// End of config
</span></span></span><span class="line"><span class="cl"><span class="c1"></span>
</span></span><span class="line"><span class="cl"><span class="nv">$open</span> <span class="o">=</span> <span class="nx">imap_open</span> <span class="p">(</span><span class="s2">&#34;{imap.gmail.com:993/imap/ssl}</span><span class="si">$path</span><span class="s2">&#34;</span><span class="p">,</span> <span class="nv">$user</span><span class="p">,</span> <span class="nv">$pass</span><span class="p">,</span> <span class="s2">&#34;&#34;</span><span class="p">,</span> <span class="mi">1</span><span class="p">)</span> <span class="k">or</span> <span class="k">die</span><span class="p">(</span><span class="nx">imap_last_error</span><span class="p">()</span> <span class="o">.</span> <span class="s2">&#34;
</span></span></span><span class="line"><span class="cl"><span class="s2">
</span></span></span><span class="line"><span class="cl"><span class="s2">Connection failed.&#34;</span><span class="p">);</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1">// debug
</span></span></span><span class="line"><span class="cl"><span class="c1"></span><span class="k">if</span><span class="p">(</span><span class="nv">$listmailbox</span><span class="p">)</span> <span class="p">{</span>
</span></span><span class="line"><span class="cl">        <span class="k">echo</span> <span class="s2">&#34;&lt;strong&gt;Mailboxes:&#34;</span><span class="p">;</span>
</span></span><span class="line"><span class="cl">        <span class="nv">$folders</span> <span class="o">=</span> <span class="nx">imap_listmailbox</span><span class="p">(</span><span class="nv">$open</span><span class="p">,</span>  <span class="s2">&#34;{  Gmail  }&#34;</span><span class="p">,</span> <span class="s2">&#34;*&#34;</span><span class="p">);</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">        <span class="k">if</span> <span class="p">(</span><span class="nv">$folders</span> <span class="o">==</span> <span class="k">false</span><span class="p">)</span> <span class="p">{</span>
</span></span><span class="line"><span class="cl">                <span class="k">echo</span> <span class="s2">&#34;Call failed</span><span class="se">\n</span><span class="s2">&#34;</span><span class="p">;</span>
</span></span><span class="line"><span class="cl">        <span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
</span></span><span class="line"><span class="cl">                <span class="k">foreach</span> <span class="p">(</span><span class="nv">$folders</span> <span class="k">as</span> <span class="nv">$val</span><span class="p">)</span> <span class="p">{</span>
</span></span><span class="line"><span class="cl">                        <span class="k">echo</span> <span class="nv">$val</span> <span class="o">.</span> <span class="s2">&#34;</span><span class="se">\n</span><span class="s2">&#34;</span><span class="p">;</span>
</span></span><span class="line"><span class="cl">                <span class="p">}</span>
</span></span><span class="line"><span class="cl">        <span class="p">}</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">        <span class="k">echo</span> <span class="s2">&#34;&lt;/strong&gt;&lt;strong&gt;Status&lt;/strong&gt;:&#34;</span><span class="p">;</span>
</span></span><span class="line"><span class="cl">        <span class="nv">$status</span> <span class="o">=</span> <span class="nx">imap_status</span><span class="p">(</span><span class="nv">$open</span><span class="p">,</span> <span class="s2">&#34;{imap.gmail.com}</span><span class="si">$path</span><span class="s2">&#34;</span><span class="p">,</span> <span class="nx">SA_ALL</span><span class="p">);</span>
</span></span><span class="line"><span class="cl">        <span class="k">if</span> <span class="p">(</span><span class="nv">$status</span><span class="p">)</span> <span class="p">{</span>
</span></span><span class="line"><span class="cl">                <span class="k">echo</span> <span class="s2">&#34;Messages:   &#34;</span> <span class="o">.</span> <span class="nv">$status</span><span class="o">-&gt;</span><span class="na">messages</span>    <span class="o">.</span> <span class="s2">&#34;</span><span class="se">\n</span><span class="s2">&#34;</span><span class="p">;</span>
</span></span><span class="line"><span class="cl">                <span class="k">echo</span> <span class="s2">&#34;Recent:     &#34;</span> <span class="o">.</span> <span class="nv">$status</span><span class="o">-&gt;</span><span class="na">recent</span>      <span class="o">.</span> <span class="s2">&#34;</span><span class="se">\n</span><span class="s2">&#34;</span><span class="p">;</span>
</span></span><span class="line"><span class="cl">                <span class="k">echo</span> <span class="s2">&#34;Unseen:     &#34;</span> <span class="o">.</span> <span class="nv">$status</span><span class="o">-&gt;</span><span class="na">unseen</span>      <span class="o">.</span> <span class="s2">&#34;</span><span class="se">\n</span><span class="s2">&#34;</span><span class="p">;</span>
</span></span><span class="line"><span class="cl">                <span class="k">echo</span> <span class="s2">&#34;UIDnext:    &#34;</span> <span class="o">.</span> <span class="nv">$status</span><span class="o">-&gt;</span><span class="na">uidnext</span>     <span class="o">.</span> <span class="s2">&#34;</span><span class="se">\n</span><span class="s2">&#34;</span><span class="p">;</span>
</span></span><span class="line"><span class="cl">                <span class="k">echo</span> <span class="s2">&#34;UIDvalidity:&#34;</span> <span class="o">.</span> <span class="nv">$status</span><span class="o">-&gt;</span><span class="na">uidvalidity</span> <span class="o">.</span> <span class="s2">&#34;</span><span class="se">\n</span><span class="s2">&#34;</span><span class="p">;</span>
</span></span><span class="line"><span class="cl">        <span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
</span></span><span class="line"><span class="cl">                <span class="k">echo</span> <span class="s2">&#34;imap_status failed: &#34;</span> <span class="o">.</span> <span class="nx">imap_last_error</span><span class="p">()</span> <span class="o">.</span> <span class="s2">&#34;</span><span class="se">\n</span><span class="s2">&#34;</span><span class="p">;</span>
</span></span><span class="line"><span class="cl">        <span class="p">}</span>
</span></span><span class="line"><span class="cl"><span class="p">}</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1">// Mark as read
</span></span></span><span class="line"><span class="cl"><span class="c1"></span><span class="nv">$search</span> <span class="o">=</span> <span class="nx">imap_search</span><span class="p">(</span><span class="nv">$open</span><span class="p">,</span> <span class="s1">&#39;UNSEEN&#39;</span><span class="p">);</span>
</span></span><span class="line"><span class="cl"><span class="c1">// print out the array containing $search info
</span></span></span><span class="line"><span class="cl"><span class="c1">//print_r($search);
</span></span></span><span class="line"><span class="cl"><span class="c1"></span>
</span></span><span class="line"><span class="cl"><span class="k">for</span> <span class="p">(</span><span class="nv">$i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="nv">$i</span> <span class="o">&lt;</span> <span class="nx">sizeof</span><span class="p">(</span><span class="nv">$search</span><span class="p">);</span> <span class="nv">$i</span><span class="o">++</span><span class="p">)</span> <span class="p">{</span>
</span></span><span class="line"><span class="cl">        <span class="nv">$read</span> <span class="o">=</span> <span class="nx">imap_setflag_full</span><span class="p">(</span><span class="nv">$open</span><span class="p">,</span> <span class="nv">$search</span><span class="p">[</span><span class="nv">$i</span><span class="p">],</span> <span class="s1">&#39;\\Seen&#39;</span><span class="p">);</span>
</span></span><span class="line"><span class="cl"><span class="p">}</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1">// and close it down !
</span></span></span><span class="line"><span class="cl"><span class="c1"></span><span class="nx">imap_close</span><span class="p">(</span><span class="nv">$open</span><span class="p">);</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1">// EOF
</span></span></span><span class="line"><span class="cl"><span class="c1"></span><span class="cp">?&gt;</span><span class="err">
</span></span></span></code></pre></div><p>If you plan to execute it from shell, don&rsquo;t forget to add a <a href="http://en.wikipedia.org/wiki/Shebang_(Unix)" target="_blank" rel="noopener">shebang</a> &ldquo;#!/usr/bin/php&rdquo; on line 1 and chmod +x gmail_spamreader.php.</p>
<p><span style="color: #888888;"><em>Edit:</em> Please add a comment if you&rsquo;re using it, just for statistics. :)</span></p>
]]></content:encoded>
      <category>Errors</category><category>Linux</category><category>Misc</category><category>Networking</category><category>Software</category>
      <category>gmail</category><category>imap</category><category>spam</category>
    </item>
    
    <item>
      <title>3G Networking</title>
      <link>https://yeri.be/3g-networking/</link>
      <pubDate>Tue, 26 Aug 2008 23:16:17 +0200</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/3g-networking/</guid>
      <description>&lt;p&gt;Found a &lt;a href=&#34;https://web.archive.org/web/20100109013655/http://the.firehou.se:80/2008/08/13/what-iphone-3g-users-should-know-about-3g-networks/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;really cool blog post&lt;/a&gt; on &lt;a href=&#34;http://twitter.com/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Twitter&lt;/a&gt; yesterday night; really worth the time to read and to understand how 3G is actually working.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>Found a <a href="https://web.archive.org/web/20100109013655/http://the.firehou.se:80/2008/08/13/what-iphone-3g-users-should-know-about-3g-networks/" target="_blank" rel="noopener noreferrer">really cool blog post</a> on <a href="http://twitter.com/" target="_blank" rel="noopener noreferrer">Twitter</a> yesterday night; really worth the time to read and to understand how 3G is actually working.</p>
]]></content:encoded>
      <category>Networking</category>
      <category>3G</category><category>iPhone</category>
    </item>
    
    <item>
      <title>Philips Network Hard Disk</title>
      <link>https://yeri.be/philips-network-hard-disk/</link>
      <pubDate>Sun, 09 Mar 2008 12:56:05 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/philips-network-hard-disk/</guid>
      <description>&lt;p&gt;I&amp;rsquo;ve got myself a cheap 500GB network hard disk.&lt;/p&gt;&#xA;&lt;p&gt;Been testing it, and seems to be working fine! It&amp;rsquo;s rather fast (it has a SATA2 disk in it) and it was really easy to set up.&lt;/p&gt;&#xA;&lt;p style=&#34;text-align: center&#34;&gt;&lt;a href=&#34;https://static.yeri.be/2008/03/philipsdisk.png&#34; target=&#34;_blank&#34; title=&#34;Philips Network Disk&#34; rel=&#34;noopener&#34;&gt;&lt;img src=&#34;https://static.yeri.be/2008/03/philipsdisk.thumbnail.png&#34; alt=&#34;Philips Network Disk&#34; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;But I&amp;rsquo;m missing a few things;&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;    &lt;li&gt;Impossible to format/check the disk for errors from the web interface&lt;/li&gt;&#xA;    &lt;li&gt;Impossible to create partitions from the web interface&lt;/li&gt;&#xA;    &lt;li&gt;Impossible to give anonymous FTP access (or use different username:password for FTP, as I don&#39;t need any passwords on my disk)&lt;/li&gt;&#xA;    &lt;li&gt;Only FAT32 (read/write) support, and only NTFS (read) support&lt;/li&gt;&#xA;    &lt;li&gt;Deleting files seems very slow, but perhaps it&#39;s my Mac/WiFi that&#39;s giving troubles?&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;I&amp;rsquo;m emptying my other (old) external disk (160GB), and will add that one to the network disk (you can extend the network disk by adding other USB disks).&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>I&rsquo;ve got myself a cheap 500GB network hard disk.</p>
<p>Been testing it, and seems to be working fine! It&rsquo;s rather fast (it has a SATA2 disk in it) and it was really easy to set up.</p>
<p style="text-align: center"><a href="https://static.yeri.be/2008/03/philipsdisk.png" target="_blank" title="Philips Network Disk" rel="noopener"><img src="https://static.yeri.be/2008/03/philipsdisk.thumbnail.png" alt="Philips Network Disk" /></a></p>
<p>But I&rsquo;m missing a few things;</p>
<ul>
    <li>Impossible to format/check the disk for errors from the web interface</li>
    <li>Impossible to create partitions from the web interface</li>
    <li>Impossible to give anonymous FTP access (or use different username:password for FTP, as I don't need any passwords on my disk)</li>
    <li>Only FAT32 (read/write) support, and only NTFS (read) support</li>
    <li>Deleting files seems very slow, but perhaps it's my Mac/WiFi that's giving troubles?</li>
</ul>
<p>I&rsquo;m emptying my other (old) external disk (160GB), and will add that one to the network disk (you can extend the network disk by adding other USB disks).</p>
<p>Guess it&rsquo;s wait-and-see.</p>
<p>Hope the disk won&rsquo;t crash after 6 months&hellip;</p>
]]></content:encoded>
      <category>Hardware</category><category>Networking</category>
      
    </item>
    
    <item>
      <title>Fon&#39;s hangin&#39;</title>
      <link>https://yeri.be/fon-is-hangin/</link>
      <pubDate>Tue, 26 Feb 2008 23:50:49 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/fon-is-hangin/</guid>
      <description>&lt;p&gt;Yes yes, it has received a fixed place in our family.&lt;/p&gt;&#xA;&lt;p style=&#34;text-align: center&#34; align=&#34;center&#34;&gt;&lt;a href=&#34;https://static.yeri.be/2008/02/fonhanging_5.JPG&#34; target=&#34;_blank&#34; title=&#34;Fon hangin’&#34; rel=&#34;noopener&#34;&gt;&lt;img src=&#34;https://static.yeri.be/2008/02/fonhanging_5.thumbnail.JPG&#34; alt=&#34;Fon hangin’&#34; /&gt;&lt;/a&gt;&lt;a href=&#34;https://static.yeri.be/2008/02/fonhanging_4.JPG&#34; target=&#34;_blank&#34; title=&#34;Fon hanging’&#34; rel=&#34;noopener&#34;&gt;&lt;img src=&#34;https://static.yeri.be/2008/02/fonhanging_4.thumbnail.JPG&#34; alt=&#34;Fon hanging’&#34; /&gt;&lt;/a&gt;&lt;a href=&#34;https://static.yeri.be/2008/02/fonhanging_1.JPG&#34; target=&#34;_blank&#34; title=&#34;Fon hangin’&#34; rel=&#34;noopener&#34;&gt;&lt;img src=&#34;https://static.yeri.be/2008/02/fonhanging_1.thumbnail.JPG&#34; alt=&#34;Fon hangin’&#34; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p align=&#34;left&#34;&gt;All I need now are a few people to come by and test it; I wonder what the range is like.&lt;/p&gt;&#xA;&lt;p style=&#34;text-align: center&#34; align=&#34;center&#34;&gt;&lt;a href=&#34;https://static.yeri.be/2008/02/fon_frontpage.png&#34; target=&#34;_blank&#34; title=&#34;Fon frontpage&#34; rel=&#34;noopener&#34;&gt;&lt;img src=&#34;https://static.yeri.be/2008/02/fon_frontpage.thumbnail.png&#34; alt=&#34;Fon frontpage&#34; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;The only thing I don&amp;rsquo;t really like is the &amp;ldquo;Watch our ad and get 15 mins free inet (daily)&amp;rdquo;. Ad? Watch? Oh come on&amp;hellip; Where is this going?!&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>Yes yes, it has received a fixed place in our family.</p>
<p style="text-align: center" align="center"><a href="https://static.yeri.be/2008/02/fonhanging_5.JPG" target="_blank" title="Fon hangin’" rel="noopener"><img src="https://static.yeri.be/2008/02/fonhanging_5.thumbnail.JPG" alt="Fon hangin’" /></a><a href="https://static.yeri.be/2008/02/fonhanging_4.JPG" target="_blank" title="Fon hanging’" rel="noopener"><img src="https://static.yeri.be/2008/02/fonhanging_4.thumbnail.JPG" alt="Fon hanging’" /></a><a href="https://static.yeri.be/2008/02/fonhanging_1.JPG" target="_blank" title="Fon hangin’" rel="noopener"><img src="https://static.yeri.be/2008/02/fonhanging_1.thumbnail.JPG" alt="Fon hangin’" /></a></p>
<p align="left">All I need now are a few people to come by and test it; I wonder what the range is like.</p>
<p style="text-align: center" align="center"><a href="https://static.yeri.be/2008/02/fon_frontpage.png" target="_blank" title="Fon frontpage" rel="noopener"><img src="https://static.yeri.be/2008/02/fon_frontpage.thumbnail.png" alt="Fon frontpage" /></a></p>
<p>The only thing I don&rsquo;t really like is the &ldquo;Watch our ad and get 15 mins free inet (daily)&rdquo;. Ad? Watch? Oh come on&hellip; Where is this going?!</p>
]]></content:encoded>
      <category>Misc</category><category>Networking</category>
      <category>Fon</category><category>Fonera</category><category>Fontenna</category>
    </item>
    
    <item>
      <title>Console Hamachi</title>
      <link>https://yeri.be/console-hamachi/</link>
      <pubDate>Mon, 25 Feb 2008 19:14:38 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/console-hamachi/</guid>
      <description>&lt;p&gt;I &lt;a href=&#34;https://yeri.be/hamachi-on-leopard/&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;wrote before&lt;/a&gt;, that the console version of Hamachi didn&amp;rsquo;t seem to generate tun/tap driver errors. But after rebooting my Mac I was no longer able to start Hamachi.&lt;/p&gt;&#xA;&lt;pre line=&#34;1&#34; lang=&#34;bash&#34;&gt;Nazgul:hamachi-0.9.9.9-20-osx yeri$ ./hamachi start&#xA;25 19:08:15.659 [   0] [14306] tap: connect() failed 2 (No such file or directory)&lt;/pre&gt;&#xA;&lt;p&gt;So I guess I&amp;rsquo;ll have to wait for a fix after all. :(&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>I <a href="https://yeri.be/hamachi-on-leopard/" target="_blank" rel="noopener">wrote before</a>, that the console version of Hamachi didn&rsquo;t seem to generate tun/tap driver errors. But after rebooting my Mac I was no longer able to start Hamachi.</p>
<pre line="1" lang="bash">Nazgul:hamachi-0.9.9.9-20-osx yeri$ ./hamachi start
25 19:08:15.659 [   0] [14306] tap: connect() failed 2 (No such file or directory)</pre>
<p>So I guess I&rsquo;ll have to wait for a fix after all. :(</p>
]]></content:encoded>
      <category>Apple</category><category>Errors</category><category>Networking</category>
      <category>Hamachi</category><category>bugs</category>
    </item>
    
    <item>
      <title>SMTP-server list</title>
      <link>https://yeri.be/smtp-server-list/</link>
      <pubDate>Sat, 23 Feb 2008 17:46:18 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/smtp-server-list/</guid>
      <description>&lt;p&gt;Whilst on the move, it&amp;rsquo;s always handy to be able to send e-mails. Most providers tend to block all SMTP-servers, besides their own. Quite unhandy if you&amp;rsquo;re on a FON (or&amp;hellip; well&amp;hellip; open &amp;amp; unsecure) WiFi network.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://web.archive.org/web/20170113012650/https://www.networking4all.com/nl/helpdesk/email/smtp+servers/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Here&lt;/a&gt;&amp;rsquo;s a list with all mayor Dutch &amp;amp; Belgian ISPs their SMTP-servers.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>Whilst on the move, it&rsquo;s always handy to be able to send e-mails. Most providers tend to block all SMTP-servers, besides their own. Quite unhandy if you&rsquo;re on a FON (or&hellip; well&hellip; open &amp; unsecure) WiFi network.</p>
<p><a href="https://web.archive.org/web/20170113012650/https://www.networking4all.com/nl/helpdesk/email/smtp+servers/" target="_blank" rel="noopener noreferrer">Here</a>&rsquo;s a list with all mayor Dutch &amp; Belgian ISPs their SMTP-servers.</p>
<p>Skynet - relay.skynet.be
Telenet - uit.telenet.be</p>
<p>Het Net - mailhost.hetnet.nl
Home - mail.home.nl
KPN - mail.direct-adsl.nl
Versatel - relay.versatel.net
Xs4all - smtp.xs4all.nl</p>]]></content:encoded>
      <category>Misc</category><category>Networking</category>
      <category>SMTP</category><category>belgium</category><category>dutch</category>
    </item>
    
    <item>
      <title>Fon</title>
      <link>https://yeri.be/fon/</link>
      <pubDate>Tue, 19 Feb 2008 23:00:23 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/fon/</guid>
      <description>&lt;p&gt;My &lt;a href=&#34;http://fon.com&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Fon&lt;/a&gt; box arrived today!&lt;/p&gt;&#xA;&lt;p&gt;Ordered it last Saturday (09/02), took just over a week to be delivered (by UPS).&lt;/p&gt;&#xA;&lt;p style=&#34;text-align: center&#34; align=&#34;center&#34;&gt;&lt;a href=&#34;https://static.yeri.be/2008/02/fon_4.JPG&#34; target=&#34;_blank&#34; title=&#34;La Fonera&#34; rel=&#34;noopener&#34;&gt;&lt;img src=&#34;https://static.yeri.be/2008/02/fon_4.thumbnail.JPG&#34; alt=&#34;Fon router 2&#34; /&gt;&lt;/a&gt;&lt;a href=&#34;https://static.yeri.be/2008/02/fon_1.JPG&#34; target=&#34;_blank&#34; title=&#34;La Fontenna&#34; rel=&#34;noopener&#34;&gt;&lt;img src=&#34;https://static.yeri.be/2008/02/fon_1.thumbnail.JPG&#34; alt=&#34;Fon router 1&#34; /&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;I bought &amp;ldquo;&lt;a href=&#34;https://shop.fon.com/FonShop/shop/BE/ShopController?view=product&amp;amp;product=PRD-001&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;La Fonera&lt;/a&gt;&amp;rdquo; with a &amp;ldquo;&lt;a href=&#34;https://shop.fon.com/FonShop/shop/BE/ShopController?view=product&amp;amp;product=PRD-ANT01&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Fontenna&lt;/a&gt;&amp;rdquo; for just over 6 (!) EUR. Fon&amp;rsquo;s having this cool promotion that La Fonera only costs around 4 EUR, and if you order a Fontenna with it, you get the Fontenna for just an additional 2 EUR. (And 6 EUR shipping costs. So just over 12 EUR total.)&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>My <a href="http://fon.com" target="_blank" rel="noopener">Fon</a> box arrived today!</p>
<p>Ordered it last Saturday (09/02), took just over a week to be delivered (by UPS).</p>
<p style="text-align: center" align="center"><a href="https://static.yeri.be/2008/02/fon_4.JPG" target="_blank" title="La Fonera" rel="noopener"><img src="https://static.yeri.be/2008/02/fon_4.thumbnail.JPG" alt="Fon router 2" /></a><a href="https://static.yeri.be/2008/02/fon_1.JPG" target="_blank" title="La Fontenna" rel="noopener"><img src="https://static.yeri.be/2008/02/fon_1.thumbnail.JPG" alt="Fon router 1" /></a></p>
<p>I bought &ldquo;<a href="https://shop.fon.com/FonShop/shop/BE/ShopController?view=product&amp;product=PRD-001" target="_blank" rel="noopener">La Fonera</a>&rdquo; with a &ldquo;<a href="https://shop.fon.com/FonShop/shop/BE/ShopController?view=product&amp;product=PRD-ANT01" target="_blank" rel="noopener">Fontenna</a>&rdquo; for just over 6 (!) EUR. Fon&rsquo;s having this cool promotion that La Fonera only costs around 4 EUR, and if you order a Fontenna with it, you get the Fontenna for just an additional 2 EUR. (And 6 EUR shipping costs. So just over 12 EUR total.)</p>
<p>La Fonera is really easy to configure, perhaps a bit too easy. I hoped a few extra options to configure, and better IP/Bandwidth usage stats, &hellip; But on the other side, they managed to keep it simple &amp; clean; easy to use for everyone.</p>
<p style="text-align: center"><a href="https://static.yeri.be/2008/02/fonwebconfig.png" target="_blank" title="Fon Web config" rel="noopener"><img src="https://static.yeri.be/2008/02/fonwebconfig.thumbnail.png" alt="Fon Web config" /></a></p>
<p>La Fonera has 2 <a href="http://en.wikipedia.org/wiki/Wi-Fi" target="_blank" rel="noopener">WiFi</a> networks, one public (FON_Tuinslak in my case) and a private one (with WEP, WPA(2); using IP 192.168.10.1 by default)</p>
<p style="text-align: center" align="center"> <a href="https://static.yeri.be/2008/02/fon_14.JPG" target="_blank" title="La Fonera 4" rel="noopener"><img src="https://static.yeri.be/2008/02/fon_14.thumbnail.JPG" alt="La Fonera 4" /></a><a href="https://static.yeri.be/2008/02/fon_13.JPG" target="_blank" title="La Fonera 3" rel="noopener"><img src="https://static.yeri.be/2008/02/fon_13.thumbnail.JPG" alt="La Fonera 3" /></a><a href="https://static.yeri.be/2008/02/fon_12.JPG" target="_blank" title="La Fonera 2" rel="noopener"><img src="https://static.yeri.be/2008/02/fon_12.thumbnail.JPG" alt="La Fonera 2" /></a><a href="https://static.yeri.be/2008/02/fon_11.JPG" target="_blank" title="La Fonera" rel="noopener"><img src="https://static.yeri.be/2008/02/fon_11.thumbnail.JPG" alt="La Fonera" /></a></p>
<p>Notice how small they made it (+-10 x 7,5 cm).</p>
<p align="left">This is the Fontenna, which adds about 7<a href="http://en.wikipedia.org/wiki/DBi" target="_blank" rel="noopener">dBi</a>:</p>
<p style="text-align: center"><a href="https://static.yeri.be/2008/02/fon_8.JPG" target="_blank" title="Fontenna" rel="noopener"><img src="https://static.yeri.be/2008/02/fon_8.thumbnail.JPG" alt="Fontenna" /></a></p>
<p>Besides having a big gray plastic encapsulation, it seems quite &ldquo;weather-resistant&rdquo;. I might put it outside somewhere.</p>
<p>Anyway, it seems to be <a href="http://maps.fon.com/?lt=50.927141&amp;ln=4.400192&amp;zm=16" title="Fon maps" target="_blank" rel="noopener">working great</a>.</p>
<p style="text-align: center"><a href="https://static.yeri.be/2008/02/fon_3.JPG" target="_blank" title="Fon stickers" rel="noopener"><img src="https://static.yeri.be/2008/02/fon_3.thumbnail.JPG" alt="Fon stickers" /></a></p>
<p>I&rsquo;ll have to play a bit with it, before giving it a final place somewhere in the house&hellip; And I&rsquo;m starting to wonder what I should to with my <a href="http://en.wikipedia.org/wiki/WRT54G" target="_blank" rel="noopener">Linksys &ldquo;AP&rdquo;</a>&hellip; 2 private networks? Might put it some place where the WiFi signal is really bad&hellip; Like&hellip; The garage or something. ;)</p>
<p>PS: for those wondering, yes I&rsquo;ve become a &ldquo;Bill&rdquo;. I see no point becoming a &ldquo;Linus&rdquo;, because a Bill gets everything a Linus gets plus some extra cash (although I doubt anyone will actually use my Fon AP; I&rsquo;m kind of living in the middle of nowhere).</p>
<p style="text-align: center" align="center"> <a href="https://static.yeri.be/2008/02/fon_access.png" target="_blank" title="Fon_AP Access" rel="noopener"><img src="https://static.yeri.be/2008/02/fon_access.thumbnail.png" alt="Fon_AP Access" /></a></p>
]]></content:encoded>
      <category>Misc</category><category>Networking</category>
      <category>Fon</category><category>Fonera</category><category>Fontenna</category><category>wifi</category>
    </item>
    
    <item>
      <title>Hamachi(X) on Leopard</title>
      <link>https://yeri.be/hamachi-on-leopard/</link>
      <pubDate>Sun, 17 Feb 2008 22:30:00 +0100</pubDate>
      <author>Yeri Tiete</author>
      <guid isPermaLink="true">https://yeri.be/hamachi-on-leopard/</guid>
      <description>&lt;p&gt;When playing with &lt;a href=&#34;http://kismac.macpirate.ch/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;KisMAC&lt;/a&gt;, I noticed something weird in my /var/log/system.log;&lt;/p&gt;&#xA;&lt;pre line=&#34;1&#34; lang=&#34;bash&#34;&gt;$date com.apple.launchd[1] (tuncfgd$pid) posix_spawnp(&#34;/usr/sbin/tuncfg&#34;, ...):&#xA;No such file or directory&#xA;$date com.apple.launchd[1] (tuncfgd$pid) Exited with exit code: 1&#xA;$date com.apple.launchd[1] (tuncfgd) Throttling respawn: Will start in 10 seconds&lt;/pre&gt;&#xA;&lt;p&gt;tun is (trying) to restart every 10 (!) seconds.&#xA;I tried updating &lt;a href=&#34;https://secure.logmein.com/products/hamachi/vpn.asp&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Hamachi&lt;/a&gt;&amp;rsquo;s &lt;a href=&#34;https://web.archive.org/web/20081015080644/http://www-user.rhrk.uni-kl.de:80/~nissler/tuntap/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;tun/tap drivers&lt;/a&gt;, without any success. It kept restarting the process every 10 seconds.&lt;/p&gt;&#xA;&lt;p&gt;After a bit of Googling, it seemed to be a &lt;a href=&#34;https://web.archive.org/web/20080311120033/http://discussions.apple.com:80/thread.jspa?messageID=6571462&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;known problem&lt;/a&gt;. So I decided to uninstall Hamachi &amp;amp; the tun/tap drivers.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>When playing with <a href="http://kismac.macpirate.ch/" target="_blank" rel="noopener noreferrer">KisMAC</a>, I noticed something weird in my /var/log/system.log;</p>
<pre line="1" lang="bash">$date com.apple.launchd[1] (tuncfgd$pid) posix_spawnp("/usr/sbin/tuncfg", ...):
No such file or directory
$date com.apple.launchd[1] (tuncfgd$pid) Exited with exit code: 1
$date com.apple.launchd[1] (tuncfgd) Throttling respawn: Will start in 10 seconds</pre>
<p>tun is (trying) to restart every 10 (!) seconds.
I tried updating <a href="https://secure.logmein.com/products/hamachi/vpn.asp" target="_blank" rel="noopener noreferrer">Hamachi</a>&rsquo;s <a href="https://web.archive.org/web/20081015080644/http://www-user.rhrk.uni-kl.de:80/~nissler/tuntap/" target="_blank" rel="noopener noreferrer">tun/tap drivers</a>, without any success. It kept restarting the process every 10 seconds.</p>
<p>After a bit of Googling, it seemed to be a <a href="https://web.archive.org/web/20080311120033/http://discussions.apple.com:80/thread.jspa?messageID=6571462" target="_blank" rel="noopener noreferrer">known problem</a>. So I decided to uninstall Hamachi &amp; the tun/tap drivers.</p>
<pre line="1" lang="bash">sudo rm -r /usr/bin/hamachi
sudo rm -r  /usr/bin/hamachi-init
sudo rm -r  /usr/sbin/tuncfg
sudo launchctl unload /System/Library/LaunchDaemons/tuncfgd.plist
sudo rm -r /System/Library/LaunchDaemons/tuncfgd.plist
sudo rm -r /Applications/HamachiX</pre>
<p>This should solve the restarting problem. You might want to reboot to be sure.</p>
<p>When uninstalling the drivers, <a href="https://web.archive.org/web/20190808101001/http://hamachix.spaceants.net/" target="_blank" rel="noopener noreferrer">HamachiX</a> will be gone; there will be no way to use it. You can decide to ignore the spawning-processes, and keep using Hamachi as-is, but the spawning processes might slow down your computer. But HamachiX should work (although it often crashed here).</p>
<p>I tried reinstalling the tun/tap drivers, but the same happens. I guess I&rsquo;ll have to wait for a fix. :(</p>
<p>On the other side, I&rsquo;ve tried the <a href="https://web.archive.org/web/20120515123758/http://files.hamachi.cc/osx/README" target="_blank" rel="noopener noreferrer">console version</a> of Hamachi (so no HamachiX) which seems to be working fine (so far). Just missing out on the handy GUI. <em><a href="https://yeri.be/console-hamachi/" target="_blank" rel="noopener noreferrer">Edit</a></em></p>
]]></content:encoded>
      <category>Apple</category><category>Errors</category><category>Networking</category><category>Software</category>
      <category>Apple</category><category>Hamachi</category><category>Hamachix</category><category>mac os x</category><category>tun/tap</category>
    </item>
    
  </channel>
</rss>
