<?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>[M@sprackle.org ~]$</title>
	<atom:link href="http://sprackle.org/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://sprackle.org</link>
	<description>Just my script depo in cyberspace</description>
	<lastBuildDate>Fri, 18 Jun 2010 21:16:26 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Not as Lazy csv2ldif</title>
		<link>http://sprackle.org/2010/03/not-as-lazy-csv2ldif/</link>
		<comments>http://sprackle.org/2010/03/not-as-lazy-csv2ldif/#comments</comments>
		<pubDate>Wed, 24 Mar 2010 04:31:04 +0000</pubDate>
		<dc:creator>M@</dc:creator>
				<category><![CDATA[Scripts]]></category>

		<guid isPermaLink="false">http://sprackle.org/?p=322</guid>
		<description><![CDATA[#!/bin/bash
# AUTHOR: M@sprackle.org
# PURPOSE: To convert a CSV to LDIF
# LIMITATIONS: Expects the following format use in the CSV.
# Surname,GivenName,UID,Mail,Phone,Description
# This is a little prettier than the previous one bus still
# should deliver the same results.
# You should also edit the default GID as I've set it to a rush song
# INSTALL: change script to [...]]]></description>
			<content:encoded><![CDATA[<pre class="brush:[bash]">#!/bin/bash
# AUTHOR: M@sprackle.org
# PURPOSE: To convert a CSV to LDIF
# LIMITATIONS: Expects the following format use in the CSV.
# Surname,GivenName,UID,Mail,Phone,Description
# This is a little prettier than the previous one bus still
# should deliver the same results.
# You should also edit the default GID as I've set it to a rush song
# INSTALL: change script to +x and run with a file option
# USE: modify the FILENAME on the cat and run.
# $ csv2ldif file.csv

for i in `cat $1`;do

UIDNUMBER=`seq 2000 2100`
OUWHERE="ou=name"
DNWHERE="dc=example,dc=com"
FILE=">> ldif.txt"
GIVENNAME=`echo ${i} | awk -F, '{print $2}'`
SURNAME=`echo ${i} | awk -F, '{print $1}'`
USERNAME=`echo ${i} | awk -F, '{print $3}'`
MAILADDR=`echo ${i} | awk -F, '{print $4}'`
DEFAULTGID='2112'

echo "dn=${OUWHERE},${DNWHERE}"
echo "objectClass: person" ${FILE}
echo "objectClass: top" ${FILE}
echo "objectClass: inetorgperson" ${FILE}
echo "uid: ${USERNAME}" ${FILE}
echo "sn: ${SURNAME}" ${FILE}
echo "givenname: ${GIVENAME}" ${FILE}
echo "mail: ${MAILADDR}" ${FILE}
echo "uidNumber: ${UIDNUMBER}" ${FILE}
echo "gid: ${DEFAULTGID}" ${FILE}
echo "" ${FILE}
done
</pre>
]]></content:encoded>
			<wfw:commentRss>http://sprackle.org/2010/03/not-as-lazy-csv2ldif/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Lazy &#8211; CSV to LDIF</title>
		<link>http://sprackle.org/2010/02/lazy-csv-to-ldif/</link>
		<comments>http://sprackle.org/2010/02/lazy-csv-to-ldif/#comments</comments>
		<pubDate>Wed, 24 Feb 2010 03:42:33 +0000</pubDate>
		<dc:creator>M@</dc:creator>
				<category><![CDATA[Scripts]]></category>

		<guid isPermaLink="false">http://sprackle.org/?p=293</guid>
		<description><![CDATA[#!/bin/bash
# AUTHOR: M@sprackle.org
# PURPOSE: To convert a CSV to LDIF
# LIMITATIONS: Expects the following format use in the CSV.
# Surname,GivenName,UID,Mail,Phone,Description
# It's not pretty and I could move it to a for loop but this
# really worked on populating a LDAP phone directory.
# You can really tell how lazy I was on this one....
# INSTALL: change [...]]]></description>
			<content:encoded><![CDATA[<pre class="brush:[bash]">#!/bin/bash
# AUTHOR: M@sprackle.org
# PURPOSE: To convert a CSV to LDIF
# LIMITATIONS: Expects the following format use in the CSV.
# Surname,GivenName,UID,Mail,Phone,Description
# It's not pretty and I could move it to a for loop but this
# really worked on populating a LDAP phone directory.
# You can really tell how lazy I was on this one....
# INSTALL: change script to +x and run with a file option
# USE: modify the FILENAME on the cat and run.
# $ diffy
cat FILENAME.csv | awk -F, '{print "dn: uid="$3",ou=addressbook,dc=example,dc=com""\n""objectClass: top""\n""objectClass: organizationalPerson""\n""objectClass: inetorgperson""\n""objectClass: person""\n""uid: "$3"\n""cn: "$2,$1"\n""mail: "$4"\n""givenName: "$2"\n""sn: "$1"\n""telephoneNumber: "$5"\n""description: "$6"\n"}
</pre>
]]></content:encoded>
			<wfw:commentRss>http://sprackle.org/2010/02/lazy-csv-to-ldif/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Android FFMPEG converter</title>
		<link>http://sprackle.org/2009/09/android-ffmpeg-converter/</link>
		<comments>http://sprackle.org/2009/09/android-ffmpeg-converter/#comments</comments>
		<pubDate>Mon, 07 Sep 2009 20:57:46 +0000</pubDate>
		<dc:creator>M@</dc:creator>
				<category><![CDATA[Scripts]]></category>

		<guid isPermaLink="false">http://sprackle.org/?p=291</guid>
		<description><![CDATA[#!/bin/bash
# AUTHOR: M@sprackle.org
# PURPOSE: To convert one file or many files to Android format and size.
# LIMITATIONS: Get the Cancel button working in Zenity pop-up
# INSTALL: Place this script in "~/.gnome2/nautilus-scripts/Android"
# and set to execute `chmod +x ~/.gnome2/nautilus-scripts/Android`
# USE: Just right click on a file or folder that contains files you
# would like to convert [...]]]></description>
			<content:encoded><![CDATA[<pre class="brush:[bash]">#!/bin/bash
# AUTHOR: M@sprackle.org
# PURPOSE: To convert one file or many files to Android format and size.
# LIMITATIONS: Get the Cancel button working in Zenity pop-up
# INSTALL: Place this script in "~/.gnome2/nautilus-scripts/Android"
# and set to execute `chmod +x ~/.gnome2/nautilus-scripts/Android`
# USE: Just right click on a file or folder that contains files you
# would like to convert to an Android format.  This was converted from
# my already used iPhone script.
#
# Where do you want all of these files to be saved?
# You should NOT have to edit below this line
SAVESPOT="/home/mwells/AndroidMovies"
#
# Same as above I just wanted a single place to find my files
		if [ ! -d $SAVESPOT ]; then
			mkdir $SAVESPOT
		fi
# Lets see if this was a single file or a Directory
if [ -f "$1" ]; then
#
# Let's cut up the name so it's not example.avi.mp4
NEWNAME=`echo "$1" | awk -F. '{print $1}'`
#
# Run the command - I found all these flags on some website.
# So far they're good.
ffmpeg -i "$1" -s 480x256 -vcodec mpeg4 -acodec libfaac -ac 1 -ar 16000 -r 13 -ab 32000 -aspect 3:2 -padtop 32 -padbottom 32 $SAVESPOT/"$NEWNAME".mp4
fi
#Thanks JonTheNiceGuy - http://jon.sprig.gs for finding the missing 'fi'</pre>
]]></content:encoded>
			<wfw:commentRss>http://sprackle.org/2009/09/android-ffmpeg-converter/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Parental Tech Support</title>
		<link>http://sprackle.org/2009/06/parental-tech-support/</link>
		<comments>http://sprackle.org/2009/06/parental-tech-support/#comments</comments>
		<pubDate>Sat, 20 Jun 2009 22:32:27 +0000</pubDate>
		<dc:creator>M@</dc:creator>
				<category><![CDATA[Scripts]]></category>

		<guid isPermaLink="false">http://sprackle.org/?p=284</guid>
		<description><![CDATA[
#!/bin/bash
# AUTHOR -
# M@ - M@sprackle.org GPG Public Key ID:  0x4ADEA413
# NAME -
# HelpMe
# SYNOPSIS -
# Use as needed
# DESCRIPTION -
# This is just a script I wrote to help my mom and dad. Mom is on a
# MAC these days and Dad is on a Fedora Core 11 laptop.  So in order
# [...]]]></description>
			<content:encoded><![CDATA[<pre class="brush:[bash]">
#!/bin/bash
# AUTHOR -
# M@ - M@sprackle.org GPG Public Key ID:  0x4ADEA413
# NAME -
# HelpMe
# SYNOPSIS -
# Use as needed
# DESCRIPTION -
# This is just a script I wrote to help my mom and dad. Mom is on a
# MAC these days and Dad is on a Fedora Core 11 laptop.  So in order
# to help them as needed I wrote this.
# This uses port forwarding with SSH so that I can connect to port 8181 on my
# local system and it actually goes to their local port X over the SSH tunnel.
# This way they don't need to poke holes in the router/Firewall.
# The MAC can use VNC but can't X-Forward
# Fedora can do either but I prefer SSH
# REVISIONS -
# 1.0

# My Server/IP - I use my DDNS name to come home.
SERVER='ddnsdomainfor.home.com'

# SSH
function SSH {
ssh -L 8181:localhost:22 ${SERVER}
}

# VNC
function VNC {
ssh -L 8181:localhost:5900 ${SERVER}
}

# Ask what they would like
echo "
Would you like to enable SSH or VNC?
"
select APP in "VNC" "SSH";
do
	[ -z "${APP}" ] &#038;&#038; echo "Please enter a vaild number" || break;
	done
${APP}
</pre>
]]></content:encoded>
			<wfw:commentRss>http://sprackle.org/2009/06/parental-tech-support/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Fun/bored with Torrents</title>
		<link>http://sprackle.org/2009/06/funbored-with-torrents/</link>
		<comments>http://sprackle.org/2009/06/funbored-with-torrents/#comments</comments>
		<pubDate>Tue, 09 Jun 2009 06:41:14 +0000</pubDate>
		<dc:creator>M@</dc:creator>
				<category><![CDATA[Scripts]]></category>

		<guid isPermaLink="false">http://sprackle.org/?p=263</guid>
		<description><![CDATA[
#!/bin/bash
# AUTHOR -
# M@ - M@sprackle.org GPG Public Key ID:  0x4ADEA413
# NAME -
# fc11Downers
# SYNOPSIS -
# `*/20  * * * /PATH/TO/fc11Downers
# DESCRIPTION -
# Just a bittorrent downloader that would pull the Fedora Core 11 DVD when it dropped.
# I was kinda bored and a co-worker and I joked about this so I thought [...]]]></description>
			<content:encoded><![CDATA[<pre class="brush:[bash]">
#!/bin/bash
# AUTHOR -
# M@ - M@sprackle.org GPG Public Key ID:  0x4ADEA413
# NAME -
# fc11Downers
# SYNOPSIS -
# `*/20  * * * /PATH/TO/fc11Downers
# DESCRIPTION -
# Just a bittorrent downloader that would pull the Fedora Core 11 DVD when it dropped.
# I was kinda bored and a co-worker and I joked about this so I thought it would be fun.
# I think this would be interesting in a loop if you had a linux distro that updated weekly
# and you wanted to get all the new versions off bittorrent each week.
# I think version two will read in a file and loop it.  For weekly linux distros only though,
# those are legal on bittorrent.
# REVISIONS -
# 1.0

URLTOLOOK="http://torrent.fedoraproject.org"
WHATTOPULL="Fedora-11-x86_64-DVD.torrent"
# Check to see if the DVD has posted yet.
links -source ${URLTOLOOK} > /tmp/site
egrep ${WHATTOPULL} /tmp/site
	if [ $? == "0" ]; then
		if [ -f /tmp/${WHATTOPULL}.lock ];then
			exit
		fi
		egrep ${WHATTOPULL} /tmp/complete
		 if [ $? != "0" ]; then
		 exit
		 fi
	touch /tmp/${WHATTOPULL}.lock
bittorrent-console --save_in ~/Download --forwarded_port 7325 $(egrep ${WHATTOPULL} \
/tmp/site | awk -F"href=" '{print $2}' | awk -F\" '{print $2}')
	fi
rm /tmp/${WHATTOPULL}.lock
echo ${WHATTOPULL} > /tmp/complete
</pre>
]]></content:encoded>
			<wfw:commentRss>http://sprackle.org/2009/06/funbored-with-torrents/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>dumstr &#8211; Subversion/Satellite Server script</title>
		<link>http://sprackle.org/2009/05/dumstr-subversionsatellite-server-script/</link>
		<comments>http://sprackle.org/2009/05/dumstr-subversionsatellite-server-script/#comments</comments>
		<pubDate>Thu, 21 May 2009 22:10:39 +0000</pubDate>
		<dc:creator>M@</dc:creator>
				<category><![CDATA[Scripts]]></category>

		<guid isPermaLink="false">http://sprackle.org/?p=196</guid>
		<description><![CDATA[
#!/bin/bash
# AUTHOR -
# M@ - M@sprackle.org GPG Public Key ID:  0x4ADEA413
# NAME -
# dumstr = a Satellite used to map subterranean facilites and tectonic plates
# http://www.satnews.com/cgi-bin/display_story.cgi?number=796520090
# SYNOPSIS -
# ./dumstr
# DESCRIPTION -
# In order to check in and out files of Subversion and upload
# them to a Red Hat Satellite Server configuration channel and be [...]]]></description>
			<content:encoded><![CDATA[<pre class="brush:[bash]">
#!/bin/bash
# AUTHOR -
# M@ - M@sprackle.org GPG Public Key ID:  0x4ADEA413
# NAME -
# dumstr = a Satellite used to map subterranean facilites and tectonic plates
# http://www.satnews.com/cgi-bin/display_story.cgi?number=796520090
# SYNOPSIS -
# ./dumstr
# DESCRIPTION -
# In order to check in and out files of Subversion and upload
# them to a Red Hat Satellite Server configuration channel and be deployed
# REQUIRMENTS -
# This script assumes a certain setup of the subversion and
# Satellite server.  Example is below with a DNS server
# Subversion server repositories are inside a ConfigChannels repo.
# Within the ConfigChannel a repo for 'DNS'.
# Within the DNS there could be multiple folders but for this assume 'ZONES'
# The Satellite server would have a configuration channel called.
# DNS-ZONES and inside are the zone files to be deployed to systems.
# REVISIONS -
# 1.0

# Subversion Server
SUBVERSIONSERVER="https://svn.example.com/svn/repository/satelliteServer/ConfigChannels/"
# Satellite Server
SATELLITESERVER="satellite.example.com"
#
# Check to see that you have the rhncfg-manager RPM installed
if [ ! -f "/usr/bin/rhncfg-manager" ];
	then
	echo "
You must have the rhncfg-management RPM installed.
$ sudo up2date rhncfg-management"
	exit 1
	fi
#
# Check to see that you have the subversion RPM installed
if [ ! -f "/usr/bin/svn" ];
        then
        echo "
You must have the svn RPM installed.
$ sudo up2date subversion subversion-devel
"
        exit 1
        fi
#
clear
# Begin Function List

# Check in files modified to the Subversion Server
function CHECKITIN {
   echo "
What local working copies would you like to check back in?
(enter the number)
###
"
   select LOCALSVN in `ls ~/subversion`;
   do
   [ -z "${LOCALSVN}" ] &#038;&#038; echo "Please enter a vaild number" || break;
        done
echo "
Please select the subdirectory
"
        select LOCALSVNSUB in `ls ~/subversion/${LOCALSVN}`;
        do
        [ -z "${LOCALSVNSUB}" ] &#038;&#038; echo "Please enter a vaild number" || break;
        done
echo "
Please add a comment of why this file was changed.
Hitting 'Enter' will submit."
read COMMENTIN

   cd ~/subversion/${LOCALSVN}/${LOCALSVNSUB}/
   svn commit -m "${COMMENTIN}" | tee /tmp/checkin

export CHANNEL4ME=${LOCALSVNSUB}-${LOCALSVN}
}

# Check files out of Subversion
function CHECKITOUT {
   echo "
Getting Subversion channel lists, please wait.
"
        select SVNCHANNEL in `svn list ${SUBVERSIONSERVER}`;
        do
        [ -z "${SVNCHANNEL}" ] &#038;&#038; echo "Please enter a vaild number" || break;
        done
   clear
   echo "

Looking further into your Channels.
You may be prompted for a login and to accept the Subversion certificate.
Please wait. . . . . . . . .

Please select option Channel to download
(enter the number)
###
"
   select APIP in `svn list ${SUBVERSIONSERVER}/${SVNCHANNEL}/trunk`;
   do
        [ -z "${APIP}" ] &#038;&#038; echo "Please enter a vaild number" || break;
        done
   clear
   if [ ! -d ~/subversion/${SVNCHANNEL} ]; then
   mkdir -p ~/subversion/${SVNCHANNEL}
   fi
svn co ${SUBVERSIONSERVER}/${SVNCHANNEL}/trunk/${APIP} ~/subversion/${SVNCHANNEL}/${APIP}
      exit
}

# Satellite Server Uploads
function SATELLITECALL {

# Move to the directory we're working in.
# This helps with pathing during uploads to the Satellite Server
cd ~/subversion/${LOCALSVN}/${LOCALSVNSUB}/

for i in `egrep Sending /tmp/checkin | awk '{print $2}'`
do

#Push the files to the server
sudo rhncfg-manager --server-name=${SATELLITESERVER} update \
--channel=${LOCALSVNSUB}-${LOCALSVN} --dest-file=/${i} ${i}

if [ $? != "0" ]; then
        cd -
        echo "Commit failed Please try again"
                CHECKITIN
        fi
        echo "
 - - - RHN Push good - - -
 - There is a bug in the Satellite Server software -
 - Bug 467189
 - Please check the permissions within the channel
"

done
}

# End Fucntion List

# Ensure that a working folder exists for the user
if [ ! -d ~/subversion ];
	then
	mkdir -p ~/subversion
	echo "
A new folder has been created in your home directory called 'subversion'
All exports will be placed here"
	fi

# What do you want dumstr to do
echo "
What do you need to do in subversion?
(enter the number)
###
"
select CHECKION in "Check In" "Check Out";
        do
         [ -z "${CHECKION}" ] &#038;&#038; echo "Please enter a vaild number" || break;
        done
clear

# What do I do
if [ "${CHECKION}" == "Check Out" ]; then

# Call the Check out function
	CHECKITOUT

elif [ "${CHECKION}" == "Check In" ]; then

# Call the Check in function
		CHECKITIN
	if [ $? != "0" ]; then
	cd -
	echo "Commit failed Please try again"
		CHECKITIN
	fi

	cd -
	echo "
	 - - Checkin good - -
Would you like to update the files you've just checked in to the Satellite Server?
	"
select YNMORE in "Yes" "No";
	do
	 [ -z "${YNMORE}" ] &#038;&#038; echo "Please enter a vaild number" || break;
        done

	if [ "${YNMORE}" == "Yes" ]; then

# If files are ready to be updated call Satellite function
		SATELLITECALL
	fi
	exit 0
fi
rm /tmp/checkin
unset CHANNEL4ME
</pre>
]]></content:encoded>
			<wfw:commentRss>http://sprackle.org/2009/05/dumstr-subversionsatellite-server-script/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>replaceAfriend script to annoy</title>
		<link>http://sprackle.org/2009/05/replaceafriend-script-to-annoy/</link>
		<comments>http://sprackle.org/2009/05/replaceafriend-script-to-annoy/#comments</comments>
		<pubDate>Mon, 18 May 2009 07:19:09 +0000</pubDate>
		<dc:creator>M@</dc:creator>
				<category><![CDATA[Scripts]]></category>

		<guid isPermaLink="false">http://sprackle.org/?p=191</guid>
		<description><![CDATA[
#!/bin/bash
# AUTHOR -
# M@ - M@sprackle.org GPG Public Key ID:  0x4ADEA413
# NAME -
# replaceAfriend
# SYNOPSIS -
# ./replaceAfriend
# DESCRIPTION -
# I have a shirt from thinkgeek.com that says
# "Go away or I will replace you with a very small shell script"
# so I wanted to make that a true statement.  I opted to pick [...]]]></description>
			<content:encoded><![CDATA[<pre class="brush:[bash]">
#!/bin/bash
# AUTHOR -
# M@ - M@sprackle.org GPG Public Key ID:  0x4ADEA413
# NAME -
# replaceAfriend
# SYNOPSIS -
# ./replaceAfriend
# DESCRIPTION -
# I have a shirt from thinkgeek.com that says
# "Go away or I will replace you with a very small shell script"
# so I wanted to make that a true statement.  I opted to pick random
# lines in a few ways.
# http://www.thinkgeek.com/tshirts-apparel/unisex/frustrations/374d/
# REVISIONS -
# Only one published at this time.
# LIMITATIONS -
# You'll need to break this because it loops forever.

# Here is the location of your file that has your friends favorite quotes
FRIENDFILE='/home/username/.myfriends'

# What's the Max interval(in seconds) you want to go without interuption
INTERVAL='600'

function annoyingloop {
perl -le 'sleep rand ${INTERVAL}'
sed -n $((1+$RANDOM%`wc -l ${FRIENDFILE} | cut -f 1 -d ' '`))p ${FRIENDFILE} | festival --tts
annoyingloop
}

annoyingloop
</pre>
<p>Content of .myfriends file</p>
<pre lang="bash" line="1" file="download.txt" colla="+">
hello friend how are you doing today, what's for lunch
Hey can I ask you a quick question
what time do you wake up?
Hey I just thought I would come over.  Oh you look busy, what do you want to do for lunch?
Are you going to drink the rest of this coffee?
Quick question for you..
</pre>
]]></content:encoded>
			<wfw:commentRss>http://sprackle.org/2009/05/replaceafriend-script-to-annoy/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SSH Pub Key Scanner</title>
		<link>http://sprackle.org/2009/05/ssh-pub-key-scanner/</link>
		<comments>http://sprackle.org/2009/05/ssh-pub-key-scanner/#comments</comments>
		<pubDate>Thu, 14 May 2009 05:40:33 +0000</pubDate>
		<dc:creator>M@</dc:creator>
				<category><![CDATA[Scripts]]></category>

		<guid isPermaLink="false">http://sprackle.org/?p=141</guid>
		<description><![CDATA[
#!/bin/bash
# AUTHOR -
# M@ - M@sprackle.org GPG Public Key ID:  0x4ADEA413
# NAME -
# sshKeyORama
# SYNOPSIS -
# ./sshKeyORama
# DESCRIPTION -
# A script to harvest all ssh public keys from a network
# REVISIONS -
# Only one published at this time.
# LIMITATIONS -
# TBD

# IP class C to scan
IPADDR='192.168.0'

# Scan the entire class C for public keys
for [...]]]></description>
			<content:encoded><![CDATA[<pre class="brush:[bash]">
#!/bin/bash
# AUTHOR -
# M@ - M@sprackle.org GPG Public Key ID:  0x4ADEA413
# NAME -
# sshKeyORama
# SYNOPSIS -
# ./sshKeyORama
# DESCRIPTION -
# A script to harvest all ssh public keys from a network
# REVISIONS -
# Only one published at this time.
# LIMITATIONS -
# TBD

# IP class C to scan
IPADDR='192.168.0'

# Scan the entire class C for public keys
for i in $(seq 254)
do

# Ensure that the host is live by looking up the IP in DNS.
host ${IPADDR}.$i
	if [ $? == 0 ];
	then
	# If DNS returns that the IP is listed then grab the public keys
	# You could kill the if then and just have the line below if you didn't care about dns.
	# ssh-keyscan -t rsa ${IPADDR}.$i >> ~/ssh_known_hosts
	ssh-keyscan -t rsa $(host ${IPADDR}.$i | awk '{print $5}') >> ~/ssh_known_hosts
	# This ssh_known_hosts file can be placed in /etc/ssh/ssh_known_hosts
	# every users will then get these keys in their local .ssh/known_hosts file
	fi
done
</pre>
]]></content:encoded>
			<wfw:commentRss>http://sprackle.org/2009/05/ssh-pub-key-scanner/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Master IPTables</title>
		<link>http://sprackle.org/2009/05/master-iptables/</link>
		<comments>http://sprackle.org/2009/05/master-iptables/#comments</comments>
		<pubDate>Tue, 12 May 2009 02:53:30 +0000</pubDate>
		<dc:creator>M@</dc:creator>
				<category><![CDATA[How To]]></category>

		<guid isPermaLink="false">http://sprackle.org/?p=110</guid>
		<description><![CDATA[These are some awesome videos for iptables; I really enjoyed them and if you as well make sure you tell the guys over at Linux Journal.
I find embedded videos annoying so I&#8217;m just putting these links up.
Mastering IPTables by Linux Journal
http://www.linuxjournal.com/
IPTables Episode one 
IPTables Episode two 
IPTables Episode three 
]]></description>
			<content:encoded><![CDATA[<p>These are some awesome videos for iptables; I really enjoyed them and if you as well make sure you tell the guys over at Linux Journal.<br />
I find embedded videos annoying so I&#8217;m just putting these links up.</p>
<p>Mastering IPTables by Linux Journal</p>
<p>http://www.linuxjournal.com/</p>
<p><A HREF="http://blip.tv/file/get/Linuxjournal-MasteringIPTablesPartI992.mp4">IPTables Episode one</A> </p>
<p><A HREF="http://blip.tv/file/get/Linuxjournal-MasteringIPTablesPart2721.mp4">IPTables Episode two</A> </p>
<p><A HREF="http://blip.tv/file/get/Linuxjournal-MasteringIPTablesFinalInstallment434.mp4">IPTables Episode three</A> </p>
]]></content:encoded>
			<wfw:commentRss>http://sprackle.org/2009/05/master-iptables/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="http://blip.tv/file/get/Linuxjournal-MasteringIPTablesPartI992.mp4" length="31670391" type="video/mp4" />
<enclosure url="http://blip.tv/file/get/Linuxjournal-MasteringIPTablesPart2721.mp4" length="42270457" type="video/mp4" />
<enclosure url="http://blip.tv/file/get/Linuxjournal-MasteringIPTablesFinalInstallment434.mp4" length="49364700" type="video/mp4" />
		</item>
		<item>
		<title>IPA Link from Red Hat</title>
		<link>http://sprackle.org/2009/05/ipa-link-from-red-hat/</link>
		<comments>http://sprackle.org/2009/05/ipa-link-from-red-hat/#comments</comments>
		<pubDate>Tue, 12 May 2009 02:42:33 +0000</pubDate>
		<dc:creator>M@</dc:creator>
				<category><![CDATA[How To]]></category>

		<guid isPermaLink="false">http://sprackle.org/?p=113</guid>
		<description><![CDATA[This is just a great video and link to the Enterprise IPA Server.
Red Hat IPA Server 
]]></description>
			<content:encoded><![CDATA[<p>This is just a great video and link to the Enterprise IPA Server.<br />
<A HREF="http://www.redhat.com/enterprise_ipa/">Red Hat IPA Server</A> </p>
]]></content:encoded>
			<wfw:commentRss>http://sprackle.org/2009/05/ipa-link-from-red-hat/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="http://blip.tv/file/get/Linuxjournal-MasteringIPTablesPart2721.mp4" length="42270457" type="video/mp4" />
<enclosure url="http://blip.tv/file/get/Linuxjournal-MasteringIPTablesPartI992.mp4" length="31670391" type="video/mp4" />
<enclosure url="http://blip.tv/file/get/Linuxjournal-MasteringIPTablesFinalInstallment434.mp4" length="49364700" type="video/mp4" />
		</item>
	</channel>
</rss>
