Warning: include_once(/home/winit/hackedpotatoes.com/wp-content/plugins/wordsocial/wordsocial.php): failed to open stream: Permission denied in /home/winit/hackedpotatoes.com/wp-settings.php on line 303

Warning: include_once(): Failed opening '/home/winit/hackedpotatoes.com/wp-content/plugins/wordsocial/wordsocial.php' for inclusion (include_path='.:/usr/local/lib/php:/usr/local/php5/lib/pear') in /home/winit/hackedpotatoes.com/wp-settings.php on line 303

Warning: Cannot modify header information - headers already sent by (output started at /home/winit/hackedpotatoes.com/wp-settings.php:303) in /home/winit/hackedpotatoes.com/wp-content/plugins/wp-super-cache/wp-cache-phase2.php on line 60

Warning: Cannot modify header information - headers already sent by (output started at /home/winit/hackedpotatoes.com/wp-settings.php:303) in /home/winit/hackedpotatoes.com/wp-includes/feed-rss2.php on line 8
http://hackedpotatoes.com Thu, 13 Nov 2014 06:06:25 +0000 en-US hourly 1 https://wordpress.org/?v=4.8 Atreus – My First Mechanical Keyboard http://hackedpotatoes.com/2014/11/atreus-my-first-mechanical-keyboard/ http://hackedpotatoes.com/2014/11/atreus-my-first-mechanical-keyboard/#comments Mon, 03 Nov 2014 02:44:36 +0000 http://hackedpotatoes.com/?p=468 A certain geek *coughColecough* picked up an Ergodox some months back. After an initial period of smiling at his purchase while enjoying my work supplied ergonomic keyboard, I decided to take him up on his offer to type on it.

I can only say that in order to understand the draw of mechanical keyboards, you need to use one for an hour. They're pretty freaking cool. Sadly, the Ergodox is a bit out of my price range at the moment - saving up for a roadie while training for a triathalon next year. I also borrowed a Code keyboard using Cherry MX Clears, but decided I liked the ergonomics of the Dox.

Here's where the Atreus comes in. It's a 40% keyboard, so only has 42 keys instead of the 87/104 "normal" keyboards have. All the extra (punctuation, numeric, function) keys are accessed by switching "layers" - essentially shift on steroids. Jump in after the break!

The Atreus is built upon similar principles as the Ergodox. It's designed to be easily customized, plans/firmware are available as open source, and the Atreus is more ergonomic than "straight" keyboards.

You can order your own Atreus as either a kit or fully assembled . Alternately, just pick up the parts yourself and assemble using these instructions.

I decided to source my own parts, as I determined I could bring the price down near $90. Not bad for a mechanical keyboard!

First things first, I needed to pick up switches & keycaps. I badgered Sol into building one as well, so we decided to order in bulk. Here's the BOM if you're doing a solo build:

You'll also need:

  • Soldering Iron/Solder
  • Wire (gauge?)
  • M8 screws to bind the case
  • Hot glue gun
  • Digital multimeter
  • Mad skills (update: I have been informed that my skills are more on the mad side than the skilled side. I think I made people cry with my soldering...)

Finally, the case. There are a number of options, but you'll need the case models from github:

  • Order from an online laser cutting service
  • Bring out the jigsaw and have at it
  • Find someone local with a CNC or laser cutter, for instance, a Maker/Hacker Space.

Once I got all my parts together, Sol and I got together for some soldering fun. It took about a couple hours for the basic assembly. Being my first time, I took it slow. Once I got the firmware loaded to the teensy, I finished connecting up the spaghetti mess and soldered the teensy in. Aside from time spent on the firmware, I'd estimate a good 6 hours of time doing assembly. This may include Futurama & beer time however...

Basic Steps:IMG_20141108_211306534

  1. Place switches into mounting board.
  2. Flip board over and start soldering diodes to the higher switch pin, positive side toward the center
  3. Connect all 11 columns on the lower switch pin
  4. Verify all joints are solid
  5. Upload firmware to teensy
  6. Finish that spaghetti wiring
  7. Start typing!
  8. Post pictures to Imgur

I'll touch on a few of the hurdles I faced putting this together, but there is really no substitute for reading through Phil Hagelberg's documentation. Really, it's awesome - read through it.

Alright, placing the switches. If you look closely, you'll see that the switches are not precisely symmetrical. Looking at the base of the switch you should see a smooth side with the pins nearest to it; this is the "north" side. Push the switch into the base, repeat until all switches are placed. Hagelberg suggests using hot glue to keep the switches in place, but I found the laser cut wood holds them tightly enough so they don't pop out in normal usage.

