For those you who are still in the stone age and haven’t discovered either GMail, Google Apps Mail or your own mail server, here’s how you access Yahoo Mail via IMAP:

Port: 993
Connection Security: SSL/TLS

Port: 465
Connection Security: SSL/TLS


This is mostly a note for me. Someone out there may find it useful somewhere, so it’s going up.

echo password | gpg –batch -q –passphrase-fd 0 –cipher-algo AES256 -c /path/to/file/to/encrypt

echo password | gpg –batch -q -o /path/to/restore/to –passphrase-fd 0 –decrypt /path/to/file/thats/encrypted.gpg


In Part 1, you should have learned how to set up a TFTP server and configure your router for network booting.

So let’s add some useful stuff to boot from network.

Here’s the list so far. This list will grow with time, so it’s probably easier just to search for when it does get huge. If anyone has any requests, please post in the comments. If anyone has their own instructions, I’ll amend my list (with credit)

-Generic ISO
-Debian Squeeze amd64
-Parted Magic

-Generic ISO
A few notes of caution here, whatever ISO you load needs to be smaller in size than the amount of RAM you have in the system since it loads the entire ISO into memory. This means that it’s probably a BAD idea to load a DVD sized ISO. This is more suited to tools like Memtest (which is listed below). You can load things like UBCD and Hiren’s, but it takes a significantly long time to boot. It’s better to extract the particular tool you need and load that instead of trying to load an entire ISO.

Despite the warnings above, someone out there I know is gonna try loading a Windows ISO. Let me just tell you now that it won’t work. It’s a long story as to why. I’ll cover loading Windows OSes in Part 3.

Here’s a generic template to stick in /srv/tftp/pxelinux.cfg/default:

        MENU LABEL [Name of ISO]
        LINUX memdisk
        append iso initrd=dir/to/iso.iso

Just make the necessary changes to reflect your particular ISO.

If you have a file server to have a central place to store all your ISOs, you may want to use that directory to serve up said ISOs. It would easily beat out copying ISOs to and from your TFTP directory. You may try to symlink your way in, but you’ll quickly find out that you’re chrooted. There is a way to do it: unionfs-fuse.

Before doing anything, you’ll have to mount your file server, which is outside the scope of this post.
Consult the manufacturer of your file server to see what it serves up in terms of protocol and then consult Google.
You’ll need at least read permissions.

First, you’ll have to amend your sources list at /etc/apt/sources.list to include this line:

deb squeeze-backports main

Now let’s do some installing

apt-get update
apt-get -t squeeze-backports install unionfs-fuse

Now set up your directory and overlay your file server’s directory to the iso directory:

mkdir /srv/tftp/iso
unionfs-fuse -o allow_other /directory/to/your/ISOs/on/your/fileserver=RO /srv/tftp/iso

This won’t survive a reboot. If you want it to, you’ll have to amend your /etc/fstab and add this line:

unionfs-fuse#/directory/to/your/ISOs/on/your/fileserver=ro /srv/tftp/iso fuse default_permissions,allow_other 0 0

-Debian Squeeze amd64-
First off, let’s make some directories to make organization easier:

mkdir -p /srv/tftp/debian/squeeze/amd64
cd /srv/tftp/debian/squeeze/amd64

And let’s download the necessary files:


Now let’s populate the default file. Add this to /srv/tftp/pxelinux.cfg/default

LABEL DebianSqueezeamd64
        MENU LABEL Debian Squeeze amd64
        kernel debian/squeeze/amd64/linux
        append initrd=debian/squeeze/amd64/initrd.gz

NOTE: Unless you have a local repo, each time you install you’re gonna be downloading the entire OS from the internet.
I’ll cover how to setup a local repo one of these days. Keeping 100GB on a file server somewhere (to me at least) is worth it if you deploy any sort of VMs at all.

Let’s do the setup:

mkdir /srv/tftp/iso
cd /srv/tftp/iso

And the additions to /srv/tftp/pxelinux.cfg/default

LABEL Memtest
        MENU LABEL Memtest86+
        LINUX memdisk
        append iso initrd=iso/mt420.iso

-Parted Magic-
First, let’s setup the directories:

cd /srv/tftp
mv pmagic-pxe-6.6/pmagic /srv/tftp/
rm -rf pmagic-pxe-6.6

