<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>edeca.net &#187; security</title>
	<atom:link href="http://edeca.net/wp/tag/security/feed/" rel="self" type="application/rss+xml" />
	<link>http://edeca.net/wp</link>
	<description>Musings of a geek</description>
	<lastBuildDate>Sun, 05 Feb 2012 21:28:49 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Stupid password rules</title>
		<link>http://edeca.net/wp/2011/11/stupid-password-rules/</link>
		<comments>http://edeca.net/wp/2011/11/stupid-password-rules/#comments</comments>
		<pubDate>Thu, 24 Nov 2011 20:24:11 +0000</pubDate>
		<dc:creator>David</dc:creator>
				<category><![CDATA[Computing]]></category>
		<category><![CDATA[jive]]></category>
		<category><![CDATA[password]]></category>
		<category><![CDATA[security]]></category>

		<guid isPermaLink="false">http://edeca.net/wp/?p=675</guid>
		<description><![CDATA[Today I forgot the password for a site I use only occasionally. This is rare, as I have a number of password schemes that I use to create a password unique to each site. After clicking the reset password link, I am confronted with the &#8220;password strength checker&#8221; below: This list of rules doesn&#8217;t fit [...]]]></description>
			<content:encoded><![CDATA[<p>Today I forgot the password for a site I use only occasionally.  This is rare, as I have a number of password schemes that I use to create a password unique to each site.  After clicking the reset password link, I am confronted with the &#8220;password strength checker&#8221; below:</p>
<p><a href="http://edeca.net/wp/wp-content/uploads/2011/11/password_strength1.png"><img src="http://edeca.net/wp/wp-content/uploads/2011/11/password_strength1.png" alt="" title="Password strength verification" width="203" height="186" class="aligncenter size-full wp-image-676" /></a></p>
<p>This list of rules doesn&#8217;t fit very well with my password scheme, primarily because what I computed in my head fails the test for uppercase characters.  </p>
<p>Using the phrase &#8220;<i>this is an unbelievably long password that would take a very long time to crack</i>&#8221; fails this rule too, as well as the tests for a number and punctuation.  I&#8217;m not suggesting that this is a good password, but it&#8217;s certainly better than &#8220;<i>aA1!bcde</i>&#8221; which passes all the rules.  These 8 characters are trivial to brute force on any modern machine even if the underlying software uses a salted hash.</p>
<p>The offending software appears to be <a href="http://www.jivesoftware.com/">Jive</a>, who perhaps need to set some more sensible defaults on their login system.</p>
]]></content:encoded>
			<wfw:commentRss>http://edeca.net/wp/2011/11/stupid-password-rules/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Welcome to the IPv6 world</title>
		<link>http://edeca.net/wp/2010/11/welcome-to-the-ipv6-world/</link>
		<comments>http://edeca.net/wp/2010/11/welcome-to-the-ipv6-world/#comments</comments>
		<pubDate>Sun, 07 Nov 2010 11:04:59 +0000</pubDate>
		<dc:creator>David</dc:creator>
				<category><![CDATA[Computing]]></category>
		<category><![CDATA[ipv6]]></category>
		<category><![CDATA[security]]></category>

		<guid isPermaLink="false">http://edeca.net/wp/?p=593</guid>
		<description><![CDATA[This blog can now be reached over IPv6 (or ipv6.edeca.net), which is surely the final nail in the coffin of IPv4 across the internet. After deciding that I knew little about the practical aspects of IPv6 I spoke to my VPS provider, Bytemark, and asked for some addresses. Configuring Debian was simple, as it already [...]]]></description>
			<content:encoded><![CDATA[<p>This blog can now be reached over IPv6 (or <a href="http://ipv6.edeca.net">ipv6.edeca.net</a>), which is surely the final nail in the coffin of IPv4 across the internet.<br />
<span id="more-593"></span><br />
After deciding that I knew little about the practical aspects of IPv6 I spoke to my VPS provider, Bytemark, and asked for some addresses.  Configuring Debian was simple, as it already comes with a dual stack and just needs the public IPv6 block adding to the existing link-local address.</p>
<p>After a week I have seen a number of accesses to this site using IPv6.  I also added an AAAA record for my mail exchanger at the same time, but so far haven&#8217;t seen any legitimate messages delivered.  SSH login attempts have also been absent, which is good as apparently denyhosts doesn&#8217;t support IPv6 just yet.</p>
<p>It is worth considering security too.  By default, ip6tables is permissive in ALLOW mode.  This has security implications for link-local addresses if the attacker is on the same network segment, but definitely needs thought if you add routable IPv6 addresses.  I copied my existing set of iptables rules and modified them where necessary, only allowing the essential services.</p>
<p>Be the first to comment from an IPv6 address!</p>
]]></content:encoded>
			<wfw:commentRss>http://edeca.net/wp/2010/11/welcome-to-the-ipv6-world/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Blocking SSH brute forcing using denyhosts</title>
		<link>http://edeca.net/wp/2010/01/blocking-ssh-brute-forcing-using-denyhosts/</link>
		<comments>http://edeca.net/wp/2010/01/blocking-ssh-brute-forcing-using-denyhosts/#comments</comments>
		<pubDate>Thu, 07 Jan 2010 23:04:44 +0000</pubDate>
		<dc:creator>David</dc:creator>
				<category><![CDATA[Computing]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[security]]></category>

		<guid isPermaLink="false">http://edeca.net/wp/?p=254</guid>
		<description><![CDATA[Tired of seeing repeated attempts to login to a Linux server you run?  There are a number of options, all with their own benefits and disadvantages.  The easiest way is to move the port that the SSH server runs on, perhaps to 2222 instead of 22.  However. this can be annoying behind some firewalls and [...]]]></description>
			<content:encoded><![CDATA[<p>Tired of seeing repeated attempts to login to a Linux server you run?  There are a number of options, all with their own benefits and disadvantages.  The easiest way is to move the port that the SSH server runs on, perhaps to <tt>2222</tt> instead of <tt>22</tt>.  However. this can be annoying behind some firewalls and means that you need to specify the port each time you SSH to a host.  This post looks at denyhosts, a viable alternative.<br />
<span id="more-254"></span><br />
denyhosts will monitor your authorisation log (typically <tt>/var/log/auth.log</tt>) and ban IPs that repeatedly fail to authorise as a genuine user.  It will deny future logins by adding the IP address to <tt>/etc/hosts.deny</tt>.</p>
<p>On a sensible Debian or Ubuntu install, getting denyhosts is as simple as running:</p>
<div class="codecolorer-container text twitlight" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">$ aptitude install denyhosts</div></td></tr></tbody></table></div>
<p>denyhosts should work as soon as it is installed.  However, a few options can be tweaked to make it work nicely.  The configuration file is at <tt>/etc/denyhosts.conf</tt>.</p>
<p>Firstly, set a proper administration email by changing <tt>ADMIN_EMAIL</tt>.  The option <tt>RESET_ON_SUCCESS</tt> might also be important to you, by setting it to <tt>yes</tt> the failure count for an IP address will be reset if there is a successful login.  If you want the blocks to expire (which is more important if you use synchronisation) then you should tweak <tt>PURGE_DENY</tt> to a sensible value, for example 1 week.</p>
<p>Synchronisation is one nice feature of denyhosts that means that information on IPs that attempt SSH bruteforcing can be shared between servers.  Information about synchronisation can be read <a title="denyhosts FAQ" href="http://denyhosts.sourceforge.net/faq.html#sync">in the FAQ</a> but enabling it is as simple as uncommenting the <tt>SYNC_SERVER</tt> line.  By default, your server will share information on bruteforcers and receive it from other administrators who run denyhosts.</p>
<p>You can check how denyhosts is working by watching the logfile at <tt>/var/log/denyhosts</tt>.  You can see newly added blocks logged as a line like the below:</p>
<p><tt>new denied hosts: ['202.107.228.xxx']</tt></p>
<p>Of course, you don&#8217;t need this as you&#8217;ve already disabled SSH password logins and your firewall disables access to port 22 from anywhere except a specially crafted list of IPs.  But for 5 minutes work, it provides some peace of mind.</p>
]]></content:encoded>
			<wfw:commentRss>http://edeca.net/wp/2010/01/blocking-ssh-brute-forcing-using-denyhosts/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