Soldering the diodes is simple, anyone with any sort of soldering experience should be able to knock that out easily. I was not so lucky; I spent a while figuring out how to make the solder flow nicely and still never came out with a "good" joint. If I had to do it over, I'd probably pick up some Enablers to make a cleaner looking base.

For the 11 columns, I harvested wire from an ATX power supply. Bad idea! It looks bad and was a bear to work with. I swapped over to using wires stripped from a cat5 cable when connecting the teensy, and was much happier.

It took awhile to get my system setup to compile the firmware. Funky stuff with Linux Mint 16 - This Stack Overflow post goes over the necessary environment variables that needed to be set. Once I got going though, recompiling firmware is a breeze. I must say, I'd prefer a cleaner json > layout conversion. The current implementation is simply nested lists of lists containing each row's key declarations. I would prefer the parser was able to take a dictionary, something like:

  "layer0": {"row0": [], "row1": [], "row2": [], "row3": []},
  "layer1": {"row0": [], "row1": [], "row2": [], "row3": []},
  "layerx": {"row0": [], "row1": [], "row2": [], "row3": []},

I might take a look at the code and see if that is possible; it just seems a lot easier for human editing.

The rest is straight forward - make the appropriate connections to the teensy, then connect those to the appropriate rows and columns. D0-D3 should be connected to the positive side of a diode on each row, and the rows should be connected across the center of the board. The rest of the pinouts should be connected to a negative pin on each of the 11 columns. It doesn't really matter which switch you choose on each column, just make sure you don't double connect one column to two pinouts.

Outputs(should be connected to the positive end of a diode on each row):

| row number | 0 | 1 | 2 | 3 |
| pin number | D0 | D1 | D2 | D3 |

Inputs(should be connected to the negative pin of a switch on each column):

| column number | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| pin number | B0 | B1 | B2 | B3 | B4 | B5 | B6 | B7 | F4 | F5 | F6 |

Ok, now just bolt the case together without messing up your hard work. I'd suggest tossing rubber pads under the keyboard to keep it from scratching your desk. Plug the keyboard in, and start typing! For more pictures, check out my Imgur album.


http://hackedpotatoes.com/2014/11/atreus-my-first-mechanical-keyboard/feed/ 1
Using Chrome Profiles and FoxyProxy to Keep Personal and Work Browsing Separate http://hackedpotatoes.com/2013/12/using-chrome-profiles-and-foxyproxy/ http://hackedpotatoes.com/2013/12/using-chrome-profiles-and-foxyproxy/#respond Tue, 10 Dec 2013 04:02:38 +0000 http://hackedpotatoes.com/?p=445 I'm going to build on FuelCell250's previous post regarding SSH tunneling. Most of the time you'll want to tunnel all of your traffic through your home SSH server, but there are instances where that's not the most suitable option.

For instance, working the late shift in IT, I'll sometimes run into periods of downtime. Obviously I am careful about my browsing on a work PC. I'm not convinced, however, that anyone else should see me logging into my online banking; or that my chat sessions should be visible to anyone but myself; or those randomly blacklisted sites that are perfectly SFW.

My solution is fairly simple, and easy to setup. Check it out after the break!

I'll be using Putty and Chrome (with FoxyProxy extension) on my work PC, while connecting to my home SSH server that allows external SSH access.

First, I created a "Work" and "Personal" profile in Chrome. My work profile is not signed in to any services, no extra plugins/extensions installed. My personal profile is connected to my Google account to allow for bookmark syncing and extension sync.


Work profile


Then I setup Putty to tunnel to my SSH server. There are several guides online, but the basic steps are as follows: Enter your server IP(or domain name if set up) into the "Hostname(or IP address)" field, then choose SSH > Tunnels from the sidebar. Add a new port that is not in use, such as 9999. At the bottom of the page check "Dynamic" and "Auto", then go back to "Session" and enter a friendly name like "SSH to Home", then hit save.


I installed FoxyProxy in my "Personal" profile and configured it to connect to my SSH tunnel.

  • For host, type localhost or
  • Port should match your tunnel settings
  • Check "SOCKS Proxy?"
  • Name it whatever you like and hit SAVECapture3

Now, simply open your SSH tunnel through Putty and enable your proxy by clicking the icon in Chrome. Now all your "Personal" traffic is routed through the SSH tunnel to your home network, while the rest of your traffic remains on your office's network.



