<?xml version="1.0" encoding="utf-8" ?>
<?xml-stylesheet type="text/xsl" href="RSS_xslt_style.asp" version="1.0" ?>
<rss version="2.0" xmlns:WebWizNewsPad="https://syndication.webwiz.net/rss_namespace/">
 <channel>
  <title>Keith Smith - My Blog : Linux</title>
  <link>https://www.KeithIT.com/</link>
  <description><![CDATA[This is an XML content feed of; Keith Smith - My Blog : Last 5 Blog Posts]]></description>
  <copyright>Copyright (c) 2006-2013 Web Wiz NewsPad - All Rights Reserved.</copyright>
  <pubDate>Sun, 19 Apr 2026 10:34:42 +0000</pubDate>
  <lastBuildDate>Thu, 11 Oct 2018 04:32:38 +0000</lastBuildDate>
  <docs>http://blogs.law.harvard.edu/tech/rss</docs>
  <generator>Web Wiz NewsPad 3.04</generator>
  <ttl>30</ttl>
  <WebWizNewsPad:feedURL>https://www.KeithIT.com/rss-linux_cat2006.xml</WebWizNewsPad:feedURL>
  <image>
   <title><![CDATA[Keith Smith - My Blog : Linux]]></title>
   <url>https://www.KeithIT.com/images/keithsmith.png</url>
   <link>https://www.KeithIT.com/</link>
  </image>
  <item>
   <title><![CDATA[Installing Python 2 on Mac OS X]]></title>
   <link>https://www.KeithIT.com/installing-python-2-on-mac-os-x_post4068.html</link>
   <description>
    <![CDATA[<font size="3">OS X comes with a large number of UNIX utilities, those familiar with Linux systems will notice one key component missing: a decent package manager. <a href="http://brew.sh/" target="_blank" rel="nofollow noopener noreferrer" data-href="http://brew.sh/" data-mce-href="http://brew.sh/">Homebrew</a> fills this void.</font><p id="bc98" class="graf graf--p graf-after--p"><font size="3">Homebrew is a package manager for OS X. A package is a collection of code files that work together. Installing them usually means running a script (a bit of code) that puts certain files in the various directories. A lot of the packages you will want are going to have dependencies. That means they require you to have other packages already installed on your computer. Homebrew will find and install dependencies for you AND it will keep them organized in one location AND it can tell you when updates are available for them. On top of all of that it gives super helpful instructions when everything doesn't go smoothly. You can read more about it at Homebrew's <a href="http://mxcl.github.com/homebrew/" data-mce-href="http://mxcl.github.com/homebrew/">website</a>. For now, install Homebrew using the following line of code:</font></p><pre id="5edd" class="graf graf--pre graf-after--p"><font size="3">$ /usr/bin/ruby -e "<strong class="markup--strong markup--pre-strong">$(</strong>curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install<strong class="markup--strong markup--pre-strong">)</strong>"</font></pre><p id="be00" class="graf graf--p graf-after--pre"><font size="3">The script will explain what changes it will make and prompt you before the installation begins. Once you’ve installed Homebrew, insert the Homebrew directory at the top of your <code class="markup--code markup--p-code"><strong class="markup--strong markup--p-strong">PATH</strong></code> environment variable. You can do this by adding the following line at the bottom of your <code class="markup--code markup--p-code">~/.profile</code> file</font></p><pre id="d729" class="graf graf--pre graf-after--p"><font size="3">export PATH="/usr/local/bin:/usr/local/sbin:$PATH"</font></pre><p id="51b5" class="graf graf--p graf-after--pre"><font size="3">Now, we can install Python 2.7:</font></p><pre id="f893" class="graf graf--pre graf-after--p"><font size="3">$ brew install python@2</font></pre><p id="be60" class="graf graf--p graf-after--pre"><font size="3">Because <code class="markup--code markup--p-code">python@2</code> is a “keg”, we need to update our <code class="markup--code markup--p-code">PATH</code> again, to point at our new installation:</font></p><pre id="f02d" class="graf graf--pre graf-after--p"><font size="3">export PATH="/usr/local/opt/python@2/libexec/bin:$PATH"</font></pre><p id="1be4" class="graf graf--p graf-after--pre"><font size="3">Homebrew names the executable <code class="markup--code markup--p-code">python2</code> so that you can still run the system Python via the executable <code class="markup--code markup--p-code">python</code>.</font></p><pre id="4021" class="graf graf--pre graf-after--p graf--trailing"><font size="3">$ python -V   <em class="markup--em markup--pre-em"># Homebrew installed Python 3 interpreter (if installed)</em><br />$ python2.7 -V  <em class="markup--em markup--pre-em"># Homebrew installed Python 2 interpreter</em><br />$ python3 -V  <em class="markup--em markup--pre-em"># Homebrew installed Python 3 interpreter (if installed)</em></font></pre><div><p style="margin: 0px; line-height: normal; min-height: 14px;"><font size="3" face="Arial, Helvetica, sans-serif"><br /></font></p><p style="margin: 0px; line-height: normal;"><font size="3" face="Arial, Helvetica, sans-serif">-End</font></p></div><font size="3"></font>]]>
   </description>
   <pubDate>Thu, 11 Oct 2018 04:32:38 +0000</pubDate>
   <guid isPermaLink="true">https://www.KeithIT.com/installing-python-2-on-mac-os-x_post4068.html</guid>
   <WebWizNewsPad:pubDateISO>2018-10-11 04:32:38</WebWizNewsPad:pubDateISO>
  </item> 
  <item>
   <title><![CDATA[Observium - Rename existing devices]]></title>
   <link>https://www.KeithIT.com/observium-rename-existing-devices_post4064.html</link>
   <description>
    <![CDATA[<font size="3"></font><div><font size="3">Observium is one of my go-to open source solutions for network monitoring, I figured I'd share a recent challenge I encountered. I found myself needing to change a few device hostnames in observium, and it can be a bit tricky since it can't be done via the UI. This task can be done successfully from the command-line by running the following:</font></div><div><font size="3"><br /></font></div><div><font size="3"><b>Shell</b></font></div><div><font size="3"><br /></font></div><div><font size="3">cd /opt/observium/ and execute</font></div><div><font size="3">php rename_device.php old_device_name new_device_name</font></div><div><font size="3"><br /></font></div><div><font size="3"><br /></font></div><div><font size="3">Once you're done renaming your device you should force snmp discovery and the poller to run:</font></div><div><font size="3"><br /></font></div><div><font size="3"><b>Shell</b></font></div><div><font size="3">execute the following:</font></div><div><font size="3"><br /></font></div><div><font size="3">php discovery.php -h all</font></div><div><font size="3">php poller.php -h all</font></div><div><font size="3"><br /></font></div><div><font size="3">Once the above process is completed you should see your devices renamed in the UI.&nbsp;</font></div><div><font size="3"><br /></font></div><div><p style="margin: 0px; line-height: normal; min-height: 14px;"><font size="3" face="Arial, Helvetica, sans-serif"><br /></font></p><p style="margin: 0px; line-height: normal;"><font size="3" face="Arial, Helvetica, sans-serif">-End</font></p></div><font size="3"></font>]]>
   </description>
   <pubDate>Tue, 17 Jul 2018 22:28:25 +0000</pubDate>
   <guid isPermaLink="true">https://www.KeithIT.com/observium-rename-existing-devices_post4064.html</guid>
   <WebWizNewsPad:pubDateISO>2018-07-17 22:28:25</WebWizNewsPad:pubDateISO>
  </item> 
  <item>
   <title><![CDATA[Kanboard]]></title>
   <link>https://www.KeithIT.com/kanboard_post3060.html</link>
   <description>
    <![CDATA[<font size="3">What is kanboard?</font><p><font size="3"><a href="https://kanboard.net/" target="_blank" rel="noopener">Kanboard</a> is an opensource web hosted project management software. So far I think it’s pretty damn cool. It has all the features of the top paid project management solutions out there with the little added bonus of it being free. <br /></font></p><p><font size="3">The “cost” for anyone working with FOSS will be the setup time. This was my first time trying to setup Kanboard so I figured I would post how it went, I did encounter some stumbling blocks&nbsp; so I noted the solutions I used to get the installation up and running. Hopefully this will reduce the “cost” for you.</font></p><div><font size="3"><b>I tested this on Ubuntu Xenial 16.04 LTS</b><br /></font><font size="3"><br />Installation <br /></font><font size="3"><br /></font><ol><li><font size="3">sudo apt-get update and upgrade</font></li><li><font size="3">sudo apt-get install -y apache2 libapache2-mod-php7.0 php7.0-cli php7.0-mbstring php7.0-sqlite3 \&nbsp; php7.0-opcache php7.0-json php7.0-mysql php7.0-pgsql php7.0-ldap php7.0-gd</font></li><li><font size="3">cd /var/www/html</font></li><li><font size="3">sudo apt-get install php-xml</font></li><li><font size="3">sudo apt-get update &amp;&amp; apt-get install git</font></li><li><font size="3">sudo git clone https://github.com/kanboard/kanboard.git</font></li><li><font size="3">chown -R www-data:www-data kanboard/data</font></li><li><font size="3">Reboot</font></li><li><font size="3">Try the url http://hostname/kanboard<br /></font></li></ol></div><div><font size="3"><br /></font></div><div><font size="3"><br /></font></div><div><font size="3"><br /></font></div><div><font size="3"><img src="https://www.KeithIT.com/uploads/9CB_kanbanKeithIT.png" width="2086" height="347" border=""><br /></font></div><div><font size="3"><br /></font></div><div><font size="3"><br /></font></div><div><font size="3">I had to do the following to setup email <a href="http://github.com/kanboard/kanboard/blob/master/doc/en_US/email-configuration.markdown " title="Email Instructions" target="_blank">https://github.com/kanboard/kanboard/blob/master/doc/en_US/email-configuration.markdown </a><br /></font></div><div><font size="3"><br /></font></div><div><font size="3"><br /></font></div><div><font size="3">I commented out the two bottom lines to make it work.<br /></font><font size="3"><br />// Credentials for authentication on the SMTP server (not mandatory)<br />define('MAIL_SMTP_USERNAME', 'username');<br />define('MAIL_SMTP_PASSWORD', 'super password');<br /></font></div><div><font size="3"><br /></font></div><div><font size="3"><br /></font></div><div><font size="3"><br /></font></div><div><font size="3"><br /></font></div><div><font size="3"><b>Errors I encountered</b></font></div><div><font size="3"><br />Internal Error: PHP extension required: “pdo_sqlite”<br /></font><font size="3"><br /><b>Solution</b>: Run the following in the terminal window<br /></font><font size="3"><br />sudo apt-get install php7.0-sqlite<br /></font><font size="3"><br /></font><font size="3"><br /></font><font size="3"><br />Internal Error: This PHP extension is required: "dom".<br /></font><font size="3"><br />sudo apt-get install php-xml</font></div><div><font size="3"><br /></font></div><div><font size="3"><br /></font><p style="margin: 0px; line-height: normal; min-height: 14px;"><font size="3" face="Arial, Helvetica, sans-serif"><br /></font></p><p style="margin: 0px; line-height: normal;"><font size="3" face="Arial, Helvetica, sans-serif">-End</font></p></div><font size="3"></font>]]>
   </description>
   <pubDate>Fri, 19 Jan 2018 02:21:47 +0000</pubDate>
   <guid isPermaLink="true">https://www.KeithIT.com/kanboard_post3060.html</guid>
   <WebWizNewsPad:pubDateISO>2018-01-19 02:21:47</WebWizNewsPad:pubDateISO>
  </item> 
  <item>
   <title><![CDATA[Applying a “Defense-in-Depth” Strategy]]></title>
   <link>https://www.KeithIT.com/applying-a-defenseindepth-strategy_post3026.html</link>
   <description>
    <![CDATA[<font size="3"></font><div><div><font size="3" face="Arial, Helvetica, sans-serif">IT Teams and Staff can effectively maintain physical and information security with a “defense-in-depth” approach that addresses both internal and external threats. Defense-in-depth is based on the idea that any one point of protection may, and probably will, be defeated. This approach uses three different types of layers (physical, electronic, and procedural) and applies appropriate controls to address different risks that might arise in each.</font></div><div><font size="3" face="Arial, Helvetica, sans-serif">&nbsp;</font></div><div><font size="3" face="Arial, Helvetica, sans-serif">The same concept works for both physical and network security. Multiple layers of network security can protect networked assets, data and end points, just as multiple layers of physical security can protect high-value physical assets. With a defense-in-depth approach: &nbsp;</font></div><div><font size="3" face="Arial, Helvetica, sans-serif"><br /></font></div><div><font size="3" face="Arial, Helvetica, sans-serif"><span class="Apple-tab-span" style="white-space:pre">	</span>•<span class="Apple-tab-span" style="white-space:pre">	</span>System security is purposely designed into the infrastructure from the beginning. Attackers are faced with multiple hurdles to overcome if they want to successfully break through or bypass the entire system.&nbsp;</font></div><div><font size="3" face="Arial, Helvetica, sans-serif"><span class="Apple-tab-span" style="white-space:pre">	</span>•<span class="Apple-tab-span" style="white-space:pre">	</span>A weakness or flaw in one layer can be protected by strength, capabilities or new variable introduced through other security layers.&nbsp;</font></div><div><font size="3" face="Arial, Helvetica, sans-serif"><br /></font></div><div><font size="3" face="Arial, Helvetica, sans-serif">Typical defense-in-depth approaches involve six areas: physical, network, computer, application, device and staff education.</font></div><div><font size="3" face="Arial, Helvetica, sans-serif"><br /></font></div><div><font size="3" face="Arial, Helvetica, sans-serif">1. Physical Security – It seems obvious that physical security would be an important layer in a defense-in-depth strategy, but don’t take it for granted. Guards, gates, locks, port block-outs, and key cards all help keep people away from systems that shouldn’t touch or alter. In addition, the lines between the physical security systems and information systems are blurring as physical access can be tied to information access.&nbsp;</font></div><div><font size="3" face="Arial, Helvetica, sans-serif"><br /></font></div><div><font size="3" face="Arial, Helvetica, sans-serif">2. Network Security – An essential part of information fabric is network security and should be equipped with firewalls, intrusion detection and prevention systems (IDS/IPS), and general networking equipment such as switches and routers configured with their security features enabled. Zones establish domains of trust for security access and smaller virtual local area networks (VLANs) to shape and manage network traffic. A demilitarized zone between public resources and the internal or trusted resources allows data and services to be shared securely.&nbsp;</font></div><div><font size="3" face="Arial, Helvetica, sans-serif"><br /></font></div><div><font size="3" face="Arial, Helvetica, sans-serif">3. Computer Hardening – Well known (and published) software vulnerabilities are the number one way that intruders gain access to automation systems. Examples of Computer Hardening include the use of:&nbsp;</font></div><div><font size="3" face="Arial, Helvetica, sans-serif"><span class="Apple-tab-span" style="white-space:pre">	</span>•<span class="Apple-tab-span" style="white-space:pre">	</span>Antivirus software</font></div><div><font size="3" face="Arial, Helvetica, sans-serif"><span class="Apple-tab-span" style="white-space:pre">	</span>•<span class="Apple-tab-span" style="white-space:pre">	</span>Application whitelisting</font></div><div><font size="3" face="Arial, Helvetica, sans-serif"><span class="Apple-tab-span" style="white-space:pre">	</span>•<span class="Apple-tab-span" style="white-space:pre">	</span>Host intrusion-detection systems (HIDS) and other endpoint security solutions</font></div><div><font size="3" face="Arial, Helvetica, sans-serif"><span class="Apple-tab-span" style="white-space:pre">	</span>•<span class="Apple-tab-span" style="white-space:pre">	</span>Removal of unused applications, protocols and services</font></div><div><font size="3" face="Arial, Helvetica, sans-serif"><span class="Apple-tab-span" style="white-space:pre">	</span>•<span class="Apple-tab-span" style="white-space:pre">	</span>Closing unnecessary ports</font></div><div><font size="3" face="Arial, Helvetica, sans-serif"><br /></font></div><div><font size="3" face="Arial, Helvetica, sans-serif">Software patching practices can work in concert with these hardening techniques to help further address computer risks that&nbsp;</font><font size="3"><span style="font-family: Arial, Helvetica, sans-serif; font-size: small;">are susceptible to malware cyber risks including viruses and Trojans etc.</span></font></div><div><font size="3" face="Arial, Helvetica, sans-serif"><br /></font></div><div><font size="3" face="Arial, Helvetica, sans-serif">Follow these guidelines to help reduce risk:</font></div><div><font size="3" face="Arial, Helvetica, sans-serif"><span class="Apple-tab-span" style="white-space:pre">	</span>•<span class="Apple-tab-span" style="white-space:pre">	</span>Disable software automatic updating services on PCs</font></div><div><font size="3" face="Arial, Helvetica, sans-serif"><span class="Apple-tab-span" style="white-space:pre">	</span>•<span class="Apple-tab-span" style="white-space:pre">	</span>Inventory target computers for applications, and software versions and revisions</font></div><div><font size="3" face="Arial, Helvetica, sans-serif"><span class="Apple-tab-span" style="white-space:pre">	</span>•<span class="Apple-tab-span" style="white-space:pre">	</span>Subscribe to and monitor vendor patch qualification services for patch compatibility</font></div><div><font size="3" face="Arial, Helvetica, sans-serif"><span class="Apple-tab-span" style="white-space:pre">	</span>•<span class="Apple-tab-span" style="white-space:pre">	</span>Obtain product patches and software upgrades directly from the vendor</font></div><div><font size="3" face="Arial, Helvetica, sans-serif"><span class="Apple-tab-span" style="white-space:pre">	</span>•<span class="Apple-tab-span" style="white-space:pre">	</span>Pre-test all patches on non-operational, non-mission critical systems</font></div><div><font size="3" face="Arial, Helvetica, sans-serif"><span class="Apple-tab-span" style="white-space:pre">	</span>•<span class="Apple-tab-span" style="white-space:pre">	</span>Schedule the application of patches and upgrades and plan for contingencies&nbsp;</font></div><div><font size="3" face="Arial, Helvetica, sans-serif"><br /></font></div><div><font size="3" face="Arial, Helvetica, sans-serif">4. Application Security &nbsp;– This refers infusing system applications with good security practices, such as a Role Based Access Control System,Multi-factor authentication (MFA) also known as (also known as 2FA) where ever possible</font><font size="3"><span style="font-family: Arial, Helvetica, sans-serif; font-size: small;">&nbsp;which locks down access to critical process functions, force username/password logins, combinations,&nbsp;</span><font face="Arial, Helvetica, sans-serif">Multi-factor authentication (MFA) also known as (also known as 2FA) where ever possible and&nbsp;</font><span style="font-family: Arial, Helvetica, sans-serif; font-size: small;">etc.&nbsp;</span></font></div><div><font size="3" face="Arial, Helvetica, sans-serif"><br /></font></div><div><font size="3" face="Arial, Helvetica, sans-serif">5. Device Hardening – Changing the default configuration of an embedded device out-of-the-box can make it more secure. The default security settings of PLCs, PACs, routers, switches, firewalls and other embedded devices will differ based on class and type, which subsequently changes the amount of work required to harden a particular device. But remember, a chain is only as strong as its weakest link.&nbsp;</font></div><div><font size="3" face="Arial, Helvetica, sans-serif"><br /></font></div><div><font size="3" face="Arial, Helvetica, sans-serif">6. Staff Education - Last but not least it’s important to talk to staff about keeping clean machine, the organization should have clear rules for what employees can install and keep on their work computers. &nbsp;Make sure they understand and abide by these rules. Following good password practices is important a strong password is a phrase that is at least 12 characters long. Employees should be encouraged to keep an eye out and say something if they notice strange happenings on their computer. &nbsp;</font></div><div><font size="3" face="Arial, Helvetica, sans-serif"><br /></font></div><div><font size="3" face="Arial, Helvetica, sans-serif"><br /></font></div><div><font size="3" face="Arial, Helvetica, sans-serif"><b>Educating Employees at least once a year is important</b></font></div><div><font size="3" face="Arial, Helvetica, sans-serif">Training employees is a critical element of security. They need to understand the value of protecting customer and colleague information and their role in keeping it safe. They also need a basic grounding in other risks and how to make good judgments online.</font></div><div><font size="3" face="Arial, Helvetica, sans-serif"><br /></font></div><div><font size="3" face="Arial, Helvetica, sans-serif">Most importantly, they need to know the policies and practices you expect them to follow in the workplace regarding Internet safety.</font></div><div><p style="margin: 0px; line-height: normal; min-height: 14px;"><font size="3" face="Arial, Helvetica, sans-serif"><br /></font></p><p style="margin: 0px; line-height: normal;"><font size="3" face="Arial, Helvetica, sans-serif">-End</font></p></div></div><font size="3"></font>]]>
   </description>
   <pubDate>Mon, 22 May 2017 10:27:36 +0000</pubDate>
   <guid isPermaLink="true">https://www.KeithIT.com/applying-a-defenseindepth-strategy_post3026.html</guid>
   <WebWizNewsPad:pubDateISO>2017-05-22 10:27:36</WebWizNewsPad:pubDateISO>
  </item> 
  <item>
   <title><![CDATA[system_thread_exception_not_handled xen.sys BSOD]]></title>
   <link>https://www.KeithIT.com/system-thread-exception-not-handled-xensys-bsod_post2018.html</link>
   <description>
    <![CDATA[<font size="3"></font><div><font size="3">The system_thread_exception_not_handled xen.sys BSOD&nbsp;issue was interesting to me;</font></div><div><font size="3"><br /></font></div><div><font size="3"><img src="https://www.keithit.com/uploads/BFA_xen-bsod.png" style="line-height: 1.4;" width="812" height="206" border=""></font></div><div><font size="3"><br /></font></div><div><font size="3">I wanted to see if I could reproduce this. I exported a VM from Amazon's EC2 because Amazon EC2 uses the Xen hypervisor as well. I upload the VM into a datastore on vSphere and convert the virutal disk as I noted here&nbsp;<a href="http://bit.ly/1UrCpqN" title="XenMigration">http://bit.ly/1UrCpqN</a>&nbsp;I power on the VM and I get the same system_thread_exception_not_handled xen.sys BSOD. I boot into safe mode I run a msconfig from the search, Under the boot tab I chose base video because I still had the xentools installed on the VM's. So that had to be the culprit right? I reboot the VM, and it boots fine, at this point I uninstall all the XenServer/Citrix related items. I then restart the VM and I was glad to see it make it to the login screen.</font></div><div><font size="3"><br /></font></div><div><font size="3">Solution: I think...<img src="https://www.keithit.com/images/smiley24.gif" alt="Ermm" border="0" align="absmiddle"></font></div><div><font size="3">The way to avoid this issue if you are going from Xen to VMware or any other hypervisor is to uninstall all the XenServer/Citrix items before performing the export of the VM.</font></div><font size="3"></font>]]>
   </description>
   <pubDate>Fri, 04 Sep 2015 11:53:40 +0000</pubDate>
   <guid isPermaLink="true">https://www.KeithIT.com/system-thread-exception-not-handled-xensys-bsod_post2018.html</guid>
   <WebWizNewsPad:pubDateISO>2015-09-04 11:53:40</WebWizNewsPad:pubDateISO>
  </item> 
 </channel>
</rss>