<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Linux on Apuntes de root</title>
    <link>https://blog.099c.org/categories/linux/</link>
    <description>Recent content in Linux on Apuntes de root</description>
    <generator>Hugo</generator>
    <language>en-US</language>
    <managingEditor>jorti@pm.me (Juan Orti Alcaine)</managingEditor>
    <webMaster>jorti@pm.me (Juan Orti Alcaine)</webMaster>
    <lastBuildDate>Fri, 13 Mar 2026 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://blog.099c.org/categories/linux/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>My double proxy solution to LaLiga blocks</title>
      <link>https://blog.099c.org/posts/my-double-proxy-solution-to-laliga-blocks/</link>
      <pubDate>Fri, 13 Mar 2026 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/my-double-proxy-solution-to-laliga-blocks/</guid>
      <description>&lt;p&gt;If you are not aware, LaLiga (Spain&amp;rsquo;s football league) is blocking thousands&#xA;of IPs in Spain every time there&amp;rsquo;s a football match on the TV to try to fight against&#xA;the pirated football on the Internet. Of course it&amp;rsquo;s not working as the pirate sites&#xA;continue being accessible without a hinch, but thousands of legitimate webs stop working.&#xA;You can get more information about the affected IPs in the fantastic page &lt;a href=&#34;https://hayahora.futbol/&#34;&gt;¿Hay ahora fútbol?&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;I recently discovered that some strange errors I was seeing in some of my home lab&#xA;services were caused by these blocked IPs. The affected IPs are hickjacked and the HTTP connections&#xA;redirected to LaLiga&amp;rsquo;s web server. HTTPS connections will fail with a certificate error like this:&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-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;[Error] X509CertificateValidationService: Certificate validation for api.radarr.video failed. RemoteCertificateNameMismatch, RemoteCertificateChainErrors&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;To avoid these problems I have created this solution with two proxies and a VPN.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Bulwark: block attacking IPs at the router level</title>
      <link>https://blog.099c.org/posts/bulwark-block-attacking-ips-at-router-level/</link>
      <pubDate>Fri, 06 Mar 2026 09:14:09 +0100</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/bulwark-block-attacking-ips-at-router-level/</guid>
      <description>&lt;p&gt;Inspired on Crowdsec firewall bouncer, and also with the intention of learning&#xA;some Rust, I&amp;rsquo;ve created &lt;a href=&#34;https://codeberg.org/jorti/bulwark&#34;&gt;Bulwark&lt;/a&gt;, a small program to run in a OpenWrt router&#xA;(or any Linux machine) to ban IPs of attacks detected by my servers.&lt;/p&gt;</description>
    </item>
    <item>
      <title>From Fail2ban to Reaction</title>
      <link>https://blog.099c.org/posts/from-fail2ban-to-reaction/</link>
      <pubDate>Tue, 03 Mar 2026 16:35:37 +0100</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/from-fail2ban-to-reaction/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;https://github.com/fail2ban/fail2ban&#34;&gt;Fail2ban&lt;/a&gt; has been an important security tool I&amp;rsquo;ve been using in my servers for many years.&#xA;However sometimes is difficult to configure, lacks certain features and can consume too many resources.&lt;/p&gt;&#xA;&lt;p&gt;Recently I&amp;rsquo;ve switched to &lt;a href=&#34;https://reaction.ppom.me/&#34;&gt;Reaction&lt;/a&gt;, a new tool with the same philosophy:&#xA;monitor logs and execute some actions based on log matches. Reaction is written&#xA;in Rust, so it&amp;rsquo;s fast and resource efficient.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Vykar backup tool</title>
      <link>https://blog.099c.org/posts/vykar-backup-tool/</link>
      <pubDate>Tue, 03 Mar 2026 10:28:33 +0100</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/vykar-backup-tool/</guid>
      <description>&lt;p&gt;I&amp;rsquo;ve been using &lt;a href=&#34;https://www.borgbackup.org/&#34;&gt;Borg backup&lt;/a&gt; for many years for my backups and I&amp;rsquo;m pretty happy with it,&#xA;but today a new alternative has been published: &lt;a href=&#34;https://vykar.borgbase.com/&#34;&gt;Vykar backup&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;The tool is still new and not ready for production, however the benchmarks they published&#xA;look very promising. Also, it supports object storage backends, which is something that Borg&#xA;has been promising for years, but it&amp;rsquo;s still in the roadmap.&lt;/p&gt;&#xA;&lt;p&gt;I will definitely keep track of its progress as it might be a good alternative in the future.&lt;/p&gt;</description>
    </item>
    <item>
      <title>IP sets in OpenWrt 22.03</title>
      <link>https://blog.099c.org/posts/ip-sets-in-openwrt-22-03/</link>
      <pubDate>Mon, 26 Sep 2022 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/ip-sets-in-openwrt-22-03/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;https://openwrt.org/&#34;&gt;OpenWrt&lt;/a&gt; has recently released version &lt;a href=&#34;https://openwrt.org/releases/22.03/notes-22.03.0&#34;&gt;22.03&lt;/a&gt;, and one of the biggest changes is the switch to nftables.&lt;/p&gt;&#xA;&lt;p&gt;I&amp;rsquo;ve noticed though that nftables doesn&amp;rsquo;t use ipsets as I was used to, but it has a new concept of &lt;a href=&#34;https://wiki.nftables.org/wiki-nftables/index.php/Moving_from_ipset_to_nftables&#34;&gt;sets&lt;/a&gt; inside the nftables ruleset.&lt;/p&gt;&#xA;&lt;p&gt;I wanted to create a firewall rule to filter a list of IPs from an URL, however the integration was not as straightforward as with iptables, so I&amp;rsquo;ve ended creating this solution.&lt;/p&gt;</description>
    </item>
    <item>
      <title>SNI-based load balancing with HAProxy</title>
      <link>https://blog.099c.org/posts/sni-based-load-balancing-with-haproxy/</link>
      <pubDate>Sun, 06 Sep 2020 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/sni-based-load-balancing-with-haproxy/</guid>
      <description>&lt;p&gt;In a bare-metal Openshift installation you need to use an external load balancer to access the API and other services. In my hone lab I also have a webserver accesible from the Internet. I also don&amp;rsquo;t want to terminate the TLS connections in the load balancer to keep using the existing certificates in my webserver and Openshift cluster.&lt;/p&gt;&#xA;&lt;p&gt;With these requirements in mind, I chose HAProxy to be my frontend load balancer, so all the HTTPS connections to my public IP will be diverted to the appropriate server examining the SNI field in the TLS connection.&lt;/p&gt;</description>
    </item>
    <item>
      <title>PXE server in Fedora with dnsmasq</title>
      <link>https://blog.099c.org/posts/pxe-server-in-fedora-with-dnsmasq/</link>
      <pubDate>Fri, 04 Sep 2020 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/pxe-server-in-fedora-with-dnsmasq/</guid>
      <description>&lt;p&gt;I&amp;rsquo;m currently doing many tests with the Openshift bare-metal installation, and as I&amp;rsquo;m creating and destroying the VMs again and again, having a PXE server to provide the installation images and configuration to the VMs is very handy and saves a lot of time.&lt;/p&gt;&#xA;&lt;p&gt;This is an example of my PXE configuration mounted on a Fedora box that acts as router.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Installing and configuring Folding@Home in Fedora</title>
      <link>https://blog.099c.org/posts/installing-and-configuring-foldinghome-in-fedora/</link>
      <pubDate>Tue, 17 Mar 2020 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/installing-and-configuring-foldinghome-in-fedora/</guid>
      <description>&lt;p&gt;I&amp;rsquo;ve recently joined the computational effort of &lt;a href=&#34;https://foldingathome.org/&#34;&gt;Folding@Home&lt;/a&gt; for disease research, I want to share some of the modifications I&amp;rsquo;ve done to run it in Fedora more comfortably.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Capture Raspberry Pi kernel crashes</title>
      <link>https://blog.099c.org/posts/capture-raspberry-pi-kernel-crashes/</link>
      <pubDate>Thu, 17 Jan 2019 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/capture-raspberry-pi-kernel-crashes/</guid>
      <description>&lt;p&gt;I&amp;rsquo;m experiencing kernel panics in a headless Raspberry Pi with Fedora 29 Server and need a way to capture what is happening.&lt;/p&gt;&#xA;&lt;p&gt;First I tried to enable kdump, but this doesn&amp;rsquo;t seem possible. If someone has done it, I&amp;rsquo;d like to hear.&lt;/p&gt;&#xA;&lt;p&gt;What I&amp;rsquo;m using now, is enabling netconsole to log all the kernel messages over the network to a rsyslog server. This is the config in the Pi:&lt;/p&gt;&#xA;&lt;p&gt;&lt;code&gt;/etc/modules-load.d/netconsole.conf&lt;/code&gt;:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Run a OpenStack all-in-one in Google Cloud</title>
      <link>https://blog.099c.org/posts/run-a-openstack-all-in-one-in-google-cloud/</link>
      <pubDate>Tue, 20 Mar 2018 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/run-a-openstack-all-in-one-in-google-cloud/</guid>
      <description>&lt;p&gt;With this recipe I have installed a VM in Google Compute Engine with an all-in-one OpenStack setup for testing purposes.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Set window title in tmux or screen to the hostname you are connecting by ssh</title>
      <link>https://blog.099c.org/posts/set-window-title-in-tmux-or-screen-to-the-hostname-you-are-connecting-by-ssh/</link>
      <pubDate>Tue, 13 Jun 2017 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/set-window-title-in-tmux-or-screen-to-the-hostname-you-are-connecting-by-ssh/</guid>
      <description>&lt;p&gt;To set the window title in tmux or screen to the hostname you are connecting by ssh, add this to your &lt;code&gt;~/.bashrc&lt;/code&gt;:&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-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;settitle() {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    printf &amp;#34;\033k$1\033\\&amp;#34;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ssh() {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    local sshargs=(&amp;#34;$@&amp;#34;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    local do_settitle=1&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    tty -s || local do_settitle=0&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    if [ &amp;#34;${TERM:0:6}&amp;#34; != &amp;#34;screen&amp;#34; ]; then&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        local do_settitle=0&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    fi&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    if [ $do_settitle -eq 1 ]; then&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        if [ &amp;#34;$1&amp;#34; == &amp;#34;-l&amp;#34; ]; then&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            shift 2&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        fi&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;       settitle &amp;#34;$*&amp;#34;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    fi&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    command ssh &amp;#34;${sshargs[@]}&amp;#34;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    if [ $do_settitle -eq 1 ]; then&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        settitle &amp;#34;bash&amp;#34;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    fi&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description>
    </item>
    <item>
      <title>Configure an instance of old versions of Java and Firefox</title>
      <link>https://blog.099c.org/posts/configure-an-instance-of-old-versions-of-java-and-firefox/</link>
      <pubDate>Fri, 24 Mar 2017 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/configure-an-instance-of-old-versions-of-java-and-firefox/</guid>
      <description>&lt;p&gt;Everyday is harder to manage old hardware or access outdated intranet websites because the browser security is tighter with every release. Many appliances use unsigned Java applets or insecure ciphers and protocols.&lt;/p&gt;&#xA;&lt;p&gt;My first solution to this problem was to have a Windows VM in my laptop with old versions of everything: Firefox, Java, Flash&amp;hellip; but running the VM in my underpowered laptop was too slow and made the system sluggish.&lt;/p&gt;&#xA;&lt;p&gt;Here I describe how to run an old Firefox instance with an old Java.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Internet connection sharing with NetworkManager</title>
      <link>https://blog.099c.org/posts/internet-connection-sharing-with-networkmanager/</link>
      <pubDate>Tue, 22 Nov 2016 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/internet-connection-sharing-with-networkmanager/</guid>
      <description>&lt;p&gt;With this recipe we will create a wireless access point in our laptop to share our wired Internet connection. This is quite useful where you only have a wired Internet connection (e.g. my work place) for giving access to your phone.&lt;/p&gt;&#xA;&lt;p&gt;This is done in Fedora 25 Workstation with NetworkManager.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Monitor Salicru SPS SOHO&#43; UPS with NUT</title>
      <link>https://blog.099c.org/posts/monitor-salicru-sps-soho-ups-with-nut/</link>
      <pubDate>Mon, 14 Nov 2016 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/monitor-salicru-sps-soho-ups-with-nut/</guid>
      <description>&lt;p&gt;I&amp;rsquo;ve successfully monitored a Salicru SPS SOHO+ UPS with NUT following these steps.&lt;/p&gt;&#xA;&lt;p&gt;In this example I have two Fedora servers, a master where the UPS is connected by USB and a client which is also powered by this UPS but monitors its status by network. With the default configuration the clients will be powered down in an outage when the battery reaches critical levels.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Sandbox Steam running it under a different account</title>
      <link>https://blog.099c.org/posts/sandbox-steam-running-it-under-a-different-account/</link>
      <pubDate>Thu, 14 Jul 2016 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/sandbox-steam-running-it-under-a-different-account/</guid>
      <description>&lt;p&gt;To improve my system&amp;rsquo;s security, I&amp;rsquo;ve configured Steam to be run as a different Linux account. This guide is inspired in &lt;a href=&#34;https://www.reddit.com/r/linux_gaming/comments/46agy3/running_steam_as_another_user/&#34;&gt;this thread&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Hacer funcionar el DNIe (Spanish electronic ID card) en Fedora 23</title>
      <link>https://blog.099c.org/posts/hacer-funcionar-el-dnie-spanish-electronic-id-card-en-fedora-23/</link>
      <pubDate>Wed, 16 Dec 2015 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/hacer-funcionar-el-dnie-spanish-electronic-id-card-en-fedora-23/</guid>
      <description>&lt;p&gt;Hoy me ha llegado el aviso de que me iba a caducar el certificado de la FNMT, y en el proceso de renovación me obligaban a autenticarme con el DNIe, por lo que he tenido que repasar todo este tema.&lt;/p&gt;&#xA;&lt;p&gt;La última vez que lo usé, tuve que compilar a mano los módulos de OpenDNIe y hacer &lt;a href=&#34;https://blog.099c.org/posts/instalacion-de-opendnie-en-fedora-15/&#34;&gt;unos cuantos malabares&lt;/a&gt;. Por fortuna, parece que la integración del proyecto con opensc ha dado sus frutos y no he tenido que usar ningún tipo de magia negra esta vez.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Enable wake-on-lan with NetworkManager</title>
      <link>https://blog.099c.org/posts/enable-wake-on-lan-with-networkmanager/</link>
      <pubDate>Wed, 02 Dec 2015 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/enable-wake-on-lan-with-networkmanager/</guid>
      <description>&lt;p&gt;This little tip enables wake-on-lan on our network interfaces so the computer can be awaken with a magic packet from other host in the same network.&lt;/p&gt;</description>
    </item>
    <item>
      <title>DLNA server don&#39;t working on Linux bridge</title>
      <link>https://blog.099c.org/posts/dlna-server-dont-working-on-linux-bridge/</link>
      <pubDate>Fri, 14 Aug 2015 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/dlna-server-dont-working-on-linux-bridge/</guid>
      <description>&lt;p&gt;I was experiencing recurring problems of my DLNA server disappearing from the network. The cause of it was that my network card is configured in a bridge, and the multicast snooping feature wasn&amp;rsquo;t playing well with DLNA.&lt;/p&gt;&#xA;&lt;p&gt;To disable the multicast snooping, I&amp;rsquo;ve created the file &lt;code&gt;/etc/rc.d/rc.local&lt;/code&gt;:&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;nb&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;m&#34;&gt;0&lt;/span&gt; &amp;gt; /sys/devices/virtual/net/br0/bridge/multicast_snooping&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Don&amp;rsquo;t forget to make it executable. Systemd will run it in every boot.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Tips for running Fedora in a Raspberry Pi 2</title>
      <link>https://blog.099c.org/posts/tips-for-running-fedora-in-a-raspberry-pi-2/</link>
      <pubDate>Wed, 29 Jul 2015 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/tips-for-running-fedora-in-a-raspberry-pi-2/</guid>
      <description>&lt;p&gt;This is a list of tips I&amp;rsquo;m using while running Fedora in my Raspberry Pi 2.&lt;/p&gt;</description>
    </item>
    <item>
      <title>OpenDNSSEC</title>
      <link>https://blog.099c.org/posts/opendnssec/</link>
      <pubDate>Tue, 28 Jul 2015 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/opendnssec/</guid>
      <description>&lt;p&gt;A quick guide about how to migrate a signed zone from dnssec-tools to OpenDNSSEC.&lt;/p&gt;</description>
    </item>
    <item>
      <title>How to run gitweb and git-http-backend with Nginx in Fedora</title>
      <link>https://blog.099c.org/posts/how-to-run-gitweb-and-git-http-backend-with-nginx-in-fedora/</link>
      <pubDate>Mon, 01 Jun 2015 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/how-to-run-gitweb-and-git-http-backend-with-nginx-in-fedora/</guid>
      <description>&lt;p&gt;I&amp;rsquo;ve configured my own web frontend for git using gitweb and git-http-backend.&lt;/p&gt;&#xA;&lt;p&gt;I wanted to use Nginx as the webserver, but unfortunately there was a piece of software missing: &lt;a href=&#34;https://nginx.localdomain.pl/wiki/FcgiWrap&#34;&gt;fcgiwrap&lt;/a&gt;.  It&amp;rsquo;s packaging is a &lt;a href=&#34;https://bugzilla.redhat.com/show_bug.cgi?id=1075806&#34;&gt;work in progress&lt;/a&gt;, so I have packaged it myself and now it is available in this &lt;a href=&#34;https://copr.fedoraproject.org/coprs/jorti/fcgiwrap/&#34;&gt;copr&lt;/a&gt;, so you can download it from there.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Set the wifi regulatory domain</title>
      <link>https://blog.099c.org/posts/set-the-wifi-regulatory-domain/</link>
      <pubDate>Fri, 22 May 2015 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/set-the-wifi-regulatory-domain/</guid>
      <description>&lt;p&gt;You can configure your country&amp;rsquo;s regulatory domain, creating the file &lt;code&gt;/etc/modprobe.d/cfg80211.conf&lt;/code&gt; with this content:&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-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;options cfg80211 ieee80211_regdom=ES&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Don&amp;rsquo;t forget to change ES with your country code.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Mount a partition of a full disk image</title>
      <link>https://blog.099c.org/posts/mount-a-partition-of-a-full-disk-image/</link>
      <pubDate>Wed, 20 May 2015 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/mount-a-partition-of-a-full-disk-image/</guid>
      <description>&lt;p&gt;The Raspberry Pi images are whole disk images, and they contain generally two partitions inside. To mount one of those partitions you can use this method.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Booting Linux from HTTP</title>
      <link>https://blog.099c.org/posts/booting-linux-from-http/</link>
      <pubDate>Thu, 15 Jan 2015 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/booting-linux-from-http/</guid>
      <description>&lt;p&gt;I&amp;rsquo;ve learned how to boot a host and load the Fedora installer directly from HTTP. This has enabled me to install Fedora in a VPS which didn&amp;rsquo;t have the Fedora ISOs available and I cannot upload any other. All of this thanks to the virtual ethernet card and its &lt;a href=&#34;http://etherboot.org/wiki/start&#34; title=&#34;gPXE&#34;&gt;gPXE&lt;/a&gt; firmware.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Modoboa for Fedora</title>
      <link>https://blog.099c.org/posts/modoboa-for-fedora/</link>
      <pubDate>Wed, 03 Dec 2014 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/modoboa-for-fedora/</guid>
      <description>&lt;p&gt;I&amp;rsquo;ve recently discovered &lt;a href=&#34;http://modoboa.org&#34; title=&#34;modoboa&#34;&gt;modoboa&lt;/a&gt;, a mail hosting and management platform which looks very promising. It uses Django and can be a frontend of postfix, amavisd-new, radicale, etc.&lt;/p&gt;&#xA;&lt;p&gt;I&amp;rsquo;ve submitted some &lt;a href=&#34;https://bugzilla.redhat.com/show_bug.cgi?id=1170213&#34; title=&#34;modoboa review request&#34;&gt;RPM packages&lt;/a&gt; based on the previous work of &lt;a href=&#34;https://github.com/didier13150/rpm&#34; title=&#34;Didier rpm packages&#34;&gt;Didier&lt;/a&gt;, and will begin to do some tests in a couple of days to see how everything plays together.&lt;/p&gt;&#xA;&lt;p&gt;Any help/suggestion is welcomed.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Decode base64 attachment</title>
      <link>https://blog.099c.org/posts/decode-base64-attachment/</link>
      <pubDate>Tue, 25 Nov 2014 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/decode-base64-attachment/</guid>
      <description>&lt;p&gt;To extract an attachment from a raw email message, clean the file to leave only the base64 attachment and do: &lt;code&gt;base64 -di encoded_file &amp;gt; decoded_file&lt;/code&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>IPsec and PMTU problems</title>
      <link>https://blog.099c.org/posts/ipsec-and-pmtu-problems/</link>
      <pubDate>Wed, 19 Nov 2014 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/ipsec-and-pmtu-problems/</guid>
      <description>&lt;p&gt;This post has a very good explanation of the problems I&amp;rsquo;ve been suffering with my IPsec tunnels recently:&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://www.zeitgeist.se/2013/11/26/mtu-woes-in-ipsec-tunnels-how-to-fix/&#34; title=&#34;MTU woes in IPsec tunnels and how you can fix it&#34;&gt;MTU woes in IPsec tunnels and how you can fix it&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Two things have fixed my stalled transmissions over IPsec tunnels:&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;Clamping the MSS of the IPsec connections to 1280&lt;/li&gt;&#xA;&lt;li&gt;Setting the sysctl &lt;code&gt;net.ipv4.tcp_mtu_probing=1&lt;/code&gt;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;As seen in &lt;a href=&#34;https://www.mail-archive.com/ubuntu-devel-discuss@lists.ubuntu.com/msg13065.html&#34;&gt;this post&lt;/a&gt;, the values of &lt;code&gt;net.ipv4.tcp_mtu_probing&lt;/code&gt; are:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Configure a single ssh-agent and gpg-agent and use them everywhere</title>
      <link>https://blog.099c.org/posts/configure-a-single-ssh-agent-and-gpg-agent-and-use-them-everywhere/</link>
      <pubDate>Tue, 28 Oct 2014 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/configure-a-single-ssh-agent-and-gpg-agent-and-use-them-everywhere/</guid>
      <description>&lt;p&gt;Using this recipe you&amp;rsquo;ll get a single ssh-agent and a single gpg-agent running for your user and the correct environmental variables will be set everywhere. Just add this code to your &lt;code&gt;~/.bashrc&lt;/code&gt;: [code lang=&amp;ldquo;bash&amp;rdquo;]# GPG Agent if [ -x $(which gpg-agent) ] &amp;amp;&amp;amp; [ -d &amp;ldquo;${HOME}/.gnupg&amp;rdquo; ]; then oldumask=$(umask) umask 0077 pgrep -U $LOGNAME gpg-agent &amp;gt;/dev/null 2&amp;gt;&amp;amp;1 || gpg-agent &amp;ndash;daemon &amp;ndash;write-env-file &amp;ldquo;${HOME}/.gnupg/gpg-agent-info&amp;rdquo; &amp;gt;/dev/null 2&amp;gt;&amp;amp;1 umask $oldumask GPG_TTY=$(tty) export GPG_TTY if [ -r &amp;ldquo;${HOME}/.gnupg/gpg-agent-info&amp;rdquo; ]; then . &amp;ldquo;${HOME}/.gnupg/gpg-agent-info&amp;rdquo; export GPG_AGENT_INFO fi fi&lt;/p&gt;</description>
    </item>
    <item>
      <title>Btrfs filesystem corruption in kernel 3.17.0</title>
      <link>https://blog.099c.org/posts/btrfs-filesystem-corruption-in-kernel-3-17-0/</link>
      <pubDate>Wed, 15 Oct 2014 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/btrfs-filesystem-corruption-in-kernel-3-17-0/</guid>
      <description>&lt;p&gt;Please, be careful with this new kernel, I have suffered from multiple fs corruptions. Give a look to:&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;http://www.mail-archive.com/linux-btrfs@vger.kernel.org/msg38092.html&#34;&gt;http://www.mail-archive.com/linux-btrfs@vger.kernel.org/msg38092.html&lt;/a&gt; &lt;a href=&#34;http://www.mail-archive.com/linux-btrfs@vger.kernel.org/msg38039.html&#34;&gt;http://www.mail-archive.com/linux-btrfs@vger.kernel.org/msg38039.html&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;It seems that the bug is already identified, so a fix will land soon. Great news!&lt;/p&gt;</description>
    </item>
    <item>
      <title>Restore EFI boot entry</title>
      <link>https://blog.099c.org/posts/restore-efi-boot-entry/</link>
      <pubDate>Wed, 10 Sep 2014 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/restore-efi-boot-entry/</guid>
      <description>&lt;p&gt;After clearing the CMOS in a computer, the EFI boot entry of my Fedora installation disappeared. To restore it, I booted a Live CD and registered it again:&lt;/p&gt;&#xA;&lt;p&gt;&lt;code&gt;# efibootmgr -c -w -d /dev/sda -l &#39;EFIfedorashim.efi&#39; -L &amp;quot;Fedora&amp;quot;&lt;/code&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Static DHCPv6 leases in OpenWrt</title>
      <link>https://blog.099c.org/posts/static-dhcpv6-leases-in-openwrt/</link>
      <pubDate>Sun, 07 Sep 2014 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/static-dhcpv6-leases-in-openwrt/</guid>
      <description>&lt;p&gt;I&amp;rsquo;ve updated my router&amp;rsquo;s fimware to latest version of OpenWrt, and there are great improvements everywhere. The one I like more is the overhaul of the IPv6 configuration, with the new daemon &lt;a href=&#34;https://github.com/sbyx/odhcpd&#34; title=&#34;ODHCPD&#34;&gt;odhcpd&lt;/a&gt; and the automatic prefix delegation. You can consult the details in the &lt;a href=&#34;http://wiki.openwrt.org/doc/uci/network6&#34; title=&#34;OpenWrt IPv6&#34;&gt;wiki&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;However, I&amp;rsquo;ve found one caveat trying to configure a client to have a static DHCPv6 lease. After asking in the forums, I found &lt;a href=&#34;https://forum.openwrt.org/viewtopic.php?pid=236272#p236272&#34;&gt;the solution&lt;/a&gt;: First, the client has to obtain an IP by DHCPv6, that way the DUID of the client is registered in &lt;code&gt;/var/hosts/odhcpd&lt;/code&gt;. Then, the DUID has to be added to &lt;code&gt;/etc/config/dhcp&lt;/code&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Clustered HAproxy for load balancing web sites</title>
      <link>https://blog.099c.org/posts/clustered-haproxy-for-load-balancing-web-sites/</link>
      <pubDate>Tue, 26 Aug 2014 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/clustered-haproxy-for-load-balancing-web-sites/</guid>
      <description>&lt;p&gt;In this setup I configure 2 clustered HAproxies in CentOS 7 to be the frontend of a web application.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Export Exchange recipients to Postfix server</title>
      <link>https://blog.099c.org/posts/export-exchange-recipients-to-postfix-server/</link>
      <pubDate>Sun, 30 Mar 2014 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/export-exchange-recipients-to-postfix-server/</guid>
      <description>&lt;p&gt;When  you have an Exchange server in your organization and you also use a Postfix server as gateway, you need the list of all valid recipients of your organization at your gateway. In this way, you can reject invalid emails at the gateway, and what&amp;rsquo;s more important, when the sender address is forged, you don&amp;rsquo;t spam innocent people with undeliverable emails.&lt;/p&gt;&#xA;&lt;p&gt;I use this script in Exchange 2003 to generate all addresses.&lt;/p&gt;</description>
    </item>
    <item>
      <title>fail2ban 0.9</title>
      <link>https://blog.099c.org/posts/fail2ban-0-9/</link>
      <pubDate>Tue, 25 Mar 2014 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/fail2ban-0-9/</guid>
      <description>&lt;p&gt;With the recent release of &lt;a href=&#34;https://github.com/fail2ban/fail2ban/releases/tag/0.9.0&#34; title=&#34;fail2ban 0.9&#34;&gt;fail2ban 0.9&lt;/a&gt; there are very important improvements to the journal and firewalld integration. With these simple configurations, I get fail2ban working in Fedora 20 without a syslog daemon and avoiding being &lt;a href=&#34;http://www.fail2ban.org/wiki/index.php/MANUAL_0_8#Possibility_of_DOS_attack_by_a_local_user&#34; title=&#34;DOSed by a local user&#34;&gt;DOSed  by a local user&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;code&gt;/etc/fail2ban/fail2ban.local&lt;/code&gt;&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-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;[Definition]&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;loglevel = INFO&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;logtarget = SYSLOG&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;In &lt;code&gt;/etc/fail2ban/jail.local&lt;/code&gt; we set the backend to &lt;code&gt;systemd&lt;/code&gt;, so we monitor directly the journal, we also choose as default action &lt;code&gt;firewallcmd-ipset&lt;/code&gt;, so the rules are inserted with firewall-cmd and use the ipset facility. Finally, all the jails needed are enabled.&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-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;[DEFAULT]&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;backend = systemd&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;banaction = firewallcmd-ipset&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;bantime = 3600&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;[sshd]&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;enabled = true&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;[postfix]&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;enabled = true&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;[dovecot]&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;enabled = true&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description>
    </item>
    <item>
      <title>IPsec server in OpenWrt (II)</title>
      <link>https://blog.099c.org/posts/ipsec-server-in-openwrt-ii/</link>
      <pubDate>Fri, 07 Mar 2014 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/ipsec-server-in-openwrt-ii/</guid>
      <description>&lt;p&gt;This is an update of my previous post about &lt;a href=&#34;https://blog.099c.org/posts/ipsec-server-in-openwrt/&#34;&gt;configuring IPsec in OpenWrt&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;The network scenario I&amp;rsquo;m describing is a central OpenWrt router with 2 internal LANs, plus 2 external hosts connected with VPN and some roadwarriors with all their traffic redirected through the IPsec tunnel.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Configure fail2ban in Fedora 20 to use firewall-cmd and ipset</title>
      <link>https://blog.099c.org/posts/configure-fail2ban-in-fedora-20-to-use-firewall-cmd-and-ipset/</link>
      <pubDate>Thu, 27 Feb 2014 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/configure-fail2ban-in-fedora-20-to-use-firewall-cmd-and-ipset/</guid>
      <description>&lt;p&gt;&lt;em&gt;&lt;strong&gt;Note (October 20 2014):&lt;/strong&gt; This post is outdated, please, refer to the post &lt;a href=&#34;https://blog.099c.org/posts/fail2ban-0-9/&#34;&gt;fail2ban 0.9&lt;/a&gt; for more up to date information.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;fail2ban is a handy daemon that monitors the log files to identify connection attempts and other kind of attacks and ban those IPs for a certain period of time.&lt;/p&gt;&#xA;&lt;p&gt;Currently, fail2ban upstream is adding support to firewalld and the use of ipset, so some modifications are needed at the stock config.&lt;/p&gt;&#xA;&lt;p&gt;First of all, install the needed packages, I add rsyslog because it&amp;rsquo;s not included in the default Fedora 20 installation and it&amp;rsquo;s needed to generate &lt;code&gt;/var/log/secure&lt;/code&gt;. I hope fail2ban will support some day querying the journal directly.&lt;/p&gt;</description>
    </item>
    <item>
      <title>How to test a OCSP server</title>
      <link>https://blog.099c.org/posts/how-to-test-a-ocsp-server/</link>
      <pubDate>Sat, 18 Jan 2014 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/how-to-test-a-ocsp-server/</guid>
      <description>&lt;p&gt;The other day, I installed a OCSP server in Windows 2012 R2 and got the need of testing it. I have found two different ways. In Windows, using the tool certutil:&lt;/p&gt;&#xA;&lt;p&gt;&lt;code&gt;# certutil.exe -url cert.pem&lt;/code&gt;&lt;/p&gt;&#xA;&lt;p&gt;It will open a window where we can test all the revocation methods listed in the certificate. To test OCSP, we select it under &amp;ldquo;recovery&amp;rdquo; and click the button.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;ocsp.png&#34; alt=&#34;OCSP test with certutil&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;In Linux we can test OCSP with OpenSSL, this line does the trick:&lt;/p&gt;</description>
    </item>
    <item>
      <title>dnssec-tools and bind authoritative name server in Fedora</title>
      <link>https://blog.099c.org/posts/dnssec-tools-and-bind-authoritative-name-server-in-fedora/</link>
      <pubDate>Mon, 30 Sep 2013 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/dnssec-tools-and-bind-authoritative-name-server-in-fedora/</guid>
      <description>&lt;p&gt;Some time ago, I wrote a &lt;a href=&#34;https://blog.099c.org/posts/bind-authoritative-name-server-with-dnssec-in-centos-6/&#34;&gt;post&lt;/a&gt; about using dnssec-tools for managing an authoritative name server in CentOS, now I&amp;rsquo;m going to extend it to cover their usage in a Fedora system.&lt;/p&gt;&#xA;&lt;p&gt;First of all, I&amp;rsquo;m going to use the latest versions which currently is not in the repositories. Download the source rpm, recompile and install the rpms: &lt;code&gt;$ mock -r fedora-19-x86_64 dnssec-tools-2.0-1.fc18.src.rpm # yum install /var/lib/mock/fedora-19-x86_64/result/*rpm&lt;/code&gt;&lt;/p&gt;&#xA;&lt;p&gt;The configuration of bind as authoritative name server &lt;code&gt;/etc/named.conf&lt;/code&gt;:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Enabling ECC in Fedora and CentOS</title>
      <link>https://blog.099c.org/posts/enabling-ecc-in-fedora-and-centos/</link>
      <pubDate>Tue, 27 Aug 2013 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/enabling-ecc-in-fedora-and-centos/</guid>
      <description>&lt;p&gt;Because the recent revelations about PRISM, it feels that everybody is revisiting their security infrastructure.&lt;/p&gt;&#xA;&lt;p&gt;After testing during many hours the available ciphers in the Apache web server, I realized that it&amp;rsquo;s impossible to get Perfect Forward Secrecy with Red Hat and its derivatives. See bug &lt;a href=&#34;https://bugzilla.redhat.com/show_bug.cgi?id=319901&#34;&gt;#319901&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;I have decided to recompile openssl and apache for the servers I manage, I have uploaded the scripts I use to this repository: &lt;a href=&#34;https://github.com/jorti/fedora-compile-with-ecc&#34; title=&#34;Scripts to compile Fedora packages with ECC enabled&#34;&gt;https://github.com/jorti/fedora-compile-with-ecc&lt;/a&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Bind authoritative name server with DNSSEC in CentOS 6</title>
      <link>https://blog.099c.org/posts/bind-authoritative-name-server-with-dnssec-in-centos-6/</link>
      <pubDate>Thu, 09 May 2013 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/bind-authoritative-name-server-with-dnssec-in-centos-6/</guid>
      <description>&lt;p&gt;I&amp;rsquo;m going to explain how to implement DNSSEC in CentOS, using Bind as authoritative name server and the &lt;a href=&#34;http://www.dnssec-tools.org/&#34; title=&#34;dnssec-tools&#34;&gt;dnssec-tools&lt;/a&gt; utilities. To deploy DNSSEC, your parent zone must be signed, you can check it &lt;a href=&#34;http://stats.research.icann.org/dns/tld_report/&#34;&gt;here&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;The main reference for this post is in the dnssec-tools Wiki: &lt;a href=&#34;https://www.dnssec-tools.org/wiki/index.php/Authoritative_Server&#34; title=&#34;DNSSEC tools authoritative name server&#34;&gt;https://www.dnssec-tools.org/wiki/index.php/Authoritative_Server&lt;/a&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>IPsec server in OpenWrt</title>
      <link>https://blog.099c.org/posts/ipsec-server-in-openwrt/</link>
      <pubDate>Wed, 01 May 2013 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/ipsec-server-in-openwrt/</guid>
      <description>&lt;p&gt;&lt;em&gt;&lt;strong&gt;NOTE&lt;/strong&gt;: Please, check &lt;a href=&#34;https://blog.099c.org/posts/ipsec-server-in-openwrt-ii/&#34;&gt;this updated post&lt;/a&gt; about this topic.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;I have configured a IPsec server in my OpenWrt router to use it from my Android device when I am connected to an untrusted network. Previously I&amp;rsquo;ve used OpenVPN, but it drains too much battery, so I want to test if this solution, which is integrated in Android, works better.&lt;/p&gt;&#xA;&lt;p&gt;I have taken the configuration from the &lt;a href=&#34;http://wiki.openwrt.org/inbox/strongswan.howto&#34; title=&#34;StrongSwan howto&#34;&gt;OpenWrt Wiki&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>df and du disk usage report mismatch</title>
      <link>https://blog.099c.org/posts/df-and-du-disk-usage-report-mismatch/</link>
      <pubDate>Wed, 27 Feb 2013 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/df-and-du-disk-usage-report-mismatch/</guid>
      <description>&lt;p&gt;I had a server with a very big difference in the disk usage report of df and what du said I was actually using. The cause was that Apache had many open file descriptors to deleted log files. You can see all the deleted file descriptors with:&lt;/p&gt;&#xA;&lt;p&gt;&lt;code&gt;# ls -ld /proc/*/fd/* 2&amp;gt;&amp;amp;1 | fgrep &#39;(deleted)&#39;&lt;/code&gt;&lt;/p&gt;&#xA;&lt;p&gt;Or using &lt;code&gt;lsof&lt;/code&gt;: &lt;code&gt;# lsof +L1 # lsof -a +L1 /home&lt;/code&gt;&lt;/p&gt;&#xA;&lt;p&gt;Seen in: &lt;a href=&#34;http://www.noodles.net.nz/2011/07/27/df-not-reporting-correct-disk-usage/&#34; title=&#34;Deleted file descriptors&#34;&gt;http://www.noodles.net.nz/2011/07/27/df-not-reporting-correct-disk-usage/&lt;/a&gt; and: &lt;a href=&#34;https://mradomski.wordpress.com/2007/01/08/finding-an-unlinked-open-file-and-other-lsof-uses/&#34;&gt;https://mradomski.wordpress.com/2007/01/08/finding-an-unlinked-open-file-and-other-lsof-uses/&lt;/a&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Simultaneous audio in HDMI and analog with Pulseaudio</title>
      <link>https://blog.099c.org/posts/simultaneous-audio-in-hdmi-and-analog-with-pulseaudio/</link>
      <pubDate>Thu, 21 Feb 2013 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/simultaneous-audio-in-hdmi-and-analog-with-pulseaudio/</guid>
      <description>&lt;p&gt;I have connected my computer to the TV via HDMI and wanted to play audio simultaneously in the PC speakers and in the home cinema. You can see this solution in the &lt;a href=&#34;https://wiki.archlinux.org/index.php/PulseAudio/Examples#Simultaneous_HDMI_and_Analog_Output&#34; title=&#34;Simultaneous_HDMI_and_Analog_Output&#34;&gt;Arch wiki&lt;/a&gt;, I just have added the device description for easier identification.&lt;/p&gt;&#xA;&lt;p&gt;At the beginning of &lt;code&gt;/etc/pulse/default.pa&lt;/code&gt;, add:&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-gdscript3&#34; data-lang=&#34;gdscript3&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;load&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;module&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;module&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;alsa&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;sink&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;device&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;hw:0,0&amp;#34;&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;sink_name&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;analog_output_stereo&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;channels&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2&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;n&#34;&gt;update&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;sink&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;proplist&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;analog_output_stereo&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;device&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;description&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;PC Speakers - Stereo&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;&#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;nb&#34;&gt;load&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;module&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;module&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;alsa&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;sink&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;device&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;hw:0,7&amp;#34;&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;sink_name&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hdmi_output_surround&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;channels&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;6&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;channel_map&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;front&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;left&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;front&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;right&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;rear&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;left&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;rear&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;right&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;front&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;center&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;lfe&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;n&#34;&gt;update&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;sink&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;proplist&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;hdmi_output_surround&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;device&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;description&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Home theater - 5.1&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;&#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;nb&#34;&gt;load&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;module&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;module&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;combine&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;sink&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;sink_name&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;analog_hdmi_surround&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;slaves&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;analog_output_stereo&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hdmi_output_surround&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;channels&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;6&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;channel_map&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;front&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;left&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;front&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;right&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;rear&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;left&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;rear&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;right&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;front&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;center&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;lfe&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;n&#34;&gt;update&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;sink&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;proplist&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;analog_hdmi_surround&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;device&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;description&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Home theater and PC Speakers - 5.1&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;You can get the device id with &lt;code&gt;aplay&lt;/code&gt;. &amp;ldquo;hw:0,7&amp;rdquo; means the card 0, device 7.&lt;/p&gt;</description>
    </item>
    <item>
      <title>PostgreSQL replication with Slony-I</title>
      <link>https://blog.099c.org/posts/postgresql-replication-with-slony/</link>
      <pubDate>Sat, 09 Feb 2013 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/postgresql-replication-with-slony/</guid>
      <description>&lt;p&gt;In recent versions of PostgreSQL there are replication capabilities built-in, but for older versions I&amp;rsquo;ve been using &lt;a href=&#34;http://slony.info/&#34; title=&#34;Slony&#34;&gt;Slony-I&lt;/a&gt;. I&amp;rsquo;m going to describe how I&amp;rsquo;ve replicated a database running on PostgreSQL 8.4 with Slony 1.2. For more info, you can read the &lt;a href=&#34;http://slony.info/documentation/1.2/index.html&#34; title=&#34;Slony official documentation&#34;&gt;official documentation&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Create a superuser role in both servers for replication:&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;&lt;code&gt;CREATE ROLE slony WITH SUPERUSER LOGIN PASSWORD &#39;mipassword&#39;;&lt;/code&gt;&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Example values:&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;&lt;code&gt;CLUSTERNAME=db_cluster MASTERDBNAME=mydb SLAVEDBNAME=mydb MASTERHOST=psql01.example.com SLAVEHOST=psql02.example.com REPLICATIONUSER=slony DBUSER=user export CLUSTERNAME MASTERDBNAME SLAVEDBNAME MASTERHOST SLAVEHOST REPLICATIONUSER DBUSER&lt;/code&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>DNS timeout while logging in via SSH</title>
      <link>https://blog.099c.org/posts/dns-timeout-while-logging-in-via-ssh/</link>
      <pubDate>Fri, 08 Feb 2013 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/dns-timeout-while-logging-in-via-ssh/</guid>
      <description>&lt;p&gt;In a computer which is in a isolated network, I have experienced a long delay while logging in via SSH. This is because a DNS timeout. It&amp;rsquo;s possible to disable the DNS lookups of sshd, modifying this setting in &lt;code&gt;/etc/ssh/sshd_config&lt;/code&gt;:&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-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;UseDNS no&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description>
    </item>
    <item>
      <title>Fix failed to prime trust anchor -- DNSKEY rrset is not secure . DNSKEY IN</title>
      <link>https://blog.099c.org/posts/fix-failed-to-prime-trust-anchor-dnsskey-rrset-is-not-secure-dnsskey-in/</link>
      <pubDate>Mon, 14 Jan 2013 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/fix-failed-to-prime-trust-anchor-dnsskey-rrset-is-not-secure-dnsskey-in/</guid>
      <description>&lt;p&gt;After &lt;a href=&#34;https://blog.099c.org/posts/configure-unbound-dnssec-resolver-in-openwrt/&#34;&gt;installing Unbound in a OpenWrt router&lt;/a&gt;, I noticed that afer a reboot, the DNS was not working. I saw many of these errors in the log:&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-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;failed to prime trust anchor -- DNSKEY rrset is not secure . DNSKEY IN&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;I have discovered that the system date was wrong. As this device lacks a hardware clock, when the machine boots, it cannot synchronize the time by NTP because there is no resolver (Unbound doesn&amp;rsquo;t start because the date validation of the ICANN certificate fails). It&amp;rsquo;s a chicken or the egg problem.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Configure Unbound DNSSEC resolver in OpenWrt</title>
      <link>https://blog.099c.org/posts/configure-unbound-dnssec-resolver-in-openwrt/</link>
      <pubDate>Thu, 20 Dec 2012 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/configure-unbound-dnssec-resolver-in-openwrt/</guid>
      <description>&lt;p&gt;After realizing that my ISP (ONO) was hijacking the NXDOMAIN DNS responses, I decided to improve the security of the DNS queries for my entire LAN using &lt;a href=&#34;https://en.wikipedia.org/wiki/Domain_Name_System_Security_Extensions&#34; title=&#34;DNSSEC&#34;&gt;DNSSEC&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;I choosed to replace &lt;a href=&#34;http://www.thekelleys.org.uk/dnsmasq/doc.html&#34; title=&#34;dnsmasq&#34;&gt;dnsmasq&lt;/a&gt; for &lt;a href=&#34;https://unbound.net/&#34; title=&#34;unbound&#34;&gt;unbound&lt;/a&gt; in my OpenWrt router. These are the steps I followed.&lt;/p&gt;&#xA;&lt;p&gt;First I installed the required packages:&lt;/p&gt;&#xA;&lt;p&gt;&lt;code&gt;# opkg update # opkg install unbound unbound-anchor unbound-control unbound-control-setup unbound-host&lt;/code&gt;&lt;/p&gt;&#xA;&lt;p&gt;As dnsmasq is also the DHCP server, I&amp;rsquo;m not going to disable it, only change the DNS port to 5353. In &lt;code&gt;/etc/config/dhcp&lt;/code&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>proxy.pac CGI script</title>
      <link>https://blog.099c.org/posts/proxy-pac-cgi-script/</link>
      <pubDate>Mon, 23 Jul 2012 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/proxy-pac-cgi-script/</guid>
      <description>&lt;p&gt;In my OpenWrt box I have two internal networks,one for my LAN and other for the wifi guests. I have configured a proxy server, and to distribute the configuration to the clients, I did a little script to generate a &lt;code&gt;proxy.pac&lt;/code&gt; file dependent on the client IP.&lt;/p&gt;&#xA;&lt;p&gt;I have this in &lt;code&gt;/www/cgi-bin/proxy.pac&lt;/code&gt;:&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/sh&#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;nv&#34;&gt;mynetmask&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;255.255.255.0&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;nb&#34;&gt;eval&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;/bin/ipcalc.sh &lt;span class=&#34;nv&#34;&gt;$REMOTE_ADDR&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;$mynetmask&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;)&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;if&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$NETWORK&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;192.168.10.0&amp;#34;&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;  &lt;span class=&#34;nv&#34;&gt;proxy&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;#34;&lt;/span&gt;PROXY 192.168.10.1:3128&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; DIRECT&lt;span class=&#34;s2&#34;&gt;&amp;#34;&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;else&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;nv&#34;&gt;proxy&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;#34;&lt;/span&gt;PROXY 192.168.11.1:3128&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; DIRECT&lt;span class=&#34;s2&#34;&gt;&amp;#34;&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;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&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;nb&#34;&gt;echo&lt;/span&gt; Content-Type: application/x-ns-proxy-autoconfig&#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;nb&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&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;&#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;nb&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;function FindProxyForURL(url, host)&#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;s2&#34;&gt;{&#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;s2&#34;&gt;  return &lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$proxy&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;;&#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;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;Make it executable, you can test it in command line passing the client IP:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Deshabilitar el modo visual de Vim automático con el ratón</title>
      <link>https://blog.099c.org/posts/deshabilitar-el-modo-visual-de-vim-automatico-con-el-raton/</link>
      <pubDate>Mon, 16 Jul 2012 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/deshabilitar-el-modo-visual-de-vim-automatico-con-el-raton/</guid>
      <description>&lt;p&gt;En algunas máquinas, cuando seleccionas texto con el ratón en Vim, se activa el modo visual, lo que me resulta muy incómodo, para deshabilitarlo, podemos ejecutar el comando:&lt;/p&gt;&#xA;&lt;p&gt;&lt;code&gt;:set mouse-=a&lt;/code&gt;&lt;/p&gt;&#xA;&lt;p&gt;O configurarnos en el archivo &lt;code&gt;~/.vimrc&lt;/code&gt;&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-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;set mouse-=a&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Fuente: &lt;a href=&#34;http://www.varesano.net/blog/fabio/disable%20vim%20automatic%20visual%20mode%20using%20mouse&#34;&gt;www.varesano.net&lt;/a&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Monitorizar un proceso Java</title>
      <link>https://blog.099c.org/posts/monitorizar-un-proceso-java/</link>
      <pubDate>Sat, 16 Jun 2012 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/monitorizar-un-proceso-java/</guid>
      <description>&lt;p&gt;Últimamente he estado investigando un proceso Java que fallaba por falta de memoria y he visto unas cuantas técnicas de monitorización bastante útiles.&lt;/p&gt;&#xA;&lt;p&gt;Los parámetros para el control de memoria de la máquina virtual Java se pueden ajustar por línea de comandos. Hay muchos parámetros disponibles, pero cabe destacar &lt;code&gt;-Xms&lt;/code&gt; y &lt;code&gt;-Xmx&lt;/code&gt;. Podéis consultar las opciones más importantes en la &lt;a href=&#34;http://www.oracle.com/technetwork/java/javase/tech/vmoptions-jsp-140102.html&#34;&gt;documentación oficial&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Para tener un volcado de la heap en caso de error, son muy útiles las opciones &lt;code&gt;-XX:+HeapDumpOnOutOfMemoryError&lt;/code&gt; y &lt;code&gt;-XX:HeapDumpPath=/dir&lt;/code&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Cifrado de discos con Luks</title>
      <link>https://blog.099c.org/posts/cifrado-de-discos-con-luks/</link>
      <pubDate>Mon, 28 May 2012 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/cifrado-de-discos-con-luks/</guid>
      <description>&lt;p&gt;Luks nos permite cifrar el contenido del disco y trabajar con él de forma transparente. Esto nos protege de ataques offline como por ejemplo en caso de pérdida de un portatil, o si sustituimos un disco ya no nos tenemos que preocupar de borrar la información que contiene.&lt;/p&gt;&#xA;&lt;p&gt;Podemos crear un dispositivo Luks directamente sobre una partición, un logical volume de LVM, un dispositivo RAID, etc.&lt;/p&gt;&#xA;&lt;p&gt;Es recomendable limpiar la partición previamente y rellenarla con datos aleatorios. Por ejemplo, para cifrar la partición &lt;code&gt;/dev/sda3&lt;/code&gt; (Se perderán todos los datos que contenga):&lt;/p&gt;</description>
    </item>
    <item>
      <title>Ejecutar aplicaciones gráficas con otro usuario en una sesión X remota</title>
      <link>https://blog.099c.org/posts/ejecutar-aplicaciones-graficas-con-otro-usuario-en-una-sesion-x-remota/</link>
      <pubDate>Tue, 24 Apr 2012 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/ejecutar-aplicaciones-graficas-con-otro-usuario-en-una-sesion-x-remota/</guid>
      <description>&lt;p&gt;Ocurre bastante a menudo que cuando te conectas a una máquina remota mediante SSH y necesitas lanzar un comando con otro usuario, te da un error semejante a este:&lt;/p&gt;&#xA;&lt;p&gt;&lt;code&gt;$ sudo virt-manager [sudo] password for juan: PuTTY X11 proxy: wrong authorisation protocol attemptedPuTTY X11 proxy: wrong authorisation protocol attemptedPuTTY X11 proxy: wrong authorisation protocol attemptedPuTTY X11 proxy: wrong authorisation protocol attemptedTraceback (most recent call last): File &amp;quot;/usr/share/virt-manager/virt-manager.py&amp;quot;, line 383, in &amp;lt;module&amp;gt; main() File &amp;quot;/usr/share/virt-manager/virt-manager.py&amp;quot;, line 286, in main raise gtk_error RuntimeError: could not open display&lt;/code&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Obtener un prefijo IPv6 con gogoc en Fedora</title>
      <link>https://blog.099c.org/posts/obtener-un-prefijo-ipv6-con-gogoc-en-fedora/</link>
      <pubDate>Tue, 24 Apr 2012 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/obtener-un-prefijo-ipv6-con-gogoc-en-fedora/</guid>
      <description>&lt;p&gt;En mi &lt;a href=&#34;https://blog.099c.org/posts/obtener-una-direccion-ipv6-con-freenet6-en-fedora/&#34;&gt;post anterior&lt;/a&gt;, expliqué cómo conectar de forma anónima una sola máquina con el broker IPv6 &lt;a href=&#34;http://gogonet.gogo6.com/page/freenet6-ipv6-services&#34; title=&#34;Freenet6&#34;&gt;Freenet6.net&lt;/a&gt;. Ahora os voy a contar cómo obterner un prefijo /64 y repartir direcciones a nuestra red local.&lt;/p&gt;&#xA;&lt;p&gt;Voy a asumir que tenemos el paquete gogoc instalado y hemos configurado la opción &amp;ldquo;-y&amp;rdquo; en /etc/sysconfig/gogoc. Además necesitamos &lt;a href=&#34;http://gogonet.gogo6.com/page/freenet6-registration&#34; title=&#34;Freenet6 registration&#34;&gt;crear una cuenta en Freenet6&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Con estos prerequisitos cumplidos, editamos el fichero &lt;code&gt;/etc/gogoc/gogoc.conf&lt;/code&gt; y modificamos las siguientes líneas:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Obtener una dirección IPv6 con Freenet6 en Fedora</title>
      <link>https://blog.099c.org/posts/obtener-una-direccion-ipv6-con-freenet6-en-fedora/</link>
      <pubDate>Tue, 24 Apr 2012 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/obtener-una-direccion-ipv6-con-freenet6-en-fedora/</guid>
      <description>&lt;p&gt;Después de un tiempo aprendiendo a hacer paquetes RPM, me he decidido a unirme al grupo de empaquetadores de Fedora y hace poco he subido mi primer programa: el cliente gogoc para el broker de IPv6 &lt;a href=&#34;http://gogonet.gogo6.com/page/freenet6-ipv6-services&#34; title=&#34;Freenet6&#34;&gt;freenet6.net&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Este programa negocia un túnel por UDP contra los servidores de freenet6, y te asigna una IPv6 dinámica. También es posible solicitar un prefijo estático, con lo que podrás dar direcciones IPv6 a toda tu red, pero para esto hace falta registrarse en &lt;a href=&#34;http://gogonet.gogo6.com/page/freenet6-registration&#34; title=&#34;Freenet6 registration&#34;&gt;http://gogonet.gogo6.com/page/freenet6-registration&lt;/a&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Monitorizar equipos CentOS desde Microsoft Operations Manager</title>
      <link>https://blog.099c.org/posts/monitorizar-equipos-centos-desde-microsoft-operations-manager/</link>
      <pubDate>Tue, 13 Mar 2012 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/monitorizar-equipos-centos-desde-microsoft-operations-manager/</guid>
      <description>&lt;p&gt;Estoy actualmente peleándome con Microsoft &lt;a href=&#34;http://www.microsoft.com/en-us/server-cloud/system-center/operations-manager.aspx&#34; title=&#34;Operations Manager&#34;&gt;Operations Manager&lt;/a&gt;, y por lo que veo incluye unos management packs para Red Hat que no valen para CentOS. Gracias a los enlaces que os pongo a continuación he conseguido crear unos MP específicos para CentOS:&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;http://blogs.msdn.com/b/scxplat/archive/2010/01/05/building-a-centos-management-pack-part-1.aspx&#34; title=&#34;Building a CentOS management pack part 1&#34;&gt;http://blogs.msdn.com/b/scxplat/archive/2010/01/05/building-a-centos-management-pack-part-1.aspx&lt;/a&gt; &lt;a href=&#34;http://blogs.msdn.com/b/scxplat/archive/2010/01/05/building-a-centos-management-pack-part-2.aspx&#34; title=&#34;Building a CentOS management pack part 2&#34;&gt;http://blogs.msdn.com/b/scxplat/archive/2010/01/05/building-a-centos-management-pack-part-2.aspx&lt;/a&gt; &lt;a href=&#34;http://blogs.msdn.com/b/scxplat/archive/2010/01/18/building-a-centos-management-pack-part-3.aspx&#34; title=&#34;Building a CentOS management pack part 3&#34;&gt;http://blogs.msdn.com/b/scxplat/archive/2010/01/18/building-a-centos-management-pack-part-3.aspx&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Este usuario también ha escrito una guía muy útil para diagnosticar posibles problemas de descubrimiento o de instalación del agente en CentOS:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Cambiar la dirección de un servidor SVN</title>
      <link>https://blog.099c.org/posts/cambiar-la-direccion-de-un-servidor-svn/</link>
      <pubDate>Thu, 01 Mar 2012 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/cambiar-la-direccion-de-un-servidor-svn/</guid>
      <description>&lt;p&gt;Cuando se cambia la IP o nombre de un servidor SVN, hay que actualizar los proyectos con el siguiente comando:&lt;/p&gt;&#xA;&lt;p&gt;&lt;code&gt;$ svn sw --relocate http://old_server/proyecto http://new_server/proyecto&lt;/code&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Transferencia de zona DNS de Windows a bind</title>
      <link>https://blog.099c.org/posts/transferencia-de-zona-dns-de-windows-a-bind/</link>
      <pubDate>Thu, 01 Mar 2012 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/transferencia-de-zona-dns-de-windows-a-bind/</guid>
      <description>&lt;p&gt;Podemos configurar un servidor DNS bind para recibir zonas de un controlador de dominio, para ello simplemente habría que habilitar la transferencia de zona en el servidor Windows y configurarlas en bind de la siguiente manera:&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-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;zone &amp;#34;dominio.local&amp;#34; in {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;   type slave;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;   file &amp;#34;slaves/dominio.local.db&amp;#34;;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;   masters { 192.168.1.100; };&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;   allow-transfer { any; };&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;   allow-query { any;};&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;   check-names ignore;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;   notify yes;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;};&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;zone &amp;#34;_msdcs.dominio.local&amp;#34; in {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;   type slave;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;   file &amp;#34;slaves/_msdcs.dominio.local.db&amp;#34;;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;   masters { 192.168.1.100; };&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;   allow-transfer { any; };&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;   allow-query { any;};&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;   check-names ignore;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;   notify yes;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;};&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;zone &amp;#34;1.168.192.in-addr.arpa&amp;#34; in {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;   type slave;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;   file &amp;#34;slaves/1.168.192.in-addr.arpa.db&amp;#34;;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;   masters { 192.168.1.100; };&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;   allow-transfer { any; };&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;   allow-query { any;};&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;   check-names ignore;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;   notify yes;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;};&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description>
    </item>
    <item>
      <title>Intercambio y firma de claves GnuPG con ayuda del DNIe</title>
      <link>https://blog.099c.org/posts/intercambio-y-firma-de-claves-gnupg-con-ayuda-del-dnie/</link>
      <pubDate>Wed, 25 Jan 2012 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/intercambio-y-firma-de-claves-gnupg-con-ayuda-del-dnie/</guid>
      <description>&lt;p&gt;Recientemente he hecho un intercambio y firmado de claves &lt;a href=&#34;http://www.gnupg.org/&#34; title=&#34;GNUPG&#34;&gt;GnuPG&lt;/a&gt; sin necesidad de encontrarse físicamente con la otra persona, gracias a la firma con DNI electrónico. El método tradicional es la &lt;a href=&#34;http://www.gnupg.org/howtos/es/gpg-party.html&#34; title=&#34;Fiesta firmado de claves&#34;&gt;fiesta de firmado de claves&lt;/a&gt;, pero yo nunca he podido asistir a ninguna. Os explico este método que viene muy bien porque se puede hacer completamente a distancia.&lt;/p&gt;&#xA;&lt;p&gt;Lo primero es generar un documento PDF en el que nos identificamos y que contenga la información sobre nuestra clave pública:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Centralita Asterisk conectada a VoIP de Ya.com Total</title>
      <link>https://blog.099c.org/posts/centralita-asterisk-conectada-a-voip-de-yacom-total/</link>
      <pubDate>Tue, 24 Jan 2012 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/centralita-asterisk-conectada-a-voip-de-yacom-total/</guid>
      <description>&lt;p&gt;En las últimas semanas he estado trasteando con el servidor &lt;a href=&#34;http://www.asterisk.org/&#34; title=&#34;Asterisk&#34;&gt;Asterisk&lt;/a&gt;, y como tengo la línea de teléfono con ya.com mediante VoIP, he conectado ambos para poder hacer llamadas desde otros clientes SIP.&lt;/p&gt;&#xA;&lt;p&gt;La configuración la he hecho en el router &lt;a href=&#34;http://www.buffalotech.com/products/wireless/wireless-n-routers-access-points/airstation-highpower-n600-gigabit-dual-band-wireless-router-wzr-hp-ag300h/&#34; title=&#34;Buffalo WZR-HP-AG300H&#34;&gt;Buffalo WZR-HP-AG300H&lt;/a&gt;, al cual le he instalado la distribución &lt;a href=&#34;https://openwrt.org/&#34; title=&#34;OpenWrt&#34;&gt;OpenWrt&lt;/a&gt;. Este router es una auténtica maravilla, se lo recomiendo a todo el mundo y combinado con OpenWrt es una solución potentísima.&lt;/p&gt;&#xA;&lt;p&gt;El router de ya.com tiene deshabilitado todo el tema de VoIP, firewall, NAT, etc. y está en modo bridge, por lo que la IP pública está asignada al router Buffalo. Este es un punto importante para la VoIP, que utiliza puertos dinámicos y debe conocer su IP pública. Como los amigos de ya.com tienen bloqueado el router, para poder ponerlo en modo bridge he tenido que hacer un downgrade del firmware a la &lt;a href=&#34;http://dl.dropbox.com/u/40772819/Firmware-SMC7908AISP.zip&#34;&gt;versión 1.00.001&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;La configuración que he usado en Asterisk para conectar con ya.com se divide en dos partes. En &lt;code&gt;sip.conf&lt;/code&gt; se configuran las conexiones SIP tanto a los proveedores como a los clientes (teléfonos). En &lt;code&gt;extensions.conf&lt;/code&gt; se configura el plan de numeración (las extensiones y cómo manejar los números marcados). He dado de alta también al proveedor &lt;a href=&#34;https://easyvoip.com/&#34; title=&#34;easyvoip&#34;&gt;easyvoip&lt;/a&gt; para las llamadas a móviles e internacionales, que sale mucho más barato que ya.com. También he incluido un &lt;a href=&#34;http://code.google.com/p/csipsimple/&#34; title=&#34;CSipSimple&#34;&gt;cliente SIP&lt;/a&gt; que uso desde mi teléfono Android para poder llamar como si estuviese en casa. Para el teléfono fijo he tenido que instalar un adaptado telefónico y lo he conectado con Asterisk con el usuario &lt;code&gt;telefono1&lt;/code&gt; y la contraseña definida en el fichero &lt;code&gt;sip.conf&lt;/code&gt;, he elegido el modelo &lt;a href=&#34;http://www.cisco.com/en/US/products/ps10029/index.html&#34; title=&#34;Cisco PAP2T&#34;&gt;Cisco PAP2T&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Configurar túnel IPv6 en Fedora</title>
      <link>https://blog.099c.org/posts/configurar-tunel-ipv6-en-fedora/</link>
      <pubDate>Mon, 02 Jan 2012 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/configurar-tunel-ipv6-en-fedora/</guid>
      <description>&lt;p&gt;Aún falta un poco hasta que los proveedores de acceso a Internet nos asignen un rango IPv6 en cada router, sobre todo en España, donde nos venden a precio de oro una conexión del siglo pasado.&lt;/p&gt;&#xA;&lt;p&gt;Estos últimos días he estado configurándome un túnel IPv6-en-IPv4 de &lt;a href=&#34;https://tunnelbroker.net/&#34; title=&#34;Tunnel Broker&#34;&gt;Hurricane Electrics&lt;/a&gt;, y la verdad es que funciona muy bien. Os cuento como he hecho la configuración en Fedora 16:&lt;/p&gt;&#xA;&lt;p&gt;Lo primero de todo es darse de alta y solicitar un túnel, se nos asignará un IP y un rango /64 para nuestra red local. En la página de información detallada de nuestro túnel vienen todos los datos que vamos a necesitar.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Monitorización de un RAID por software en Linux</title>
      <link>https://blog.099c.org/posts/monitorizacion-de-un-raid-por-software-en-linux/</link>
      <pubDate>Tue, 27 Dec 2011 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/monitorizacion-de-un-raid-por-software-en-linux/</guid>
      <description>&lt;p&gt;Para evitar pérdidas de datos si falla algún disco duro, tengo la partición &lt;code&gt;/home&lt;/code&gt; montada sobre un RAID por software. Voy a explicar cómo activar el servicio de monitorización en Fedora 16 para que nos mande un correo en caso de que haya algún problema con nuestro array.&lt;/p&gt;&#xA;&lt;p&gt;Existe un servicio llamado mdmonitor.service que se encarga de monitorizar el estado de los arrays, pero no arranca si no existe el fichero &lt;code&gt;/etc/mdadm.conf&lt;/code&gt;. Por lo tanto, lo primero es crear el fichero y añadir nuestro array:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Uso de find y xargs para nombres de archivos con espacios</title>
      <link>https://blog.099c.org/posts/uso-de-find-y-xargs-para-nombres-de-archivos-con-espacios/</link>
      <pubDate>Thu, 22 Dec 2011 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/uso-de-find-y-xargs-para-nombres-de-archivos-con-espacios/</guid>
      <description>&lt;p&gt;Un pequeño truco para que no nos falle el uso de find y xargs cuando tratamos con nombres de archivos que contienen espacios, es usarlos con estas opciones:&lt;/p&gt;&#xA;&lt;p&gt;&lt;code&gt;find /dir -print0 | xargs -0 _&amp;lt;comando&amp;gt;_&lt;/code&gt;&lt;/p&gt;&#xA;&lt;p&gt;De esta forma los comandos separan los nombres de archivos con el caracter NUL en vez del espacio.&lt;/p&gt;&#xA;&lt;p&gt;Visto en: &lt;a href=&#34;https://notfaq.wordpress.com/2006/07/30/unix-filenames-with-spaces-in-find-xargs/&#34;&gt;https://notfaq.wordpress.com/2006/07/30/unix-filenames-with-spaces-in-find-xargs/&lt;/a&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Instalación de servidor OpenVPN</title>
      <link>https://blog.099c.org/posts/instalacion-de-servidor-openvpn/</link>
      <pubDate>Fri, 02 Dec 2011 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/instalacion-de-servidor-openvpn/</guid>
      <description>&lt;p&gt;Después de leer las últimas noticias sobre &lt;a href=&#34;http://www.elandroidelibre.com/2011/12/todo-sobre-la-trama-carrieriq-millones-de-telefonos-android-e-ios-monitorizados.html&#34; title=&#34;CarrierIQ&#34;&gt;CarrierIQ&lt;/a&gt; me he decidido a rootear mi teléfono Android e instalar &lt;a href=&#34;http://www.cyanogenmod.com/&#34; title=&#34;Cyanogen Mod&#34;&gt;CyanogenMod&lt;/a&gt; 7.1 para quitarme la ROM del operador y poder tunelizar las conexiones por VPN. No me voy a explayar en el proceso de rooteado del teléfono (un HTC Desire) ya que hay muchas guías que lo explican y con &lt;a href=&#34;http://unrevoked.com/&#34; title=&#34;unrevoked&#34;&gt;unrevoked&lt;/a&gt; es muy sencillo.&lt;/p&gt;&#xA;&lt;p&gt;Voy a explicar cómo configurar un servidor VPN para poder usarlo desde el teléfono.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Control de ancho de banda en Linux</title>
      <link>https://blog.099c.org/posts/control-de-ancho-de-banda-en-linux/</link>
      <pubDate>Wed, 16 Nov 2011 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/control-de-ancho-de-banda-en-linux/</guid>
      <description>&lt;p&gt;En casa tengo la típica línea ADSL, y ya llevaba tiempo dándole vueltas a varios problemas de latencia y velocidad que estaba sufriendo cuando conectaba &lt;a href=&#34;http://www.amule.org/&#34; title=&#34;aMule&#34;&gt;aMule&lt;/a&gt;, &lt;a href=&#34;http://www.transmissionbt.com/&#34; title=&#34;Transmission Bittorrent&#34;&gt;Transmission&lt;/a&gt; o similares. Cuando estaba usando estos programas P2P, la navegación se ralentizaba hasta extremos desesperantes, muchas veces lo que más le costaba era la resolución DNS de las páginas, algo que tendría que ser lo más rápido posible.&lt;/p&gt;&#xA;&lt;p&gt;Para mejorar la situación he creado un script basándome en el fantástico &lt;a href=&#34;http://lartc.org/wondershaper/&#34; title=&#34;Wonder Shaper&#34;&gt;Wonder Shaper&lt;/a&gt;, un script que usa el algoritmo &lt;a href=&#34;http://luxik.cdi.cz/~devik/qos/htb/&#34; title=&#34;HTB&#34;&gt;HTB&lt;/a&gt; para asegurar un ancho de banda a las clases que definamos. La principal diferencia es que wonder shaper está pensando para un equipo que tenga conexión directa a Internet con una IP pública asignada, y mi script está diseñado para un equipo con una IP privada dentro de la LAN, que es la configuración habitual de los routers ADSL. Por supuesto, esta aproximación solo funciona bien si nuestro equipo es el único en la red local, ya que si otros hosts están generando tráfico, llenaremos el buffer del router y no conseguiremos nada.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Optimizar el rendimiento de un disco SSD</title>
      <link>https://blog.099c.org/posts/optimizar-el-rendimiento-de-un-disco-ssd/</link>
      <pubDate>Tue, 01 Nov 2011 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/optimizar-el-rendimiento-de-un-disco-ssd/</guid>
      <description>&lt;p&gt;Acabo de adquirir un disco SSD para usar como disco principal del sistema, concretamente el modelo OCZ Vertex 3, y os puedo asegurar que da al sistema una fluidez impresionante.&lt;/p&gt;&#xA;&lt;p&gt;Con unos pequeños ajustes se puede optimizar al máximo el rendimiento. Os cuento cómo lo he hecho yo.&lt;/p&gt;&#xA;&lt;p&gt;Lo primero que he hecho ha sido actualizar el firmware a la última versión, ya que añadían mejoras importantes de estabilidad y de soporte de TRIM.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Cluster de Liferay y Terracotta</title>
      <link>https://blog.099c.org/posts/cluster-de-liferay-y-terracotta/</link>
      <pubDate>Fri, 14 Oct 2011 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/cluster-de-liferay-y-terracotta/</guid>
      <description>&lt;p&gt;Voy a montar un entorno de pruebas en una sola máquina con un cluster de &lt;a href=&#34;http://www.liferay.com/&#34;&gt;Liferay&lt;/a&gt; + un cluster de &lt;a href=&#34;http://www.terracotta.org/&#34;&gt;Terracotta&lt;/a&gt; con Web sessions. He usado CentOS 6 x86_64 y las versiones open source de estos dos productos.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Instalación de OpenDNIe en Fedora 15</title>
      <link>https://blog.099c.org/posts/instalacion-de-opendnie-en-fedora-15/</link>
      <pubDate>Sun, 09 Oct 2011 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/instalacion-de-opendnie-en-fedora-15/</guid>
      <description>&lt;p&gt;Recientemente ha aparecido el proyecto &lt;a href=&#34;http://forja.cenatic.es/projects/opendnie&#34; title=&#34;OpenDNIe&#34;&gt;OpenDNIe&lt;/a&gt; para poder usar el DNI electrónico con herramientas libres y mejorar la lamentable situación de los drivers oficiales. Yo he usado esta versión para varios trámites y no he tenido ningún problema, os cuento como instalarlo en Fedora 15 x86_64:&lt;/p&gt;&#xA;&lt;p&gt;Descargo los paquetes fuente para RedHat en la &lt;a href=&#34;https://forja.cenatic.es/frs/?group_id=160&amp;amp;release_id=622#opendnie-packages---windows--amp--macosx---title-content&#34;&gt;página de descarga&lt;/a&gt; y compruebo la suma md5.&lt;/p&gt;&#xA;&lt;p&gt;&lt;code&gt;$ md5sum -c opensc-opendnie-0.12.2-1.fc14.src.rpm.md5 &amp;lt; opensc-opendnie-0.12.2-1.fc14.src.rpm -: La suma coincide&lt;/code&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Cómo usar GPG agent</title>
      <link>https://blog.099c.org/posts/como-usar-gpg-agent/</link>
      <pubDate>Wed, 05 Oct 2011 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/como-usar-gpg-agent/</guid>
      <description>&lt;p&gt;El agente de GPG es una herramienta muy útil para evitar estar metiendo continuamente las contraseñas para desbloquear las claves GPG o en las conexiones SSH. Por desgracia no suele estar habilitado por defecto en la consola, pero vamos a ver como solucionarlo. Esta solución está basada en &lt;a href=&#34;http://lists.freebsd.org/pipermail/freebsd-stable/2011-July/063284.html&#34; title=&#34;este comentario&#34;&gt;este comentario&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;El kit de la cuestión es que solo puede haber una instancia de gpg-agent por usuario y en cada sesión se tienen que configurar las variables de entorno necesarias. Estas variables las vamos a guardar en el archivo &lt;code&gt;~/.gpg-agent-info&lt;/code&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Autenticación sin contraseñas en SSH</title>
      <link>https://blog.099c.org/posts/autenticacion-sin-contrasenas-en-ssh/</link>
      <pubDate>Tue, 04 Oct 2011 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/autenticacion-sin-contrasenas-en-ssh/</guid>
      <description>&lt;p&gt;Todo un clásico, pero extremadamente útil cuando tienes varias máquinas para administrar.&lt;/p&gt;&#xA;&lt;p&gt;&lt;code&gt;$ ssh-keygen -t rsa -b 4096 -C &amp;quot;_your_email@youremail.com_&amp;quot; #Genera la clave $ ssh-copy-id _username_@_remote-host_ #Copia la clave al servidor remoto&lt;/code&gt;&lt;/p&gt;&#xA;&lt;p&gt;Para los paranoicos es una buena idea tener anotados de antemano los fingerprints de los servidores. De esta forma si intentamos conectar alguna vez desde algún entorno no seguro donde no tengamos cacheada la clave en &lt;code&gt;~/.ssh/known_hosts&lt;/code&gt; podremos estar seguros de que no nos están haciendo un man in the middle.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Crear repositorio de paquetes RPM</title>
      <link>https://blog.099c.org/posts/crear-repositorio-de-paquetes-rpm/</link>
      <pubDate>Tue, 04 Oct 2011 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/crear-repositorio-de-paquetes-rpm/</guid>
      <description>&lt;p&gt;Últimamente he estado aprendiendo a crear paquetes RPM y cuando ya tienes hechos unos cuantos es muy útil crearse un repositorio para instalarlos desde ahí. Para una empresa que tiene que gestionar muchas máquinas es una herramienta fundamental para distribuir versiones personalizadas o aplicaciones propias. Hay bastante documentación al respecto, yo he estado leyendo entradas como &lt;a href=&#34;http://www.novell.com/communities/node/6335/creating-yum-repository-and-publishing-it-smt&#34; title=&#34;ésta&#34;&gt;ésta&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Os cuento como he creado mi repositorio.&lt;/p&gt;&#xA;&lt;p&gt;Cuento con dos máquinas, el servidor (un VPS en &lt;a href=&#34;http://buyvm.net/&#34; title=&#34;buyvm.net&#34;&gt;buyvm.net&lt;/a&gt;, os lo recomiendo) y mi máquina de trabajo. Los RPM ya los tengo generados, en otra entrada ya explicaré en más detalle como hacerlos.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Habilitar la autenticación contra Active Directory en CentOS 5</title>
      <link>https://blog.099c.org/posts/habilitar-la-autenticacion-contra-active-directory-en-centos-5/</link>
      <pubDate>Tue, 04 Oct 2011 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/habilitar-la-autenticacion-contra-active-directory-en-centos-5/</guid>
      <description>&lt;p&gt;Las siguientes instrucciones son para habilitar el login de usuarios de Active Directory en CentOS 5 x86_64.&lt;/p&gt;&#xA;&lt;p&gt;Lo primero que necesitamos es instalar en el controlador de dominio (en mi caso Windows 2008 R2) el servicio de &amp;ldquo;Microsoft Identity Management for UNIX&amp;rdquo; y crear un dominio NIS.&lt;/p&gt;&#xA;&lt;p&gt;He creado en AD un grupo global &lt;em&gt;ad_unix_users&lt;/em&gt; para que sea el grupo principal de los usuarios en Linux, para esto en las propiedades del grupo, vamos a la pestaña &lt;em&gt;UNIX attributes&lt;/em&gt; y lo asignamos al dominio NIS. Le tendría que dar automáticamente un GID.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Instalar Google Earth 5.0 en Linux</title>
      <link>https://blog.099c.org/posts/instalar-google-earth-50-en-linux/</link>
      <pubDate>Thu, 12 Mar 2009 00:00:00 +0000</pubDate><author>jorti@pm.me (Juan Orti Alcaine)</author>
      <guid>https://blog.099c.org/posts/instalar-google-earth-50-en-linux/</guid>
      <description>&lt;p&gt;Recienteme he instalado la versión 5 de Google Earth en Ubuntu intrepid 8.10 AMD64. Como me ha dado algunos problemas os detallo lo que hice:&lt;/p&gt;&#xA;&lt;p&gt;Una vez descargado, le damos permisos de ejecución:&lt;/p&gt;&#xA;&lt;p&gt;&lt;code&gt;$ chmod +x GoogleEarthLinux.bin $ ./GoogleEarthLinux.bin&lt;/code&gt;&lt;/p&gt;&#xA;&lt;p&gt;Hacemos la instalación en modo gráfico, todo bien hasta que lo ejecutamos: &lt;code&gt;$ ./googleearth-bin: relocation error: /usr/lib/i686/cmov/libssl.so.0.9.8: symbol BIO_test_flags, version OPENSSL_0.9.8 not defined in file libcrypto.so.0.9.8 with link time reference&lt;/code&gt;&lt;/p&gt;&#xA;&lt;p&gt;He visto varias soluciones, por ejemplo &lt;a href=&#34;http://www.vivalinux.com.ar/desktop/google-earth-5.0&#34;&gt;haciendo un enlace simbólico&lt;/a&gt; a la librería del sistema. Lo que yo he hecho ha sido renombrar la librería que trae Google Earth para que vaya a buscarla al sistema:&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