http://hackedpotatoes.com/2013/12/using-chrome-profiles-and-foxyproxy/feed/ 0
Missing Screenshot Files in OS X http://hackedpotatoes.com/2013/12/465/ http://hackedpotatoes.com/2013/12/465/#respond Fri, 06 Dec 2013 05:14:31 +0000 http://hackedpotatoes.com/?p=465 One of my favorite things about OS X is the built-in screenshot feature. At any time, you can press a key combo, and grab a screenshot, which will simply appear as a file on the desktop. An insanely great feature... until it quits working.

One day, I went to take  screenshot and heard the familiar shutter sound, but no file appeared on my desktop. Where are my screenshots going in OS X? Days later, I tried again, and it worked. On another day, I could no longer find my screenshots. I searched high and low on the internet. I found others having the exact same problem, but no fix was to be found. Finally, I asked on Twitter. One of my Wi-Fi engineer friends replied, "Are you using the key combo that copies it to your clipboard?" D'oh! I'd been holding it wrong the whole time! Solution after the break.

To save a screenshot to a file:

Shift + Command + 4

To store a screenshot on the clipboard:

Shift + Control + Command + 4

"3" will perform a full-screen grab.

To capture the contents of a window only:

Shift + Command + 4 and then Space

Moral of the story, if your screenshots never appear on the desktop, stop using the Control key.

- Joel


http://hackedpotatoes.com/2013/12/465/feed/ 0
Backing up to an AirPort Extreme with Time Machine in Mavericks http://hackedpotatoes.com/2013/11/backing-up-to-an-airport-extreme-with-time-machine-in-mavericks/ http://hackedpotatoes.com/2013/11/backing-up-to-an-airport-extreme-with-time-machine-in-mavericks/#comments Sat, 23 Nov 2013 02:56:15 +0000 http://hackedpotatoes.com/?p=460 With the release of OS X 10.9 Mavericks, Apple no longer supports backing up to a hard drive connected to an AirPort Extreme with Time Machine. This was a huge disappointment for me, as I had just purchased an 802.11n AirPort Extreme and portable hard drive for my backups when Mavericks was released, only to discover that Apple now requires a Time Capsule only to perform backups. Luckily, there is an easy workaround that will allow you back up to a portable hard drive that is connected your AirPort Extreme with Time Machine. Check out the instructions after the break!

Open a Terminal and run:

defaults write com.apple.systempreferences TMShowUnsupportedNetworkVolumes 1

Reboot the machine.

Open Finder, and browse to the hard disk that is plugged into your AirPort Extreme to mount it.

Open the Time Machine Preferences, and attempt to select the disk that is connected to your AirPort Extreme.

The disk connected to your AirPort Extreme should now be visible in Time Machine Preferences!

Screen Shot 2013-11-22 at 7.36.55 PM

So far, this has worked for me with both a 2009 Mac Mini and a Mid-2012 MacBook Air, both running OS X Mavericks. I've heard some say that using unsupported volumes is risky, but the truth is, this shouldn't be your only backup solution. I recommend pairing Time Machine with Crashplan, or some other backup system. If this process doesn't work for you, let us know in the comments!

- Joel


http://hackedpotatoes.com/2013/11/backing-up-to-an-airport-extreme-with-time-machine-in-mavericks/feed/ 4
Pairing an Apple Wireless Keyboard in Ubuntu 12.04 http://hackedpotatoes.com/2013/05/pairing-an-apple-wireless-keyboard-in-ubuntu-12-04/ http://hackedpotatoes.com/2013/05/pairing-an-apple-wireless-keyboard-in-ubuntu-12-04/#comments Wed, 22 May 2013 05:32:21 +0000 http://hackedpotatoes.com/?p=440 I was recently given a 3-battery (second-generation) Apple Wireless keyboard, model A1255. I run Ubuntu 12.04 as my primary OS on my laptop, so I didn't anticipate any compatibility issues.  It didn't take me long to run into trouble. During the pairing process, Ubuntu gives a random PIN that must be typed into the keyboard, but it consistently rejected the number. The solution? Hold down the "command" button while typing the PIN number, release the command button, and then press enter. As a side note, put the keyboard in discoverable mode by powering it off, and then holding the power button until the light blinks steadily. I hope that saves someone some grief!


