<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="../assets/xml/rss.xsl" media="all"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>DASTAGG.com (Posts about devops)</title><link>http://dastagg.com/</link><description></description><atom:link href="http://dastagg.com/categories/cat_devops.xml" rel="self" type="application/rss+xml"></atom:link><language>en</language><copyright>Contents © 2023 &lt;a href="mailto:dastagg@dastagg.com"&gt;dastagg&lt;/a&gt; </copyright><lastBuildDate>Mon, 18 Dec 2023 10:58:58 GMT</lastBuildDate><generator>Nikola (getnikola.com)</generator><docs>http://blogs.law.harvard.edu/tech/rss</docs><item><title>Setup Docker Registry on RPi</title><link>http://dastagg.com/posts/setup-docker-registry-rpi/</link><dc:creator>dastagg</dc:creator><description>&lt;dl class="simple"&gt;
&lt;dt&gt;The goal&lt;/dt&gt;
&lt;dd&gt;&lt;p&gt;Set up a local Docker Registry so that when the GitLab CI does it's thing,
it is not constantly downloading the images over the Internet saving time and bandwidth.&lt;/p&gt;
&lt;/dd&gt;
&lt;/dl&gt;
&lt;p&gt;Overview:&lt;/p&gt;
&lt;dl class="simple"&gt;
&lt;dt&gt;Server:&lt;/dt&gt;
&lt;dd&gt;&lt;ul class="simple"&gt;
&lt;li&gt;&lt;p&gt;Raspberry Pi Model 3B+&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Raspberry OS (2021-10-30-raspios-bullseye-armhf-lite)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;hostname = dhub so hostname -f = dhub.example.com&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;using "pi" as the user&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Note: using example.com as domain, change that to the correct domain where needed&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/dd&gt;
&lt;dt&gt;Computer:&lt;/dt&gt;
&lt;dd&gt;&lt;ul class="simple"&gt;
&lt;li&gt;&lt;p&gt;In this case: OS is ArcoLinux&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Docker is already installed and working&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/dd&gt;
&lt;/dl&gt;
&lt;p&gt;Setup the Server:&lt;/p&gt;
&lt;p&gt;Install Raspberry OS (search for instructions on internet)&lt;/p&gt;
&lt;p&gt;&lt;code class="docutils literal"&gt;sudo apt install vim&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Update to use static IP instead of DHCP (search for instructions on internet) (hint: &lt;code class="docutils literal"&gt;sudo vim /etc/dhcpcd.conf&lt;/code&gt;)&lt;/p&gt;
&lt;p&gt;Since I am using PiHole for the DNS server, ssh into PiHole and add DNS entry to /etc/pihole/custom.list and restart DNS&lt;/p&gt;
&lt;p&gt;Install and setup Docker Registry.&lt;/p&gt;
&lt;p&gt;Install Docker:&lt;/p&gt;
&lt;p&gt;&lt;code class="docutils literal"&gt;curl &lt;span class="pre"&gt;-fsSL&lt;/span&gt; get.docker.com &lt;span class="pre"&gt;-o&lt;/span&gt; &lt;span class="pre"&gt;get-docker.sh&lt;/span&gt;&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;&lt;code class="docutils literal"&gt;sh &lt;span class="pre"&gt;get-docker.sh&lt;/span&gt;&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;&lt;code class="docutils literal"&gt;sudo usermod &lt;span class="pre"&gt;-aG&lt;/span&gt; docker pi&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;logout/login&lt;/p&gt;
&lt;p&gt;Check if it works:&lt;/p&gt;
&lt;p&gt;&lt;code class="docutils literal"&gt;docker ps&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;and/or&lt;/p&gt;
&lt;p&gt;&lt;code class="docutils literal"&gt;docker images&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Both should display just the report header.&lt;/p&gt;
&lt;p&gt;Setup a more secure system:&lt;/p&gt;
&lt;p&gt;At $HOME&lt;/p&gt;
&lt;p&gt;Create a directory to hold the certificates:&lt;/p&gt;
&lt;p&gt;&lt;code class="docutils literal"&gt;mkdir certs&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Create a cert:&lt;/p&gt;
&lt;div class="code"&gt;&lt;pre class="code console"&gt;&lt;a id="rest_code_435afd47468840f29764be6e11f67812-1" name="rest_code_435afd47468840f29764be6e11f67812-1" href="http://dastagg.com/posts/setup-docker-registry-rpi/#rest_code_435afd47468840f29764be6e11f67812-1"&gt;&lt;/a&gt;&lt;span class="go"&gt;openssl req \&lt;/span&gt;
&lt;a id="rest_code_435afd47468840f29764be6e11f67812-2" name="rest_code_435afd47468840f29764be6e11f67812-2" href="http://dastagg.com/posts/setup-docker-registry-rpi/#rest_code_435afd47468840f29764be6e11f67812-2"&gt;&lt;/a&gt;&lt;span class="go"&gt;  -newkey rsa:4096 -nodes -sha256 -keyout certs/domain.key \&lt;/span&gt;
&lt;a id="rest_code_435afd47468840f29764be6e11f67812-3" name="rest_code_435afd47468840f29764be6e11f67812-3" href="http://dastagg.com/posts/setup-docker-registry-rpi/#rest_code_435afd47468840f29764be6e11f67812-3"&gt;&lt;/a&gt;&lt;span class="go"&gt;  -addext "subjectAltName = DNS:dhub.example.com" \&lt;/span&gt;
&lt;a id="rest_code_435afd47468840f29764be6e11f67812-4" name="rest_code_435afd47468840f29764be6e11f67812-4" href="http://dastagg.com/posts/setup-docker-registry-rpi/#rest_code_435afd47468840f29764be6e11f67812-4"&gt;&lt;/a&gt;&lt;span class="go"&gt;  -x509 -days 365 -out certs/domain.crt&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Answer the questions it will ask.&lt;/p&gt;
&lt;p&gt;Note: the cert will expire in 365 days!
Will need to renew in a year.&lt;/p&gt;
&lt;p&gt;Start Docker Registry with a run command:
(This will pull the Registry image from Docker Hub and start it)&lt;/p&gt;
&lt;div class="code"&gt;&lt;pre class="code console"&gt;&lt;a id="rest_code_cfedfc4e89b24beb8076aedc9dd74ec9-1" name="rest_code_cfedfc4e89b24beb8076aedc9dd74ec9-1" href="http://dastagg.com/posts/setup-docker-registry-rpi/#rest_code_cfedfc4e89b24beb8076aedc9dd74ec9-1"&gt;&lt;/a&gt;&lt;span class="go"&gt;docker run -d \&lt;/span&gt;
&lt;a id="rest_code_cfedfc4e89b24beb8076aedc9dd74ec9-2" name="rest_code_cfedfc4e89b24beb8076aedc9dd74ec9-2" href="http://dastagg.com/posts/setup-docker-registry-rpi/#rest_code_cfedfc4e89b24beb8076aedc9dd74ec9-2"&gt;&lt;/a&gt;&lt;span class="go"&gt;  --restart=always \&lt;/span&gt;
&lt;a id="rest_code_cfedfc4e89b24beb8076aedc9dd74ec9-3" name="rest_code_cfedfc4e89b24beb8076aedc9dd74ec9-3" href="http://dastagg.com/posts/setup-docker-registry-rpi/#rest_code_cfedfc4e89b24beb8076aedc9dd74ec9-3"&gt;&lt;/a&gt;&lt;span class="go"&gt;  --name registry \&lt;/span&gt;
&lt;a id="rest_code_cfedfc4e89b24beb8076aedc9dd74ec9-4" name="rest_code_cfedfc4e89b24beb8076aedc9dd74ec9-4" href="http://dastagg.com/posts/setup-docker-registry-rpi/#rest_code_cfedfc4e89b24beb8076aedc9dd74ec9-4"&gt;&lt;/a&gt;&lt;span class="go"&gt;  -v "$(pwd)"/certs:/certs \&lt;/span&gt;
&lt;a id="rest_code_cfedfc4e89b24beb8076aedc9dd74ec9-5" name="rest_code_cfedfc4e89b24beb8076aedc9dd74ec9-5" href="http://dastagg.com/posts/setup-docker-registry-rpi/#rest_code_cfedfc4e89b24beb8076aedc9dd74ec9-5"&gt;&lt;/a&gt;&lt;span class="go"&gt;  -e REGISTRY_PROXY_REMOTEURL="https://registry-1.docker.io" \&lt;/span&gt;
&lt;a id="rest_code_cfedfc4e89b24beb8076aedc9dd74ec9-6" name="rest_code_cfedfc4e89b24beb8076aedc9dd74ec9-6" href="http://dastagg.com/posts/setup-docker-registry-rpi/#rest_code_cfedfc4e89b24beb8076aedc9dd74ec9-6"&gt;&lt;/a&gt;&lt;span class="go"&gt;  -e REGISTRY_HTTP_ADDR=0.0.0.0:443 \&lt;/span&gt;
&lt;a id="rest_code_cfedfc4e89b24beb8076aedc9dd74ec9-7" name="rest_code_cfedfc4e89b24beb8076aedc9dd74ec9-7" href="http://dastagg.com/posts/setup-docker-registry-rpi/#rest_code_cfedfc4e89b24beb8076aedc9dd74ec9-7"&gt;&lt;/a&gt;&lt;span class="go"&gt;  -e REGISTRY_HTTP_TLS_CERTIFICATE=/certs/domain.crt \&lt;/span&gt;
&lt;a id="rest_code_cfedfc4e89b24beb8076aedc9dd74ec9-8" name="rest_code_cfedfc4e89b24beb8076aedc9dd74ec9-8" href="http://dastagg.com/posts/setup-docker-registry-rpi/#rest_code_cfedfc4e89b24beb8076aedc9dd74ec9-8"&gt;&lt;/a&gt;&lt;span class="go"&gt;  -e REGISTRY_HTTP_TLS_KEY=/certs/domain.key \&lt;/span&gt;
&lt;a id="rest_code_cfedfc4e89b24beb8076aedc9dd74ec9-9" name="rest_code_cfedfc4e89b24beb8076aedc9dd74ec9-9" href="http://dastagg.com/posts/setup-docker-registry-rpi/#rest_code_cfedfc4e89b24beb8076aedc9dd74ec9-9"&gt;&lt;/a&gt;&lt;span class="go"&gt;  -p 443:443 \&lt;/span&gt;
&lt;a id="rest_code_cfedfc4e89b24beb8076aedc9dd74ec9-10" name="rest_code_cfedfc4e89b24beb8076aedc9dd74ec9-10" href="http://dastagg.com/posts/setup-docker-registry-rpi/#rest_code_cfedfc4e89b24beb8076aedc9dd74ec9-10"&gt;&lt;/a&gt;&lt;span class="go"&gt;  registry:2&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;The certs on Server and Computer must match.&lt;/p&gt;
&lt;p&gt;(Again, for this example, the computer is running Arch Linux, there may be a different process for other OS's.)&lt;/p&gt;
&lt;p&gt;Copy the domain.crt from $HOME/certs on Server to Computer.&lt;/p&gt;
&lt;p&gt;On Computer: copy domain.crt to /etc/ca-certificates/trust-source/anchors/ and it must have a .crt extension.&lt;/p&gt;
&lt;p&gt;&lt;code class="docutils literal"&gt;sudo trust &lt;span class="pre"&gt;extract-compat&lt;/span&gt;&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Also on Computer:&lt;/p&gt;
&lt;p&gt;&lt;code class="docutils literal"&gt;sudo vim /etc/docker/daemon.json&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Add the following line:&lt;/p&gt;
&lt;div class="code"&gt;&lt;pre class="code json"&gt;&lt;a id="rest_code_faf4fc00cfa34e5c9171ecd80b4c1693-1" name="rest_code_faf4fc00cfa34e5c9171ecd80b4c1693-1" href="http://dastagg.com/posts/setup-docker-registry-rpi/#rest_code_faf4fc00cfa34e5c9171ecd80b4c1693-1"&gt;&lt;/a&gt;&lt;span class="p"&gt;{&lt;/span&gt;
&lt;a id="rest_code_faf4fc00cfa34e5c9171ecd80b4c1693-2" name="rest_code_faf4fc00cfa34e5c9171ecd80b4c1693-2" href="http://dastagg.com/posts/setup-docker-registry-rpi/#rest_code_faf4fc00cfa34e5c9171ecd80b4c1693-2"&gt;&lt;/a&gt;&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="nt"&gt;"registry-mirrors"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;"https://dhub.example.com"&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;
&lt;a id="rest_code_faf4fc00cfa34e5c9171ecd80b4c1693-3" name="rest_code_faf4fc00cfa34e5c9171ecd80b4c1693-3" href="http://dastagg.com/posts/setup-docker-registry-rpi/#rest_code_faf4fc00cfa34e5c9171ecd80b4c1693-3"&gt;&lt;/a&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Restart docker on Computer.&lt;/p&gt;
&lt;p&gt;&lt;code class="docutils literal"&gt;sudo systemctl restart docker&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;And then test it.&lt;/p&gt;
&lt;p&gt;run:&lt;/p&gt;
&lt;p&gt;&lt;code class="docutils literal"&gt;curl &lt;span class="pre"&gt;https://dhub.example.com/v2/_catalog&lt;/span&gt;&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Since this is the first time, it should be an empty list.&lt;/p&gt;
&lt;p&gt;Select an image from Docker Hub and pull it:&lt;/p&gt;
&lt;p&gt;&lt;code class="docutils literal"&gt;docker pull &amp;lt;new image&amp;gt;&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;&lt;code class="docutils literal"&gt;curl &lt;span class="pre"&gt;https://dhub.example.com/v2/_catalog&lt;/span&gt;&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;should display the new image stored on Server.&lt;/p&gt;</description><category>docker</category><category>raspberry pi</category><category>setup</category><guid>http://dastagg.com/posts/setup-docker-registry-rpi/</guid><pubDate>Tue, 07 Dec 2021 05:00:00 GMT</pubDate></item><item><title>Install Fossil-SCM on a Raspberry Pi</title><link>http://dastagg.com/posts/install-fossil-scm-on-a-raspberry-pi/</link><dc:creator>dastagg</dc:creator><description>&lt;p&gt;There is a &lt;a class="reference external" href="http://dastagg.com/pages/tutorials/raspberrypi/fossil-scm/install-fossil-scm-on-a-raspberry-pi/"&gt;Tutorial&lt;/a&gt; for this.&lt;/p&gt;
&lt;p&gt;The instructions might be useful on a different OS but this tutorial uses Raspian(Debian) and Apache for the webserver.&lt;/p&gt;</description><category>fossil</category><category>raspberry pi</category><category>scm</category><category>setup</category><guid>http://dastagg.com/posts/install-fossil-scm-on-a-raspberry-pi/</guid><pubDate>Tue, 07 Jan 2020 21:25:22 GMT</pubDate></item><item><title>Use PiHole as LAN DNS Server</title><link>http://dastagg.com/posts/use-pihole-as-lan-dns-server/</link><dc:creator>dastagg</dc:creator><description>&lt;p&gt;UPDATED: 2020-08-04.&lt;/p&gt;
&lt;p&gt;With the update to V5, there is a file already installed to accept domain/ip addresses.&lt;/p&gt;
&lt;p&gt;It is located at /etc/pihole/custom.list.&lt;/p&gt;
&lt;p&gt;Be careful when adding entries. NO TABS or Multiple spaces or just the hostname.&lt;/p&gt;
&lt;p&gt;Normally, a hosts file would look like:&lt;/p&gt;
&lt;p&gt;&lt;code class="docutils literal"&gt;192.168.1.100   ctrl.example.com  ctrl&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;But in the custom.list file, it MUST look like:&lt;/p&gt;
&lt;p&gt;&lt;code class="docutils literal"&gt;192.168.0.100 ctrl.example.com&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;When they are entered correctly, well... they work but they will also display in the Web Interface.&lt;/p&gt;
&lt;p&gt;If you don't see them there, you didn't enter them correctly.&lt;/p&gt;
&lt;section id="ignore-the-instructions-below-this-line-they-are-no-longer-needed"&gt;
&lt;h2&gt;&lt;strong&gt;Ignore the instructions below this line. They are no longer needed.&lt;/strong&gt;&lt;/h2&gt;
&lt;p&gt;I copied these instructions from somewhere (I really don't remember) but they do work.&lt;/p&gt;
&lt;p&gt;ssh into PiHole&lt;/p&gt;
&lt;p&gt;&lt;code class="docutils literal"&gt;echo &lt;span class="pre"&gt;"addn-hosts=/etc/pihole/lan.list"&lt;/span&gt; | sudo tee &lt;span class="pre"&gt;/etc/dnsmasq.d/02-lan.conf&lt;/span&gt;&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Create a “hosts file” in /etc/pihole/lan.list with the format ipaddress fqdn hostname.&lt;/p&gt;
&lt;blockquote&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;&lt;th class="head"&gt;&lt;p&gt;ipaddress&lt;/p&gt;&lt;/th&gt;
&lt;th class="head"&gt;&lt;p&gt;fqdn&lt;/p&gt;&lt;/th&gt;
&lt;th class="head"&gt;&lt;p&gt;hostname&lt;/p&gt;&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;p&gt;192.168.1.40&lt;/p&gt;&lt;/td&gt;
&lt;td&gt;&lt;p&gt;marvin.your.lan&lt;/p&gt;&lt;/td&gt;
&lt;td&gt;&lt;p&gt;marvin&lt;/p&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;p&gt;192.168.1.41&lt;/p&gt;&lt;/td&gt;
&lt;td&gt;&lt;p&gt;eddie.your.lan&lt;/p&gt;&lt;/td&gt;
&lt;td&gt;&lt;p&gt;eddie&lt;/p&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;p&gt;192.168.1.42&lt;/p&gt;&lt;/td&gt;
&lt;td&gt;&lt;p&gt;hactar.your.lan&lt;/p&gt;&lt;/td&gt;
&lt;td&gt;&lt;p&gt;hactar&lt;/p&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/blockquote&gt;
&lt;p&gt;substituting “your.lan” for whatever you want your domain name to be.&lt;/p&gt;
&lt;p&gt;And remember, thanks to Google buying the ".dev" TLD, you can't use that for your local domains anymore.&lt;/p&gt;
&lt;p&gt;&lt;code class="docutils literal"&gt;sudo pihole restartdns&lt;/code&gt; to restart the DNS server.&lt;/p&gt;
&lt;/section&gt;</description><category>dnsserver</category><category>pihole</category><category>raspberry pi</category><category>setup</category><guid>http://dastagg.com/posts/use-pihole-as-lan-dns-server/</guid><pubDate>Sun, 05 Jan 2020 21:03:31 GMT</pubDate></item><item><title>Raspberry Pi Initial Setup</title><link>http://dastagg.com/posts/raspberry-pi-initial-setup/</link><dc:creator>dastagg</dc:creator><description>&lt;p&gt;So I don't forget:
In this example, the 2019-09-26-raspbian-buster-lite distribution will be installed.&lt;/p&gt;
&lt;p&gt;This is for a Linux system. It should work on MacOS. I don't know about Windows.&lt;/p&gt;
&lt;p&gt;Except for the dd command, all the commands can be run as a normal user.&lt;/p&gt;
&lt;ol class="arabic"&gt;
&lt;li&gt;&lt;p&gt;Open terminal&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Find out what disks are attached to the computer:&lt;/p&gt;
&lt;pre class="literal-block"&gt;lsblk -p&lt;/pre&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Insert SD card or USB stick&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Find out the name of the new device:&lt;/p&gt;
&lt;pre class="literal-block"&gt;lsblk -p&lt;/pre&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Note the name of the device. Could be /dev/sdb or sdc or /dev/mmcblk0.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;cd into the directory where the iso is.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Here be Dragons, make sure the "of=" device is correct!.&lt;/strong&gt; Run the dd command to copy the image onto the device:&lt;/p&gt;
&lt;pre class="literal-block"&gt;sudo dd bs=4M if=2019-09-26-raspbian-buster-lite.img of=/dev/sdc conv=fsync status=progress&lt;/pre&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;After it is done. mount boot partition of the device.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;cd to the partition&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Enable ssh ability by adding an empty file called "ssh" to the boot partition.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Unmount (or eject) the SD card/USB stick.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Run nmap to see what is currently on the network. (ie: nmap -sP 192.168.0.0/24)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Insert it into the Raspberry Pi and turn it on.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Run nmap again to see whats new.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;ssh into the RPI using &lt;a class="reference external" href="mailto:pi@xxx.xxx.xxx.xxx"&gt;pi@xxx.xxx.xxx.xxx&lt;/a&gt; that you got from nmap.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;</description><category>raspberry pi</category><category>setup</category><guid>http://dastagg.com/posts/raspberry-pi-initial-setup/</guid><pubDate>Sun, 05 Jan 2020 16:21:23 GMT</pubDate></item></channel></rss>