Menu

[index]

[kindle]
   - [tether kindle 3]

[zune hd]
   - [backed up apps]

[game boy advance]
   - [canabalt advance]
   - [battery saves]

[game boy camera]
   - [gallery]
   - [failed color photos]
   - [image dumper in python]

[powerpc]
   - [google music on tiger]
   - [ems 64m flasher ppc]

[ms paint stuff]

[music]

[downloads]

[about]

.webloc

[#bismuth web chat]

[.asia pls]

[drx: Gameboy Gallery]

[TRSRockin' mirror]

Tether Kindle 3

What you need:

Warning! The process by which one harnesses the Kindle's free 3G is a violation of the Kindle 3G's terms and agreements. In addition, the key used to access 3G is tied directly to your unique Kindle. All traffic obtained in this manner is sent through Amazon's proxy server. Amazon knows who you are.

Enable debug mode and usbNetwork by typing in these commands in the search box:

Plug your Kindle into the target computer. The "USB Connected" screen should no longer appear on the Kindle. Instead, a message should appear on your computer noting that a new device has been connected. If no message appears, open System Preferences, Network Pane, and click the Plus sign under the list of devices. Select these options:

The name is not needed, but is recommended.

After the Kindle interface is set up, configure DCHP like so:

Manually, with an IP address of 192.168.2.1. Other fields are not needed.

X-FSN Method 1 (Difficult, quicker)

If you have Windows, method 2 is easier.

Remember to enable Wireless in the Kindle, and check that a 3G signal is present before proceeding.

After these steps are completed, open a new Terminal window (You can press Cmd-Space, and search for Terminal with Spotlight). Enter these commands:

telnet 192.168.2.1

/mnt/us/tcpdump-arm -nAi ppp0 -s0

Afterwards, your window should look similar to the results below:

Do not close this window! Proceed by browsing to a site on your Kindle's browser. After it is done loading, go back to tcpdump-arm. There should be a lot of cryptic code. Use Cmd-F to find your x-fsn key:

Keep this window open. Start your Firefox browser, then open Modify Headers. Get your x-fsn key from tcpdump-arm and add them to each page. Windows users need to use the Modify option for all keys except x-fsn, and also need to select "always on" in the Information tab.

Add these keys as well:
User-Agent: Mozilla/5.0 (Linux; U; en-US) AppleWebKit/528.5+ (KHTML, like Gecko, Safari/528.5+) Version/4.0 Kindle/3.0 (screen 600x800; rotate)
Accept: application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Accept-Encoding: gzip

After this is complete, go back to tcpdump-arm. If you get an error that says "Connection closed by remote host", that means you left it alone for too long. That is fine, just run

telnet 192.168.2.1

to get back into the Kindle.

X-FSN Method 2 (Easier)

This method works best with Windows, because there is no need to stop the connection at the right time to catch the key in the scrollback buffer in CMD (OS X keeps a huge scrollback buffer).

Telnet into the Kindle with

telnet 192.168.2.2

You should now be presented with the Kindle shell. Enter the following series of commands to copy the key file to the USB storage folder:

cd /
cd /var/local/java/prefs/cookies/
cp Cookie__x* /mnt/us/

Note the two underscores of "Cookie__x"

Disable USB Network mode as you enabled it: enter "~usbNetwork" at the home screen. Unplug and replug the cable to bring the Kindle up as a disk drive. Open the file that starts with "Cookie__x-fsn..." in Notepad or TextEdit. Your x-fsn key should be the first entry in the line. I got a "character not found" box at the end in Notepad, so be sure to remove that if you see it at the end.

Thanks to pupkin for this tip!

If this method does not work for you, method 1 is more reliable, but more complicated.

Header Modification

Open up Modify Headers in Firefox and add this key:

[Action:Add] [Name:x-fsn] [Value:]

Add these keys as well:
User-Agent: Mozilla/5.0 (Linux; U; en-US) AppleWebKit/528.5+ (KHTML, like Gecko, Safari/528.5+) Version/4.0 Kindle/3.0 (screen 600x800; rotate)
Accept: application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Accept-Encoding: gzip
x-kn-appId: BBookletV3 (forgot this; thanks, Greg)

OS X/Linux specific

Now that you're in the Kindle, run this command to set up a link to Amazon's proxy server:

ssh -R 192.168.2.1:8099:fints-g7g.amazon.com:80 user@192.168.2.1

Replace "user" with your username on the target computer.

If you get an error whilst SSH'ing into the target computer, you might need to enable Remote Login (System Preferences > Sharing > Remote Login). You should then be faced with a prompt matching the target computer's. Run

ping 192.168.2.2

to keep the telnet connection from timing out. Before running ping, your window should look something like this:

Windows specific

No need to keep the Telnet session open on Windows.

If you've already got SSH set up on your machine (you can run an SSH command from the command line), you can skip the install step.

To get SSH, install OpenSSH for Windows (download). Make sure to install "Client" mode. I think Server mode is optional, but you can install it anyway.

Test it out by opening the Run... window from the Start menu and typing "cmd". After clicking OK a command line should appear. Enter "ssh". The list of options and switches for SSH should pop up.

Now to set up Windows Firewall. Go to Control Panel > Network > Windows Firewall or search Firewall in Control Panel:

Add the server (C:\Program Files\OpenSSH\usr\sbin\sshd.exe) and the client (C:\Program Files\OpenSSH\bin\ssh.exe) to Windows Firewall exceptions.

In your command line window, go to your OpenSSH\bin folder with the "cd" command, followed by the path.

Enter these commands to set up groups and users:

mkgroup -l >> ..\etc\passwd

mkpasswd -l -u [username] >> ..\etc\passwd

To start the server, enter "net start opensshd".

Now to set up the Ethernet modes.

Connect the Kindle to your computer, and wait for the drivers to install.

After the interface is connected, go to Network Connections:

Right click on the interface, and select Properties. Double click on "Internet Protocol" (Version 4 may be present). Use the following IP address: 192.168.2.1, with a subnet mask of 255.255.255.0. DNS server doesn't matter:

In your command window, enter "ssh -L 8099:fints-g7g.amazon.com:80 root@192.168.2.2". The connection might take up to a minute or two, just wait a bit. If it asks you if you want to trust the key pair, type yes. You should be connected.

Moving on

Now to set up Firefox. Open Firefox's proxy preferences (Firefox > Preferences > Advanced > Network > Change how Firefox connects to the Internet). Set the manual proxy to 127.0.0.1 on port 8099. The window should look like this:

Apply the settings, and you should be all set! You may have trouble using SSL, try to use http:// instead of https://.

Happy browsing (And try not to get caught ;-) )!

Thanks to Balaganov for the SSH information!

My advice is to use this only when in an emergency. Don't play Flash games or anything.

Update: I got permabanned from MobileRead for posting a link to this guide; it was only my second post :P

In addition, I've been looking at SSH over WiFi for Kindle. This could mean that you can tether the Kindle's 3G to any device with SSH using WiFi (Android, jailbroken iOS). More info as I experiment.

Common errors:

Problems? Feedback? Post here:

Note: I am also available most of the time in #bismuth on irc.rizon.net. You can also use this webchat to access the network.

HTML Comment Box is loading comments...