http://hackedpotatoes.com/2013/05/pairing-an-apple-wireless-keyboard-in-ubuntu-12-04/feed/ 4
Remote VNC Access http://hackedpotatoes.com/2013/05/remote-vnc-access/ http://hackedpotatoes.com/2013/05/remote-vnc-access/#respond Sun, 19 May 2013 05:06:10 +0000 http://hackedpotatoes.com/?p=431  

There's nothing quite like being 500 miles from home and having the ability to control your home computer with your cell phone. In the past, I have used PocketCloud in conjunction with the built in RDP server to access my Windows 7 computer.  It was pretty handy for managing my media library from work or my laptop.

I ran into a problem, though, once I completely moved my home computers to Linux: the best RDP server solution for Linux (xRDP) just didn't cut it. It was nowhere near as seamless as the built in utilities for Windows, and I don't like fiddling past initial setup.

I decided my Raspberry Pi would make a great remote access point. No sensitive information, very low power draw for 24/7 uptime, and I can tuck it in next to my router so I never have to see it.

Join me after the break for a quick and easy tutorial for enabling remote access to your own Linux machine! We'll be using TightVNC Server for Linux, a Raspberry Pi running Raspbian, and your choice of a VNC client.

Setting up VNC access is pretty simple:

  • Install VNC server
  • Forward ports
  • ???
  • Profit!

For this tutorial, I'm going to assume you have a computer running a Debian Linux variant and a static IP setup. It's also helpful to have a DNS hostname pointed at your home network IP address. I recommend DynDNS.org for their free and easy to setup basic DNS services.

The installation is easy; I'd recommend either having SSH setup for headless devices, or using a display if you've got one handy. Log in to the computer you plan on using as your VNC server. Open a terminal, and enter this command:

sudo apt-get install tightvncserver

Once TightVNC finishes installing, go ahead and start up the daemon:


It'll ask you to setup a password, go ahead and enter one twice. You'll be presented with an option to set a read only password. I'd ignore that, as read only access is fairly useless for our purposes. See how easy that was? Now you can access your computer via VNC! Go ahead - fire up a VNC client and connect to (substitute your VNC server's IP address)



To install TightVNC Viewer on Linux, just open a terminal and type:

sudo apt-get install xtightvncviewer

Once it installs, you can test your VNC connection:


Substitute your VNC server's IP address, and you should be prompted for a password! The :1 indicates you are connecting to virtual desktop "1".

Great, so you've got VNC access from another computer, but that doesn't help you get in from a computer outside your home network. You'll need to forward the network ports from your router to the computer.

I'll be using a Linksys router with DD-WRT installed, but you can look up instructions specific to your router. The important thing is to forward the correct port to the correct IP address.

For DD-WRT routers, login to, or whatever your router's IP address is. Navigate to "NAT/QoS" and choose the "Port Forwarding" tab. Add an entry as follows:

Screenshot from 2013-05-18 15:18:44

Let's break it down. The first field is a name for the connection to easily distinguish it. The second is the remote port. Choose "both" for TCP/UDP and substitute your VNC server's local IP address in the fourth field. Enter 5901 for the local port, and finally, you'll enable the Port Forwarding entry.

Forwarding port 5901 to your VNC server allow it to respond to any outside connections on port 5901, effectively giving you remote access.

Edit: FuelCell250 mentioned that it's possible to have bots try the standard port and attempt to brute force the password. If this concerns you, try setting the external port to another number. Make sure you're not using a reserved or other common port number, then adjust the settings in your remote client as required.

We have one more item to handle: Automatically starting VNCServer at boot.

From your terminal, enter this command to create the "init" file:

Screenshot from 2013-05-18 15:20:24

sudo nano /etc/init.d/tightvnc

Now, copy and paste the following into your new file:

# Provides: tightvncserver
# Required-Start:
# Required-Stop:
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: start vnc server
# Description:

case “$1″ in
su pi -c ‘vncserver :1 -geometry 1600×900 -depth 16 -pixelformat rgb565:’echo “VNC Started”
pkill Xtightvnc
echo “VNC Terminated”
echo “Usage: /etc/init.d/tightvnc {start|stop}”
exit 1

Replace "pi" with the username for the account you wish to access remotely, and adjust the resolution to your preferred size. Now hit "CTRL+W" to write the file, then "CTRL+X" to exit nano.

Adjust permissions on the file and make it start automatically:

sudo chmod 755 /etc/init.d/tightvnc

sudo update-rc.d tightvnc defaults

