Archive for October, 2009

Easily secure your iPhone’s connection

October 24th, 2009 No comments

When you’re out and about using your phone’s wifi connection to get net access, you should be concerned about your security. Just because the sites you visit are SSL doesn’t mean you’re safe. Just have a look at the tool SSLStrip. Even if you trust the hotspot, do you trust that no one is intercepting the traffic between you and the hot spot?

I discovered today it’s actually quite easy to setup a home VPN and have all your iPhone’s traffic run over it. All you need is a compatible router to run the dd-wrt firmware on.  dd-wrt actually does a lot of cool features.

  1. Install the dd-wrt vpn firmware to your router
  2. Get a dynamic hostname and setup software to update when your ip changes.  (If you don’t already have one)
  3. Configure dd-wrt to update your dynamic host name under Setup->DDNS
  4. Configure the PPTP server built into dd-wrt
    1. Services->VPN
    2. PPTP: Enable
    3. Broadcast Support: Enable
    4. Force MPPE Encryption: Enable
    5. Server IP:
    6. Client IP:
    7. CHAP-Secrets: YourMadeUpUserName * YourMadeUpPassword *
  5. Setup VPN in iPhone
    1. Under Settings->General->Network->VPN->Add VPN
    2. PPTP
    3. Description: Home
    4. Server:
    5. Account: YourMadeUpUserName
    6. Password: YourMadeUpPassword
    7. Encryption Level: Maximum
    8. Send All Traffic: ON
    9. Proxy: Off
    10. Save
    11. Slide VPN to ON
  6. You should see a little icon in the upper left that says VPN when you’re connected.  You can verify the vpn is working by going to which should display your IP from home

The above was done with dd-wrt v24-sp2.

New Super Quiet Supermicro X8SIL VMWare ESXi Server

October 22nd, 2009 7 comments

Update: VMWare ESXi 4.1 detects the SATA controller just find.  The separate SAS card is no longer necessary.

The novelty of having a 1U server in my small apartment has worn off. Even on the workstation setting, the tiny fans running at 10k RPM make my home office inhospitable for all but brief periods. I’ve contemplated getting another case or jury rigging up some large low rpm fans, but in the end I decided its best if I just build a new machine and sell the old server on craigslist.

Before I dive into detail here is my parts list. Just add a SATA drive or two and you’re good to go.

Part Price
Supermicro X8SIL-O Motherboard $149.99
4 – Kingston KVR1333D3E9S/2G 2GB 1333MHZ DDR3 ECC $199.96
Lian-Li PC-V351B Case $109.88
Intel Xeon X3440 Lynnfield 2.53ghz $239.99
Rosewill Green Series RG530-2 530W Continuous @40°C, 80 PLUS Certified,ATX12V v2.3 & EPS12V v2.91 $42.49
Used LSI SAS3442E-R PCIe from Ebay $135.99
Tax and shipping $82.55
Total $960.85

I decided the base of my new ESXi system would be the Supermicro X8SIL-O MicroATX motherboard.

Motherboard Negatives:

  • The onboard SATA controller is not detected by ESXi 4.0. Thankfully I have a supported LSI PCI-E SAS card.

Motherboard Positives:

  • MicroATX form factor means I can fit it in a smaller case.
  • 4 – DDR3 slots and can be populated with up to 32gb of RAM.
  • 2 Intel Gig-E NICs which support jumbo frames (Hello iSCSI!). (Most inexpensive boards use Realtek nics which can be flaky under load and are usually not supported by VMWare out of the box.)
  • USB connection on the motherboard that allows you to install your OS to a thumb drive and leave it inside the case.
  • Onboard video means one less thing to buy.

I mated it with the Intel Xeon X3440 CPU which is basically the server version of the i7. This is currently the least expensive quare core intel chip that supports hyperthreading, giving you 8 logical cores.

I opted for 4 sticks of Kingston 2GB DDR3 ECC RAM bringing the total ram to 8gb. It is a downgrade from the 16 I have in the 1U server, but I think it’s worth trading in for a little silence.

To hold this beast, I decided on a small form factor case by Lian-Li. The PC-V351B is a almost square. The fans and drives are mounted with rubber grommets which cut sound and vibration nicely. The quality is top notch, but it’s definitely not the case you want if you plan on swapping parts frequently. It has a motherboard tray which slides out when you need to install cards. If you want to pop the side panels off, get your screwdriver out. Each side is held in place by 6 tiny screws. Thanks to my cat knocking my loose parts tray over during assembly, I only need to worry about 4 per side now. In theory, the motherboard tray sliding out means you shouldn’t need to take the sides off. In practice, this is not always the case.

For the power supply, I selected a mid-range supply from Rosewill. It should be a nice stable supply with enough power.

I only had one minor hiccup assembling the pieces. The Lian-li lead for the Power LED has a 3 pin female connector (with the center pin being unused). The board uses 2 pins side by side for the Power LED. It was an easy fix to gently push out the wire from pin 3 and move it to the unused pin 2. Other than that I had plenty of reach with the cables and had sufficient places to tuck excess cables.

Installing ESXi to a thumb drive was super easy. I just followed these instructions. The thumb drive plugs into the connector inside the case and doesn’t get in the way of anything.

I’ve migrated all my VMs to it and so far so good. The best part is I can’t hear it! It’s so quiet I can hardly tell it’s on. Now, who wants to buy a 1U server?

Categories: Uncategorized Tags: ,

Visual Studio Deployment Projects do not like dashes in your path.

October 22nd, 2009 No comments

I was attempting to build one of our projects under a new path and was experiencing this incredibly frustrating problem of having my output msi files being significantly smaller than the official build. We build a number of solutions and some contain Visual Studio Deployment projects which create merge modules. If I built the solution under c:\projects\WidgetX it built fine. If I built it under c:\projects\WidgetX-mirror it was missing a number of third party dependencies. Even pulling dependencies from the wrong location. It turns out if I remove the dash and build in c:\projects-WidgetXmirror it correctly detects dependencies. Underscores also work. Very bizarre.

Categories: Uncategorized Tags: ,