<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xml:base="https://www.it-dan.com"  xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
 <title>IT-Dan Software - Linux</title>
 <link>https://www.it-dan.com/blog-category/linux</link>
 <description></description>
 <language>en</language>
<item>
 <title>EdgeRouter X VTI IPSec VPN and Dynamic IP Address</title>
 <link>https://www.it-dan.com/blog/edgerouter-x-vti-ipsec-vpn-and-dynamic-ip-address</link>
 <description>&lt;div class=&quot;field field-name-body field-type-text-with-summary field-label-hidden&quot;&gt;&lt;div class=&quot;field-items&quot;&gt;&lt;div class=&quot;field-item even&quot;&gt;&lt;p&gt;This is a used on an &lt;a href=&quot;https://store.ui.com/products/edgerouter-x&quot; target=&quot;_blank&quot; rel=&quot;noopen nofollow&quot;&gt;EdgeRouter X&lt;/a&gt; with three WAN connections. Only one is ever active at a time. They are all DHCP. The BASH script cycles between the three WAN connections until a stable VPN is made.&lt;/p&gt;
&lt;p&gt;Script below:&lt;/p&gt;
&lt;pre class=&quot;language-bash&quot;&gt;&lt;code class=&quot;language-bash&quot;&gt;#!/bin/bash
# /config/scripts/VTI-update.sh

source /opt/vyatta/etc/functions/script-template
run=/opt/vyatta/bin/vyatta-op-cmd-wrapper

inf=&quot;eth1&quot;
if [[ -e /config/scripts/.VTI-inf ]]
then
  inf=&quot;$(cat /config/scripts/.VTI-inf)&quot;
fi

cnt=&quot;0&quot;
if [[ -e /config/scripts/.VTI-cnt ]]
then
  cnt=&quot;$(cat /config/scripts/.VTI-cnt)&quot;
fi

current_ip=&quot;$(run show interfaces ethernet &quot;$inf&quot; | grep &quot;global &quot;$inf&quot;&quot; | sed &#039;s/  inet //g&#039; | cut -d &quot;/&quot; -f1 | tr -d &#039;\n&#039; | sed &#039;s/^ *//&#039;)&quot;
configured_ip=&quot;$(cat /opt/vyatta/config/active/vpn/ipsec/site-to-site/peer/123.123.123.123/local-address/node.val)&quot;

if [[ -n $current_ip &amp;amp;&amp;amp; $configured_ip != $current_ip ]]
then
  echo $(date +&quot;%Y-%m-%d %T&quot;) &quot;Old IP: &#039;$configured_ip&#039;.&quot;
  echo $(date +&quot;%Y-%m-%d %T&quot;) &quot;New IP: &#039;$current_ip&#039;.&quot;
  configure
  set vpn ipsec site-to-site peer 123.123.123.123 local-address ${current_ip}
  commit
  save
elif [[ -n $current_ip ]]
then
  # ping the remote vti
  /bin/ping -n -c 1 -W 1 -w1 10.6.101.1 &amp;gt;/dev/null 2&amp;gt;&amp;amp;1
  if [ $? -ne 0 ]
  then
    if [[ $cnt -le 1 ]]
    then
      echo $(date +&quot;%Y-%m-%d %T&quot;) &quot;Restarting VPN.&quot;
      run restart vpn
      cnt=$[$cnt +1]
      echo &quot;$cnt&quot; &amp;gt; /config/scripts/.VTI-cnt
    else
      case $inf in
        &quot;eth1&quot;)
          echo &quot;eth2&quot; &amp;gt; /config/scripts/.VTI-inf
          echo &quot;0&quot; &amp;gt; /config/scripts/.VTI-cnt
          ;;
        &quot;eth2&quot;)
          echo &quot;eth0&quot; &amp;gt; /config/scripts/.VTI-inf
          echo &quot;0&quot; &amp;gt; /config/scripts/.VTI-cnt
          ;;
        *)
          echo &quot;eth1&quot; &amp;gt; /config/scripts/.VTI-inf
          echo &quot;0&quot; &amp;gt; /config/scripts/.VTI-cnt
          ;;
      esac
    fi
  else
    echo &quot;0&quot; &amp;gt; /config/scripts/.VTI-cnt
  fi