Reboot your VNC server, and try connecting! You should now be able to automatically connect to your computer from any VNC client, whether on your home network or 500 miles away on a 3G connection. As I mentioned before, make sure to setup a hostname to point to your network; this will make it much easier to remotely login to your computer. When outside your home network, you'll need to enter your hostname or external IP address, connecting on port 5901.

Great thanks to the HowToGeek for the init script!



Screenshot from 2013-05-18 15:06:53

http://hackedpotatoes.com/2013/05/remote-vnc-access/feed/ 0
Hacking Gogo In-Flight Wi-Fi http://hackedpotatoes.com/2013/05/hacking-gogo-in-flight-wifi/ http://hackedpotatoes.com/2013/05/hacking-gogo-in-flight-wifi/#comments Sat, 04 May 2013 00:19:30 +0000 http://hackedpotatoes.com/?p=428 Ok, its more of a bypass then a hack, but still fun. While waiting for takeoff I was thumbing through the add-filled magazine in the seat pocket in front of me, when lo and behold I see a full page add for Blackberry 10's new Z10 phone, with the caption "free gogo internet for blackberry users this month". Well, as any self-respecting hacker would, I decided that free wifi was mine. Assuming they were using user-agent string to filter out Blackberry vs non-blackberry clients, I decided to do some experimenting and found that:

Mozilla/5.0 (BB10; Z10) AppleWebKit/534.55.3 (KHTML, like Gecko) Version/5.1.3 Mobile Safari/531.21.10

worked! I basically modified the safari user-agent string with the BB10; Z10 addition, and there was free internets to be had.

Nuts and bolts:

thankfully I already had my user-agent switching extension loaded in chrome, so I simply opened it up and duplicated the safari user-agent string then refreshed the page and the gogo portal asked me if I'd like free wifi. Thanks, gogo!


http://hackedpotatoes.com/2013/05/hacking-gogo-in-flight-wifi/feed/ 2
Android 4.1.2 Jelly Bean on HTC Nexus One http://hackedpotatoes.com/2012/10/android-4-1-2-jelly-bean-on-htc-nexus-one/ http://hackedpotatoes.com/2012/10/android-4-1-2-jelly-bean-on-htc-nexus-one/#comments Wed, 31 Oct 2012 16:39:12 +0000 http://hackedpotatoes.com/?p=415 The HTC Nexus One is likely the most iconic Android device to date. None of the other Android devices I've used have ever quite felt as good in the hand or looked as good.So it's a shame the onboard ROM is too small to support anything above Gingerbread (2.3). Or, is it? Officially, the system partition is too small, the GPU isn't up to the task of pushing Jelly Bean, etc. But the Nexus S pushes it just fine, and it's essentially the same hardware (granted, a few changes, but the same processing power).

As luck would have it, the awesome devs over at XDA developers have worked out a way to repartition the onboard ROM to allow Android 4.0 and above to be installed.

Join me after the jump for a walkthrough of the installation!

For full information and download links, check out the forums:

The first page contains pretty basic instructions on installing the ROM once your Nexus One is prepared; I'll include my own instructions for clarity. The second link tells how to install blackrose.

Alright, you've browsed the forums and are ready to get your Nexus upgraded.

First, download blackrose_120421.zip (latest version as of this writing) and unzip it. Right-click and run-as administrator (Windows) or follow the instructions for your chosen OS.

Make sure you have debugging enabled on your Nexus, connect it to your machine and run Blackrose. I had to run it twice to get Blackrose installed. It takes a couple minutes to complete, at which time you should be booted to your fastboot screen.

Now ensure that you're in the bootloader; if your phone isn't simply issue this command:

adb reboot bootloader

Fastboot screen

Flash your chosen HBOOT - I chose System: 260 Cache: 8 Userdata: 168.

fastboot flash hboot hboot_jellybean_260-8-168.nb0

fastboot reboot-bootloader

We'll need to erase all data from the device:

fastboot erase system

fastboot erase boot

fastboot erase userdata

fastboot erase cache

And finally install our chosen recovery. Download Clockwork (there may be a more up to date version, this one worked for me) and flash using fastboot:

fastboot flash recovery recovery-clockwork-

Installing ROM

Download your chosen ROM - I'm using Evervolv 3.1.0p1. Boot to recovery and push the ROM zip over to your microSD card:

adb push Evervolv-perdo-3.1.0p1-passion.zip /sdcard/

Choose install zip in recovery, choose the ROM and install! You may also want to download and install GApps.

