<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Well-Rounded</title>
	<atom:link href="http://wellrounded.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://wellrounded.wordpress.com</link>
	<description>around technology</description>
	<lastBuildDate>Thu, 23 May 2013 13:12:45 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='wellrounded.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Well-Rounded</title>
		<link>http://wellrounded.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://wellrounded.wordpress.com/osd.xml" title="Well-Rounded" />
	<atom:link rel='hub' href='http://wellrounded.wordpress.com/?pushpress=hub'/>
		<item>
		<title>[avconv] Convert WMV to MP4</title>
		<link>http://wellrounded.wordpress.com/2013/01/27/avconv-convert-wmv-to-mp4/</link>
		<comments>http://wellrounded.wordpress.com/2013/01/27/avconv-convert-wmv-to-mp4/#comments</comments>
		<pubDate>Mon, 28 Jan 2013 03:57:31 +0000</pubDate>
		<dc:creator>swinful</dc:creator>
				<category><![CDATA[*Nix]]></category>
		<category><![CDATA[avconv]]></category>
		<category><![CDATA[ffmpeg]]></category>
		<category><![CDATA[swinful]]></category>
		<category><![CDATA[wellrounded]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://wellrounded.wordpress.com/?p=1342</guid>
		<description><![CDATA[I just came across a great tool for converting .wmv files to .mp4 and various other formats. I needed to perform this this conversion because either my Panasonic DLNA equipped TV could not playback .wmv files or it is the &#8230; <a href="http://wellrounded.wordpress.com/2013/01/27/avconv-convert-wmv-to-mp4/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wellrounded.wordpress.com&#038;blog=663307&#038;post=1342&#038;subd=wellrounded&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>I just came across a great tool for converting .wmv files to .mp4 and various other formats. I needed to perform this this conversion because either my Panasonic DLNA equipped TV could not playback .wmv files or it is the fault of my QNAP DLNA server. However, .mp4 encoded files play without issue. In the past the tool of choice was <strong>ffmpeg</strong>, but it is now deprecated and it is suggested to use <strong>avconv</strong> in the near future:</p>
<pre class="brush: plain; gutter: false; title: ; notranslate">
`--&gt; ffmpeg
ffmpeg version 0.8.4-6:0.8.4-0ubuntu0.12.10.1, Copyright (c) 2000-2012 the Libav developers
  built on Nov  6 2012 16:51:11 with gcc 4.7.2
*** THIS PROGRAM IS DEPRECATED ***
This program is only provided for compatibility and will be removed in a future release. Please use avconv instead.
</pre>
</p>
<p><strong>To check the available codes on your system</strong>, the &#8216;-codecs&#8217; option to <strong>avconv</strong> displays all supported codecs and whether it is possible to encode, decode and perform various other tasks as the legend shows. To the left of codec are the supported functions. For example:</p>
<pre class="brush: plain; gutter: false; light: true; title: ; notranslate">
`--&gt; avconv -codecs | head -10 &amp;&amp; avconv -loglevel quiet -codecs | egrep &quot;(wmv)&quot;
avconv version 0.8.4-6:0.8.4-0ubuntu0.12.10.1, Copyright (c) 2000-2012 the Libav developers
  built on Nov  6 2012 16:51:11 with gcc 4.7.2
Codecs:
 D..... = Decoding supported
 .E.... = Encoding supported
 ..V... = Video codec
 ..A... = Audio codec
 ..S... = Subtitle codec
 ...S.. = Supports draw_horiz_band
 ....D. = Supports direct rendering method 1
 .....T = Supports weird frame truncation
 ------
 DEVSD  wmv1            Windows Media Video 7
 DEVSD  wmv2            Windows Media Video 8
 D V D  wmv3            Windows Media Video 9
 D V D  wmv3_vdpau      Windows Media Video 9 VDPAU
 D V D  wmv3image       Windows Media Video 9 Image
</pre>
<p><strong>To convert our sample file:</strong> 1-25_681_webinar_2.wmv, 44MB in size, with the following characteristics:</p>
<pre class="brush: plain; gutter: false; title: ; notranslate">
`--&gt; du -sh 1-25_681_webinar_2.wmv
44M     1-25_681_webinar_2.wmv

`--&gt; avconv -i 1-25_681_webinar_2.wmv
avconv version 0.8.4-6:0.8.4-0ubuntu0.12.10.1, Copyright (c) 2000-2012 the Libav developers
  built on Nov  6 2012 16:51:11 with gcc 4.7.2
[wmv3 @ 0xa50be0] Extra data: 8 bits left, value: 0
Input #0, asf, from '1-25_681_webinar_2.wmv':
  Metadata:
    title           : 1-25 681 webinar 2
    WMFSDKVersion   : 11.0.5721.5251
    WMFSDKNeeded    : 0.0.0.0000
    IsVBR           : 1
    VBR Peak        : 295
    Buffer Average  : 772
  Duration: 01:02:38.47, start: 0.000000, bitrate: 96 kb/s
    Stream #0.0(eng): Audio: wmav2, 44100 Hz, 1 channels, s16, 48 kb/s
    Stream #0.1(eng): Video: wmv3 (Main), yuv420p, 640x416, 37 kb/s, 15 tbr, 1k tbn, 1k tbc
At least one output file must be specified
</pre>
<p>to .mp4 we <strong>perform</strong>:</p>
<pre class="brush: plain; gutter: false; title: ; notranslate">
`--&gt; sudo avconv -i 1-25_681_webinar_2.wmv -strict experimental 1-25_681_webinar_2.mp4
</pre>
<p>where the .wmv input file (-i) is encoded into .mp4 using the experimental &#8216;aac&#8217; encoder (-stric experimental):</p>
<pre class="brush: plain; light: true; title: ; notranslate">
avconv version 0.8.4-6:0.8.4-0ubuntu0.12.10.1, Copyright (c) 2000-2012 the Libav developers
  built on Nov  6 2012 16:51:11 with gcc 4.7.2
[wmv3 @ 0x1bd6be0] Extra data: 8 bits left, value: 0
Input #0, asf, from '1-25_681_webinar_2.wmv':
  Metadata:
    title           : 1-25 681 webinar 2
    WMFSDKVersion   : 11.0.5721.5251
    WMFSDKNeeded    : 0.0.0.0000
    IsVBR           : 1
    VBR Peak        : 295
    Buffer Average  : 772
  Duration: 01:02:38.47, start: 0.000000, bitrate: 96 kb/s
    Stream #0.0(eng): Audio: wmav2, 44100 Hz, 1 channels, s16, 48 kb/s
    Stream #0.1(eng): Video: wmv3 (Main), yuv420p, 640x416, 37 kb/s, 15 tbr, 1k tbn, 1k tbc
File '1-25_681_webinar_2.mp4' already exists. Overwrite ? [y/N] y
[buffer @ 0x1bd8860] w:640 h:416 pixfmt:yuv420p
[wmv3 @ 0x1bd6be0] Extra data: 8 bits left, value: 0
Output #0, mp4, to '1-25_681_webinar_2.mp4':
  Metadata:
    title           : 1-25 681 webinar 2
    WMFSDKVersion   : 11.0.5721.5251
    WMFSDKNeeded    : 0.0.0.0000
    IsVBR           : 1
    VBR Peak        : 295
    Buffer Average  : 772
    encoder         : Lavf53.21.0
    Stream #0.0(eng): Video: mpeg4, yuv420p, 640x416, q=2-31, 200 kb/s, 15 tbn, 15 tbc
    Stream #0.1(eng): Audio: aac, 44100 Hz, 1 channels, s16, 200 kb/s
Stream mapping:
  Stream #0:1 -&gt; #0:0 (wmv3 -&gt; mpeg4)
  Stream #0:0 -&gt; #0:1 (wmav2 -&gt; aac)
Press ctrl-c to stop encoding
frame=56377 fps=131 q=27.9 Lsize=  163756kB time=3758.47 bitrate= 356.9kbits/s
video:92153kB audio:69879kB global headers:0kB muxing overhead 1.064378%
178.31s user 8.23s system 43% cpu 7:12.13s total
</pre>
<p>I was surprised to see the resulting .mp4 was more than twice (160M) as large of the original!</p>
<pre class="brush: plain; light: true; title: ; notranslate">
`--&gt; du -sh 1-25_681_webinar_2.*
160M    1-25_681_webinar_2.mp4
44M     1-25_681_webinar_2.wmv
</pre>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wellrounded.wordpress.com/1342/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wellrounded.wordpress.com/1342/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wellrounded.wordpress.com&#038;blog=663307&#038;post=1342&#038;subd=wellrounded&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wellrounded.wordpress.com/2013/01/27/avconv-convert-wmv-to-mp4/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7b0fedde4aaff436470ed98df59746af?s=96&#38;d=wavatar&#38;r=G" medium="image">
			<media:title type="html">swinful</media:title>
		</media:content>
	</item>
		<item>
		<title>[QNAP] New NAS &#8212; TS-569L-US: Just Ordered!</title>
		<link>http://wellrounded.wordpress.com/2012/12/31/qnap-new-nas-ts-569l-us-just-ordered/</link>
		<comments>http://wellrounded.wordpress.com/2012/12/31/qnap-new-nas-ts-569l-us-just-ordered/#comments</comments>
		<pubDate>Tue, 01 Jan 2013 02:25:25 +0000</pubDate>
		<dc:creator>swinful</dc:creator>
				<category><![CDATA[General-Tech]]></category>

		<guid isPermaLink="false">http://wellrounded.wordpress.com/?p=1071</guid>
		<description><![CDATA[My QNAP will be delivered this week, in time to start the new year (2013) off right! During my waiting period I started searching for the right memory module to upgrade from 1GB to a total (max) of 3GB. The &#8230; <a href="http://wellrounded.wordpress.com/2012/12/31/qnap-new-nas-ts-569l-us-just-ordered/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wellrounded.wordpress.com&#038;blog=663307&#038;post=1071&#038;subd=wellrounded&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p><a href="http://wellrounded.files.wordpress.com/2012/12/qnap-ts-569l-us.jpg"><img class=" wp-image alignleft" id="i-1106" title="QNAP TS-569L-US" alt="Image" src="http://wellrounded.files.wordpress.com/2012/12/qnap-ts-569l-us.jpg?w=244&#038;h=244" width="244" height="244" /></a>My QNAP will be delivered this week, in time to start the new year (2013) off right! During my waiting period I started searching for the right memory module to upgrade from 1GB to a total (max) of 3GB. The exact type of memory to use for this <a href="http://www.qnap.com/useng/index.php?lang=en-us&amp;sn=862&amp;c=355&amp;sc=526&amp;t=692&amp;n=13704">QNAP NAS</a> is not disclosed, but on the QNAP website they are <a href="http://shop.qnap.com/index.php?route=product/product&amp;path=35_173&amp;product_id=78">selling 2GB for over $150.00</a> USD!! And, I am not buying that!</p>
<p>After searching the forums one member recommended Kingston <a href="http://forum.qnap.com/viewtopic.php?p=289085#p291875">KVR1333D3S8S9/2G</a>, which could be found really cheap, for about $10-$30 dollars online. Another member suggested that the memory module inside their <a href="http://forum.qnap.com/viewtopic.php?p=289085#p308657">TS-269L is that made by ADATA</a>. Based on the <a href="http://shop.qnap.com/index.php?route=product/product&amp;path=35_173&amp;product_id=78">specs</a> provided by QNAP on their website:2GB DDR3-1333 204Pin SO-DIMM RAM Module, I decided to purchase the following memory module from Amazon.com: <a href="ADATA Premier Series DDR3 1333Mhz 2 GB Single Laptop Memory Module SO-DIMM AD3S1333C2G9-R">ADATA Premier Series DDR3 1333Mhz 2 GB</a>. The reviews are pretty fair and I will try my luck!</p>
<p>For the harddrives I am starting off with three (3) x <a href="http://www.wdc.com/en/products/products.aspx?id=810">2TB Western Digital Red Drives</a>, ordered right from <a href="http://www.amazon.com/gp/product/B008JJLZ7G/ref=oh_details_o00_s00_i00">Amazon</a>! They will be used in a Raid-5 configuration for a total of 4TB, which should be enough for my need for now. I have been very luck for the past five (5) years without having to ever change a single drive in my <a href="http://wellrounded.wordpress.com/2007/04/25/nas-storage-hammer-just-arrived/">Hammer N1200</a> and is still running fine now! **Knock on wood** <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wellrounded.wordpress.com/1071/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wellrounded.wordpress.com/1071/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wellrounded.wordpress.com&#038;blog=663307&#038;post=1071&#038;subd=wellrounded&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wellrounded.wordpress.com/2012/12/31/qnap-new-nas-ts-569l-us-just-ordered/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7b0fedde4aaff436470ed98df59746af?s=96&#38;d=wavatar&#38;r=G" medium="image">
			<media:title type="html">swinful</media:title>
		</media:content>

		<media:content url="http://wellrounded.files.wordpress.com/2012/12/qnap-ts-569l-us.jpg?w=580" medium="image">
			<media:title type="html">QNAP TS-569L-US</media:title>
		</media:content>
	</item>
		<item>
		<title>[2012 in review] Site Stats</title>
		<link>http://wellrounded.wordpress.com/2012/12/31/2012-in-review-site-stats/</link>
		<comments>http://wellrounded.wordpress.com/2012/12/31/2012-in-review-site-stats/#comments</comments>
		<pubDate>Mon, 31 Dec 2012 06:05:34 +0000</pubDate>
		<dc:creator>swinful</dc:creator>
				<category><![CDATA[General-Tech]]></category>

		<guid isPermaLink="false">http://wellrounded.wordpress.com/?p=1069</guid>
		<description><![CDATA[The WordPress.com stats helper monkeys prepared a 2012 annual report for this blog. Here&#8217;s an excerpt: 19,000 people fit into the new Barclays Center to see Jay-Z perform. This blog was viewed about 86,000 times in 2012. If it were &#8230; <a href="http://wellrounded.wordpress.com/2012/12/31/2012-in-review-site-stats/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wellrounded.wordpress.com&#038;blog=663307&#038;post=1069&#038;subd=wellrounded&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>The WordPress.com stats helper monkeys prepared a 2012 annual report for this blog.</p>
<p>	<a href="http://wellrounded.wordpress.com/2012/annual-report/"><img src="http://www.wordpress.com/wp-content/mu-plugins/annual-reports/img/2012-emailteaser.png" width="100%" alt="" /></a></p>
<p>Here&#8217;s an excerpt:</p>
<blockquote><p>19,000 people fit into the new Barclays Center to see Jay-Z perform. This blog was viewed about <strong>86,000</strong> times in 2012. If it were a concert at the Barclays Center, it would take about 5 sold-out performances for that many people to see it.</p></blockquote>
<p><a href="http://wellrounded.wordpress.com/2012/annual-report/">Click here to see the complete report.</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wellrounded.wordpress.com/1069/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wellrounded.wordpress.com/1069/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wellrounded.wordpress.com&#038;blog=663307&#038;post=1069&#038;subd=wellrounded&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wellrounded.wordpress.com/2012/12/31/2012-in-review-site-stats/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7b0fedde4aaff436470ed98df59746af?s=96&#38;d=wavatar&#38;r=G" medium="image">
			<media:title type="html">swinful</media:title>
		</media:content>

		<media:content url="http://www.wordpress.com/wp-content/mu-plugins/annual-reports/img/2012-emailteaser.png" medium="image" />
	</item>
		<item>
		<title>[Puppet] Adding The Schema for Storing Node Definitions In LDAP</title>
		<link>http://wellrounded.wordpress.com/2012/01/21/puppet-adding-the-schema-for-storing-node-definitions-in-ldap/</link>
		<comments>http://wellrounded.wordpress.com/2012/01/21/puppet-adding-the-schema-for-storing-node-definitions-in-ldap/#comments</comments>
		<pubDate>Sun, 22 Jan 2012 04:19:58 +0000</pubDate>
		<dc:creator>swinful</dc:creator>
				<category><![CDATA[*Nix]]></category>

		<guid isPermaLink="false">http://wellrounded.wordpress.com/?p=1022</guid>
		<description><![CDATA[Puppet allows the storage of node information in LDAP. For this write-up I will detail how to configure an Oracle Directory Server to store node information that can later be used by a puppet server for the retrieval of node &#8230; <a href="http://wellrounded.wordpress.com/2012/01/21/puppet-adding-the-schema-for-storing-node-definitions-in-ldap/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wellrounded.wordpress.com&#038;blog=663307&#038;post=1022&#038;subd=wellrounded&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p><a href="http://wellrounded.files.wordpress.com/2012/01/picture-1.png"><img src="http://wellrounded.files.wordpress.com/2012/01/picture-1.png?w=150&#038;h=33" alt="" title="Puppet Labs" width="150" height="33" class="alignleft size-thumbnail wp-image-1024" /></a>Puppet allows the storage of node information in LDAP. For this write-up I will detail how to configure an <strong>Oracle Directory Server</strong> to store node information that can later be used by a puppet server for the retrieval of node classification information. The use of LDAP eliminates the need of having to use the flat file node.pp for node definitions.</p>
<p>On the server acting as the &#8220;puppet master&#8221;, ruby ldap client libraries are required. In the example below our &#8220;puppet master&#8221; server has already been configured on a ubuntu linux server. </p>
<p><strong>Ensure ruby client libraries are installed</strong>: </p>
<p>After verifying the absence of the ruby client libraries we install them below:</p>
<pre class="brush: bash; title: ; notranslate">
--&gt; aptitude search ruby | grep -i ldap
...edited...
p   libldap-ruby1.8                 - OpenLDAP library binding for Ruby 1.8
...edited...

--&gt; aptitude install libldap-ruby1.8
...edited...
Fetched 66.8 kB in 0s (109 kB/s)
Selecting previously deselected package libldap-ruby1.8.
(Reading database ... 63468 files and directories currently installed.)
Unpacking libldap-ruby1.8 (from .../libldap-ruby1.8_0.9.7-1.1_amd64.deb) ...
Setting up libldap-ruby1.8 (0.9.7-1.1) ...

`--&gt; ruby -rldap -e &quot;puts :installed&quot;
installed
</pre>
<p><strong>Update /etc/puppet/puppet.conf to use LDAP</strong></p>
<p>Change your &#8220;/etc/puppet/puppet.conf&#8221; [master] section to use ldap for node lookups on the master server. For example, the following should be placed in the /etc/puppet/puppet.conf file underneath the section [master]:</p>
<pre class="brush: plain; title: ; notranslate">
[master]
node_terminus = ldap
ldapserver = odsee.goldcoast.com
ldapbase = ou=hosts,dc=goldcoast,dc=com
</pre>
<p>Were &#8216;node_terminus&#8217; was originally using <strong>file</strong>, but will now use <strong>ldap</strong>. &#8216;ldapserver&#8217; should point to a valid ldap server that can be accessed on port 389. &#8216;ldapbase&#8217; is where the puppet master server will look for node information. We will populate this organizational unit (ou) later on. Once the changes have been saved restart the &#8220;puppet master&#8221;. The &#8216;nope.pp&#8217; file should no longer be referenced by the master server. But before discarding the file entirely we need to configure LDAP to add the custom puppet schema for our node definitions.</p>
<p><strong>Adding the Puppet Schema to LDAP Directory Server</strong></p>
<p>Next we need to populate our LDAP server to contain the puppet.schema definitions. I recommend visiting the following url for the latest puppet schema:</p>
<p><a href="https://github.com/puppetlabs/puppet/blob/master/ext/ldap/puppet.schema" rel="nofollow">https://github.com/puppetlabs/puppet/blob/master/ext/ldap/puppet.schema</a></p>
<p>Login into your directory server. Copy the contents of &#8216;puppet.schema&#8217; to a temporary file, for example to: <strong>/tmp/98puppet.ldif.tmp</strong>. The file as is, as of this writing, cannot be imported into Oracle Directory Server Enterprise (ODSEE) without modification.</p>
<p><strong>The original &#8216;puppet.schema&#8217; looks like:</strong></p>
<pre class="brush: plain; title: ; notranslate">
bash-3.00# cat &gt; /tmp/98puppet.ldif.tmp
attributetype ( 1.3.6.1.4.1.34380.1.1.3.10 NAME 'puppetClass'
DESC 'Puppet Node Class'
EQUALITY caseIgnoreIA5Match
SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )

attributetype ( 1.3.6.1.4.1.34380.1.1.3.9 NAME 'parentNode'
DESC 'Puppet Parent Node'
EQUALITY caseIgnoreIA5Match
        SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
        SINGLE-VALUE )

attributetype ( 1.3.6.1.4.1.34380.1.1.3.11 NAME 'environment'
DESC 'Puppet Node Environment'
EQUALITY caseIgnoreIA5Match
SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )

attributetype ( 1.3.6.1.4.1.34380.1.1.3.12 NAME 'puppetVar'
DESC 'A variable setting for puppet'
EQUALITY caseIgnoreIA5Match
SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )

objectclass ( 1.3.6.1.4.1.34380.1.1.1.2 NAME 'puppetClient' SUP top AUXILIARY
DESC 'Puppet Client objectclass'
MAY ( puppetclass $ parentnode $ environment $ puppetvar ))
</pre>
<p>It can be easily converted with the following script, located at:</p>
<p><a href="http://directory.fedoraproject.org/wiki/Howto:OpenLDAPMigration" rel="nofollow">http://directory.fedoraproject.org/wiki/Howto:OpenLDAPMigration</a>.</p>
<p>in order to work with ODSEE. For example:</p>
<pre class="brush: plain; title: ; notranslate">
bash-3.00# cd /tmp/

bash-3.00# perl ldif2dsee.pl 98puppet.ldif.tmp &gt; 98puppet.ldif
</pre>
<p><strong>After Conversion, the puppet schema will look like:</strong></p>
<pre class="brush: plain; title: ; notranslate">
bash-3.00# cat 98puppet.ldif

dn: cn=schema
attributeTypes: ( 1.3.6.1.4.1.34380.1.1.3.10 NAME 'puppetClass' DESC 'Puppet Node Class' EQUALITY cas
eIgnoreIA5Match SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 X-ORIGIN 'PUPPET')
attributeTypes: ( 1.3.6.1.4.1.34380.1.1.3.9 NAME 'parentNode' DESC 'Puppet Parent Node' EQUALITY case
IgnoreIA5Match SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE X-ORIGIN 'PUPPET')
attributeTypes: ( 1.3.6.1.4.1.34380.1.1.3.11 NAME 'environment' DESC 'Puppet Node Environment' EQUALI
TY caseIgnoreIA5Match SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 X-ORIGIN 'PUPPET')
attributeTypes: ( 1.3.6.1.4.1.34380.1.1.3.12 NAME 'puppetVar' DESC 'A variable setting for puppet' EQ
UALITY caseIgnoreIA5Match SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 X-ORIGIN 'PUPPET')
objectClasses: ( 1.3.6.1.4.1.34380.1.1.1.2 NAME 'puppetClient' SUP top AUXILIARY DESC 'Puppet Client 
objectclass' MAY ( puppetClass $ parentNode $ environment $ puppetVar ) X-ORIGIN 'PUPPET')
</pre>
<p>Copy the resulting file, /tmp/98puppet.ldif, under the ODSEE schema/ path. This is usually under <strong>instance-path/config/schema/</strong> :</p>
<pre class="brush: plain; title: ; notranslate">
bash-3.00# cp /tmp/98puppet.ldif /odsee/config/schema/
</pre>
<p><strong>Restart the LDAP Instance</strong></p>
<p>Before restarting the instance, tail the errors log file, <strong>instance-path/logs/errors</strong> in one window and in another restart the ldap instance ensuring there were no errors. For example, after restarting the instance:</p>
<pre class="brush: plain; title: ; notranslate">
bash-3.00# dsadm restart /odsee
Directory Server instance '/odsee' stopped
</pre>
<p><strong>Note:</strong> Notice after the restart, the message says &#8220;&#8230; &#8216;/odsee&#8217; stopped&#8221;. It should have said &#8220;&#8230; &#8216;/odsee&#8217; <strong>restarted</strong></p>
<p>The errors window should have displayed something similiar to: </p>
<pre class="brush: plain; title: ; notranslate">
[21/Jan/2012:22:25:43 -0500] - slapd shutting down - waiting for 0 threads to terminate
[21/Jan/2012:22:25:43 -0500] - libumem_dummy_thread started.
[21/Jan/2012:22:25:43 -0500] - Waiting for 6 database threads to stop
[21/Jan/2012:22:25:44 -0500] - All database threads now stopped
[21/Jan/2012:22:25:44 -0500] - slapd stopped.
[21/Jan/2012:22:25:47 -0500] - Sun-Directory-Server/11.1.1.3.0 B2010.0630.2254 (64-bit) starting up
[21/Jan/2012:22:25:49 -0500] - Listening on all interfaces port 389 for LDAP requests
[21/Jan/2012:22:25:49 -0500] - Listening on all interfaces port 636 for LDAPS requests
[21/Jan/2012:22:25:49 -0500] - slapd started. 
[21/Jan/2012:22:25:49 -0500] - INFO: 97 entries in the directory database.
...edited...
</pre>
<p><strong>Verify The Puppet Schema is in LDAP</strong></p>
<p>While still logged into the LDAP server, perform a basic search which should return the schema that was just imported.</p>
<pre class="brush: plain; title: ; notranslate">
bash-3.00# ldapsearch -T -b cn=schema &quot;(objectclass=*)&quot; | grep -i puppet

attributeTypes: ( 1.3.6.1.4.1.34380.1.1.3.11 NAME 'environment' DESC 'Puppet Node Environment' EQUALITY caseIgnoreIA5Match SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 X-ORIGIN 'PUPPET' )
attributeTypes: ( 1.3.6.1.4.1.34380.1.1.3.10 NAME 'puppetClass' DESC 'Puppet Node Class' EQUALITY caseIgnoreIA5Match SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 X-ORIGIN 'PUPPET' )
attributeTypes: ( 1.3.6.1.4.1.34380.1.1.3.9 NAME 'parentNode' DESC 'Puppet Parent Node' EQUALITY caseIgnoreIA5Match SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE X-ORIGIN 'PUPPET' )
attributeTypes: ( 1.3.6.1.4.1.34380.1.1.3.12 NAME 'puppetVar' DESC 'A variable setting for puppet' EQUALITY caseIgnoreIA5Match SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 X-ORIGIN 'PUPPET' )
objectClasses: ( 1.3.6.1.4.1.34380.1.1.1.2 NAME 'puppetClient' DESC 'Puppet Client objectclass' STRUCTURAL MAY ( puppetClass $ parentNode $ environment $ puppetVar ) X-ORIGIN 'PUPPET' )
</pre>
<p>Now you should be able to add node information within LDAP.</p>
<p><strong>Add a base node to LDAP</strong></p>
<p>I like to use the command line tool <strong>ldapvi</strong> for manipulating my ldap entries. I will not go into detail on how to configure <strong>ldapvi</strong>, but additional information may be found online. Let&#8217;s add a <strong>base</strong> node and assign the &#8220;base class&#8221; to it. We will place &#8220;cn=base&#8221;, under the &#8220;search base&#8221; ou=hosts,cn=goldcoast,dc=com:</p>
<pre class="brush: plain; title: ; notranslate">
--&gt; ldapvi --add -o top -o device -o puppetClient -b cn=base,ou=hosts,cn=goldcoast,cn=com
</pre>
<p>After invocation, your default editor will open up with a screen similar to this:</p>
<pre class="brush: plain; title: ; notranslate">
# -*- coding: utf-8 -*- vim:encoding=utf-8:
# http://www.lichteblau.com/ldapvi/manual#syntax

### NOTE: objectclass is abstract: top
# structural object class: device
### WARNING: extra structural object class: puppetClient
add cn=base,ou=hosts,cn=goldcoast,cn=com
objectClass: top
objectClass: device
objectClass: puppetClient
cn:
#description:
#l:
#o:
#ou:
#owner:
#seeAlso:
#serialNumber:
puppetClass: base
#parentNode:
#environment:
#puppetVar:
</pre>
<p>My default editor is &#8220;vim&#8221; and I uncommented &#8220;puppetClass:&#8221; in order to use the &#8220;base&#8221; class for the &#8220;base node&#8221;. Once done, save and quit the file and you should be presented with authentication to commit the change to ldap &#8212; something similiar to:</p>
<pre class="brush: plain; title: ; notranslate">
...edited...
~
/tmp/ldapvi-usdGC1/data: 22 lines, 457 characters.
add: 1, rename: 0, modify: 0, delete: 0
Action? [yYqQvVebB*rsf+?] b

--- Login
Type M-h for help on key bindings.

Filter or DN: 
    Password: 

</pre>
<p>Cheers,<br />
-swinful</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wellrounded.wordpress.com/1022/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wellrounded.wordpress.com/1022/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wellrounded.wordpress.com&#038;blog=663307&#038;post=1022&#038;subd=wellrounded&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wellrounded.wordpress.com/2012/01/21/puppet-adding-the-schema-for-storing-node-definitions-in-ldap/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7b0fedde4aaff436470ed98df59746af?s=96&#38;d=wavatar&#38;r=G" medium="image">
			<media:title type="html">swinful</media:title>
		</media:content>

		<media:content url="http://wellrounded.files.wordpress.com/2012/01/picture-1.png?w=150" medium="image">
			<media:title type="html">Puppet Labs</media:title>
		</media:content>
	</item>
		<item>
		<title>[Solaris 11 Express] Configuring Samba via ZFS for use in ActiveDirectory</title>
		<link>http://wellrounded.wordpress.com/2012/01/11/solaris-11-express-configuring-samba-via-zfs-for-use-in-activedirectory/</link>
		<comments>http://wellrounded.wordpress.com/2012/01/11/solaris-11-express-configuring-samba-via-zfs-for-use-in-activedirectory/#comments</comments>
		<pubDate>Wed, 11 Jan 2012 16:44:58 +0000</pubDate>
		<dc:creator>swinful</dc:creator>
				<category><![CDATA[*Nix]]></category>

		<guid isPermaLink="false">http://wellrounded.wordpress.com/?p=766</guid>
		<description><![CDATA[&#8220;Eh, I checked everywhere! I cannot find that smb.conf. Where could it have gone!?&#8221; And I thought he was lying when a colleague of mine mentioned this, trying to enable samba. Well, I checked and could not find any trace &#8230; <a href="http://wellrounded.wordpress.com/2012/01/11/solaris-11-express-configuring-samba-via-zfs-for-use-in-activedirectory/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wellrounded.wordpress.com&#038;blog=663307&#038;post=766&#038;subd=wellrounded&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>&#8220;Eh, I checked everywhere! I cannot find that smb.conf. Where could it have gone!?&#8221; And I thought he was lying when a colleague of mine mentioned this, trying to enable samba. Well, I checked and could not find any trace of the smb.conf file either. Although samba was enabled via ZFS and we could see the windows shares, we could not access them. Sure enabling samba via zfs was fairly simple and I enabled samba as follows. Considering <b>tank</b> is our dataset on a system called <b>army</b>) with the domain <b>goldcoast.com</b> I performed:</p>
<pre class="brush: bash; title: ; notranslate">
# zfs sharesmb=on tank
</pre>
<p>which should implicitly enable the SMF: <b>svc:/network/smb/server:default</b></p>
<p>What was actually missing, since we are in an Active Directory environment was joining our Solaris host to the domain and mapping corresponding Windows users to Unix users &#8212; provided the Windows and Unix usernames are the same and in this case they were.</p>
<p><b>Join Solaris to the Active Directory domain:</b></p>
<pre class="brush: bash; title: ; notranslate">
# smbadm join -u administrator goldcoast.com
</pre>
<p>At his point the Windows shares were now accessible, but you may have noticed the file mappings were wrong. For example, on the Windows side of things if you created a new file the owner and group would appear differently on the Unix side, similiar to the below listing:</p>
<pre class="brush: bash; title: ; notranslate">
# ls -ltr
   -rwx------+ 1 2147540993 2147483653          0 May 10 16:24 New Text Document.txt                    
</pre>
<p>And with permissions like that, in a shared environment there are sure to be a lot of complaints.</p>
<p>To map all AD users that are part of domain goldcoast.com, considering the local unix accounts have the same name we performed:</p>
<pre class="brush: bash; title: ; notranslate">
# idmap add &quot;winuser:*@goldcoast.com&quot; unixuser:*
</pre>
<p>And samba is enabled. Try it, try to  access the share from Windows using </p>
<p><b>Start</b> -&gt; <b>Run:</b> <i>\\army\tank </p>
<p>If your Windows machine is connected to an ActiveDirectory Controller you should be prompted for a username/password dialog.</p>
<hr />
<strong>References:</strong></p>
<ol>
<li><a href="http://www.aspdeveloper.net/tiki-index.php?page=SolarisCIFSPermissions#comments">Solaris CIFS Permissions</a></li>
<li><a href="http://download.oracle.com/docs/cd/E19963-01/html/821-1449/toc.html">Oracle Solaris SMB and Windows Interoperability Administration Guide</a></li>
</ol>
<p></i></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wellrounded.wordpress.com/766/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wellrounded.wordpress.com/766/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wellrounded.wordpress.com&#038;blog=663307&#038;post=766&#038;subd=wellrounded&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wellrounded.wordpress.com/2012/01/11/solaris-11-express-configuring-samba-via-zfs-for-use-in-activedirectory/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7b0fedde4aaff436470ed98df59746af?s=96&#38;d=wavatar&#38;r=G" medium="image">
			<media:title type="html">swinful</media:title>
		</media:content>
	</item>
		<item>
		<title>[Perl] It is never too late to learn!</title>
		<link>http://wellrounded.wordpress.com/2012/01/11/perl-it-is-never-too-late-to-learn/</link>
		<comments>http://wellrounded.wordpress.com/2012/01/11/perl-it-is-never-too-late-to-learn/#comments</comments>
		<pubDate>Wed, 11 Jan 2012 16:35:54 +0000</pubDate>
		<dc:creator>swinful</dc:creator>
				<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://wellrounded.wordpress.com/?p=877</guid>
		<description><![CDATA[All these years and I have never had the need to seriously learn perl until now. While searching for a good beginners guide I was particularly interested in a decent Computer Based Training (CBT), but that was hard to come &#8230; <a href="http://wellrounded.wordpress.com/2012/01/11/perl-it-is-never-too-late-to-learn/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wellrounded.wordpress.com&#038;blog=663307&#038;post=877&#038;subd=wellrounded&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>All these years and I have never had the need to seriously learn perl until now. While searching for a good beginners guide I was particularly interested in a decent Computer Based Training (CBT), but that was hard to come by &#8212; at least trying to find a free one worth my while. I wanted something similar to the old DOS Unix CBT I once used when I was learning UNIX or even something to the extent of the Tcl CBT. Well, I did did not quite find what I was looking for, so instead I checked what was already available on my BSD box for learning perl:</p>
<pre class="brush: bash; title: ; notranslate">
`--&gt; apropos perl | grep doc
perlapi(1)               - autogenerated documentation for the perl public API
perldoc(1)               - Look up Perl documentation in Pod format
perlintern(1)            - autogenerated documentation of purely internal Perl functions
perlplan9(1)             - Plan 9-specific documentation for Perl
perlpod(1)               - the Plain Old Documentation format Xref &quot;POD plain old documentation&quot;
perltoc(1)               - perl documentation table of contents
perlvms(1)               - VMS-specific documentation for Perl
</pre>
<p>What stood out to me was <strong>perltoc(1)</strong>. And, it is what I used for the basis of starting to learn perl. For example <strong>perltoc(1)</strong> &#8212; like its&#8217; name suggest will provide a brief table of contents for the rest of the perl documentation set. I used it to scan for areas that interested me about perl.</p>
<pre class="brush: bash; title: ; notranslate">
`--&gt; man perltoc | col -bx | egrep &quot;perl.+ -+ .*&quot; | sed 's/^ *//' | more
perltoc - perl documentation table of contents
perlintro -- a brief introduction and overview of Perl
perlreftut - Mark's very short tutorial about references
perldsc - Perl Data Structures Cookbook
perllol - Manipulating Arrays of Arrays in Perl
perlrequick - Perl regular expressions quick start
perlretut - Perl regular expressions tutorial
perlboot - Beginner's Object-Oriented Tutorial
perltoot - Tom's object-oriented tutorial for perl
perltooc - Tom's OO Tutorial for Class Data in Perl
perlbot - Bag'o Object Tricks (the BOT)
perlperf - Perl Performance and Optimization Techniques
perlstyle - Perl style guide
perlcheat - Perl 5 Cheat Sheet
perltrap - Perl traps for the unwary
perldebtut - Perl debugging tutorial
perlfaq - frequently asked questions about Perl
perlfaq  - this document, perlfaq1 - General Questions About Perl,
perlfaq2 - Obtaining and Learning about Perl, perlfaq3 -
</pre>
<p>Once I got feet wet I decided to purchase one of the O&#8217; Reilly Books: Programming Perl 4th Edition.And, I also found the following sites useful: <a href="http://learn.perl.org" rel="nofollow">http://learn.perl.org</a> and <a href="http://perldoc.perl.org" rel="nofollow">http://perldoc.perl.org</a>.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wellrounded.wordpress.com/877/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wellrounded.wordpress.com/877/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wellrounded.wordpress.com&#038;blog=663307&#038;post=877&#038;subd=wellrounded&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wellrounded.wordpress.com/2012/01/11/perl-it-is-never-too-late-to-learn/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7b0fedde4aaff436470ed98df59746af?s=96&#38;d=wavatar&#38;r=G" medium="image">
			<media:title type="html">swinful</media:title>
		</media:content>
	</item>
		<item>
		<title>[GnuCash] MacPorts Compile</title>
		<link>http://wellrounded.wordpress.com/2012/01/11/gnucash-macports-compile/</link>
		<comments>http://wellrounded.wordpress.com/2012/01/11/gnucash-macports-compile/#comments</comments>
		<pubDate>Wed, 11 Jan 2012 16:31:16 +0000</pubDate>
		<dc:creator>swinful</dc:creator>
				<category><![CDATA[*Nix]]></category>

		<guid isPermaLink="false">http://wellrounded.wordpress.com/?p=881</guid>
		<description><![CDATA[Finally! Just finished with the compilation and installation of GnuCash using macports on my PowerBook Pro running Mac OS X 10.5.8: Now, that took long enough &#8212; one hour and forty five minutes! Thought I would share. -;)<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wellrounded.wordpress.com&#038;blog=663307&#038;post=881&#038;subd=wellrounded&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>Finally! Just finished with the compilation and installation of GnuCash using macports on my PowerBook Pro running Mac OS X 10.5.8:</p>
<pre class="brush: bash; title: ; notranslate">
...edited...
---&gt;  Configuring gnucash
---&gt;  Building gnucash
---&gt;  Staging gnucash into destroot
---&gt;  Installing gnucash @2.4.7_1
---&gt;  Activating gnucash @2.4.7_1
---&gt;  Cleaning gnucash
5150.53s user 1790.23s system 109% cpu 1:45:58.98s total
</pre>
<p>Now, that took long enough &#8212; <strong>one hour and forty five minutes</strong>! Thought I would share. -;)</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wellrounded.wordpress.com/881/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wellrounded.wordpress.com/881/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wellrounded.wordpress.com&#038;blog=663307&#038;post=881&#038;subd=wellrounded&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wellrounded.wordpress.com/2012/01/11/gnucash-macports-compile/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7b0fedde4aaff436470ed98df59746af?s=96&#38;d=wavatar&#38;r=G" medium="image">
			<media:title type="html">swinful</media:title>
		</media:content>
	</item>
		<item>
		<title>[AIX] DBX Installation</title>
		<link>http://wellrounded.wordpress.com/2012/01/11/aix-dbx-installation/</link>
		<comments>http://wellrounded.wordpress.com/2012/01/11/aix-dbx-installation/#comments</comments>
		<pubDate>Wed, 11 Jan 2012 16:29:06 +0000</pubDate>
		<dc:creator>swinful</dc:creator>
				<category><![CDATA[*Nix]]></category>

		<guid isPermaLink="false">http://wellrounded.wordpress.com/?p=873</guid>
		<description><![CDATA[&#8216;Free&#8217; online packages of the AIX debugging tool, dbx, are hard to find. In fact, I do not believe it is freely available unless someone copies it from their installation medium and places it online. My searches turned up nothing. &#8230; <a href="http://wellrounded.wordpress.com/2012/01/11/aix-dbx-installation/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wellrounded.wordpress.com&#038;blog=663307&#038;post=873&#038;subd=wellrounded&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>&#8216;Free&#8217; online packages of the AIX debugging tool, dbx, are hard to find. In fact, I do not believe it is freely available unless someone copies it from their installation medium and places it online. My searches turned up nothing. Eventually, I just installed it from the local install media using &#8220;<strong>smitty install</strong>&#8220;. </p>
<p><strong>dbx</strong> on AIX is part of the bos.adt.debug (Base Application Development) software bundle. If you have the installation media inserted (usually the first CD/DVD), typically accessible via the device &#8216;cd0&#8242; you can install dbx by performing the following:</p>
<pre class="brush: bash; title: ; notranslate">
# smitty install
</pre>
<p>References: </p>
<p><a href="http://www-01.ibm.com/support/docview.wss?uid=swg21222456" rel="nofollow">http://www-01.ibm.com/support/docview.wss?uid=swg21222456</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wellrounded.wordpress.com/873/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wellrounded.wordpress.com/873/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wellrounded.wordpress.com&#038;blog=663307&#038;post=873&#038;subd=wellrounded&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wellrounded.wordpress.com/2012/01/11/aix-dbx-installation/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7b0fedde4aaff436470ed98df59746af?s=96&#38;d=wavatar&#38;r=G" medium="image">
			<media:title type="html">swinful</media:title>
		</media:content>
	</item>
		<item>
		<title>[TR-069] Verizon FiOS Uses It &#8212; But So What?</title>
		<link>http://wellrounded.wordpress.com/2012/01/11/tr-069-verizon-fios-uses-it-but-so-what/</link>
		<comments>http://wellrounded.wordpress.com/2012/01/11/tr-069-verizon-fios-uses-it-but-so-what/#comments</comments>
		<pubDate>Wed, 11 Jan 2012 16:20:40 +0000</pubDate>
		<dc:creator>swinful</dc:creator>
				<category><![CDATA[*Nix]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://wellrounded.wordpress.com/?p=994</guid>
		<description><![CDATA[I became interested in TR-069 after figuring out my Verizon FiOS router had the capability to be remotely managed by it, allowing my mind to wonder about a couple of &#8220;what-if&#8221; situations. However, I can see the benefits of this &#8230; <a href="http://wellrounded.wordpress.com/2012/01/11/tr-069-verizon-fios-uses-it-but-so-what/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wellrounded.wordpress.com&#038;blog=663307&#038;post=994&#038;subd=wellrounded&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>I became interested in TR-069 after figuring out my Verizon FiOS router had the capability to be remotely managed by it, allowing my mind to wonder about a couple of &#8220;what-if&#8221; situations. However, I can see the benefits of this feature from the perspective of the provider. For example, with Tr-069 the provider or manufacture of the device can swiftly deal with problematic issues that would have otherwise allowed for a technician to be dispatched to a customers home, which can be costly. With the ability to perform such tasks as remote firmware upgrade/patching or even the initial configuration of the device for the customer, providers can definitely save a lot of money. Imagine millions of customers needing a technician to be dispatched to their homes due to a major security flaw in the device software?</p>
<p>But what if the provider uses the full capabilities of TR-069 for profit and gain? That I would not be the least bit surprised. After all they do technically own the device while the customer has service with them. But what if a mid-night shift engineer used the capabilities of TR-069 to gain entry into a customers home network to snoop around? Would the customer know? Could the customer even prevent remote access into their leased modem or router and ultimately their private home network? First, what exactly is TR-069?</p>
<p>According to Wikipedia: </p>
<blockquote><p>TR-069 (Technical Report 069) is a DSL Forum (which was later renamed as Broadband Forum) technical specification entitled CPE WAN Management Protocol (CWMP). It defines an application layer protocol for remote management of end-user devices.</p></blockquote>
<p>In other words, TR-069 is a WAN Management Protocal implemented in client devices such as home routers, set-top boxes and similar equipment leased from ISP&#8217;s or cable providers. These client devices are also referred to as CPE&#8217;s or a Customer Premise Equipment. TR-069 is the technology that allows vendors to remotely interact with their CPE for such purposes as initial device configuration, troubleshooting and basic management of the device such as performing remote backups or firmware upgrades. This allows vendors to cut costs on field technicians that would have otherwise been dispatched to a customer&#8217;s home or office. The protocol allows for communication to take place via SOAP/HTTP, between the CPE and the vendors Auto Configuration Servers (ACS). With TR-069, communication can either be initiated from the vendor side or the customer side without the customer&#8217;s knowledge. An ACS can be thought of as a single point of management for all customer devices [2].                                         </p>
<p>So, would the customer know if &#8220;someone&#8221; was snooping around? Possibly, but they would definitely have to be proactive and check the logs from time to time. Could the customer even prevent remote access into their leased modem or router and ultimately their private home network? This is a big NO! At least not with the equipment provided to them by the manufacturer or their ISP. Trying to disable the abilities of Tr-069 once implemented in a device is damn near impossible, especially when attempted using the FiOS router itself. Check out this screenshot:</p>
<p><a href="http://wellrounded.files.wordpress.com/2012/01/picture-2.png"><img src="http://wellrounded.files.wordpress.com/2012/01/picture-2.png?w=600&#038;h=344" alt="" title="Picture 2" width="600" height="344" class="aligncenter size-medium wp-image-995" /></a></p>
<p>You will notice under the &#8220;Delete&#8221; column, what would have been an option to delete this rule from the outside has been removed. Another example to show the &#8220;Verizon FiOS Service&#8221; cannot be blocked is something you can test yourself. For example, if you have Internet with FiOS and know your <a href="http://whatismyip.com" title="See you public IP address">public-ip</a> port &#8220;4567&#8243; will be open. Attempting to connect to it via a web-browser should present you with a login prompt. However, not just anyone can connect and I would be surprised if you could get that Login/Password pair. But, what if someone figured out the pair? Or what is an employee at the ISP wanted to snoop around?</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wellrounded.wordpress.com/994/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wellrounded.wordpress.com/994/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wellrounded.wordpress.com&#038;blog=663307&#038;post=994&#038;subd=wellrounded&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wellrounded.wordpress.com/2012/01/11/tr-069-verizon-fios-uses-it-but-so-what/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7b0fedde4aaff436470ed98df59746af?s=96&#38;d=wavatar&#38;r=G" medium="image">
			<media:title type="html">swinful</media:title>
		</media:content>

		<media:content url="http://wellrounded.files.wordpress.com/2012/01/picture-2.png?w=300" medium="image">
			<media:title type="html">Picture 2</media:title>
		</media:content>
	</item>
		<item>
		<title>[Verizon FiOS] Using Juniper&#8217;s SSG 5 As The Main Router</title>
		<link>http://wellrounded.wordpress.com/2011/12/29/verizon-fios-using-junipers-ssg-5-as-the-main-router/</link>
		<comments>http://wellrounded.wordpress.com/2011/12/29/verizon-fios-using-junipers-ssg-5-as-the-main-router/#comments</comments>
		<pubDate>Fri, 30 Dec 2011 03:44:07 +0000</pubDate>
		<dc:creator>swinful</dc:creator>
				<category><![CDATA[*Nix]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[coaxial connection]]></category>
		<category><![CDATA[Verizon FiOS]]></category>
		<category><![CDATA[wan connectivity]]></category>

		<guid isPermaLink="false">http://wellrounded.wordpress.com/?p=949</guid>
		<description><![CDATA[Using a Juniper SSG5 w/ ScreenOS as the main router for the Verizon FiOS service provides a number of features and benefits over using Verizon&#8217;s own wireless router. Some of which are: Built-in antivirus, antispam and web filtering, allowing for &#8230; <a href="http://wellrounded.wordpress.com/2011/12/29/verizon-fios-using-junipers-ssg-5-as-the-main-router/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wellrounded.wordpress.com&#038;blog=663307&#038;post=949&#038;subd=wellrounded&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<div id="attachment_968" class="wp-caption alignleft" style="width: 160px"><a href="http://wellrounded.files.wordpress.com/2011/12/screen-shot-2011-12-29-at-12-06-57-pm.png"><img class="size-thumbnail wp-image-968" title="Juniper SSG 5 Wireless" src="http://wellrounded.files.wordpress.com/2011/12/screen-shot-2011-12-29-at-12-06-57-pm.png?w=150&#038;h=67" alt="Juniper SSG 5 Wireless" width="150" height="67" /></a><p class="wp-caption-text">Juniper SSG 5 Wireless</p></div>
<p>Using a Juniper SSG5 w/ ScreenOS as the main router for the Verizon FiOS service provides a number of features and benefits over using Verizon&#8217;s own wireless router. Some of which are:</p>
<ol>
<li>Built-in antivirus, antispam and web filtering, allowing for the possibility of stopping all viruses and malware before they damage your network.</li>
<li>Deep (packet) Inspection that has the potential to prevent application-level attacks from flooding the network.</li>
<li>Seven fixed 10/100 interfaces that can each operate individually or as a group in layer 2 and or layer 3 mode, while providing high-speed LAN connectivity and redundant WAN connectivity if so desired.</li>
<li>And much, much more. Here is the full list of <a href="www.juniper.net/us/en/local/pdf/datasheets/1000176-en.pdf">features and benefits for the Secure Services Gateways by Juniper Networks</a> (PDF).</li>
</ol>
<p><em>Also, worth nothing the is the fact that Verizon&#8217;s ActionTec routers use <a href="http://www.workssys.com/tr069brief">TR-069</a>, a WAN management protocol, that allows the device, also known as the Customer Premises Equipment (CPE), to get and send data to authorized parties or servers. By now having the Verizon ActionTec router behind our SSG we can effectively control this type of communication and even possibly capture the traffic it sends back and forth. There has been chatter on slashdot.org namely the article, <a href="http://tech.slashdot.org/story/10/08/01/1845234/verizon-changing-users-router-passwords">Verizon Changing Users Router Passwords</a>, in the past indirectly about this and the infamous open port 4567 on public facing ActionTec routers. My personal experience with TR-069 is later in this post.</em></p>
<p><a href="http://wellrounded.files.wordpress.com/2011/12/screen-shot-2011-12-29-at-10-32-59-am.png"><img class="alignleft size-thumbnail wp-image-953" title="Verizon MI424WR_front" src="http://wellrounded.files.wordpress.com/2011/12/screen-shot-2011-12-29-at-10-32-59-am.png?w=50&#038;h=150" alt="Verizon MI424WR" width="50" height="150" /></a>We have the Verizon wireless ActionTec, model MI424WR at home and it sits behind our SSG5 with an additional coaxial connection at the back of it. This coaxial is use for connecting one or more set-top boxes (STB) to receive video or provide data in the case of a MoCa setup. When using the SSG5 router from Juniper, we do not completely eliminate the use Verizon&#8217;s wireless router as it is needed for TV/Cable service via the coax cable, something the SSG5 cannot provide.  I have found, though your mileage might vary, when FiOS is first setup. By default, I am told, technicians perform a MoCA setup, unless a non-MoCA is requested by the customer (what I requested).</p>
<p>MoCA stands for <a title="Multimedia over Coax Alliance" href="http://en.wikipedia.org/wiki/Multimedia_over_Coax_Alliance">Multimedia over Coax Alliance</a>(MoCA) protocol, which allows for both data and video over a single coaxial cable. Hence, with a MoCA setup, there is no need to run an ethernet cable directly from the Optical Network Terminal (OTN) usually on the side of the home to the FiOS router inside the home. Instead a single coaxial cable is ran that allows both data and video and sometimes voice. So, if you are to use an SSG firewall or similar device with Verizon FiOS you will most likely want the non-MoCA setup, which is what I have for my SSG and it works great! Once working, the SSG needs to be configured in order to allow Verizon&#8217;s router to sit behind it using its WAN port. The WAN port of the ActionTec router needs access to the Internet for NAT of the of LAN and Wireless devices that sit behind it. This includes the STB as they need access to the Internet for retrieving channel listing. I will explain this setup via this rough diagram:</p>
<div id="attachment_965" class="wp-caption aligncenter" style="width: 632px"><a href="http://wellrounded.files.wordpress.com/2011/12/screen-shot-2011-12-29-at-11-59-21-am.png"><img class="size-full wp-image-965" title="FiOS SSG Setup" src="http://wellrounded.files.wordpress.com/2011/12/screen-shot-2011-12-29-at-11-59-21-am.png?w=640" alt="FiOS SSG Setup"   /></a><p class="wp-caption-text">FiOS SSG Setup</p></div>
<p>The setup is pretty straight forward. Again, this setup requires that:</p>
<ol>
<li>A Verizon tech provision a Non-MoCA setup.</li>
<li>An Ethernet cable is ran from the Optical Network Terminal (ONT), a Non-MoCA configuration, directly to a port of the SSG router (eth0/0) instead of the WAN port of the Verizon router.</li>
<li>The WAN port of the Verizon ActionTec router will connect to a physical port of the SSG to obtain an IP address via DHCP.</li>
</ol>
<p>The initial configuration to setup the SSG 5 will not be discussed in detail, but I assume the reader knows how to access the SSG device via the serial-console and or one of the network ports. In this setup of the SSG we:</p>
<ol>
<li>Configure eth0/0 as the WAN interface in the Untrust security zone allow it to act as a DHCP client.</li>
<li>Configure eth0/4 &#8212; eth0/6 to bind to bgroup0 on network: 192.168.2.0/24, in the Trust security zone (the WAN port of the Verizon ActionTec connects to once of these ports.)</li>
<li>Configure bgroup0 as a DHCP server to distribute IPs in the range: 192.168.2.30 &#8212; 192.168.2.60..</li>
</ol>
<p><strong>Configure eth0/0 as the WAN interface in the Untrust security zone allowing it to act as a DHCP client.</strong></p>
<pre class="brush: bash; gutter: false; title: ; notranslate">
set interface &quot;ethernet0/0&quot; zone &quot;Untrust&quot;
set interface ethernet0/0 route
set interface ethernet0/0 ip manageable
set interface ethernet0/0 manage ping
set interface ethernet0/0 manage ssl
set interface ethernet0/0 dhcp client enable
set interface ethernet0/0 route-deny
</pre>
<p>Afterwards verify that ethernet0/0 on the SSG has a public verizon IP address. You may have to wait a bit up to five minutes for the new IP to come in. Worst case, you may have to call Verizon to break the IP lease. There really is no need to restart the SSG. It will actively request an IP until it is satisfied.</p>
<p><strong>Configure eth0/4 &#8212; eth0/6 to bind to bgroup0 on network: 192.168.2.0/24, in the Trust security zone.</strong></p>
<pre class="brush: bash; gutter: false; title: ; notranslate">
set interface &quot;bgroup0&quot; zone &quot;Trust&quot;
set interface bgroup0 port ethernet0/4
set interface bgroup0 port ethernet0/5
set interface bgroup0 port ethernet0/6
set interface bgroup0 ip 192.168.1.1/24
set interface bgroup0 ip manageable
</pre>
<p><strong>Configure bgroup0 as a DHCP server to distribute IPs in the range: 192.168.2.30 &#8212; 192.168.2.60.</strong></p>
<pre class="brush: bash; gutter: false; title: ; notranslate">
set interface bgroup0 dhcp server service
set interface bgroup0 dhcp server auto
set interface bgroup0 dhcp server ip 192.168.1.30 to 192.168.1.60
</pre>
<p>Afterwards, plug-in the Verizon ActionTec router to one of these ports, ethernet0/4, and it should receive an IP in the defined range. At this point, any communication that is to take place originating from the ActionTec must pass through the SSG.</p>
<p>All of the above command-line can be configured via the SSG&#8217;s web interface as well. I don&#8217;t show that here as it is pretty much self-explanatory.</p>
<p>Once steps 1 &#8212; 3 are complete. The WAN port of the Verizon ActionTec router may be plugged into bgroup0 to receive an IP via DHCP. Next, the policy &#8220;Trust&#8221; to &#8220;UnTrust&#8221; should be configured to allow traffic for all devices in the Trust network out to the Untrust. It is left up to the reader to allow or deny specific traffic.</p>
<p><strong>Configure DefaultAllow Policy from Trust to Untrust for devices part of bgroup0</strong></p>
<pre class="brush: bash; gutter: false; title: ; notranslate">
set policy name &quot;DefaultAllow&quot; from &quot;Trust&quot; to &quot;Untrust&quot; &quot;Any&quot; &quot;Any&quot; &quot;ANY&quot; permit log
</pre>
<p><strong>My personal experience with TR-069</strong></p>
<p>Since the switch to have Verizon&#8217;s router &#8220;piggy back&#8221; my SSG I have noticed periodic communication between our Verizon ActionTec router and at least two public IP addresses. Communication is initiated from the Verizon ActionTec router or CPE device about every 10 to 15 minutes to the following two IP addresses: <strong>72.76.255.44</strong> and <strong>72.76.255.36</strong>. Active communication takes place on tcp port 80 and UDP port 6794.</p>
<p>From a <strong>whois</strong> query and reverse lookup both IPs belong to Verizon and not some third party &#8212; at least not by first glance:</p>
<blockquote><p>OrgName:        Verizon Online LLC<br />
OrgId:          VRIS<br />
Address:        22001 Loudoun County Parkway<br />
City:           Ashburn<br />
StateProv:      VA<br />
PostalCode:     20147<br />
Country:        US<br />
RegDate:<br />
Updated:        2010-08-17<br />
Ref:            <a href="http://whois.arin.net/rest/org/VRIS" rel="nofollow">http://whois.arin.net/rest/org/VRIS</a>
</p></blockquote>
<p>A reverse lookup shows one (72.76.255.36) IP as a DNS server and the other (72.76.255.44) as something else, probably used for channel listing update by the looks of the hostname:</p>
<pre class="brush: plain; title: ; notranslate">

$ dig -x 72.76.255.36 | egrep &quot;SOA|PTR&quot;
255.76.72.in-addr.arpa.	834	IN	SOA	ns5.verizon.net. dns.verizon.com. 2010073001 86400 3600 604800 86400

$ dig -x 72.76.255.44 | egrep &quot;SOA|PTR&quot; 
44.255.76.72.in-addr.arpa. 86309 IN	PTR	mercuryipg.frhdnjbbh09.fiostv.verizon.net.

</pre>
<p>In another post, I plan on snooping the traffic initiated by the Verizon ActionTec router to the named IPs above. Stay tuned!</p>
<p>Cheers,<br />
-swinful</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/wellrounded.wordpress.com/949/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/wellrounded.wordpress.com/949/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=wellrounded.wordpress.com&#038;blog=663307&#038;post=949&#038;subd=wellrounded&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://wellrounded.wordpress.com/2011/12/29/verizon-fios-using-junipers-ssg-5-as-the-main-router/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7b0fedde4aaff436470ed98df59746af?s=96&#38;d=wavatar&#38;r=G" medium="image">
			<media:title type="html">swinful</media:title>
		</media:content>

		<media:content url="http://wellrounded.files.wordpress.com/2011/12/screen-shot-2011-12-29-at-12-06-57-pm.png?w=150" medium="image">
			<media:title type="html">Juniper SSG 5 Wireless</media:title>
		</media:content>

		<media:content url="http://wellrounded.files.wordpress.com/2011/12/screen-shot-2011-12-29-at-10-32-59-am.png?w=50" medium="image">
			<media:title type="html">Verizon MI424WR_front</media:title>
		</media:content>

		<media:content url="http://wellrounded.files.wordpress.com/2011/12/screen-shot-2011-12-29-at-11-59-21-am.png" medium="image">
			<media:title type="html">FiOS SSG Setup</media:title>
		</media:content>
	</item>
	</channel>
</rss>
