I'm relatively new to Linux and I'm struggling with OpenSwan since early last month in Centos 5.3. I'll try to explain my experience because sadly there is very little info from Fortinet.
First I must say that the latest FortiClient 3.0 & 4.0 worked well but I also had frequent disconnections with earlier 3.0 versions, so I would recommend you to use the Windows client as a reference.
With Linux I have had tons of problems but at last I have a working config with version OpenSwan 2.6.16 which I had to compile in CentOS (in Ubuntu the 2.4.x version that comes doesn't work at all).
My configuration looks pretty much like yours, except that I was obliged to use the parameter leftsourceip=MyPublicIPAddress because otherwise I connected but could not access the right private network. This is a problem because, at home I have a Public Dynamic IP that my ISP changes frequently, I would like to solve this issue.
Other issue I had is that OpenSwan doesn't seem to accept the remote networks DNS's so I had to rely on an up/down script or use a local dnsmasq server.
Now I'm planning to make the connection on demand and try to run OpenSwan in OpenWRT on a Wifi router. Any advice?