adb push gapps-ev-jb-20120816.zip /sdcard/

Again, use recovery to flash the gapps zip, reboot and you should have a fully functioning Nexus One running Jelly Bean.





Jelly Bean running on Nexus One

http://hackedpotatoes.com/2012/10/android-4-1-2-jelly-bean-on-htc-nexus-one/feed/ 22
Custom Launchers in Ubuntu 12.04 LTS http://hackedpotatoes.com/2012/10/customer-launchers-in-ubuntu-12-04-lts/ http://hackedpotatoes.com/2012/10/customer-launchers-in-ubuntu-12-04-lts/#comments Wed, 24 Oct 2012 04:06:14 +0000 http://hackedpotatoes.com/?p=399 I know that I'm straying into Lifehacker territory here, but this is a tip I couldn't help but share. I've always wanted to create customer launchers for the Unity dock, and I've finally found how. I'm going to apply this to Minecraft, but you can use to create an icon for just about any program or command that you might need to run in Ubuntu. Read on for instructions...

We'll do most of this from the terminal, just because we can. First, create a hidden directory in your home folder for  the launcher and icon files.

mkdir /home/joel/.minecraft/

Change the directory to the new hidden folder.

cd /home/joel/.minecraft/

Download Minecraft for Linux.

wget https://s3.amazonaws.com/MinecraftDownload/launcher/minecraft.jar

Make it executable.

sudo chmod +x minecraft.jar

Download a png or svg to use as an icon. I really liked this one. I recommend getting your icon in place before you create the .desktop file that references it; I had some problems getting Unity to pick up the icon if I did it the other way around.

wget  http://fc06.deviantart.net/fs70/f/2010/325/1/8/minecraft_icon_by_dharmainitiative2010-d33ca5p.png

Ugh, give that thing a reasonable name! The mv command will "move" it, changing it's name in the process.

mv minecraft_icon_by_dharmainitiative2010-d33ca5p.png minecraft.png

Now that we have our files in place, create a .desktop file. These steps might be the only thing you came to this article for.

sudo nano /usr/share/applications/minecraft.desktop

Paste this in, or modify to fit your purposes. The fields are pretty self explanatory, but notice that in the "Exec" field I'm not just giving in the .jar file, but the actual command to execute.

[Desktop Entry]
Exec=java -jar /home/joel/.minecraft/minecraft.jar

Press Ctrl+X to close the file, and Y and Enter to save it.

Give Ubuntu a moment to update the icon and...

That'sssssssssssss a nicccccccccccccce Unity icon you have there.

- Joel / FuelCell250


http://hackedpotatoes.com/2012/10/customer-launchers-in-ubuntu-12-04-lts/feed/ 6
Encrypted Web Browsing With SSH and Ubuntu http://hackedpotatoes.com/2012/08/encrypted-web-browsing-with-ssh-and-ubuntu/ http://hackedpotatoes.com/2012/08/encrypted-web-browsing-with-ssh-and-ubuntu/#comments Sat, 25 Aug 2012 06:06:58 +0000 http://hackedpotatoes.com/?p=386 Every now and then, you may be forced to use an unencrypted wireless access point to access the internet. Many hotels and coffee shops leave their access points unencrypted, instead relying on other solutions such as captive portals to authenticate customers. This keeps unauthorized users off the network (sort of), but it doesn't encrypt anything between you and the access point. This could allow a malicious hacker to intercept personal information, such as passwords. With an SSH server at home, you can encrypt your web traffic and slingshot it back to your house. Your SSH server will then decrypt it and send it back out to the internet, as if you were browsing from inside your secure home network. Interested? Read on.

After connecting to an access point, go to whatismyip.org, and make a mental note of your IP address. Next, open a terminal and run

ssh -D 8080 user@server

If you are using a slow network, add -C for compression. I've done this when tethering over edge, and noticed a slight speed boost.

Go to System Settings... > Network > Network Proxy

In the Method drop-down menu, choose Manual.

Set Socks Host to (also known as loopback)

Set the port to 8080

Click Apply system wide

Open a web browser and go back to whatismyip.org. If your ssh session is open, and your proxy is configured correctly,  your IP address should now be different than it was before. This is because all of your web traffic is being encrypted before traversing the wireless network, and being routed back to your ssh server, where it exits to the internet. You can start using unencrypted access points again!

- Joel / FuelCell250


http://hackedpotatoes.com/2012/08/encrypted-web-browsing-with-ssh-and-ubuntu/feed/ 2