Many of you may already have noticed that I have ported Kismet to the N900 with support for internal GPS through liblocation. Now also a fully functional WLAN monitor mode is available for the N900! You might know the channel 6 problem, it's gone now!
So here you can download my monitor mode patch for the wl1251 chip used in the N900.
If you don't want to compile your own kernel, you can also use the latest version of titan's power kernel, which includes my monitor mode patch. You need at least the version 2.6.28-maemo26. At this point I want to thank Tanner for his great kernel.
Moreover make sure you also upgrade to at least Kismet 2010.01.R1-r3028-1. It now includes integration for the network manager, so you don't need to stop/start it yourself.
So here is what you exactly need to do for installing Kismet:
- Activate extras-devel repository (required at least for now, be careful with it!)
- Install "Enhanced Linux kernel for power users" from the system category
- Reboot your phone
- Install "Kismet" from the network category
- Deactivate extras-devel repository (Recommended by me. However you won't receive updates for extras-devel packages automatically, so make sure to sometimes check for updates through the Maemo package interface)
Now to run Kismet do the following:
- Open a X Terminal
- Optionally change to root through "sudo gainroot" (This isn't recommended by me because running Kismet as root can be dangerous. Nevertheless I have to note that I had some server startup problems from time to time when running as normal user. So it may be needed to start Kismet again if startup failed. Running Kismet as root will circumvent this problem, but once again I really do NOT recommend it.)
- Start Kismet by entering "kismet" (without quotes)
- Answer Yes and press Start to start the Kismet server
- Now you may get asked for an Internet connection if you have enabled assisted GPS. Select data connection or ignore it. (WLAN connections aren't available because your WLAN card is in monitor mode for scanning.)
- Press tab and return to hide the server console window
- Now Kismet is running 😛 You have to press ESC once to reach the menu. Then use the cursor buttons to navigate through the menu. (Note: You have to press at least once a cursor button to show up the menu.)
- To close Kismet use the Quit menu entry or press Ctrl+C. (Don't use the X button as it wouldn't restore the network managers function)
Some further tips:
- To switch between Metric and English display mode go to Kismet > Preferences > GPS...
- Logfiles are located in /home/user/MyDocs (path can be configured in the Kismet server configuration located in /opt/kismet/etc/kismet.conf)
- UI/Client configuration files are located in /home/user/.kismet or /root/.kismet (if running as root)
- Server configuration files are located in /opt/kismet/etc
- Note that running Kismet draws battery because GPS is enabled and the WLAN power management can not be applied in monitor mode
- You can also start the Kismet server and client separately with the commands kismet_server and kismet_client in different X Terminals
- Bluetooth should be disabled, as it influences scanning results very badly. (This may be solve in future monitor mode patches)