Running Chilli on FreeBSD

Odhiambo Washington odhiambo at
Mon Nov 17 19:03:17 UTC 2008

On Sun, Nov 16, 2008 at 10:20 PM, Oliver Hinckel <info at> wrote:

> Odhiambo Washington wrote on 11/16/2008 07:44 PM:
>> Hello list,
>> Is there a nice little documentation on how to run coova-chilli on FreeBSD
>> somewhere?
> Don't know if there's a documentation for FreeBSD systems.

Well, I will contend with anything that will get me up and running:-)

>  I have crafted a startup script and on testing it, I get the following in
>> /var/log/messages:
>> Nov 16 21:27:57 FreeBSD-7 coova-chilli[50826]: net.c: 306: 17 (File
>> exists) write() failed
>> Nov 16 21:27:57 FreeBSD-7 coova-chilli[50826]: net.c: 57: 6 (Device not
>> configured) ioctl(SIOCSIFFLAGS) failed
>> Nov 16 21:27:57 FreeBSD-7 coova-chilli[50826]: net.c: 33: 6 (Device not
>> configured) ioctl(SIOCSIFFLAGS) failed
>> Nov 16 21:27:57 FreeBSD-7 coova-chilli[50826]: net.c: 99: 6 (Device not
>> configured) ioctl(SIOCSIFADDR) failed
>> Nov 16 21:27:57 FreeBSD-7 coova-chilli[50826]: net.c: 511: 6 (Device not
>> configured) ioctl() failed
>> Nov 16 21:27:57 FreeBSD-7 coova-chilli[50826]: chilli.c: 3438: Failed to
>> create dhcp
> Seems that the network configuration is not correct.
>  I am wondering what I am missing at this point.
> Can you give us more information about your network setup (interface,
> ifconfig, ...)? The configuration file would also be helpful.

Okay. Let me do that and also explain myself in the process:

My chilli.conf:

[wash at FreeBSD-7 /usr/local/etc/chilli]$ less ../chilli.conf
#  Chilli Configuration
#  To configure chilli, see /usr/local/etc/chilli/default
#  and then create your own /usr/local/etc/chilli/config
#  start / stop chilli with @INITDIR@/chilli
#  For help with coova-chilli,
#       visit
#  This file can either contain all your chilli configurations, or include
#  other files, as shown per default below. The idea here is that main.conf
#  contains your main configurations, hs.conf is for your configurations
#  delivered by RADIUS (using the Administrative-User login), and local.conf
#  is for any other settings you might configure by hand for this particular
#  installation.

include /usr/local/etc/chilli/main.conf
include /usr/local/etc/chilli/hs.conf
include /usr/local/etc/chilli/local.conf


So I lifted a main.conf from I must swear that I
barely understand it, as the examples seem rather
specific to a certain site. I am including my main.conf and I have decided
to number each life for ease of explaining the lines I don't understand.

<begin main.conf>
#copy this file into /usr/local/chilli
#& create 2 empty files named hs.conf & local.conf
1. cmdsocket       /var/run/chilli.sock
2. pidfile         /var/run/
3. net   
4. uamlisten
5. uamport         3990
6. dhcpif          vr0
7. adminuser       chillispot
8. adminpasswd     chillispot
9. uamallowed,,,
11. domain                  lan
12. dns1          
13. uamhomepage   
14. wisprlogin    
15. wwwdir                  /usr/local/www/chilli
16. wwwbin                  /usr/local/etc/chilli/wwwsh
17. locationname            "ROWTech Securitet"
18. radiuslocationname      ROWTech_HotSpot
19. radiuslocationid        isocc=,cc=,ac=,network=Coova,
20. radiusserver1 
21. radiusserver2 
22. radiussecret            coova-anonymous
23. radiusauthport          1812
24. radiusacctport          1813
25. uamserver     
26. radiusnasid             nas01

Let's say I have a dual-homed box, with vr0 being the public interface and
fxp0 being the private interface. And say I run a DHCP server on the
internal interface.
Also say I run FreeRADIUS (with MySQL support) on the same box. I also run
my Apache22 on this very box, so it is "everything to me". I have the IP on the internal/private interface (fxp0). Can someone explain
to me what items 6-10, 14, 19, 25 should be?
I am especially not sure how 14 and 25 are being arrived at.

I also have the file named "defaults" which I need to copy to "config". They
are both in /usr/local/etc/chilli/. Looking at them, I see that most of the
parameters are almost like what I see in main.conf. This has left me
confused as what purpose the "config" file is supposed to serve.

All my chilli files are accesible on my webserver via /coova (an Apache
Alias pointer). Now where /app are supposed to come from still beats me.

Am I supposed to be running my own DHCP server or does coova-chilli have
some sort of built-in DHCP server?

At some point, I believe I am going to introduce a Wireless Access Point
into this mix, connected to my DHCP interface, yes? This is how the clients
are going to communicate with the system, correct?

My other problem are two files- and down,sh: I can run either PF or
IPFilter/IPNat on the FreeBSD box, but not IPTABLES. So I am wondering what
the purpose of these two files. What do they do? I do believe IPTables is
for Linux only. Is there a FreeBSD use who can share their *BSD versions of
these two files?

I also had to install haserl from but I still
wonder if it's necessary in my setup. I still haven't quite caught up speed
on this so please excuse my ignorance.

Thank you so much for your time. Let me not ask too much on this mail:-)

Best regards,
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
"Oh My God! They killed init! You Bastards!"
                       --from a /. post
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the Chilli mailing list