Kismet Server/Drone

From DD-WRT Wiki

Revision as of 16:53, 14 May 2005 by Sveasoft (Talk | contribs)
Jump to: navigation, search

Contents

Introduction

Anyone familiar with Network Stumbler will definately appreciate running Kismet Server or Kismet Drone on their WRT54G, since this router has some of the best radios around, along with nice sturdy RP-TNC connectors to hook up even better antennas to without worry about damaging your wireless card or radio pigtails (I've gone through a number of PCI cards with RP-SMA connectors that keep breaking appart).

This Wiki assumes you already have a current build of DD-WRT installed on your router.

What is Kismet

Kismet is a layer 2 wireless network detector, sniffer, and intrusion detection kit.

Kismet is an OSS project for Linux. Find out more information about it at the Official Kismet Wireless site.

Since Kismet is a Linux project, it can run as either the full server, or just a drone server on the WRT54G router. You are then free to run a Kismet client on your desktop computer view the output.

Server or Drone

Drone
The Kismet project has developed the capability of running Drones: devices with wireless cards that mearly send their data back to a Kismet server. If you run the Kismet Drone on your DD-WRT box, you'll need to run the client and the server elsewhere. Both can be on your desktop computer, or you could have a machine somewhere else running just the server. Running a Kismet drone on your WRT and the Client/Server on a desktop computer(s) seems to be the most common installation. [I was not able to get this to work, so someone else will have to write that part of the HowTo.]

Server
Since the kismet server is capable of running on top of DD-WRT one is able to simplify the installation by only running a client on their desktop machine. I'm not exactly sure what the advantages are, except that this seemed to be easier to install.

Installing & Configuring on the WRT54G

Drone
If you desire to install just the drone on the WRT54G, you'll have to wait until someone more knowledgeable comes along. You can try the links in the external links section.

Just remember that drone setup requires a server somewhere else (on the desktop perhaps?)

Server
Assumptions

 --Your router has SSH configured and you can send files via SSH to and from your desktop
 --You have a text editor capable of Unix line delimiters. TextPad and win32pad are both acceptable (and free).
Failure to use one of these when editing text files will prevent your installation from working --You have telnet enabled on your router. --You have jffs enabled or do mind redoing this whenever the router reboots --I will assume you are installing to the jffs partition. If you are not, replace jffs with tmp or some other folder

Preperation

 The guy at Musatcha.com has put together a great binary to make installation simplier. Download it.
 --Extract the two files to somewhere on your computer.
 --Edit the kismet.conf file 
  -- Find the line "source=wrt54g..."
  -- Change it to "source=wrt54g,prism0,wrt54g"
  -- Find the line "allowedhosts=...."
  -- Change it to "allowedhosts=192.168.1.0/8"
    -- If you are not using 192.168.1.x for your network, substitute your network setup.

Copy the Files

 Load up WinSCP or some other SCP client to copy the files over
 --Browse to /jfss 
 --Make a folder called "kismet_server"
 --Copy kismet_server and kismet.conf from your computer to the /jfss/kismet_server folder on your wrt54g

Installation

 Telnet to your router and finish the configuration.
 -- telnet 192.168.1.1
   --Log in. username: root password : [Your-Routers-Password]
 Disable AP mode and enable passive mode (alternatively, you can choose client mode from the web interface)
 -- enter the command "wl ap 0"
 -- enter the command "wl passive 1"
 Make the server binary executabe
 -- enter the command "chmod 755 /jffs/kismet_server/kismet_server"

Run the Server
A) You can launch the server on startup (let me know if you know how to do this).<br> B) You can telnet into the router and launch it manually.<br> C) You can launch the server manually from the web interface<br> D) You can have a client, such as Musatcha.com, automatically telnet in and launch the server.<br>

 Method A: You can launch the server on startup
 I'm not sure how to do this. I'm not a linux guy.
 Method B: You can telnet into the router and launch it manually.
 Disadvantage: Server will stop if you close the telnet window
 --Telnet into the Router
 --enter the command /jfs/kismet_server/kismet_server -n -f /jfs/kismet_server/kismet.conf
 Method C: Launch the server manually fromt the web interface
 Disadvantage: Server doesn't always start correctly, forcing a reboot to fix 
 --Log into your routers web interface.
 --Click on the Administration Tab
 --Click on the Diagnostics subtab
 --Click the run button
 --Enter the command in the command box and click the "cmd" button.
 Method D: You can have a client, such as Musatcha.com, automatically telnet in and launch the server.
 Disadvantage: Currently can't send Usernames and Passwords, so you have to launch using another method.
 --Visit Musatcha's howto and view step 5.

Installing & Configuring on the Desktop

Choose a client:
If you have a linux box, you can run Kismet client right off your desktop.
If you have a Windows box, you have to do something else.
  A) Use Musatcha.com's WiFi mapping software.
  B) Run Compile Kismet to run on Cygwin
  C) Run the precompiled Kismet for windows on Cygwin.

 Method A: Musatcha.com's WiFi Mapping Software
 -- Read Step 5 from his guide
 Method B: Compile Kismet to run on Cygwin
 --Install Cygwin.
   -- Make sure to install the developer tools. You'll need gcc, make, subversion, etc
 -- svn the source into your cygwin
 -- make, etc. See the guide in the external links. I couldn't get this to work.
 Method C: Precompiled Kismet for Windows on Cygwin
 --Install Cygwin, a *nix environment for Windows. 
   --Minimal install is fine.
 --Download an unzip the precompiled client to a folder
 --Edit kismet_ui.conf to reflect your correct WRT LAN ip address
   --find "host=192.168.1.1:2501"
   --change it if your router is not 192.168.1.1
 --Run kismet_client.exe WHILE your server is running on the router. You may have to 
launch a cygwin command prompt first. Cygwin behaves kinda weird sometimes. --The client is entirely keyboard driven. Press the 'h' key for help. You'll probably want to turn off auto sort right
away so you can view extended information about individual networks. Press the 's' key to do this.

External Links

These are the references I used when creating this wiki
Kismet on the WAP54G
WRT54G with OpenWRT + kismet-drone + kismet-server and kismet_client for windows (XP) running on cygwin
Kismet on Windows How-To guide V0.1


You are here: Main Page/DD-WRT Doku (EN)/Kismet Server/Drone

--Sveasoft 18:29, 14 May 2005 (CEST)