And the additions to /srv/tftp/pxelinux.cfg/default

LABEL pmagic
        MENU LABEL Parted Magic
        LINUX pmagic/bzImage
        INITRD pmagic/initramfs
        APPEND edd=off load_ramdisk=1 prompt_ramdisk=0 rw vga=normal loglevel=9 max_loop=256


NOTE: I’m gonna make reference to “CD” a lot in this post. Replace “CD” with basically any round disc based media that may be appropriate.

Every time someone makes a post somewhere about “burn an ISO to a CD” or “Just make a bootable USB flash drive” I laugh. The amount of work/waste behind it is laughable. Not to mention that once a CD is burnt, it’s forever. Unless you have a rewritable, but those are expensive. Plus you need pesky CD drives. Or spare USB Flash Drives. With the advent of the internet and Dropbox (Shameless referral link. If you don’t have Dropbox by now, please sign up using the link. You get an additional 250MB if you use the referral.) there’s very little use for flash drives any more.
And with those new fangled netbooks not having CD Drives and external CD drives costing money, there’s more and more reason to have your own PXE server.

Having a little server somewhere serving up all sorts of bootable goodness is frickin’ awesome. No more hunting for that stack of blank CDs or using program after program to make that USB Flash Drive bootable. Plus if you have some of the fancier IP phones, you can auto provision the device via TFTP. But that’s another show.
Here’s a step by step tutorial on how to get your own PXE server.

Before you get started, make sure that the DHCP server on your network supports DHCP Option 66 and 67. Mikrotik and pfSense both support this. Consumer routers do not. Some 3rd party firmwares might. I’ll cover configuration on Mikrotik and pfSense. Otherwise you’ll have to also install a DHCP server that does.

First, set up a server with Debian Squeeze on it. It doesn’t matter what kind of server, but in this case a Virtual Machine is probably best. Unless you have a room full of techs, this machine will probably sit idle 99.99% of the time. At least if it’s on a Virtual Server, the host can allocate most of the cycles elsewhere when it’s idle.

Let’s get all the packages installed.

apt-get install tftpd-hpa syslinux unzip

You could use dnsmasq if you like, especially if you have a router with a DHCP server that fails. But for simplicity sake, this tutorial will use tftpd-hpa.

tftpd-hpa is gonna ask where you want to serve files up from. The default location is fine. Change it if you like.
Bonus points if you have a file server mounted and have it serving up files from a directory there. This way you don’t have to screw with SCP. For now, we’ll leave it as /srv/tftp

Let’s make sure TFTP is running.

netstat -a | grep tftp

If you see something like

udp 0 0 *:tftp *:*

you’re good to go.

Time to copy some basic files and make a directory:

mkdir /srv/tftp/pxelinux.cfg
cp /usr/lib/syslinux/pxelinux.0 /srv/tftp
cp /usr/lib/syslinux/menu.c32 /srv/tftp
cp /usr/lib/syslinux/memdisk /srv/tftp
cp /usr/lib/syslinux/mboot.c32 /srv/tftp
cp /usr/lib/syslinux/chain.c32 /srv/tftp
touch /srv/tftp/pxelinux.cfg/default

Now edit /srv/tftp/pxelinux.cfg/default and shove this in it:

default menu.c32
prompt 0
timeout 100

LABEL local
        MENU LABEL --Boot Local Disk--
        LOCALBOOT 0

You’ll need to add more to this file later. This is basically a placeholder until we fill it with useful stuff.
This file basically just tells PXE to boot from the local disk, so you can leave all your machines with network booting enabled. After 10 seconds (or however many 1/10th of a second you specify as a timeout) it automatically chooses whatever label is specified in “ONTIMEOUT”. For most people, Local Disk is best, but if you have some sort of network bootable OS, you’d want to change it to that.

Now is a good time to make note of the IP of your TFTP server, and perhaps give it a static entry in your DHCP server.
For those COMPLETELY new to Linux, the command is:


The TFTP side is finished, so it’s time to setup routers.
As I mentioned, consumer routers don’t have this capability. Some of the better consumer routers that support 3rd party firmwares MAY have this capability, but I cannot guarantee it.
Since I it’s my article, I’m only listing instructions for DH Stamp-of-Approval equipment.
So here’s Mikrotik and pfSense:

Login to your router. Assuming the firmware is up to date enough, just use webfig. Otherwise you’ll have to Winbox.

http://[URL of Mikrotik]/webfig/#IP:DHCP_Server.Networks.1

(If that link doesn’t work, login to Winbox/WebFig -> IP -> DHCP Server -> Networks -> [Double Click First Network]

Set “Next Server” and “Boot File Name” to look like this:

pfSense 2.0:
Log into pfSense.

https://[IP of pfSense]/services_dhcp.php

If that doesn’t work, it’s under Services -> DHCP Server

Scroll down to network booting. Change it to look like this:

That’s pretty much it. Obviously this is only the beginning, since the only thing it currently does is ask you if you want to boot from the local disk. Part 2 will include entries for booting various network tools and how to boot ISOs. Windows will have to wait til Part 3 as they’re always 1000x more complicated than it needs to be.


It’s shockingly easy. Install these 2 applications on your phone:

-Open up File Expert
-Hit the “Network” Tab
-Fill in the Details of your SMB Share:

-Browse for the file you want to watch. I haven’t tested anything beyond “standard” *cough* AVI files found on the interwebs.
-Look for Mirage:

Wait a few seconds and you should see a video playing.
On my Galaxy Tab it’s a touch choppy, but not unwatchable.


Screenshots are awesome. The problem is… finding a decent app to do it. “Screenshot ER” looked promising, but I couldn’t get it working.
Long story short, there’s a built in function to take screenshots:

Hold Back -> Press Power

Screenshots are stored in /sdcard/ScreenCapture/

I wish I would have known about this before I spent a bunch of time screwing with screenshot apps….


I don’t use Twitter. I honestly don’t understand it.
I mean… I do, but it fits in the same category as SMS.
1X0 character limit in this day and age doesn’t make sense.

I recently discovered that a bunch of companies use Twitter to announce a bunch of things. I also discovered Google Reader for my phone so I decided to add RSS feeds of Steam/Amazon’s bunch of services/etc to keep up on various happenings.

Then one day I went to add in the Twitter RSS feed for one of Amazon’s subsidiaries. I then discovered that Twitter decided to remove RSS links.

I don’t want to have to sign up for Twitter just to Follow random people to know the happenings, so I do a bit of research and turn up this:[username here].rss

So if for example you want to know what apps Amazon is giving away, you would use:

Now I can push that to Google Reader and read that at my leisure.
FU Twatter! I’ll get my own RSS link. Now… let’s just hope they don’t remove that.


In our last episode, we covered the basic setup of a Mikrotik 750G.

Unlike most consumer level routers that use a web browser for configuration, Mikrotik uses a proprietary program.
Step 1: Download (NOTE: This URL won’t work if you’ve already changed your IP. But if you’ve changed your IP, you’ve probably already figured out you need Winbox….)

Step 2:

Click that and select your router.

Step 3:

You should see this. If you’ve never setup a Mikrotik before, you should leave the default configuration in so you retain a fully functional router.
Hmm. Apparently I didn’t think this post through really well.
I have no idea what the 2 people that actually visit this site actually have for router requirements, so I have no idea how to proceed from here.
I guess the only thing I can say from here on out is explore.
Mikrotiks can do some really powerful things and have LOTS of configuration options.

EDIT: In response to comments, I’ll be updating this post to cover a few new things. Anything that would be long and drawn out I’ll make into a new post for the next episode.

IPs – Changing the IP is surprisingly complicated compared to a consumer router. Since you can use more than one range, it’s not a single text box you change in one place, but rather 6 different places you have to tweak in new settings. I think this will have to wait for another show.

Port speeds – I’ll snap some screenshots and fix this at a later date.

Firewall/Port Forwarding – Same deal. I’ll snap some screenshots and update this.

Wireless AP – Some models do have mini PCI slots for wireless radios (and MiniPCI-E for 3G radios) but the 750G does not.
My recommendation in this situation is to pick up an assembled Wireless AP. The DH Stamp of Approval list includes Trendnet TEW-637AP for the ultra budget conscious and the EnGenius ECB9500 for those with a few more bucks to spend. If all you need is wireless, the Trendnet will do fine. If you want a few cool features like VLANs bound to SSID, go with the EnGenius. Besides… quit being a cheap ass and pay the $90 compared to $45.
I will be covering 3G at a later date (in fact… that article predates this article, I just haven’t finished it yet since it’s quite long)
I’ve also experimented with Wireless, but unless you have a specific need for a MiniPCI radio inside the Mikrotik, I would recommend buying a separate AP.

WebUI: Apparently I forgot to flash the latest firmware when I picked up my unit. v5 has a built-in WebUI that basically mirrors Winbox. Just head to http://[Router IP]. There you can use the “Webfig” and check out some graphs.

Subnetting: I should cover subnetting one of these days. And I should submit that article to a few choice places that decide it’s a good idea to use routable IPs in a private range. This article may have to wait a bit. I will explain out the local ranges when I cover IPs, but the full subnetting article is probably better read on Wikipedia.


I’ve been recommending Mikrotiks quite frequently lately on various forums and stuff and have promised a few people out on the interwebs a small howto.

Since most people are on a budget it seems like, I’ll start easy: Mikrotik 750G

Stuff you’ll need:
-Mikrotik 750G
-Ethernet Cable(s)

While I’m at it, here’s an unbox.

Yup. That’s it. No manuals/CDs/registration cards/extra (or in this case necessary) cords/etc.
Now for the meat of the post. The setup.
Since this guide will be targeting n00bs, I’ll go step by step.

1. Plug the 750G into a live AC outlet with the AC adapter provided
2. Plug in your broadband modem* via Ethernet to Port 1
3. Plug in your computer(s)/WirelessAP/game consoles/etc to Ports 2-5

*Assuming your ISP supports DHCP. If it requires something silly like PPPoE, you’ll have to do a touch more work.

That’s it. Apparently some people think Mikrotiks are complicated.
That’s literally all you need to do to have a fully functional router.

Obviously there’s MUCH more if you want there to be, but this is all you need to do to start with. Part 2 will cover a few more advanced topics.


The wife was obsessed with the iPhone. Her’s was stolen a while back and despite my criticism of the device, she still wanted one. We had a discussion about it before the purchase, and I obviously inquired as to why she wanted it.  Long story short, most of the reasons were related to “IT’S SHINY!” or “It’s Apple. They have to be good!” and my favorite “It’s the best device on the market” not to mention “There’s apps for everything!” even though all she really does is call and text.

She’s an American citizen. I’m Canadian. She didn’t have her ID with her, so she couldn’t sign a contract without a $500 deposit and I couldn’t put it in my name also without a $500 deposit. So she decided to purchase the device unsubsidized at the Apple store and talk to ATT directly to see what they had to say.
We head to the ATT store and they basically say the same thing. Even though you bought an unsubsidized device, you still have to pay $500 deposit and choose one of the 2 iPhone plans which included unlimited talk/text and 200MB or 2GB data. They were $105 and (I think) $125 respectively.

She wasn’t too happy about paying $105 a month, $500 now, $800 30 minutes ago.I was questioning the salesperson on why the iPhone plans were $30 more than prepaid plans that had identical things. For $75 a month, I can get unlimited talk/text and 200MB and NOT pay $500. The salesperson had no good response.
I stated that I could just trim the prepaid SIM down and shove it into the iPhone and we could have service right now. The salesperson said it wasn’t possible. She believed the salesperson. So we left with a brand new iPhone, an $800 bill and no activation.

I keep trying to telling her that a prepaid SIM will work fine. So she goes to the Apple store to see what they say, since they’re Geniuses (her words, not mine). She asks the Idiots I mean Geniuses there if a prepaid SIM is possible. The Genius said that the iPhone uses a new revolutionary microSIM and the full size SIM was incompatible. I tell him that the contacts on the microSIM are identical to a full size SIM and the only difference is that the plastic surroudning the chip itself is smaller. He disagreed. The wife believed him.

A few days go by and I ask her what she wants to do with an unactivated device and where she’s gonna come up with $500. She told me to shut up. I laugh and say that I’m gonna go pick up a prepaid SIM and activate it that. She tells me that it won’t work because the “Geniuses” at the Apple Store said it wouldn’t work. I told them the Geniuses are usually idiots. She didn’t believe me. So I went to the ATT store without telling her and picked up a prepaid full size SIM. After a bit of trimming (which is painful btw, buy a SIM cutter) I had me a microSIM. She had been admiring the SHINY factor of the iPhone while I was gone, so it was laying out. She mentioned that she was out of cigarettes, so I told her to go get some. I then put my plan into action. I yoinked the phone, shoved in the SIM and set it up.
When she gets back, I pretend I have to make a phone call. I dial her new number and the iPhone rings. Since her old iPhone was stolen recently, she absentmindedly answered it.
The plesantries of standard phone conversations go by and she still hasn’t realized that she’s talking on her iPhone. I ask her if she’s seen her iPhone lately. She panics and realizes that it’s no longer on the counter. Then the moment of epiphany hits. She runs over and hugs me. I stand here with a sense of self satisfaction since I knew both ATT and Apple were both idiots.

So since I’m the resident geek, I was tasked with setting it up.
Since cases and bumpers were $30 per locally (she refused to shop outside the Apple store) she didn’t get one. Even she thought that $30 for a piece of plastic was stupid. During setup, I was “holding it wrong” and experienced the drop in signal. I started laughing. She asked what I was laughing at. I stated that I was holding it wrong. She had no idea what I was talking about, so I explained. She thought it was retarded and wasn’t impressed that an $800 device had a flaw like that. So she bought a bumper. 5 of them. And a few snap on cases. I was like WTF! You spent $300 on cases?
For some reason she didn’t see the issue behind $300 worth of plastic crap. Damn Apple tax.

A few weeks later, she was tired of the default ringtones. She wanted some of her own MP3s as ringtones. I figured “it’s a smrtphone. I should be able to drop some MP3s onto storage and they should work fine.” so I told her that I’d load up some MP3s and they should be ready in 10 minutes.
Apparently “there’s an for everything” is true since you need an app to do menial tasks that should be native to a modern device. She’s not impressed that she can’t do MP3 ringtones by herself.

A few more weeks go by and we’re out and about doing our thing and tethering my notebook to my G1. It breaks. I tell her that I can just set up tethering on hers since I jailbroke her device. Apparently even with Cydia, it costs $19.99 in order to tether. I laugh. She asks why that’s funny. I tell her that it’s free for Android. She isn’t impressed.

So one day, I hear out of nowhere “Damn iPhone!”, so I ask her what’s wrong. Apparently the phone kept switching between bluetooth and speakerphone. I point out the screen is on. She says “Yeah that happens sometimes.” So I have a look online. Apparently the proximity sensor for the screen is defective on a large number of devices. Apparently her’s is affected too. She’s really not impressed.

Text messaging. I don’t understand it. I send maybe 100 messages year. The wife however… LOVES it.
One day when I was checking my text history on my Galaxy Tab, she notices that my messages don’t look anything like hers as there’s very little wasted space on my messaging app. She inquires to as why mine aren’t in “speech bubbles” like they are on the iPhone. I tell her that speech bubbles are stupid and they sacrifice a significant amount of screen real estate to “look cool”.
She has a look at her texts and realizes the same thing. There’s probably an app to change that, but she doesn’t use the market at all. She’s not impressed, especially since she tends to write novels for text messages.

Bernz and I were discussing our mutual ownership of Galaxy Tabs. He introduced me to “Tango” which is a cross platform video chat app. I tell the wife about this, and she says “pfft. Facetime does that.” I tell her that it’s not possible on 3G and restricted to iDevices. She’s not impressed.

Just recently, a friend of hers sent her a message with an emoticon. She inquires as to why that her friend’s iPhone has emoticons and her’s doesn’t. So I hit the internet to see why they’re disabled. Apparently you need an app for that. I laugh and tell her that mine has them built in. She’s not impressed.

Just today, it was announced that the iPhone tracks location history. I yell out in surprise. The wife asks what’s up. I tell her that the iPhone records location history and is easily accessible without a court order. She throws her iPhone and basically tells me to get rid of it. I laugh. She’s REALLY not impressed.

She now hates the device.
6 months ago, she would tell everyone how awesome the iPhone was.
Today, she tells everyone how terrible it is.

The ONLY thing she IS impressed about is the fact that she currently has the cheapest iPhone plan in Washington at $67.50USD for unlimited talk/text/200MB.

And that Ladies and Germs is how your average iPhone fangirl went from “OH SHINY!” to “WTF IS THAT SHIT?!?!??!”

© 2012 The Mind of DH Suffusion theme by Sayontan Sinha