fi
exit 0&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;field field-name-field-blog-category field-type-taxonomy-term-reference field-label-inline inline&quot;&gt;&lt;div class=&quot;field-label&quot;&gt;Category:&amp;nbsp;&lt;/div&gt;&lt;div class=&quot;field-items&quot;&gt;&lt;div class=&quot;field-item even&quot;&gt;&lt;a href=&quot;/blog-category/linux&quot;&gt;Linux&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;field field-name-field-tags field-type-taxonomy-term-reference field-label-inline inline&quot;&gt;&lt;div class=&quot;field-label&quot;&gt;Tags:&amp;nbsp;&lt;/div&gt;&lt;div class=&quot;field-items&quot;&gt;&lt;div class=&quot;field-item even&quot;&gt;&lt;a href=&quot;/tags/ubiquiti&quot;&gt;Ubiquiti&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</description>
 <pubDate>Mon, 03 Oct 2022 14:31:54 +0000</pubDate>
 <dc:creator>IT Dan</dc:creator>
 <guid isPermaLink="false">40 at https://www.it-dan.com</guid>
 <comments>https://www.it-dan.com/blog/edgerouter-x-vti-ipsec-vpn-and-dynamic-ip-address#comments</comments>
</item>
<item>
 <title>Migrate Wordpress Database and Files</title>
 <link>https://www.it-dan.com/blog/migrate-wordpress-database-and-files</link>
 <description>&lt;div class=&quot;field field-name-body field-type-text-with-summary field-label-hidden&quot;&gt;&lt;div class=&quot;field-items&quot;&gt;&lt;div class=&quot;field-item even&quot;&gt;&lt;p&gt;I wanted a script to automate the copying of a live WordPress website to a &quot;staging&quot; site on the same machine. This was tested on &lt;a href=&quot;https://www.debian.org/&quot;&gt;Debian Jessie&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 700;&quot;&gt;Before you begin:&lt;/span&gt;&lt;br /&gt;In this case make sure the same database user has the appropriate permissions on both databases. And also note that the &lt;a href=&quot;https://stackoverflow.com/questions/9972651/flush-tables-access-denied&quot;&gt;RELOAD privilege&lt;/a&gt; is needed to use the `mysqldump --lock-all-tables` option on the existing live database.&lt;/p&gt;
&lt;p&gt;Script below:&lt;/p&gt;
&lt;pre class=&quot;language-bash&quot;&gt;&lt;code class=&quot;language-bash&quot;&gt;#!/bin/sh
old_host=&quot;www.example.com&quot;
new_host=&quot;staging.example.com&quot;
db_name_old=&quot;wordpress_old&quot;
db_name_new=&quot;wordpress_new&quot;
db_user=&quot;wordpress_user&quot;
db_pass=&quot;securepassword&quot;
db_prefix=&quot;wp_&quot;
base_directory=&quot;/home/user/public_html&quot;
old_directory=&quot;live&quot;
new_directory=&quot;staging&quot;

