root/trunk/wifidog/FAQ

Revision 901, 20.5 KB (checked in by mina, 6 years ago)

Insignificant cleanup of CVS artifacts after svn migration:
1. Remove unneeded .cvsignore files since ths svn:ignore property is set to the same list
2. Replaced $Header$ macros with $Id$
3. Modify a couple of documentation files referring to CVS to SVN

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
Line 
1#
2# $Id$
3#
4# The latest version of this document lives at:
5# http://www.ilesansfil.org/wiki/WiFiDog/FAQ
6#
7# Please check the above URL if you have a FAQ that does not appear here.
8#
9
10WiFiDog/FAQ
11
12The WiFi Dog Captive Portal Frequently Asked Questions
13
14   To alleviate the repetition on the [9][WWW] WiFiDog mailing list, and
15   to help people get started quickly, here are the FAQs:
16    1. [10]The WiFi Dog Captive Portal Frequently Asked Questions
17         1. [11]General questions
18              1. [12]What is WiFiDog ?
19              2. [13]Who makes WiFiDog ?
20              3. [14]Who can use WiFiDog ?
21              4. [15]Who currently uses WiFiDog ?
22              5. [16]What can it do ?
23              6. [17]What is it composed of ?
24              7. [18]What are the main differences between it and NoCat ?
25              8. [19]How does it work ?
26              9. [20]What does it run on ?
27             10. [21]Can I write my own client ?
28             11. [22]Can I write my own auth server ?
29             12. [23]What does it look like ?
30         2. [24]The WiFiDog Client
31              1. [25]What do I need ?
32              2. [26]Pre-installation
33              3. [27]Installation
34              4. [28]Configuration
35              5. [29]Running
36              6. [30]Testing
37         3. [31]The WiFiDog client on a linksys WRT54G
38              1. [32]What do I need ?
39              2. [33]Pre-installation
40              3. [34]Installation
41                   1. [35]Introduction
42                   2. [36]Compiling a MIPS-friendly WiFiDog
43                   3. [37]Getting the new MIPS-friendly WiFiDog onto the
44                      router
45                   4. [38]Actual installation
46              4. [39]Configuration, Running and Testing
47              5. [40]The intricate link between WiFiDog and OpenWRT
48              6. [41]I am not comfortable with linux and don't know how
49                 to do all this compiling stuff. Is there an easier way
50                 for me to get the WiFiDog client running on a Linksys
51                 WRT54G ?
52         4. [42]The WiFiDog auth server
53              1. [43]What do I need ?
54              2. [44]Installation
55              3. [45]Configuration
56              4. [46]Testing
57
58General questions
59
60What is WiFiDog ?
61
62   [47]WiFiDog is software used to create wireless hotspots. It is a
63   next-generation alternative to [48][WWW] NoCat.
64
65Who makes WiFiDog ?
66
67   The technical team of [49]IleSansFil created and maintains
68   [50]WiFiDog.
69
70Who can use WiFiDog ?
71
72   On the legal/licensing front, anyone can use [51]WiFiDog. It is free
73   software released under the GPL license.
74
75   On the practical front, we would like the answer to also be
76   "everyone", however this would not be the truth. The main target user
77   base of [52]WiFiDog is network administrators, hotspot administrators
78   and hackers who "know what they're doing". Odds are that an average
79   windows user would not benefit from, or be able to correctly setup and
80   continually administer a [53]WiFiDog installation.
81
82   If the software ever reaches a point of complete point-and-click ease
83   that we feel average users can safely administer, we will update this
84   document.
85
86Who currently uses WiFiDog ?
87
88   The following companies, organizations, groups or persons are known to
89   use [54]WiFiDog on their hotspots:
90     * [55]IleSansFil
91     * [56][WWW] BC Wireless
92
93What can it do ?
94
95   See the [57]WiFiDog/FeatureList page for the feature list.
96
97What is it composed of ?
98
99   It is composed of 2 components:
100    1. The client is a daemon process - this gets installed on every
101       wireless router
102    2. The auth server is a web application - this gets installed in a
103       central location
104
105What are the main differences between it and NoCat ?
106
107   On the client side, it's smaller, has far fewer dependencies, and runs
108   well on embedded devices.
109
110   On the auth server side, it's more customizable, and is geared towards
111   capitalizing the infrastructure for the purposes of building portals
112   and communities.
113
114How does it work ?
115
116   The client daemon uses firewall rules to control traffic going through
117   the router. When a new user tries to access a web site, the client
118   will transparently re-direct them to the auth server where they can
119   either log-in or sign-up. The client and the auth server then
120   negotiate what to do with the client and either allow or deny them
121   certain network access.
122
123   The client also talks to the auth server every X minutes to update it
124   on vital statistics including uptime, load, traffic count per client,
125   and to let it know it's still there.
126
127   Refer to the [58]WiFiDog/FlowDiagram document for some more details.
128
129What does it run on ?
130
131   The client runs on any linux machine that has a working
132   netfilter+iptables installation.
133
134   The auth server runs on any PHP-enabled web server.
135
136Can I write my own client ?
137
138   Sure, but why ? We've done all the work. The client is written in C
139   and is extremely lightweight so that it runs comfortably in embedded
140   environments such as the [59][WWW] Linksys WRT54G router.
141
142   The client is time-tested and is fairly stable. It is used extensively
143   in [60][WWW] IleSansFil's deployed hotspots.
144
145Can I write my own auth server ?
146
147   Again, we've done all the work. However our auth server at the time of
148   this writing is not as polished as the client. Feel free to make it
149   better or write your own from scratch. If you go with the later option
150   you'll have to respect the same protocol the client uses for the whole
151   system to work correctly.
152
153What does it look like ?
154
155   The client is a daemon process that runs in the background. It looks
156   like zen, chi, the ether, zilch. It has no user interface.
157
158   The auth server is a web application that can be customized via
159   templates to look however you want it to look. To check out
160   [61]IleSansFil's auth server installation see [62][WWW]
161   https://auth.ilesansfil.org
162
163The WiFiDog Client
164
165What do I need ?
166
167    1. Basic proficiency in a linux environment
168    2. A linux OS with netfilter compiled into the kernel
169    3. The iptables package
170    4. The GNU C compiler (gcc). Other compilers may work, but we have
171       not tested and will not support them.
172    5. The latest [63]WiFiDog tarball which can be obtained from
173       [64][WWW] SourceForge
174
175Pre-installation
176
177   This is where a lot of people run into problems, so let's state this
178   in bold:
179
180   MAKE SURE EVERYTHING WORKS FIRST BEFORE INTRODUCING [65]WiFiDog INTO
181   THE ENVIRONMENT
182
183   That especially means:
184     * The router must boot properly
185     * The router must bring up the interfaces properly
186     * The router must set up the routes properly
187     * The router must connect to the internet properly
188     * DNS settings must be set or obtained properly. DNS must work.
189     * DHCP settings (client, server or both) must be set or obtained
190       properly.
191     * If using NAT, the router must setup NAT/masquerading rules with
192       iptables properly
193     * Clients on the desired ([66]WiFi) network must be able to bind,
194       associate, lease and connect the internet properly
195     * All the above must happen automatically when the router starts or
196       gets rebooted
197
198   Do NOT proceed with installing [67]WiFiDog until you've satisfied the
199   above. It will not work otherwise and you will waste lots of time.
200
201Installation
202
203   [68]WiFiDog, like many open source projects, is distributed with
204   standard autotools utilities to make installation easy. Unpack the
205   tarball, then follow the standard:
206./configure
207make
208make install
209
210Configuration
211
212   Edit /etc/wifidog.conf and follow the instructions in the file. Things
213   should be self-explanatory.
214
215Running
216
217   For the first time, run [69]WiFiDog with the following switches:
218wifidog -f -d 7
219
220   -f means to run in foreground (do not become a background daemon)
221
222   -d 7 increases debug output level to the maximum
223
224Testing
225
226   As a client on the [70]WiFi network (or whatever interface is
227   configured as the LAN interface in /etc/wifidog.conf), open a web
228   browser and try to browse to your favourite web site.
229
230   Monitor the output of the running [71]WiFiDog to see what it's doing.
231
232The WiFiDog client on a linksys WRT54G
233
234   Due to the lightness of the [72]WiFiDog client it is often installed
235   inside the linksys WRT54G. There are some profound issues that arise
236   with this setup that it warrants its own section in this FAQ:
237
238What do I need ?
239
240   You will need to have basic/full proficiency in a linux environment
241
242   You need to re-flash your router with a hacker-friendly firmware
243   called [73][WWW] OpenWRT. [74][WWW] Follow the user guide on the
244   OpenWRT site to get this part done.
245
246   Do not proceed until you've completed the above. We also recommend you
247   spend some time familiarizing yourself with your new router's OS
248   before introducing [75]WiFiDog into that environment. This especially
249   includes the nvram settings, network interfaces and existing interface
250   bridges.
251
252Pre-installation
253
254   The same rules apply as the pre-installation in a non-WRT54G
255   environment above. Do not proceed until you've satisfied them. In
256   summary: Make sure EVERYTHING works first.
257
258Installation
259
260Introduction
261
262   Installation of the client on the WRT54G is a bit tricky. The space
263   limitations on the device mean there is no compiler in the OpenWRT
264   operating system. That means that you must compile the client on an
265   external machine then transfer the compiled form onto the router.
266
267   To complicate things more, if you compile your client regularly on a
268   standard x86 desktop the produced binary will not run on the router
269   due to the different type of processor (MIPS) on that router.
270
271   What is needed is called cross-compilation, In that scenario you use
272   an architecture (such as your x86 desktop) to produce binaries
273   explicitly designed to run on a different architecture (your MIPS
274   router).
275
276   The above was the bad news since it makes things sound complicated.
277   The good news is that it's not too complicated and we've built scripts
278   to make this a snap for you. As a matter of fact, you've already done
279   this before!
280
281   Remember when you followed the OpenWRT building instructions ? Without
282   knowing it, you already cross-compiled stuff! You used your desktop to
283   cross-compile an entire operating system for the MIPS architecture
284   which resulted in one compressed firmware image you installed on your
285   router.
286
287Compiling a MIPS-friendly WiFiDog
288
289    1. Download the latest [76][WWW] WiFiDog tarball from sourceforge.
290    2. Uncompress the tarball, enter the directory
291    3. Run the following, replacing /usr/local/openwrt/ with wherever you
292       unpacked the OpenWRT tarball earlier:
293
294ipkg/rules BUILDROOT=/usr/local/openwrt/
295
296   You're done. If all is well you should now have a new file named
297   wifidog_1.1.0_mipsel.ipk (version number may be different depending on
298   the tarball you downloaded).
299
300Getting the new MIPS-friendly WiFiDog onto the router
301
302   The .ipk is a data file for the simple "ipkg/i-Package" package
303   manager already on your router. All that's needed now is to copy that
304   file onto your router. If you have installed the dropbear SSH daemon
305   package on your router you can use scp on your desktop to copy the
306   .ipk file to the router. Otherwise copy that file to any web server
307   you have access to, then use wget on the router to download the file
308   from the web server.
309
310   Either way, place the file in the /tmp/ directory on the router.
311
312Actual installation
313
314   Once you have the .ipk file on the router, use this command to install
315   it:
316ipkg install /tmp/wifidog_1.1.0_mipsel.ipk
317
318   Once that is successful delete the .ipk file from /tmp/ to free the
319   occupied memory.
320
321Configuration, Running and Testing
322
323   Same as the earlier section in a non-WRT54G environment
324
325The intricate link between WiFiDog and OpenWRT
326
327   Repeat after me:
328
329   A [77]WiFiDog RUNNING ON AN OpenWRT INSTALLATION MUST HAVE BEEN
330   COMPILED AGAINST THE SAME OpenWRT BUILDROOT USED TO CREATE THAT
331   INSTALLATION
332
333   What does that mean ?
334    1. If you downloaded and compiled OpenWRT yourself, download and
335       compile [78]WiFiDog yourself against the same buildroot - Do not
336       use someone else's pre-compiled [79]WiFiDog
337    2. If you downloaded a pre-compiled OpenWRT firmware image:
338         1. Ask the person who built it to compile [80]WiFiDog for you
339            against the same buildroot
340         2. Or ask them for a copy of their OpenWRT buildroot so you may
341            compile [81]WiFiDog against it
342
343I am not comfortable with linux and don't know how to do all this compiling
344stuff. Is there an easier way for me to get the WiFiDog client running on a
345Linksys WRT54G ?
346
347   You can use an OpenWRT and [82]WiFiDog compiled by someone else. They
348   must be compiled by the same person against the same OpenWRT
349   buildroot.
350
351   [83]IleSansFil makes it's own pair of OpenWRT images and [84]WiFiDog
352   .ipk compiled files available to the public:
353     * You can download a pre-compiled OpenWRT firmware image [85][WWW]
354       here
355     * And you can download a compatible [86]WiFiDog .ipk file [87][WWW]
356       here
357
358   Look in the [88][WWW] OpenWRT site for instructions on how to re-flash
359   your router with the firmware image (skip any download/building
360   instructions).
361
362   Then follow the above installation instructions for installing the
363   [89]WiFiDog .ipk file into the OpenWRT-flashed router.
364
365   Please note that the above saves you from the knowledge and time
366   needed to compile and produced these binary files. It is however no
367   magical cure for linux illiteracy. You need to be proficient enough in
368   a unix environment to be able to telnet/ssh into the router and
369   perform the outlined installation and configuration tasks. If you do
370   not feel comfortable doing this we advise you consult with someone who
371   is proficient in linux and networking.
372
373The WiFiDog auth server
374
375What do I need ?
376
377   Refer to [90]WiFiDog/AuthServerDoc
378
379Installation
380
381   Refer to [91]WiFiDog/AuthServerDoc
382
383Configuration
384
385   Refer to [92]WiFiDog/AuthServerDoc
386
387Testing
388
389   Refer to [93]WiFiDog/AuthServerDoc
390
391   last edited 2005-03-27 13:11:15 by [94]MinaNaguib
392
393References
394
395   1. http://www.ilesansfil.org/wiki/FrontPage
396   2. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=raw
397   3. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print
398   4. http://www.ilesansfil.org/wiki/WiFiDog
399   5. http://www.ilesansfil.org/wiki/FindPage
400   6. http://www.ilesansfil.org/wiki/TitleIndex
401   7. http://www.ilesansfil.org/wiki/WordIndex
402   8. http://www.ilesansfil.org/wiki/HelpOnFormatting
403   9. http://listes.ilesansfil.org/
404  10. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-b9d27a8844e66371abfbb27bf54669896d8bf4fa
405  11. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-eb7dd5c81583187efb2d29ebc9ab2b6457417b13
406  12. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-e05420efb19364f3fa0844223f1bcfc71be7db00
407  13. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-80293173c84355ebeff2ecbfabaa32edb3c3ae75
408  14. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-2aa554753e8b93818ba5ef190e67e401421931b9
409  15. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-975f3574aa59265dd2b0c45ae96e90c98c8bc7d5
410  16. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-dccf73ff2dcc305d6334dfd0ed90d1c4221b8a12
411  17. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-ebd81c14ab1b66d6aada9fc399597b644e120036
412  18. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-9b4c49acb692c6ba8bc2c0e43a991c5fc7b80220
413  19. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-5aa44a01d2ff78d1e2b5240e0a6c75910d584a0e
414  20. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-738ab14de6f62065ca3daf9dd3341bfcabc06223
415  21. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-6059fbd6c262224baf06331fbe83f319ffe730fa
416  22. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-e8131f271e42589291d507afd89d0c5d24f02ad1
417  23. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-6a764a3be722e0ff8d1446586643ea57d70cd489
418  24. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-a650736551182819fd6f742597362be729d9b70d
419  25. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-57aaa0d1e21d38a7f5bedea65950c36b422cbbb6
420  26. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-2b75ffe2445295c9982d0873d48e11d5cd89816e
421  27. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-930f69b528374c4c55fc91b52e030deef8a93648
422  28. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-4b221edbf4c2383afab601694f2db039700c21cc
423  29. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-9fcf91fbcf4712b6de6d5b70e703192dd882afa8
424  30. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-18cc26d84a97b42f3bc06af0203038062a8efb06
425  31. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-8ba37f479842312562f131032bb11e4fb68942aa
426  32. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-57aaa0d1e21d38a7f5bedea65950c36b422cbbb6-2
427  33. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-2b75ffe2445295c9982d0873d48e11d5cd89816e-2
428  34. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-930f69b528374c4c55fc91b52e030deef8a93648-2
429  35. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-b6830b2e74230b45153f4fa98ee189d5748ec9f0
430  36. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-78504516e51f8fc43cc111b9a8a41a85cb652fff
431  37. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-92221794cfda95baa91352d087656f27754027d2
432  38. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-2474f5bb689b7b06fc3334eb8e29a26ed60c4280
433  39. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-37c9cfe0aa830fa8ef3e6f617bd3c741cca6947c
434  40. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-1dee9a0f840701e6518a0763c48aef734d1996f8
435  41. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-158e6f354a348c9374107d0a66a7f4c84603ba8a
436  42. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-30106563831cfdb0840b05fa48e9194d7876f12e
437  43. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-57aaa0d1e21d38a7f5bedea65950c36b422cbbb6-3
438  44. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-930f69b528374c4c55fc91b52e030deef8a93648-3
439  45. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-4b221edbf4c2383afab601694f2db039700c21cc-2
440  46. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-18cc26d84a97b42f3bc06af0203038062a8efb06-2
441  47. http://www.ilesansfil.org/wiki/WiFiDog
442  48. http://nocat.net/
443  49. http://www.ilesansfil.org/wiki/IleSansFil
444  50. http://www.ilesansfil.org/wiki/WiFiDog
445  51. http://www.ilesansfil.org/wiki/WiFiDog
446  52. http://www.ilesansfil.org/wiki/WiFiDog
447  53. http://www.ilesansfil.org/wiki/WiFiDog
448  54. http://www.ilesansfil.org/wiki/WiFiDog
449  55. http://www.ilesansfil.org/wiki/IleSansFil
450  56. http://www.bcwireless.net/
451  57. http://www.ilesansfil.org/wiki/WiFiDog/FeatureList
452  58. http://www.ilesansfil.org/wiki/WiFiDog/FlowDiagram
453  59. http://www.linksys.com/products/product.asp?prid=508&scid=35
454  60. http://auth.ilesansfil.org/hotspot_status.php
455  61. http://www.ilesansfil.org/wiki/IleSansFil
456  62. https://auth.ilesansfil.org/
457  63. http://www.ilesansfil.org/wiki/WiFiDog
458  64. http://sourceforge.net/projects/wifidog
459  65. http://www.ilesansfil.org/wiki/WiFiDog
460  66. http://www.ilesansfil.org/wiki/WiFi
461  67. http://www.ilesansfil.org/wiki/WiFiDog
462  68. http://www.ilesansfil.org/wiki/WiFiDog
463  69. http://www.ilesansfil.org/wiki/WiFiDog
464  70. http://www.ilesansfil.org/wiki/WiFi
465  71. http://www.ilesansfil.org/wiki/WiFiDog
466  72. http://www.ilesansfil.org/wiki/WiFiDog
467  73. http://openwrt.org/
468  74. http://openwrt.org/OpenWrtDocs
469  75. http://www.ilesansfil.org/wiki/WiFiDog
470  76. http://sourceforge.net/projects/wifidog
471  77. http://www.ilesansfil.org/wiki/WiFiDog
472  78. http://www.ilesansfil.org/wiki/WiFiDog
473  79. http://www.ilesansfil.org/wiki/WiFiDog
474  80. http://www.ilesansfil.org/wiki/WiFiDog
475  81. http://www.ilesansfil.org/wiki/WiFiDog
476  82. http://www.ilesansfil.org/wiki/WiFiDog
477  83. http://www.ilesansfil.org/wiki/IleSansFil
478  84. http://www.ilesansfil.org/wiki/WiFiDog
479  85. http://www.ilesansfil.org/dist/openwrt/
480  86. http://www.ilesansfil.org/wiki/WiFiDog
481  87. http://www.ilesansfil.org/dist/wifidog/
482  88. http://www.openwrt.org/
483  89. http://www.ilesansfil.org/wiki/WiFiDog
484  90. http://www.ilesansfil.org/wiki/WiFiDog/AuthServerDoc
485  91. http://www.ilesansfil.org/wiki/WiFiDog/AuthServerDoc
486  92. http://www.ilesansfil.org/wiki/WiFiDog/AuthServerDoc
487  93. http://www.ilesansfil.org/wiki/WiFiDog/AuthServerDoc
488  94. http://www.ilesansfil.org/wiki/MinaNaguib
Note: See TracBrowser for help on using the browser.