<?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>khax.net</title>
	<atom:link href="http://blog.khax.net/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.khax.net</link>
	<description>Adventures in Ubuntu systems administration</description>
	<lastBuildDate>Mon, 25 Jan 2010 23:40:35 +0000</lastBuildDate>
	<generator>http://wordpress.com/</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<cloud domain='blog.khax.net' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://www.gravatar.com/blavatar/6ccca40b5ab19d33d91882e4d8f9a9c4?s=96&#038;d=http://s2.wp.com/i/buttonw-com.png</url>
		<title>khax.net</title>
		<link>http://blog.khax.net</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://blog.khax.net/osd.xml" title="khax.net" />
	<atom:link rel='hub' href='http://blog.khax.net/?pushpress=hub'/>
		<item>
		<title>Odd iproute2 gateway behavior with two gateways</title>
		<link>http://blog.khax.net/2010/01/26/odd-iproute2-gateway-behavior-with-two-gateways/</link>
		<comments>http://blog.khax.net/2010/01/26/odd-iproute2-gateway-behavior-with-two-gateways/#comments</comments>
		<pubDate>Mon, 25 Jan 2010 23:40:35 +0000</pubDate>
		<dc:creator>agentk</dc:creator>
				<category><![CDATA[Server]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[iptables]]></category>
		<category><![CDATA[iptroute2]]></category>
		<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://blog.khax.net/?p=169</guid>
		<description><![CDATA[After helping a frustrated yet patient Elvar I thought I better post about the situation we came across incase anybody else finds themselves in the same situation.
Elvar started with all the correct elements to setup a functioning multrouting gateway. Two connections from two different providers, eth1, eth2. Running on an Ubuntu box with eth0 as [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.khax.net&blog=6484387&post=169&subd=khax&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p>After helping a frustrated yet patient Elvar I thought I better post about the situation we came across incase anybody else finds themselves in the same situation.</p>
<p>Elvar started with all the correct elements to setup a functioning multrouting gateway. Two connections from two different providers, eth1, eth2. Running on an Ubuntu box with eth0 as internal. Both internet connections working on their own.</p>
<p>But alas. Whenever both eth1 and eth2 were active on the host, outgoing packets just would not go out. I don&#8217;t know if incoming packets were being replied to as we were unable to check that.</p>
<p>If just eth1 or eth2 was active than everything traversed ok. But we wanted it to work with both connections.</p>
<p>After a LONG time of diagnosing we noticed there were two default routes in iproute2 (ip&#8217;s fudged, but you get the idea):</p>
<pre>firewall# ip route show
...
default via 1.1.2.1 dev eth2  metric 100
default via 1.1.3.1 dev eth1  metric 100</pre>
<p>My firewall often has two default routes listed on the main table (ppp0, and ppp1) until the cleanup script fixes it. Without any negative side effect. I may just be lucky though.</p>
<p>Upon removing the eth2 line from table main, everything started working correctly. Incoming, outgoing, forwarding, balancing.</p>
<p>I also noticed the output of ifconfig eth2 looked a bit screwed too, but there was not much we could do about that as it was assigned by dhcp.</p>
<pre>eth2      Link encap:Ethernet  HWaddr 00:11:22:33:44:55
    inet addr:1.1.2.1  Bcast:255.255.255.255  Mask:255.255.255.0</pre>
<p>See it? No not the MAC address. The broadcast address. A quick ipcalc 1.1.2.1/24 gives me a broadcast of 1.1.2.255. But once we removed the eth2 default route line, it all started working again and didn&#8217;t get to dig into it to see if the broadcast actually affected it.</p>
<p>So that&#8217;s all. Just remember there are a lot more things to go wrong in a multigateway setup, including things outside of iptables.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/khax.wordpress.com/169/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/khax.wordpress.com/169/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/khax.wordpress.com/169/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/khax.wordpress.com/169/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/khax.wordpress.com/169/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/khax.wordpress.com/169/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/khax.wordpress.com/169/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/khax.wordpress.com/169/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/khax.wordpress.com/169/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/khax.wordpress.com/169/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.khax.net&blog=6484387&post=169&subd=khax&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://blog.khax.net/2010/01/26/odd-iproute2-gateway-behavior-with-two-gateways/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">agentk</media:title>
		</media:content>
	</item>
		<item>
		<title>Iptables packet flow diagram</title>
		<link>http://blog.khax.net/2009/12/07/iptables-packet-flow-diagram/</link>
		<comments>http://blog.khax.net/2009/12/07/iptables-packet-flow-diagram/#comments</comments>
		<pubDate>Sun, 06 Dec 2009 23:39:18 +0000</pubDate>
		<dc:creator>agentk</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[iproute2]]></category>
		<category><![CDATA[iptables]]></category>
		<category><![CDATA[Server]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://blog.khax.net/?p=167</guid>
		<description><![CDATA[Here is the diagram I keep stuck to my wall for reference when dealing with iptables.
I cannot remember what site I used as a reference when creating the diagram. The original was an ascii chart though. This is created in dia and exported to pdf too. Both attached for convenience. CC licensed as long as the original chart [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.khax.net&blog=6484387&post=167&subd=khax&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p>Here is the diagram I keep stuck to my wall for reference when dealing with iptables.</p>
<p>I cannot remember what site I used as a reference when creating the diagram. The original was an ascii chart though. This is created in dia and exported to pdf too. Both attached for convenience. CC licensed as long as the original chart I copied allows it.</p>
<h2>Packet flow examples:</h2>
<h3>All packets to or from localhost travel down the left side of the chart.</h3>
<p>From external destination localhost: PREROUTING -&gt; INPUT -&gt; [Local Process] -&gt; OUTPUT -&gt; POSTROUTING.</p>
<p>From localhost destination external: OUTPUT -&gt; POSTROUTING -&gt; [External Host] -&gt; PREROUTING -&gt; INPUT.</p>
<h3>All forwarded packets travel the right side of the chart and travel all three tables coming in and then again going out.</h3>
<p>From external dest internal: PREROUTING -&gt; FORWARD -&gt; POSTROUTING.</p>
<p>Internal response to external: PREROUTING -&gt; FORWARD -&gt; POSTROUTING.</p>
<p>and so forth.</p>
<p>This is what caught me for a while. Forwarded packet travel the right side route and get out of (or in to) the network. The response then gets generated and does not start from FORWARD or POSTROUTING, but from PREROUTING again. So all NEW forwarded packets need to be marked in PREROUTING and the mark saved. Not new packets need that mark restored in PREROUTING, and all packets need that mark restored in POSTROUTING. (As demonstrated by my previous post).</p>
<p>Locally generated traffic only sees OUTPUT and POSTROUTING before hitting the network and needs to be marked before hitting POSTROUTING, hence the OUTPUT chain rules in my previous post.</p>
<p>I will accept changes to the chart too if anybody wants modifications made.</p>
<p><a href="http://dl.dropbox.com/u/173699/iptables%20routing.dia">iptables routing.dia</a></p>
<p><a href="http://dl.dropbox.com/u/173699/iptables%20routing.pdf">iptables routing.pdf</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/khax.wordpress.com/167/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/khax.wordpress.com/167/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/khax.wordpress.com/167/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/khax.wordpress.com/167/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/khax.wordpress.com/167/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/khax.wordpress.com/167/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/khax.wordpress.com/167/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/khax.wordpress.com/167/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/khax.wordpress.com/167/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/khax.wordpress.com/167/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.khax.net&blog=6484387&post=167&subd=khax&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://blog.khax.net/2009/12/07/iptables-packet-flow-diagram/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">agentk</media:title>
		</media:content>
	</item>
		<item>
		<title>Multi gateway balancing with iptables</title>
		<link>http://blog.khax.net/2009/12/01/multi-gateway-balancing-with-iptables/</link>
		<comments>http://blog.khax.net/2009/12/01/multi-gateway-balancing-with-iptables/#comments</comments>
		<pubDate>Tue, 01 Dec 2009 02:14:06 +0000</pubDate>
		<dc:creator>agentk</dc:creator>
				<category><![CDATA[Server]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[gateway]]></category>
		<category><![CDATA[iptables]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[multi]]></category>

		<guid isPermaLink="false">http://blog.khax.net/?p=163</guid>
		<description><![CDATA[I have been testing load balancing via both iptables and ip route nexthop for a couple of days now.  They both work pretty well too.
This only balances outgoing traffic as incoming traffic balanced via DNS RR and the firewall just returns the traffic on the interface it arrived on as per the previous post.
On the [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.khax.net&blog=6484387&post=163&subd=khax&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p>I have been testing load balancing via both iptables and ip route nexthop for a couple of days now.  They both work pretty well too.</p>
<p>This only balances outgoing traffic as incoming traffic balanced via DNS RR and the firewall just returns the traffic on the interface it arrived on as per the previous post.</p>
<p>On the whole, I prefer the iptables solution. It seems to balance the traffic better. ip route balances outgoing connections based on nexthop of the route to that host is not already in it&#8217;s routing cache. While iptables balances traffic by alternate outgoing connections. The only downside I have seen is occasional connection drops to the BlackBerry servers.</p>
<p>After 24 hours of iptables balancing:</p>
<pre>ppp0      Link encap:Point-to-Point Protocol
          RX bytes:1186783900 (1.1 GB)  TX bytes:1290603327 (1.2 GB)
ppp1      Link encap:Point-to-Point Protocol
          RX bytes:1109227490 (1.1 GB)  TX bytes:1140565429 (1.1 GB)
</pre>
<p>&nbsp;</p>
<p>This is using inclusion rules for determining balanced traffic. These are the rules that ended up on the production server:</p>
<p>&nbsp;</p>
<pre># Load balancing rules (Split 50/50 between fwmark 1/2)
iptables -t mangle -A balance1 -d 192.168.0.0/16      -j RETURN
iptables -t mangle -A balance1 -d 10.0.0.0/8          -j RETURN
iptables -t mangle -A balance1 -m connmark ! --mark 0 -j RETURN
iptables -t mangle -A balance1 -m state --state ESTABLISHED,RELATED -j RETURN
iptables -t mangle -A balance1 -m statistic --mode nth --every 2 --packet 0 -j CONNMARK --set-mark 1
iptables -t mangle -A balance1 -m statistic --mode nth --every 2 --packet 1 -j CONNMARK --set-mark 2

# Check to see if we have already marked a packet
iptables -t mangle -A PREROUTING  -m state --state ESTABLISHED,RELATED -j CONNMARK --restore-mark
iptables -t mangle -A OUTPUT      -m state --state ESTABLISHED,RELATED -j CONNMARK --restore-mark

# Mark incoming connections to return on the interface they came in on
iptables -t mangle -A PREROUTING          -i ppp0                     -m state --state NEW  -j CONNMARK --set-mark 1
iptables -t mangle -A PREROUTING          -i ppp1                     -m state --state NEW  -j CONNMARK --set-mark 2

# New outgoing packets
iptables -t mangle -A PREROUTING  -i eth0          -p tcp --dport  22 -m state --state NEW  -j balance1
iptables -t mangle -A PREROUTING  -i eth0          -p tcp --dport  25 -m state --state NEW  -j balance1
iptables -t mangle -A PREROUTING  -i eth0          -p tcp --dport  80 -m state --state NEW  -j balance1
iptables -t mangle -A PREROUTING  -i eth0          -p tcp --dport 443 -m state --state NEW  -j balance1
iptables -t mangle -A OUTPUT                       -p tcp --dport  80 -m state --state NEW  -j balance1

# Choose our route and save the mark
iptables -t mangle -A PREROUTING  -m connmark --mark 1 -j MARK --set-mark 1
iptables -t mangle -A PREROUTING  -m connmark --mark 2 -j MARK --set-mark 2
iptables -t mangle -A PREROUTING  -m state --state NEW -m connmark ! --mark 0  -j CONNMARK --save-mark
</pre>
<p>&nbsp;</p>
<p>That&#8217;s all of the CONNMARK and MARK related rules I use.</p>
<p>The new outgoing packets section is where I choose what packets should be balanced and accounts for about 95% of our outgoing traffic.</p>
<p>The balance1 chain just has some checks at the beginning to catch further traffic that should not be balanced in case some rule gets messed up.</p>
<p>Of the new outgoing packets rules, the PREROUTE lines are for forwarded traffic and the OUTPUT rule is for traffic generated on that host by a transparent squid proxy.</p>
<p>Hope somebody finds that useful one day.</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/khax.wordpress.com/163/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/khax.wordpress.com/163/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/khax.wordpress.com/163/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/khax.wordpress.com/163/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/khax.wordpress.com/163/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/khax.wordpress.com/163/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/khax.wordpress.com/163/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/khax.wordpress.com/163/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/khax.wordpress.com/163/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/khax.wordpress.com/163/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.khax.net&blog=6484387&post=163&subd=khax&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://blog.khax.net/2009/12/01/multi-gateway-balancing-with-iptables/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">agentk</media:title>
		</media:content>
	</item>
		<item>
		<title>Multi gateway routing with iptables and iproute2</title>
		<link>http://blog.khax.net/2009/11/28/multi-gateway-routing-with-iptables-and-iproute2/</link>
		<comments>http://blog.khax.net/2009/11/28/multi-gateway-routing-with-iptables-and-iproute2/#comments</comments>
		<pubDate>Sat, 28 Nov 2009 07:39:08 +0000</pubDate>
		<dc:creator>agentk</dc:creator>
				<category><![CDATA[Server]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://blog.khax.net/?p=160</guid>
		<description><![CDATA[Notes on multi gateway routing with iptables and iproute2, suggestions and corrections gladly accepted. My notes may be incomplete or just plain wrong, I pieced them together after getting it working.
Running on Ubuntu-9.10 with two internet connections ppp0 and ppp1 both with static IP&#8217;s from two different internet providers in Australia (iiNet and Internode).
Preperation:
Extra ip [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.khax.net&blog=6484387&post=160&subd=khax&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p>Notes on multi gateway routing with iptables and iproute2, suggestions and corrections gladly accepted. My notes may be incomplete or just plain wrong, I pieced them together after getting it working.</p>
<p>Running on Ubuntu-9.10 with two internet connections ppp0 and ppp1 both with static IP&#8217;s from two different internet providers in Australia (iiNet and Internode).</p>
<h2>Preperation:</h2>
<p>Extra ip route tables per gateway.</p>
<p>Add tables to /etc/iproute2/rt_tables. Table names and numbers can be anything as long as they are consistent later on.</p>
<pre>echo -e "101 connection1\n102 connection2" | sudo tee -a /etc/iproute2/rt_tables
</pre>
<p>Add routes to the extra rule tables. Copy the local routes from the main table then add the default gateway specific to this connection. Replace the vars at the beginning with your relevant settings.</p>
<pre>#!/bin/sh
DEV1=ppp0
IP1=100.0.1.1
GW1=100.0.1.254
TABLE2=connection2
DEV2=ppp1
IP2=100.0.2.1
GW2=100.0.2.254
ip route flush table $TABLE1
ip route flush table $TABLE2
ip route show table main | grep -Ev '(^default|ppp)' | while read ROUTE ; do
    ip route add table $TABLE1 $ROUTE
    ip route add table $TABLE2 $ROUTE
done
ip route add table $TABLE1 $GW1 dev $DEV1 src $IP1
ip route add table $TABLE2 $GW2 dev $DEV2 src $IP2
ip route add table $TABLE1 default via $GW1
ip route add table $TABLE2 default via $GW2
</pre>
<p>ip route output:</p>
<pre>~# ip route show
100.0.1.254 dev ppp0  proto kernel  scope link  src 100.0.1.1
100.0.2.254 dev ppp1  proto kernel  scope link  src 100.0.2.1
192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.1
default via 100.0.1.254 dev ppp0
</pre>
<pre>~# ip route show table connection1
100.0.1.254 dev ppp0  proto kernel  scope link  src 100.0.1.1
192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.1
default via 100.0.1.254 dev ppp0

~# ip route show table connection2
100.0.2.254 dev ppp1  proto kernel  scope link  src 100.0.2.1
192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.1
default via 100.0.2.254 dev ppp1
</pre>
<p>Add the ip rules:</p>
<pre>ip rule add from 100.0.1.1 lookup connection1
ip rule add from 100.0.2.1 lookup connection2
ip rule add fwmark 1 lookup connection1
ip rule add fwmark 2 lookup connection2
</pre>
<p>Add the iptables rules for SNAT:</p>
<pre>iptables -A POSTROUTING -o ppp0 -j SNAT --to-source 100.0.1.1
iptables -A POSTROUTING -o ppp1 -j SNAT --to-source 100.0.2.1
</pre>
<p>And finally add the rules for marking the connection they should be going out on. The first PREROUTING rule is for packets we forward to be returned via the interface they were received on. The OUTPUT rule is for packets handled on this PC to be returned on the correct interface too. We only want to mark new packets and restore marks on established connections else the packets</p>
<pre>-A PREROUTING          -m state --state ESTABLISHED,RELATED -j CONNMARK --restore-mark
-A OUTPUT              -m state --state ESTABLISHED,RELATED -j CONNMARK --restore-mark
-A PREROUTING -i ppp0  -m state --state NEW                 -j CONNMARK --set-mark 1
-A PREROUTING -i ppp1  -m state --state NEW                 -j CONNMARK --set-mark 2
-A PREROUTING -m connmark --mark 1                          -j MARK --set-mark 1
-A PREROUTING -m connmark --mark 2                          -j MARK --set-mark 2
-A PREROUTING -m state --state NEW -m connmark ! --mark 0   -j CONNMARK --save-mark
</pre>
<h2>Selective routing:</h2>
<p>To send all outgoing traffic on a specific table:</p>
<pre>-A PREROUTING -i eth0 -m state --state NEW -p tcp --dport  80 -j CONNMARK --set-mark 2
-A PREROUTING -i eth0 -m state --state NEW -p tcp --dport 443 -j CONNMARK --set-mark 2
</pre>
<p>&nbsp;</p>
<h2>References:</h2>
<p><a href="http://www.clintoneast.com/articles/multihomed.php">http://www.clintoneast.com/articles/multihomed.php</a></p>
<p><a href="http://linux-ip.net/html/adv-multi-internet.html">http://linux-ip.net/html/adv-multi-internet.html</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/khax.wordpress.com/160/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/khax.wordpress.com/160/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/khax.wordpress.com/160/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/khax.wordpress.com/160/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/khax.wordpress.com/160/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/khax.wordpress.com/160/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/khax.wordpress.com/160/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/khax.wordpress.com/160/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/khax.wordpress.com/160/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/khax.wordpress.com/160/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.khax.net&blog=6484387&post=160&subd=khax&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://blog.khax.net/2009/11/28/multi-gateway-routing-with-iptables-and-iproute2/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">agentk</media:title>
		</media:content>
	</item>
		<item>
		<title>Ubuntu 9.10 impressions, extra packages.</title>
		<link>http://blog.khax.net/2009/11/05/ubuntu-9-10-impressions-extra-packages/</link>
		<comments>http://blog.khax.net/2009/11/05/ubuntu-9-10-impressions-extra-packages/#comments</comments>
		<pubDate>Thu, 05 Nov 2009 00:00:45 +0000</pubDate>
		<dc:creator>agentk</dc:creator>
				<category><![CDATA[Desktop]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[9.10]]></category>
		<category><![CDATA[ubuntu-9.10]]></category>

		<guid isPermaLink="false">http://blog.khax.net/?p=158</guid>
		<description><![CDATA[I updated my main laptop to Ubuntu 9.10 on it&#8217;s release. It called for a fresh install as this laptop get&#8217;s a lot of crap installed left right and centre and an upgrade was not going to clean it up. (Apache, Nginx and Lighttpd, tomcat, netbeans all installed and starting on bootup, argh, plus many [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.khax.net&blog=6484387&post=158&subd=khax&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p>I updated my main laptop to Ubuntu 9.10 on it&#8217;s release. It called for a fresh install as this laptop get&#8217;s a lot of crap installed left right and centre and an upgrade was not going to clean it up. (Apache, Nginx and Lighttpd, tomcat, netbeans all installed and starting on bootup, argh, plus many self compiled packages I installed without keeping track of.)</p>
<p>The only bugs I have been hit by was <a href="https://bugs.launchpad.net/ubuntu/+source/linux/+bug/446146">#446146</a>. A Huawei E169 USB here modem only shows up as a memory card reader. Quick install of one of the kernel packages listed fixed this for me though.</p>
<p>A PC that after upgrade was trying to detect the harddrives as part of fakeraid setup and would fail to boot. Booted with the previous kernel, removed dmraid, and rebooted and she&#8217;s all good.</p>
<p>And gscan2pdf needed three packages from Jaunty to save as PDF again:</p>
<ul>
<li>libmagickcore1_6.4.5.4.dfsg1-1ubuntu3.1_amd64.deb</li>
<li>libmagickwand1_6.4.5.4.dfsg1-1ubuntu3.1_amd64.deb</li>
<li>perlmagick_6.4.5.4.dfsg1-1ubuntu3.1_amd64.deb</li>
</ul>
<p>I am really impressed with the direction that to boot theming is taking, well done <a href="http://www.netsplit.com/2009/09/02/making-a-splash/">Scott</a> and team. Nvidia black redraw issues have gone away too. Sound is working better for me. Easier to select the speakers I want to output to. Havn&#8217;t tried Ubuntu One yet as most of my family is already using dropbox. Will probably try it for backing up some app data though.</p>
<p>The nvidia-settings tool would not save my settings for two monitor to xorg.conf as it could not parse it. So I instead just replaced the <strong>Screen Section</strong> in xorg.conf with the following and the extra monitor is auto detected and expanded to now:</p>
<pre>Section "Screen"
    Identifier    "Default Screen"
    DefaultDepth    24
    Option         "TwinView" "1"
    Option         "TwinViewXineramaInfoOrder" "DFP, CRT"
    Option         "metamodes" "DFP: nvidia-auto-select +0+0, CRT: nvidia-auto-select +1280+0"
     SubSection     "Display"
        Depth       24
    EndSubSection
EndSection</pre>
<p>I still have to work out how to slow down my mouse further with X as the slowest I can set it to in Gnome is still to fast at times.</p>
<p>And incase anybody like to compare notes, these are the packages I have installed/removed in the first couple of days (some from PPA&#8217;s, etc).</p>
<p><strong>Installed:</strong></p>
<p>cowbell<br />
bash-completion<br />
vim<br />
vim-gnome<br />
screen<br />
mc<br />
gwibber<br />
inkscape<br />
chromium<br />
virtualbox-3.0<br />
gvim<br />
fontypython<br />
nautilus-dropbox<br />
conky<br />
wine1.2<br />
cups-pdf<br />
gnome-do<br />
shutter<br />
libnss3-tools<br />
gstm<br />
gscan2pdf<br />
nmap<br />
thewidgetfactory<br />
agave</p>
<p><strong>Removed:</strong></p>
<p>latex-xft-fonts<br />
ttf-thai-tlwg<br />
ttf-kacst<br />
ttf-indic-fonts-core<br />
ttf-lao<br />
ttf-wqy-zenhei<br />
ttf-vlgothic<br />
ttf-unfonts-core<br />
f-spot</p>
<p>I removed the list of fonts to see 1) what would happen, 2) my default font list was cluttered &amp; 3) I can&#8217;t understand any of those languages anyway.</p>
<p>&nbsp;</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/khax.wordpress.com/158/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/khax.wordpress.com/158/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/khax.wordpress.com/158/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/khax.wordpress.com/158/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/khax.wordpress.com/158/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/khax.wordpress.com/158/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/khax.wordpress.com/158/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/khax.wordpress.com/158/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/khax.wordpress.com/158/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/khax.wordpress.com/158/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.khax.net&blog=6484387&post=158&subd=khax&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://blog.khax.net/2009/11/05/ubuntu-9-10-impressions-extra-packages/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">agentk</media:title>
		</media:content>
	</item>
		<item>
		<title>Liferay wintersky theme updated, now with IE support</title>
		<link>http://blog.khax.net/2009/10/07/liferay-wintersky-theme-updated-now-with-ie-support/</link>
		<comments>http://blog.khax.net/2009/10/07/liferay-wintersky-theme-updated-now-with-ie-support/#comments</comments>
		<pubDate>Tue, 06 Oct 2009 14:24:19 +0000</pubDate>
		<dc:creator>agentk</dc:creator>
				<category><![CDATA[Server]]></category>
		<category><![CDATA[liferay]]></category>
		<category><![CDATA[theme]]></category>
		<category><![CDATA[themes]]></category>
		<category><![CDATA[wintersky]]></category>

		<guid isPermaLink="false">http://blog.khax.net/?p=155</guid>
		<description><![CDATA[For anybody following updates the the Liferay theme I released:
WinterSky ver-11
Theme now looks correct in IE7 and IE8.
IE6 is functional, only sub color schemes (to do with selectors in the color scheme css), and png images need work.
Added extra option in templates/init_custom.vm:
$custom_places = true ## will replace the communities/my places menu with a simplified view [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.khax.net&blog=6484387&post=155&subd=khax&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p>For anybody following updates the the Liferay theme I released:</p>
<p><a href="http://www.liferay.com/web/guest/downloads/community_plugins/-/software_catalog/products/3173089">WinterSky</a> ver-11</p>
<p>Theme now looks correct in IE7 and IE8.<br />
IE6 is functional, only sub color schemes (to do with selectors in the color scheme css), and png images need work.</p>
<p>Added extra option in templates/init_custom.vm:<br />
$custom_places = true ## will replace the communities/my places menu with a simplified view hiding any public community view from non community owners. (Beta feature added to simplify the my places menu for sites that only use private pages)</p>
<p>Head tag also employs google chrome frame if enabled for better rendering in IE6.</p>
<p>Update can be installed now via the software catalog directly in Liferay.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/khax.wordpress.com/155/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/khax.wordpress.com/155/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/khax.wordpress.com/155/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/khax.wordpress.com/155/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/khax.wordpress.com/155/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/khax.wordpress.com/155/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/khax.wordpress.com/155/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/khax.wordpress.com/155/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/khax.wordpress.com/155/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/khax.wordpress.com/155/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.khax.net&blog=6484387&post=155&subd=khax&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://blog.khax.net/2009/10/07/liferay-wintersky-theme-updated-now-with-ie-support/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">agentk</media:title>
		</media:content>
	</item>
		<item>
		<title>Installing Debian Lenny on my DNS-323</title>
		<link>http://blog.khax.net/2009/09/02/installing-debian-lenny-on-my-dns-323/</link>
		<comments>http://blog.khax.net/2009/09/02/installing-debian-lenny-on-my-dns-323/#comments</comments>
		<pubDate>Wed, 02 Sep 2009 04:23:37 +0000</pubDate>
		<dc:creator>agentk</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[dlink]]></category>
		<category><![CDATA[dns-323]]></category>
		<category><![CDATA[install]]></category>
		<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://blog.khax.net/?p=153</guid>
		<description><![CDATA[I finished upgrading my Dlink DNS-323 to Debian Lenny today. I followed the instruction at:
http://www.cyrius.com/debian/orion/d-link/dns-323/install.html
The install took quite a while, I selected the standard package list. Then because it gets quit hot here in Griffith I really wanted to have fan control back, so instruction here were also followed.
As I wanted to install to an [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.khax.net&blog=6484387&post=153&subd=khax&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p>I finished upgrading my Dlink DNS-323 to Debian Lenny today. I followed the instruction at:</p>
<p><a href="http://www.cyrius.com/debian/orion/d-link/dns-323/install.html">http://www.cyrius.com/debian/orion/d-link/dns-323/install.html</a></p>
<p>The install took quite a while, I selected the standard package list. Then because it gets quit hot here in Griffith I really wanted to have fan control back, so instruction <a href="http://www.cyrius.com/journal/debian/orion/d-link/dns-323/dns-323-fan-control">here</a> were also followed.</p>
<p>As I wanted to install to an 8GB Flash drive I had handy I first uploaded the netboot.img firmware, turned off the DNS-323, removed the hard drives and left only the flash drive inserted, then powered up and followed the installation instructions.</p>
<p>I like keeping root on the flash drive as the hard drives can be stopped all day when not in use to save temp and power.</p>
<p>Fans are also controlled by lm-sensors and the unit seems to run about 47degC most of the day.</p>
<p>I use the unit mostly for irc (screen/weechat), rsync backup target and samba media server. It handles all that pretty well but I do notice it bog a fair bit with only 64mb ram and hard drive transfer rates are not as good as I am used to, but on the whole a great little unit (now that it runs debian).</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/khax.wordpress.com/153/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/khax.wordpress.com/153/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/khax.wordpress.com/153/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/khax.wordpress.com/153/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/khax.wordpress.com/153/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/khax.wordpress.com/153/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/khax.wordpress.com/153/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/khax.wordpress.com/153/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/khax.wordpress.com/153/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/khax.wordpress.com/153/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.khax.net&blog=6484387&post=153&subd=khax&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://blog.khax.net/2009/09/02/installing-debian-lenny-on-my-dns-323/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">agentk</media:title>
		</media:content>
	</item>
		<item>
		<title>Review: Liferay Portal 5.2 Systems Development</title>
		<link>http://blog.khax.net/2009/06/17/review-liferay-portal-5-2-systems-development/</link>
		<comments>http://blog.khax.net/2009/06/17/review-liferay-portal-5-2-systems-development/#comments</comments>
		<pubDate>Wed, 17 Jun 2009 13:48:16 +0000</pubDate>
		<dc:creator>agentk</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.khax.net/?p=146</guid>
		<description><![CDATA[
Life Portal 5.2 Systems Development

Author: Jonas X. Yuan 
Pages: 552
Publisher: Packt Publishing
Rating: 9/10
ISBN: 1847194702
Summary: A Java developer&#8217;s guide to developing custom intranet systems, based on Liferay&#8217;s platform

As one of only a few books on advanced Liferay Portal development Jonas had a LOT of material to cover. My two weeks of experience with Liferay up to [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.khax.net&blog=6484387&post=146&subd=khax&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.packtpub.com/liferay-portal-5-2-systems-development/book/mid/100609gh3aoe"><img class="size-full wp-image-147 alignright" title="Liferay Portal 5.2 Systems Development" src="http://khax.files.wordpress.com/2009/06/1847194702.png?w=100&#038;h=123" alt="Liferay Portal 5.2 Systems Development" width="100" height="123" /></a></p>
<p><a href="http://www.packtpub.com/liferay-portal-5-2-systems-development/book/mid/100609gh3aoe" target="_blank">Life Portal 5.2 Systems Development</a></p>
<ul>
<li>Author: <a href="http://www.packtpub.com/author_view_profile/id/198">Jonas X. Yuan </a></li>
<li>Pages: 552</li>
<li>Publisher: Packt Publishing</li>
<li>Rating: 9/10</li>
<li>ISBN: 1847194702</li>
<li>Summary: A Java developer&#8217;s guide to developing custom intranet systems, based on Liferay&#8217;s platform</li>
</ul>
<p>As one of only a few books on advanced Liferay Portal development Jonas had a LOT of material to cover. My two weeks of experience with Liferay up to this point had only involved deployment, configuration and theme development. After been impressed with the results so far my next three aims were customising the WYSIWYG editor with styles more specific to the site, adding layout templates to support quick deployment of content and some custom portals for integrating our other information management systems. A week later with the book and I have the first two knocked over and am on my way with the portals.<span id="more-146"></span></p>
<p>I have no experience with Java programming, but luckily there was enough detail to get me started. Because of the lack of knowledge I started right from the beginning and read thoroughly all of the background information on Liferay Portal and the JSR-286 specs. This was quite a laborious experience. Not a lot of the JSR-286 specs made any sense until further on in portal development, but helped as a good reference on the portal boundaries later on.</p>
<p>A very progressive structure is taken in this guide. So much that I found it hard to dive into later chapters out of order. Even just the theme development chapter made more sense once I read the previous chapters. Once I had completed a few chapters I found myself using it a lot as a reference. Especially when developing Struts Portlets.</p>
<p>With the latter chapters on workflow, CMS, WYSIWYG editors, communities and templates and themes I was using code from the book directly in my deployment. The examples applied well to customising Liferay for an intranet CMS environment (luckly for me).</p>
<p>There are little quirks in the code examples where more proof reading would have helped, but these were easily ignored by downloading the example code archive.</p>
<p>This book is not for you if you only want to change the database backend or create a basic theme. Nor if you dislike getting your hands dirty in XML. If on the other hand though you are deploying a Liferay based intranet and want to tie in existing content services or want a unique and flexible public site, then the book is right up your alley.</p>
<p>Overall I am impressed with the depth of the book and will probably be spending a few more weeks working through it as I get time. And I will be sure to post updates about the portals if I start developing any applicable to use outside the company.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/khax.wordpress.com/146/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/khax.wordpress.com/146/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/khax.wordpress.com/146/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/khax.wordpress.com/146/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/khax.wordpress.com/146/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/khax.wordpress.com/146/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/khax.wordpress.com/146/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/khax.wordpress.com/146/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/khax.wordpress.com/146/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/khax.wordpress.com/146/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.khax.net&blog=6484387&post=146&subd=khax&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://blog.khax.net/2009/06/17/review-liferay-portal-5-2-systems-development/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">agentk</media:title>
		</media:content>

		<media:content url="http://khax.files.wordpress.com/2009/06/1847194702.png" medium="image">
			<media:title type="html">Liferay Portal 5.2 Systems Development</media:title>
		</media:content>
	</item>
		<item>
		<title>Liferay theme release &#8211; WinterSky</title>
		<link>http://blog.khax.net/2009/06/09/liferay-theme-release-wintersky/</link>
		<comments>http://blog.khax.net/2009/06/09/liferay-theme-release-wintersky/#comments</comments>
		<pubDate>Tue, 09 Jun 2009 11:14:12 +0000</pubDate>
		<dc:creator>agentk</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[liferay]]></category>
		<category><![CDATA[theme]]></category>
		<category><![CDATA[themes]]></category>

		<guid isPermaLink="false">http://blog.khax.net/?p=142</guid>
		<description><![CDATA[And now announcing the release of my first Liferay theme. Details about the wordpress theme it is based on is available in my previous post (Liferay Inroads).
It has made a perfect intranet theme for our uses. Most appreciated is the simplified interface look.
I have finished most visual touchups. Things left on my to do list [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.khax.net&blog=6484387&post=142&subd=khax&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p>And now announcing the release of my first Liferay theme. Details about the wordpress theme it is based on is available in my <a title="Liferay Inroads" href="http://blog.khax.net/2009/05/25/liferay-inroads/">previous post (Liferay Inroads)</a>.</p>
<div id="attachment_143" class="wp-caption aligncenter" style="width: 310px"><a href="http://khax.files.wordpress.com/2009/06/screenshot_005.png"><img class="size-medium wp-image-143" title="screenshot_005" src="http://khax.files.wordpress.com/2009/06/screenshot_005.png?w=300&#038;h=130" alt="Requisite Screenshot" width="300" height="130" /></a><p class="wp-caption-text">Requisite Screenshot</p></div>
<p>It has made a perfect intranet theme for our uses. Most appreciated is the simplified interface look.</p>
<p>I have finished most visual touchups. Things left on my to do list are submenu indicators, tools menu rearrangement and rethemeing the chat portal.</p>
<p>If anybody has ideas on integrating the chat portal visuals closer I&#8217;d be happy to listen.</p>
<p>DOWNLOAD and INSTALL: The theme should now be available from the theme installer in liferay-5.2.2 installs and the WinterSky theme page on Liferay is <a href="http://www.liferay.com/web/guest/downloads/community_plugins/-/software_catalog/products/3173089">here</a>.</p>
<p>Now to work on some new portals. Till next time.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/khax.wordpress.com/142/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/khax.wordpress.com/142/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/khax.wordpress.com/142/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/khax.wordpress.com/142/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/khax.wordpress.com/142/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/khax.wordpress.com/142/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/khax.wordpress.com/142/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/khax.wordpress.com/142/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/khax.wordpress.com/142/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/khax.wordpress.com/142/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.khax.net&blog=6484387&post=142&subd=khax&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://blog.khax.net/2009/06/09/liferay-theme-release-wintersky/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">agentk</media:title>
		</media:content>

		<media:content url="http://khax.files.wordpress.com/2009/06/screenshot_005.png?w=300" medium="image">
			<media:title type="html">screenshot_005</media:title>
		</media:content>
	</item>
		<item>
		<title>Liferay inroads</title>
		<link>http://blog.khax.net/2009/05/25/liferay-inroads/</link>
		<comments>http://blog.khax.net/2009/05/25/liferay-inroads/#comments</comments>
		<pubDate>Mon, 25 May 2009 13:29:12 +0000</pubDate>
		<dc:creator>agentk</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Alfresco]]></category>
		<category><![CDATA[liferay]]></category>
		<category><![CDATA[mmozine]]></category>
		<category><![CDATA[plone]]></category>
		<category><![CDATA[theme]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[wintersky]]></category>

		<guid isPermaLink="false">http://blog.khax.net/?p=139</guid>
		<description><![CDATA[After installing Alfresco and admittedly suffering a few hiccups with it I seem to be making enough progress that I also decided to investigate Liferay as an alternative to Plone as our intranet portal and internal information site.
There are some areas that Plone really does well such as the content type handling and content workflow. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.khax.net&blog=6484387&post=139&subd=khax&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p>After installing Alfresco and admittedly suffering a few hiccups with it I seem to be making enough progress that I also decided to investigate Liferay as an alternative to Plone as our intranet portal and internal information site.</p>
<p>There are some areas that Plone really does well such as the content type handling and content workflow. But lack of documentation in other areas has left me pulling my hair out at times, such as ldap user and group integration with openldap and active directory, debugging modules and some new gotcha each time something is updated in a buildout.</p>
<p>Liferay has also had a steep learning curve, but I found it no where as bad as Plone. No messing in the ZMI for setting up ldap auth, changing database backends or setting portal defaults. Just one config file. I have found the speed surprising compared to Plone on the same hardware too. With java webapps I have tried in the past I have been left with the impression of them being bloated, memory hungry and slow. But I am slowly coming around thanks to Alfresco and Liferay.<span id="more-139"></span></p>
<p>It took a long time to get the liferay-portal-5.2.2.war running in the ubuntu jaunty tomcat6 environment and it still had a couple of issues so I just went back to running the liferay-timcat6 bundle which does run well without issue. I guess that is the price I pay for avoiding java for so long.</p>
<p>To make it suitable for my needs the interface needed to be cleaned up and I decided to just create a fresh theme which can be seen in the screenshot below. The theme is called Winter Sky and is adapted from <a href="http://www.wpthemedesigner.com/2009/02/09/the-mmozine-theme/" target="_blank">MMOZINE</a>, and is available from the Liferay community plugin section.</p>
<p><a href="http://khax.files.wordpress.com/2009/05/screenshot.png"><img class="aligncenter size-medium wp-image-140" title="screenshot" src="http://khax.files.wordpress.com/2009/05/screenshot.png?w=300&#038;h=223" alt="screenshot" width="300" height="223" /></a></p>
<p>Other additions over the classic liferay theme are multiple level navigation menus and print styling css targets. Which were just a couple of extras that made things much more usable for my victims&#8230;. oh.. target users.</p>
<p>There are still a few visual glitches to fix, but everything seems usable and I will post the link to the Liferay project page once it is approved.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/khax.wordpress.com/139/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/khax.wordpress.com/139/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/khax.wordpress.com/139/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/khax.wordpress.com/139/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/khax.wordpress.com/139/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/khax.wordpress.com/139/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/khax.wordpress.com/139/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/khax.wordpress.com/139/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/khax.wordpress.com/139/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/khax.wordpress.com/139/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.khax.net&blog=6484387&post=139&subd=khax&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://blog.khax.net/2009/05/25/liferay-inroads/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">agentk</media:title>
		</media:content>

		<media:content url="http://khax.files.wordpress.com/2009/05/screenshot.png?w=300" medium="image">
			<media:title type="html">screenshot</media:title>
		</media:content>
	</item>
	</channel>
</rss>