echo &quot;deleting old files&quot;
rm --recursive --force $base_directory/$new_directory
mkdir $base_directory/$new_directory
echo &quot;copying new files&quot;
cp --archive $base_directory/$old_directory/. $base_directory/$new_directory/
echo &quot;dumping old database&quot;
mysqldump --lock-all-tables --result-file=$db_name_old.sql --user=$db_user --password=$db_pass $db_name_old 
echo &quot;droping new database&quot;
mysql --user=$db_user --password=$db_pass -e &quot;DROP DATABASE IF EXISTS $db_name_new&quot;
mysql --user=$db_user --password=$db_pass -e &quot;CREATE DATABASE $db_name_new&quot;
echo &quot;importing database&quot;
mysql --user=$db_user --password=$db_pass $db_name_new &amp;lt; $db_name_old.sql
mysql --user=$db_user --password=$db_pass -e &quot;USE $db_name_new; UPDATE ${db_prefix}options SET option_value = replace(option_value, &#039;https://$old_host&#039;, &#039;https://$new_host&#039;) WHERE option_name = &#039;home&#039; OR option_name = &#039;siteurl&#039;;&quot;
mysql --user=$db_user --password=$db_pass -e &quot;USE $db_name_new; UPDATE ${db_prefix}posts SET guid = replace(guid, &#039;https://$old_host&#039;,&#039;https://$new_host&#039;);&quot;
mysql --user=$db_user --password=$db_pass -e &quot;USE $db_name_new; UPDATE ${db_prefix}posts SET post_content = replace(post_content, &#039;https://$old_host&#039;, &#039;https://$new_host&#039;);&quot;
mysql --user=$db_user --password=$db_pass -e &quot;USE $db_name_new; UPDATE ${db_prefix}postmeta SET meta_value = replace(meta_value,&#039;https://$old_host&#039;,&#039;https://$new_host&#039;);&quot;
echo &quot;updating config file&quot;
sed --in-place s/$old_directory/$new_directory/g $base_directory/$new_directory/wp-config.php
sed --in-place &quot;s/&#039;DB_NAME&#039;, &#039;$db_name_old&#039;/&#039;DB_NAME&#039;, &#039;$db_name_new&#039;/g&quot; $base_directory/$new_directory/wp-config.php
echo &quot;done&quot; &lt;/code&gt;&lt;/pre&gt;&lt;p style=&quot;margin-top:20px;&quot;&gt;Should be pretty easy to follow. &lt;/p&gt;
&lt;p&gt;Some notes:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style=&quot;font-weight: 700;&quot;&gt;Your password will be visible to anyone else logged into the server&lt;/span&gt; by including it in the mysql commands. If not an acceptable risk, search for the `~/.my.cnf` method.&lt;/li&gt;
&lt;li&gt;It doesn&#039;t delete the dumped database, I thought it is nice to have a backup of the original database just in case.&lt;/li&gt;
&lt;li&gt;The first `sed` command was to update the &lt;a href=&quot;https://wordpress.org/plugins/wp-super-cache/&quot;&gt;WP Super Cache&lt;/a&gt; line that points to the cache location.&lt;/li&gt;
&lt;li&gt;The second `sed` command is to replace the database name. I&#039;m using the same database user and password, but the script could be modified to allow different credentials by copying and editing this line to replace them.&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;field field-name-field-blog-category field-type-taxonomy-term-reference field-label-inline inline&quot;&gt;&lt;div class=&quot;field-label&quot;&gt;Category:&amp;nbsp;&lt;/div&gt;&lt;div class=&quot;field-items&quot;&gt;&lt;div class=&quot;field-item even&quot;&gt;&lt;a href=&quot;/blog-category/linux&quot;&gt;Linux&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</description>
 <pubDate>Tue, 19 Jun 2018 09:49:04 +0000</pubDate>
 <dc:creator>IT Dan</dc:creator>
 <guid isPermaLink="false">39 at https://www.it-dan.com</guid>
 <comments>https://www.it-dan.com/blog/migrate-wordpress-database-and-files#comments</comments>
</item>
<item>
 <title>vsFTPd Passive Mode with Dynamic IP</title>
 <link>https://www.it-dan.com/blog/vsftpd-passive-mode-dynamic-ip</link>
 <description>&lt;div class=&quot;field field-name-body field-type-text-with-summary field-label-hidden&quot;&gt;&lt;div class=&quot;field-items&quot;&gt;&lt;div class=&quot;field-item even&quot;&gt;&lt;p&gt;Below is a script that checks the current external IP address, and if it has changed since last check, updates the pasv_address line in the vsftpd.conf file.&lt;/p&gt;
&lt;p&gt;I&#039;m using Debian Stretch. For dig you may need to install dnsutils like so:&lt;/p&gt;
&lt;pre class=&quot;language-bash&quot;&gt;&lt;code class=&quot;language-bash&quot;&gt;apt-get install dnsutils&lt;/code&gt;&lt;/pre&gt;&lt;p style=&quot;margin-top:20px;&quot;&gt;Create the shell script file:&lt;/p&gt;
&lt;pre class=&quot;language-bash&quot;&gt;&lt;code class=&quot;language-bash&quot;&gt;vi /root/vsftpd-pasv_address.sh&lt;/code&gt;&lt;/pre&gt;&lt;pre class=&quot;language-bash&quot;&gt;&lt;code class=&quot;language-bash&quot;&gt;#!/bin/bash

[[ -f /root/last_ip.txt ]] &amp;amp;&amp;amp; last_ip=$( /dev/null)
if [ $? -ne 0 ]
then
    # Exit if the dig command failed
    exit 1
fi

# If not empty and IP changed
if [[ -n &quot;$this_ip&quot; &amp;amp;&amp;amp; &quot;$last_ip&quot; != &quot;$this_ip&quot; ]]
then
    echo $(date +&quot;%Y-%m-%d %T&quot;) &quot;Old IP: $last_ip&quot;
    echo $(date +&quot;%Y-%m-%d %T&quot;) &quot;New IP: $this_ip&quot;
    echo &quot;$this_ip&quot; &amp;gt; /root/last_ip.txt
    sed -ri &quot;s/^(pasv_address=*).*$/\1${this_ip}/&quot; /etc/vsftpd.conf
    /etc/init.d/vsftpd restart
fi
exit 0&lt;/code&gt;&lt;/pre&gt;&lt;p style=&quot;margin-top:20px;&quot;&gt;Make the file executable:&lt;/p&gt;
&lt;pre class=&quot;language-bash&quot;&gt;&lt;code class=&quot;language-bash&quot;&gt;chmod +x /root/vsftpd-pasv_address.sh&lt;/code&gt;&lt;/pre&gt;&lt;p style=&quot;margin-top:20px;&quot;&gt;I added the following cronjob:&lt;/p&gt;
&lt;pre class=&quot;language-bash&quot;&gt;&lt;code class=&quot;language-bash&quot;&gt;*/10 * * * * /root/vsftpd-pasv_address.sh&lt;/code&gt;&lt;/pre&gt;&lt;p style=&quot;margin-top:20px;&quot;&gt;The script will run every 10 minutes, and update vsftpd.conf if your external IP address changes.&lt;/p&gt;
&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;field field-name-field-blog-category field-type-taxonomy-term-reference field-label-inline inline&quot;&gt;&lt;div class=&quot;field-label&quot;&gt;Category:&amp;nbsp;&lt;/div&gt;&lt;div class=&quot;field-items&quot;&gt;&lt;div class=&quot;field-item even&quot;&gt;&lt;a href=&quot;/blog-category/linux&quot;&gt;Linux&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</description>
 <pubDate>Wed, 13 Jun 2018 07:08:08 +0000</pubDate>
 <dc:creator>IT Dan</dc:creator>
 <guid isPermaLink="false">38 at https://www.it-dan.com</guid>
 <comments>https://www.it-dan.com/blog/vsftpd-passive-mode-dynamic-ip#comments</comments>
</item>
<item>
 <title>Block Ads with Linux and Bind9</title>
 <link>https://www.it-dan.com/blog/block-ads-linux-and-bind9</link>
 <description>&lt;div class=&quot;field field-name-body field-type-text-with-summary field-label-hidden&quot;&gt;&lt;div class=&quot;field-items&quot;&gt;&lt;div class=&quot;field-item even&quot;&gt;&lt;p&gt;Learn how to block ads and trackers using a &lt;a href=&quot;https://www.debian.org/&quot; target=&quot;_blank&quot;&gt;Debian&lt;/a&gt; based system and bind9 (DNS caching) service. This is handy if you want to block ads for everyone on your network.&lt;/p&gt;
&lt;p style=&quot;font-weight: 700;&quot;&gt;Prerequisites:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;A basic understanding of &lt;a href=&quot;http://linuxcommand.org&quot; target=&quot;_blank&quot;&gt;Linux shell commands&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;A basic understanding of the &lt;a href=&quot;http://www.howtogeek.com/102468/a-beginners-guide-to-editing-text-files-with-vi/&quot; target=&quot;_blank&quot;&gt;Vi text editor&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;A Debian based system. In this example a &lt;a href=&quot;https://en.wikipedia.org/wiki/Raspberry_Pi&quot; target=&quot;_blank&quot;&gt;Raspberry Pi&lt;/a&gt; running &lt;a href=&quot;http://www.raspbian.org/&quot; target=&quot;_blank&quot;&gt;Raspbian&lt;/a&gt;&lt;a href=&quot;#star1&quot; style=&quot;color: inherit;&quot;&gt;*&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p style=&quot;font-weight: 700;&quot;&gt;Step 1:&lt;/p&gt;
&lt;p&gt;Ensure you have a working bind9 caching DNS service. The following is a guide to do that.&lt;/p&gt;
&lt;iframe width=&quot;560&quot; height=&quot;315&quot; src=&quot;https://www.youtube.com/embed/-OQf2IBk-fs&quot; frameborder=&quot;0&quot; allowfullscreen=&quot;&quot; style=&quot;margin:0 auto;display:block;&quot;&gt;&lt;/iframe&gt;&lt;p style=&quot;margin:0 auto;display:block;text-align: center;&quot;&gt;&lt;a target=&quot;_blank&quot; href=&quot;https://youtu.be/-OQf2IBk-fs&quot; style=&quot;margin:0 auto;display:block;text-align: center;&quot;&gt;https://youtu.be/-OQf2IBk-fs&lt;/a&gt;&lt;/p&gt;
&lt;p style=&quot;font-weight: 700;&quot;&gt;Step 2:&lt;/p&gt;
&lt;p&gt;Now that you have the basics ready, we will create our shell script that will download the ad block list&lt;a href=&quot;#star2&quot; style=&quot;color: inherit;&quot;&gt;**&lt;/a&gt; and convert it to bind9 format.&lt;/p&gt;
&lt;p&gt;The following commands need to be run as root user, or prefix them with &#039;sudo&#039;.&lt;/p&gt;
&lt;p&gt;Create the shell script file:&lt;/p&gt;
&lt;pre class=&quot;language-bash&quot;&gt;&lt;code class=&quot;language-bash&quot;&gt;vi /etc/bind/make-block-list.sh&lt;/code&gt;&lt;/pre&gt;&lt;pre class=&quot;language-bash&quot;&gt;&lt;code class=&quot;language-bash&quot;&gt;#!/usr/bin/env bash
wget -O - http://someonewhocares.org/hosts/zero/hosts | grep &#039;^0.0.0.0&#039; | tr &quot;[A-Z]&quot; &quot;[a-z]&quot; | awk &#039;!a[$0]++&#039; | awk &#039;{print &quot;zone \&quot;&quot;$2&quot;\&quot; { type master; notify no; file \&quot;/etc/bind/blocked.zone\&quot;; };&quot;}&#039; &amp;gt; /etc/bind/named.conf.blocked
rndc reload
&lt;/code&gt;&lt;/pre&gt;&lt;p style=&quot;margin-top:20px;&quot;&gt;Each part is explained below:&lt;/p&gt;
&lt;pre class=&quot;language-bash&quot;&gt;&lt;code class=&quot;language-bash&quot;&gt;# download the list to STDOUT.
wget -O - http://someonewhocares.org/hosts/zero/hosts
# filter out any lines that don&#039;t start with the &#039;0.0.0.0&#039;, such as comments and empty lines.
grep &#039;^0.0.0.0&#039;
# convert to lowercse
tr &quot;[A-Z]&quot; &quot;[a-z]&quot;
# filter out any duplicate lines
awk &#039;!a[$0]++&#039;
# format the line to bind9 style
awk &#039;{print &quot;zone \&quot;&quot;$2&quot;\&quot; { type master; notify no; file \&quot;/etc/bind/blocked.zone\&quot;; };&quot;}&#039;
# save the output to /etc/bind/named.conf.blocked
&amp;gt; /etc/bind/named.conf.blocked
# reload the bind9 service
rndc reload&lt;/code&gt;&lt;/pre&gt;&lt;p style=&quot;margin-top:20px;&quot;&gt;Make the file executable:&lt;/p&gt;
&lt;pre class=&quot;language-bash&quot;&gt;&lt;code class=&quot;language-bash&quot;&gt;chmod +x /etc/bind/make-block-list.sh&lt;/code&gt;&lt;/pre&gt;&lt;p style=&quot;margin-top:20px;&quot;&gt;Now we need to tell bind9 to load our block list:&lt;/p&gt;
&lt;pre class=&quot;language-bash&quot;&gt;&lt;code class=&quot;language-bash&quot;&gt;vi /etc/bind/named.conf.local&lt;/code&gt;&lt;/pre&gt;&lt;p style=&quot;margin-top:20px;&quot;&gt;And add this to the end of the file:&lt;/p&gt;
&lt;pre class=&quot;language-bash&quot;&gt;&lt;code class=&quot;language-bash&quot;&gt;include &quot;/etc/bind/named.conf.blocked&quot;;&lt;/code&gt;&lt;/pre&gt;&lt;p style=&quot;margin-top:20px;&quot;&gt;Similar to the video, we will create a new zone that will be used to block URLS:&lt;/p&gt;
&lt;pre class=&quot;language-bash&quot;&gt;&lt;code class=&quot;language-bash&quot;&gt;vi /etc/bind/blocked.zone&lt;/code&gt;&lt;/pre&gt;&lt;pre class=&quot;language-bash&quot;&gt;&lt;code class=&quot;language-bash&quot;&gt;$TTL    86400   ; one day
@       IN      SOA     ads.example.com. hostmaster.example.com. (
                        2014090102
                        172800
                        14400
                        3628800
                        604800
                        )
                NS      my.dns.server.org
                A       0.0.0.0
@       IN      A       0.0.0.0
*       IN      A       0.0.0.0
&lt;/code&gt;&lt;/pre&gt;&lt;p style=&quot;margin-top:20px;&quot;&gt;All that&#039;s left is to run the shell script, which will create our list and reload the service:&lt;/p&gt;
&lt;pre class=&quot;language-bash&quot;&gt;&lt;code class=&quot;language-bash&quot;&gt;/etc/bind/make-block-list.sh&lt;/code&gt;&lt;/pre&gt;&lt;p style=&quot;margin-top:20px;&quot; id=&quot;star1&quot;&gt;* I installed this version of &lt;a href=&quot;https://github.com/debian-pi/raspbian-ua-netinst&quot; target=&quot;_blank&quot;&gt;Raspbian&lt;/a&gt;, the minimal Raspbian unattended netinstaller for Raspberry Pi Model 1B, 1B+ and 2B.&lt;/p&gt;
&lt;p id=&quot;star2&quot;&gt;** I&#039;m using the list from here: &lt;a href=&quot;http://someonewhocares.org/hosts/zero/&quot; target=&quot;_balnk&quot;&gt;someonewhocares.org/hosts/zero/&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;field field-name-field-blog-category field-type-taxonomy-term-reference field-label-inline inline&quot;&gt;&lt;div class=&quot;field-label&quot;&gt;Category:&amp;nbsp;&lt;/div&gt;&lt;div class=&quot;field-items&quot;&gt;&lt;div class=&quot;field-item even&quot;&gt;&lt;a href=&quot;/blog-category/linux&quot;&gt;Linux&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</description>
 <pubDate>Wed, 30 Dec 2015 08:18:56 +0000</pubDate>
 <dc:creator>IT Dan</dc:creator>
 <guid isPermaLink="false">37 at https://www.it-dan.com</guid>
 <comments>https://www.it-dan.com/blog/block-ads-linux-and-bind9#comments</comments>
</item>
</channel>
</rss>
