Thanks alot everyone

2007-04-30 Thread Jacob Jarick
Thanks very much everyone, specially Phil, Alan and the rest who
helped me but I cant recall just now. I Have fiiinally got it going
(properly this time to).

Here is a quick outline of my setup, I may write a detailed howto later on.

Windows XP home client - cisco wap - freeradius on Fedora - Windows 2003 ADS

FREERADIUS:
I used EAP-TTLS as the encryption / tunneling.
Used certs (needed for TTLS) that came with rpm.
Used PAP inside of EAP-TTLS (sends plain text password which ldap expects)

WINDOWS SERVER:
* Add 1 user with password for ldap searching (cant remember if user
needs special permision to search LDAP).
* Fortunately not much config is needed on the server, enabling
anonymous LDAP searching is very handy when figuring out a new domain
and its users.

WINDOWS XP CLIENTS:
I reccomend using SecureW2 on XP clients as it allows you to use PAP
inside of EAP.
Configure clients with these options:

My windows client details:
Network Authentication: Open
Data Encryption: WEP
the key is provided for me automatically: (ticked)
EAP type: SecureW2
Authenticate as a computer: (unticked)
Authenticate as a guest: (unticked)

Securew2 config details:
use alternate outer identity: (unticked)
verify server cert: (unticked)
Select Authentication Method: PAP
Prompt user for credentials: (ticked)

http://www.securew2.com/
- 
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html


Re: Accounting packets segmentation fault

2007-04-30 Thread Alan DeKok
Milan Holub wrote:
 500 switch(packet-code) {

  Fixed.

  Alan DeKok.
--
  http://deployingradius.com   - The web site of the book
  http://deployingradius.com/blog/ - The blog
- 
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html


Re: request from unknown NAS vulnerability

2007-04-30 Thread Alan DeKok
Milan Holub wrote:
 with latest cvs head:
 * NASes in database
 * when sending 1 access request from NAS not defined in NAS table I get
 following repeating error message (-X) flooding my screen:

  Fixed.

  Alan DeKok.
--
  http://deployingradius.com   - The web site of the book
  http://deployingradius.com/blog/ - The blog
- 
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html


Re: FreeRadius+AD integration

2007-04-30 Thread shrikant Bhat
Hi,
Any one who can help me with this ?
thanks in advance
SB

On 4/27/07, shrikant Bhat [EMAIL PROTECTED] wrote:
 On Line 154 I have default Auth-Type = ntlm_auth. If I comment this
 out I get the Access-reject packet.
 thanks,
 SB

 On 4/27/07, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote:
  Well, it matched something in the users file:
 
  users: Matched entry DEFAULT at line 154
 
 
  Dana 27/4/2007, shrikant Bhat [EMAIL PROTECTED] piše:
 
  Yes I figured that. thanks for that. But the issues is the user I am
  trying to authenticate is not listed in users file or in AD, so I dont
  understand how is it authenticating this user.
  I have attached debug .
  thanks for the help.
  
  *
  rad_recv: Access-Request packet from host 127.0.0.1:32779, id=100, 
  length=59
  User-Name = raduser
  User-Password = radpass
  NAS-IP-Address = 255.255.255.255
  NAS-Port = 0
Processing the authorize section of radiusd.conf
  modcall: entering group authorize for request 3
modcall[authorize]: module preprocess returns ok for request 3
modcall[authorize]: module chap returns noop for request 3
modcall[authorize]: module mschap returns noop for request 3
  rlm_realm: No '@' in User-Name = raduser, looking up realm NULL
  rlm_realm: No such realm NULL
modcall[authorize]: module suffix returns noop for request 3
rlm_eap: No EAP-Message, not doing EAP
modcall[authorize]: module eap returns noop for request 3
  users: Matched entry DEFAULT at line 154
modcall[authorize]: module files returns ok for request 3
  modcall: leaving group authorize (returns ok) for request 3
rad_check_password:  Found Auth-Type ntlm_auth
  auth: type ntlm_auth
Processing the authenticate section of radiusd.conf
  modcall: entering group authenticate for request 3
  radius_xlat: Running registered xlat function of module mschap for
  string 'User-Name'
  radius_xlat:  '--username=raduser'
  radius_xlat:  '--password=radpass'
modcall[authenticate]: module ntlm_auth returns ok for request 3
  modcall: leaving group authenticate (returns ok) for request 3
  Sending Access-Accept of id 100 to 127.0.0.1 port 32779
  Finished request 3
  Going to the next request
  --- Walking the entire request list ---
  Waking up in 6 seconds...
  --- Walking the entire request list ---
  Cleaning up request 3 ID 100 with timestamp 4631d1f0
  Nothing to do.  Sleeping until we see a request.
  
  
  On 4/27/07, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote:
   Error seems to be because shared secret is testing123 not testing 123.
   But you need to paste output od radiusd-X after Access-Request. Open two
   ssh sessions and do radtest from one and radiusd -X from the other.
  
   Ivan Kalik
   Kalik Informatika ISP
  
  
   Dana 27/4/2007, shrikant Bhat [EMAIL PROTECTED] pi e:
  
   I get this error
   [EMAIL PROTECTED] ~]# radtest raduser radpass localhost 0 testing 123
   Sending Access-Request of id 47 to 127.0.0.1 port 1812
   User-Name = raduser
   User-Password = radpass
   NAS-IP-Address = 255.255.255.255
   NAS-Port = 0
   Framed-Protocol = PPP
   rad_recv: Access-Accept packet from host 127.0.0.1:1812, id=47, 
   length=20
   rad_verify: Received Access-Accept packet from client 127.0.0.1 port
   1812 with invalid signature (err=2)!  (Shared secret is incorrect.)
   
   On 4/27/07, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote:
And what happens when you get Access-Request?
   
   
Dana 27/4/2007, shrikant Bhat [EMAIL PROTECTED] pi e:
   
Hello Alan,
I have built and installed 1.1.6 version of FreeRadius. When I test
using radtest it authenticates any user with any pasword, what I mean
by this is it doesnt seem to contact the ADS to lookup the user
information and authenticate. I have attached the debug
*
[EMAIL PROTECTED] raddb]# /usr/local/sbin/radiusd -X
Starting - reading configuration files ...
reread_config:  reading radiusd.conf
Config:   including file: /etc/raddb/clients.conf
Config:   including file: /etc/raddb/snmp.conf
Config:   including file: /etc/raddb/eap.conf
Config:   including file: /etc/raddb/sql.conf
 main: prefix = /usr
 main: localstatedir = /var
 main: logdir = /var/log/radius
 main: libdir = /usr/lib
 main: radacctdir = /var/log/radius/radacct
 main: hostname_lookups = no
 main: max_request_time = 30
 main: cleanup_delay = 5
 main: max_requests = 1024
 main: delete_blocked_requests = 0
 main: port = 0
 main: allow_core_dumps = no
 main: log_stripped_names = no
 main: log_file = /var/log/radius/radius.log
 

FreeRADIUS crash on Solaris 10 after start

2007-04-30 Thread Peter Micunek

Hi all,

I built  FreeRADIUS on Solaris 10

./configure --prefix=/usr/local/freeradius
--with-mysql-include-dir=/usr/local/mysql/include/mysql
--with-mysql-lib-dir=/usr/local/mysql/lib/mysql
--with-openssl-includes=/usr/sfw/include
--with-openssl-libraries=/usr/sfw/lib --without-rlm_perl --without-threads

make
make install

and  when I want to start FreeRADIUS it crash:

# radiusd -X
Config: including file: /usr/local/freeradius/etc/raddb/radiusd.conf
Config: including file: /usr/local/freeradius/etc/raddb/proxy.conf
Config: including file: /usr/local/freeradius/etc/raddb/clients.conf
Config: including file: /usr/local/freeradius/etc/raddb/snmp.conf
Config: including file: /usr/local/freeradius/etc/raddb/eap.conf
Config: including file: /usr/local/freeradius/etc/raddb/sql.conf
Config: including file: /usr/local/freeradius/etc/raddb/sql/mysql-
dialup.conf
FreeRADIUS Version 2.0.0-pre0, for host sparc-sun-solaris2.10, built on Apr
30 2007 at 11:11:35
Starting - reading configuration files ...
read_config_files: reading dictionary
zsh: bus error (core dumped) radiusd -X


# dbx - core
Corefile specified executable: /usr/local/freeradius/sbin/radiusd
For information about new features see `help changes'
To remove this message, put `dbxenv suppress_startup_message 7.5' in your
.dbxrc
Reading radiusd
core file header read successfully
Reading ld.so.1
Reading libradius-2.0.0-pre0.so
Reading libnsl.so.1
Reading libresolv.so.2
Reading libsocket.so.1
Reading libcrypt_i.so.1
Reading libltdl.so.3.1.0
Reading libdl.so.1
Reading libssl.so.0.9.7
Reading libcrypto.so.0.9.7
Reading libc.so.1
Reading libgcc_s.so.1
Reading libgen.so.1
Reading libc_psr.so.1
program terminated by signal BUS (invalid address alignment)
Current function is lrad_isaac (optimized)
37 rngstep( a13, a, b, mm, m, m2, r, x);




I have same problem with FR 1.1.6. Can you help me fix this problem?

My settings:

# gcc -v
Using built-in specs.
Target: sparc-sun-solaris2.10
Configured with:
/net/tibia/export/bldmstr/nightly/20061019_mars_gcc.s10.opt.tarbuild/src/configure
--prefix=/opt/gcc --enable-shared --with-system-zlib
--enable-checking=release --disable-libmudflap --enable-languages=c,c++
--enable-version-specific-runtime-libs
--with-gxx-include-dir=/opt/gcc/include/c++/4.0.3 --with-cpu=v9
Thread model: posix
gcc version 4.0.3 (gccfss)



LD_LIBRARY_PATH=/lib:/usr/local/lib:/usr/sfw/lib:/usr/ccs/lib:/usr/lib:/usr/local/mysql/lib/mysql:/usr/local/freeradius/lib

LDFLAGS=-L/usr/local/lib -R/usr/local/lib -L/usr/local/mysql/lib/mysql
-R/usr/local/mysql/lib/mysql -L/usr/sfw/lib -R/usr/sfw/lib -L/usr/ccs/lib
-R/usr/ccs/lib -L/usr/local/freeradius/lib -R/usr/local/freeradius/lib

PATH=/opt/gcc/bin:/usr/local/bin:/usr/sbin:/usr/bin:/usr/local/mysql/bin:/usr/local/sbin:/opt/csw/bin:/opt/csw/sbin:/usr/sfw/bin:/usr/sfw/sbin:/usr/local/freeradius/sbin:/usr/local/freeradius/bin:/usr/ccs/bin


best regards
Peter Micunek
- 
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html

Re: FreeRadius+AD integration

2007-04-30 Thread Alan DeKok
shrikant Bhat wrote:
...
 Yes I figured that. thanks for that. But the issues is the user I am
 trying to authenticate is not listed in users file or in AD, so I dont
 understand how is it authenticating this user.
 I have attached debug .

  Have you read the debug output?
...
 radius_xlat: Running registered xlat function of module mschap for
 string 'User-Name'
 radius_xlat:  '--username=raduser'
 radius_xlat:  '--password=radpass'
  modcall[authenticate]: module ntlm_auth returns ok for request 3

  What part of that is unclear?

  You think the user isn't in Active Directory.  Yet ntlm_auth is
returning that the user is in AD.  Either the user is in AD, or
ntlm_auth is doing something magical.

  Alan DeKok.
--
  http://deployingradius.com   - The web site of the book
  http://deployingradius.com/blog/ - The blog
- 
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html


Re: FreeRadius+AD integration

2007-04-30 Thread shrikant Bhat
I dont have the user in Active directory, yet  free radius sends a
accept packet.
thanks


On 4/30/07, Alan DeKok [EMAIL PROTECTED] wrote:
 shrikant Bhat wrote:
 ...
  Yes I figured that. thanks for that. But the issues is the user I am
  trying to authenticate is not listed in users file or in AD, so I dont
  understand how is it authenticating this user.
  I have attached debug .

   Have you read the debug output?
 ...
  radius_xlat: Running registered xlat function of module mschap for
  string 'User-Name'
  radius_xlat:  '--username=raduser'
  radius_xlat:  '--password=radpass'
   modcall[authenticate]: module ntlm_auth returns ok for request 3

   What part of that is unclear?

   You think the user isn't in Active Directory.  Yet ntlm_auth is
 returning that the user is in AD.  Either the user is in AD, or
 ntlm_auth is doing something magical.

   Alan DeKok.
 --
   http://deployingradius.com   - The web site of the book
   http://deployingradius.com/blog/ - The blog
 -
 List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html

- 
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html


Re: FreeRADIUS crash on Solaris 10 after start

2007-04-30 Thread Alan DeKok
Peter Micunek wrote:
 and  when I want to start FreeRADIUS it crash:
...
 program terminated by signal BUS (invalid address alignment)
 Current function is lrad_isaac (optimized)
 37 rngstep( a13, a, b, mm, m, m2, r, x);

  Let me guess... it's a 64-bit machine?

 I have same problem with FR 1.1.6. Can you help me fix this problem?

  This is the first I've seen the problem.  Looking at the code, it's
all explicitly 32-bit, so the compiler should produce the correct code
to access 32-bit data that's not aligned on a 64-bit boundary.

  Alan DeKok.
--
  http://deployingradius.com   - The web site of the book
  http://deployingradius.com/blog/ - The blog
- 
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html


Re: FreeRadius+AD integration

2007-04-30 Thread Alan DeKok
shrikant Bhat wrote:
 I dont have the user in Active directory, yet  free radius sends a
 accept packet.

  I did read the debug output, unlike you.  It shows why.  I told you
why.  Stop arguing and read the debug output again, and my responses.

  It's not FreeRADIUS.  You have configured FreeRADIUS to reply with an
Access-Accept if the ntlm_auth module returns OK.  For some reason, the
ntlm_auth is returning OK.  Go find out why that's happening, and fix it.

  Do NOT reply with but freeradius sends an access accept.  That reply
indicates that you're not reading the messages here.  If you're not
going to read the answers to your questions, I suggest you stop asking
the questions.  You're wasting your time, and ours.

  Alan DeKok.
--
  http://deployingradius.com   - The web site of the book
  http://deployingradius.com/blog/ - The blog
- 
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html


EAP-TTLS PEAP MCHAPv2

2007-04-30 Thread Eshun Benjamin
Any one has an idea of how to get rid of 
The server certificate  is  not trusted  because  there are no explicit trust  
settings

on MAC OSX 10.4.9 without selecting always trust these freecertificate


  
___ 
Découvrez une nouvelle façon d'obtenir des réponses à toutes vos questions ! 
Profitez des connaissances, des opinions et des expériences des internautes sur 
Yahoo! Questions/Réponses 
http://fr.answers.yahoo.com- 
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html

Re: FreeRADIUS crash on Solaris 10 after start

2007-04-30 Thread Peter Micunek

Alan,

You are right. It is 64-bit machine but

# file radiusd
radiusd: ELF 32-bit MSB executable SPARC32PLUS Version 1, V8+ Required,
dynamically linked, stripped

regards
Peter Micunek


On 4/30/07, Alan DeKok [EMAIL PROTECTED] wrote:


Peter Micunek wrote:
 and  when I want to start FreeRADIUS it crash:
...
 program terminated by signal BUS (invalid address alignment)
 Current function is lrad_isaac (optimized)
 37 rngstep( a13, a, b, mm, m, m2, r, x);

  Let me guess... it's a 64-bit machine?

 I have same problem with FR 1.1.6. Can you help me fix this problem?

  This is the first I've seen the problem.  Looking at the code, it's
all explicitly 32-bit, so the compiler should produce the correct code
to access 32-bit data that's not aligned on a 64-bit boundary.

  Alan DeKok.
--
  http://deployingradius.com   - The web site of the book
  http://deployingradius.com/blog/ - The blog
-
List info/subscribe/unsubscribe? See
http://www.freeradius.org/list/users.html

- 
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html

checkrad + NoCat

2007-04-30 Thread Milan Holub
Hi all,

I was wondering whether nocat (http://nocat.net/) could be queried for
simultaneous use somehow. I've found only some outdated patch on
http://lists.nocat.net/pipermail/nocat/2003-October/003795.html

I've inspired from the idea and attached is a patch to checkrad.pl.in.
You need additional perl module HTTP::Lite(downloadable from CPAN). I've
tested and it's working well.

In order to deploy checkrad you need to set your nas type to nocat and 
enable simultaneous-use checking for your user(Simultaneous-Use:=1 in users 
file|radcheck|radgroupcheck) 
and your freeradius server has to be allowed in NAS firewall to access
http://$nas_ip:$nas_port/status

NAS iptables -A INPUT -p tcp --dport $nas_port -s $radius_server -j ACCEPT

I hope this can help someone...


Milan Holub
holub (at) thenet (dot) ch

--
 TheNet-Internet Services AG,
 im Bernertechnopark, Morgenstr. 129
 CH-3018, Bern, Switzerland
 031 998 4333, Fax 031 998 4330
 http://www.thenet.ch
 http://wlan.thenet.ch
--
Index: src/main/checkrad.pl.in
===
RCS file: /source/radiusd/src/main/checkrad.pl.in,v
retrieving revision 1.33
diff -u -r1.33 checkrad.pl.in
--- src/main/checkrad.pl.in 1 May 2004 09:32:14 -   1.33
+++ src/main/checkrad.pl.in 30 Apr 2007 13:21:32 -
@@ -32,6 +32,7 @@
 #  mikrotik_telnet  1.1Author: Evren Yurtesen [EMAIL PROTECTED]
 #  mikrotik_snmp1.0Author: Evren Yurtesen [EMAIL PROTECTED]
 #  redback_telnet  Author: Eduardo Roldan
+#  nocat_http  Author: Milan Holub
 #
 #  Config: $debug is the file you want to put debug messages in
 #  $snmpget is the location of your ``snmpget'' program
@@ -43,6 +44,9 @@
 #  $naspass is the location of your NAS admin password file
 #

+# for nocat gateway
+use HTTP::Lite;
+
 $prefix= @prefix@;
 $localstatedir = @localstatedir@;
 $logdir= @logdir@;
@@ -1344,6 +1348,20 @@
 return 0;
 }

+sub nocat_http {
+my ($nas_ip, $nas_port, $login, $session_id) = ($ARGV[1], $ARGV[2], $ARGV[3], $ARGV[4]);
+my $http = new HTTP::Lite;
+my $req = $http-request(http://$nas_ip:$nas_port/status;) or die Unable to get document: $!;
+die Request failed ($req): .$http-status_message() if $req ne 200;
+my $body = $http-body();
+#print $body;
+if ($body =~ /^trtd$login\/td.*td.*$session_id\/td.*\/tr$/m) {
+print LOG User is logged in! if ($debug);
+return 1;
+}
+return 0;
+}
+
 ###

 # Poor man's getopt (for -d)
@@ -1418,6 +1436,8 @@
 $ret = mikrotik_snmp;
 } elsif ($ARGV[0] eq 'redback'){
 $ret = redback_telnet;
+} elsif ($ARGV[0] eq 'nocat'){
+$ret = nocat_http;
 } elsif ($ARGV[0] eq 'other') {
$ret = 1;
 } else {
- 
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html

No available IP Addresses in the pool ...

2007-04-30 Thread Florin
Hello everyone,

FreeRadius 1.0.1 from RHEL 4.

I get the following error (only shown in debug mode) after 1-2 weeks of 
server working fine, without any issues:

rlm_ippool: Searching for an entry for nas/port: 172.25.254.218/9931392
rlm_ippool: No available ip addresses in pool.
   modcall[post-auth]: module pool_name returns notfound for request 0

The outcome of this error is that the client is not issued any IP 
address (which is a show stopper).

Here is the pool declaration:

#  IP pool used by 
#--
ippool *** {
range-start = 172.26.4.1
range-stop = 172.26.5.254
netmask = 255.255.254.0
cache-size = 300
session-db = ${raddbdir}/ippools/*-db.ippool
ip-index = ${raddbdir}/ippools/*-db.ipindex
override = no
maximum-timeout = 86400
}

The only fix so far was to remove the pool files and recreate them again.

Any thoughts of what could be wrong ?

Many thanks in advance.

Regards,
Florin
- 
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html


Freeradius proxy code questions and proposed patch

2007-04-30 Thread Kostas Zorbadelos
Hello to everyone.

In a previous thread 
http://www.mail-archive.com/freeradius-users@lists.freeradius.org/msg33354.html 
I had described a strange behavior in our large proxy setup. After
running the server in debug mode (radiusd -xxx) in our production
systems we found out what was causing our problems. The problem was
that the home server in our proxy setup was marked dead quite often
during the day and with a dead_time of 30 secs every request that came
within these 30 secs was rejected.

Our proxy conf initially looked like the following:

  proxy server {

synchronous = yes

retry_delay = 0

retry_count = 0

dead_time = 30
default_fallback = yes

post_proxy_authorize = no

}

###
#
#  Configuration for the proxy realms.
#
...

We first changed the dead_time to 0 so as to avoid marking the home
server dead in synchronous mode.
Additionally, we implemented the following patch (against version 1.1.6):

--- ./src/main/files.c.orig 2007-04-23 15:14:14.569932000 +0300
+++ ./src/main/files.c  2007-04-23 15:22:30.995686000 +0300
@@ -489,6 +489,15 @@
if (cl-last_reply  (( now - 
mainconfig.proxy_retry_delay * mainconfig.proxy_retry_count ))) {
continue;
}
+   /*
+* If we are running in synchronous proxy mode, there's 
no point marking the target
+* server(s) dead, since this should be done by the 
radius client
+*/
+   if (mainconfig.proxy_synchronous) {
+   radlog(L_PROXY, authentication server %s:%d 
for realm %s seems unresponsive.,
+   cl-server, port, cl-realm);
+   continue;
+   }

cl-active = FALSE;
cl-wakeup = now + mainconfig.proxy_dead_time;
@@ -498,6 +507,15 @@
if (cl-last_reply  (( now - 
mainconfig.proxy_retry_delay * mainconfig.proxy_retry_count ))) {
continue;
}
+   /*
+* If we are running in synchronous proxy mode, there's 
no point marking the target
+* server(s) dead, since this should be done by the 
radius client
+*/
+   if (mainconfig.proxy_synchronous) {
+   radlog(L_PROXY, accounting server %s:%d for 
realm %s seems unresponsive.,
+   cl-acct_server, port, cl-realm);
+   continue;
+   }

cl-acct_active = FALSE;
cl-acct_wakeup = now + mainconfig.proxy_dead_time;


The purpose of this patch is to not have the freeradius server mark
the home server dead when working in synchronous mode. We believe that
in synchronous operation it is a good idea to leave the job of marking
the server dead to the NAS client.

All the above actions solved our initial problems. However, after a
while we noticed again clients being rejected when they shouldn't. 

The following code in request_list.c caught my attention:

/*
 *  Refresh a request, by using proxy_retry_delay, cleanup_delay,
 *  max_request_time, etc.
 *
 *  When walking over the request list, all of the per-request
 *  magic is done here.
 */
static int refresh_request(REQUEST *request, void *data)
{
...
(around line 1264 version 1.1.6)

} else if (request-proxy  !request-proxy_reply) {
/*
 *  The request is NOT finished, but there is an
 *  outstanding proxy request, with no matching
 *  proxy reply.
 *
 *  Wake up when it's time to re-send
 *  the proxy request.
 *
 *  But in synchronous proxy, we don't retry but we update
 *  the next retry time as NAS has not resent the request
 *  in the given retry window.
 */
if (mainconfig.proxy_synchronous) {
/*
 *  If the retry_delay * count has passed,
 *  then mark the realm dead.
 */
if (info-now  (request-timestamp + 
(mainconfig.proxy_retry_delay * mainconfig.proxy_retry_count))) {
rad_assert(request-child_pid == 
NO_SUCH_CHILD_PID);
request_reject(request);

realm_disable(request-proxy-dst_ipaddr,
  request-proxy-dst_port);
request-finished = TRUE;
  

RE : No available IP Addresses in the pool ...

2007-04-30 Thread Thibault Le Meur

 
 Hello everyone,
 
 FreeRadius 1.0.1 from RHEL 4.
 
 I get the following error (only shown in debug mode) after 
 1-2 weeks of 
 server working fine, without any issues:
 
 rlm_ippool: Searching for an entry for nas/port: 
 172.25.254.218/9931392
 rlm_ippool: No available ip addresses in pool.
modcall[post-auth]: module pool_name returns notfound 
 for request 0

 
 The only fix so far was to remove the pool files and recreate 
 them again.
 
 Any thoughts of what could be wrong ?

First check if your assigned IP addresses are released from the pool:

man rlm_ippool_tool

If not, confirm that the pool module name is defined in the acctounting{}
section of radiusd.conf and that your NAS sends accounting Stop messages.

HTH,
Thibault


- 
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html


Re: No available IP Addresses in the pool ...

2007-04-30 Thread Alan DeKok
Florin wrote:
 FreeRadius 1.0.1 from RHEL 4.

  I wonder what it would take to convince RedHat to use a version that
wasn't almost THREE YEARS out of date.

 I get the following error (only shown in debug mode) after 1-2 weeks of 
 server working fine, without any issues:
 
 rlm_ippool: Searching for an entry for nas/port: 172.25.254.218/9931392
 rlm_ippool: No available ip addresses in pool.
modcall[post-auth]: module pool_name returns notfound for request 0
 
 The outcome of this error is that the client is not issued any IP 
 address (which is a show stopper).

  Maybe the pool really is full?  If the server doesn't get logout
packets, it will not be able to release IP's.  See also
rlm_ippool_tool for how to release IP's.

 Any thoughts of what could be wrong ?

  Ask Redhat to use a recent version, among other things.

  Alan DeKok.
--
  http://deployingradius.com   - The web site of the book
  http://deployingradius.com/blog/ - The blog
- 
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html


Re: Freeradius proxy code questions and proposed patch

2007-04-30 Thread Alan DeKok
Kostas Zorbadelos wrote:
 I had described a strange behavior in our large proxy setup. After
 running the server in debug mode (radiusd -xxx) in our production
 systems we found out what was causing our problems. The problem was
 that the home server in our proxy setup was marked dead quite often
 during the day and with a dead_time of 30 secs every request that came
 within these 30 secs was rejected.

  Yes.  In 1.x, the proxy code does this.  It's fixed in 2.0, which
should be released real soon now.

 +   /*
 +* If we are running in synchronous proxy mode, 
 there's no point marking the target
 +* server(s) dead, since this should be done by the 
 radius client

  Uh, no.  The RADIUS client doesn't know about the home servers.  It
only knows about the server it's sending packets to.

 The purpose of this patch is to not have the freeradius server mark
 the home server dead when working in synchronous mode. We believe that
 in synchronous operation it is a good idea to leave the job of marking
 the server dead to the NAS client.

  Which server?  All your patch does is make sure that the NAS marks the
proxying server as dead.

...
 It seems that in some strange occations the code enters the above
 path. A decision is made in case the current time is older than
 mainconfig.proxy_retry_delay * mainconfig.proxy_retry_count. If this
 is the case, the request is rejected and the code tries to disable the
 realm. However in the proxy.conf configuration file it is mentioned:

  All of that code is *gone* in 2.0.  The new code is so much better
that it's really quite hard to describe how much better it is.

 Please let me know your thoughts on these matters (also on the patch
 we provide)

  Take a look at the current CVS snapshot.  It should be pretty robust
with some recent bug fixes, and it will solve *all* of your proxying
problems.

  And I do mean ALL of the problems.

  Alan DeKok.
--
  http://deployingradius.com   - The web site of the book
  http://deployingradius.com/blog/ - The blog
- 
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html


Re: FreeRADIUS crash on Solaris 10 after start

2007-04-30 Thread Alan DeKok
Peter Micunek wrote:
 Alan,
 
 You are right. It is 64-bit machine but
 
 # file radiusd
 radiusd: ELF 32-bit MSB executable SPARC32PLUS Version 1, V8+ Required,
 dynamically linked, stripped

  shrug  The data structures are marked as being 32-bit.  The compiler
should generate the appropriate instructions to perform 32-bit accesses
without causing bus errors due to alignment issues.

  I'm not sure what to suggest.  Maybe a Solaris / Sparc expert knows more.

  Alan DeKok.
--
  http://deployingradius.com   - The web site of the book
  http://deployingradius.com/blog/ - The blog
- 
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html


Re: Freeradius Auth via LDAP against Active Directory Server 2003

2007-04-30 Thread Ryan Kramer

depending on the wifi auth method, you may want to also investigate a
NTLM_AUTH method instead of straight ldap.  This requires the freeradius
machine to be a member of the domain, but once you do that it works great.



On 4/29/07, Jacob Jarick [EMAIL PROTECTED] wrote:


OK tried with 1.1.4 and yerp works great.

radiusd -X output: http://pastebin.ca/464153
radiusd.conf: http://pastebin.ca/464156

I also realised a mistake I have been making, see I want to search the
whole active directory, hence I kept setting my basedn without an ou.
After seeing your excellent example and auth'ing had failed I stuck in
an OU and tried a user from the OU and worked fine.

So my questions is this, to auth people from multiple OU's do I create
a new ldap module for each OU or is their a simpler way.

Thanks Very much for your help Phil, its been a very productive
weekend thanks to the info you provided.

My challenge for monday will be setting up the cisco and wireless clients
now :)

On 4/29/07, Jacob Jarick [EMAIL PROTECTED] wrote:
 radiusd.conf: http://pastebin.ca/464133
 radius -X ouput: http://pastebin.ca/464138

 Tried with 1.1.6 and fails with this error:

 rlm_ldap: reading ldap-radius mappings from file
/etc/raddb/ldap.attrmap
 rlm_ldap: Opening file /etc/raddb/ldap.attrmap failed
 rlm_ldap: Reading dictionary mappings from file /etc/raddb/ldap.attrmap
failed
 radiusd.conf[540]: ldap: Module instantiation failed.
 radiusd.conf[586] Unknown module ldap.
 radiusd.conf[586] Failed to parse ldap entry.
 -
 /etc/raddb/ldap.attrmap does exist as provided by the rpm.

 [EMAIL PROTECTED] src]# ls -l /etc/raddb/ldap.attrmap
 -rw-r- 1 root root 2424 Apr 19 16:32 /etc/raddb/ldap.attrmap

 I assume the permissions are correct, as it was installed by rpm. Im
 building the 1.1.4 rpm now, will report back once done.

 On 4/29/07, Jacob Jarick [EMAIL PROTECTED] wrote:
  Thanks for the very detailed instructions.
 
  I will attempt this shortly (bought rad  ad servers home for weekend
study).
 
  Quite possible the biggest learning curve for me is the ldap fields
  but I am finally starting to get familar with them.
 
  Cheers again, will post back once Ive run the radtest.
 
  On 4/28/07, Phil Mayers [EMAIL PROTECTED] wrote:
   I haven't been following your (quite extensive) queries, so
apologies if
   I've missed something fundamental.
  
   I honestly don't know why this is proving so difficult. I've just
tested
   this against our own 2k3 AD service, and although I'm pretty
familiar
   with FR it took under 5 minutes. Try following the instructions
below.
   These were tested with FreeRadius 1.1.4
  
   1. First, create or locate an existing account which FreeRadius can
bind
   and do it's searches as. Record the following variables:
  
   SEARCHDN=the DN of the account
   SEARCHPW=the password
   BASEDN=the DN below which all your accounts live in AD
   ADHOST=hostname of the AD controller you'll search against
  
   For example, these might be:
  
   SEARCHDN=CN=freeradius,OU=Users,OU=My Site,DC=mysite,DC=com
   SEARCHPW=blahblah
   BASEDN=OU=My Site,DC=mysite,DC=com
  
   2. Next, take the default radiusd.conf
  
   3. Find the start of the modules section:
  
   modules {
 ...
  
   Delete this line and all the following lines
  
   4. Insert the following config:
  
   modules {
  ldap {
server = $ADHOST
identity = $SEARCHDN
password = $SEARCHPW
  
basedn = $BASEDN
filter = (sAMAccountName=%{Stripped-User-Name:-%{User-Name}})
  
dictionary_mapping = ${raddbdir}/ldap.attrmap
  
ldap_connections_number = 5
timeout = 4
timelimit = 3
net_timeout = 1
  }
  
  preprocess {
huntgroups = ${confdir}/huntgroups
hints = ${confdir}/hints
  
with_ascend_hack = no
ascend_channels_per_line = 23
  
with_ntdomain_hack = no
with_specialix_jetstream_hack = no
with_cisco_vsa_hack = no
  }
  
  detail {
detailfile = ${radacctdir}/%{Client-IP-Address}/detail-%Y%m%d
detailperm = 0644
  }
  
   }
  
   instantiate {
   }
  
   authorize {
  preprocess
  
  ldap
   }
  
   authenticate {
  Auth-Type LDAP {
ldap
  }
   }
  
  
   preacct {
  preprocess
   }
  
   accounting {
  detail
   }
  
  
   session {
   }
  
   post-auth {
   }
  
   pre-proxy {
   }
  
   post-proxy {
   }
  
   5. Start the server with -X
  
   6. Run radtest to send a checking PAP request
  
   It should work.
  
   The above config is the ABSOLUTE BARE MINIMUM server config which
will
   check PAP requests ONLY against an AD LDAP server. I do NOT
recommend
   you go into service with this config. Try to look at it, understand
how
   it's doing what it's doing, *then* start again with the default
   FreeRadius config and make the absolute minimum changes to get back
to
   that point.
   -
   List info/subscribe/unsubscribe? See

Re: Freeradius proxy code questions and proposed patch

2007-04-30 Thread Kostas Zorbadelos
On Mon, Apr 30, 2007 at 05:41:06PM +0200, Alan DeKok wrote:
 Kostas Zorbadelos wrote:

  I had described a strange behavior in our large proxy setup. After
  running the server in debug mode (radiusd -xxx) in our production
  systems we found out what was causing our problems. The problem was
  that the home server in our proxy setup was marked dead quite often
  during the day and with a dead_time of 30 secs every request that came
  within these 30 secs was rejected.
 
   Yes.  In 1.x, the proxy code does this.  It's fixed in 2.0, which
 should be released real soon now.
 
  +   /*
  +* If we are running in synchronous proxy mode, 
  there's no point marking the target
  +* server(s) dead, since this should be done by the 
  radius client
 
   Uh, no.  The RADIUS client doesn't know about the home servers.  It
 only knows about the server it's sending packets to.
 

Precicely. But when we work in 'synchronous' mode we want the NAS to
be in charge of the retransmision policy not our proxy server. If the
home server does not reply for any reason, we want the client (NAS) to
notice it and retransmit. Eventually, the client will mark our proxy
server dead not because it is its fault, but because the home server
is not responding.  

  The purpose of this patch is to not have the freeradius server mark
  the home server dead when working in synchronous mode. We believe that
  in synchronous operation it is a good idea to leave the job of marking
  the server dead to the NAS client.
 
   Which server?  All your patch does is make sure that the NAS marks the
 proxying server as dead.
 

Eventually, yes this is what the NAS will do. All that is due to the
synchronous mode in proxy operation.

 ...
  It seems that in some strange occations the code enters the above
  path. A decision is made in case the current time is older than
  mainconfig.proxy_retry_delay * mainconfig.proxy_retry_count. If this
  is the case, the request is rejected and the code tries to disable the
  realm. However in the proxy.conf configuration file it is mentioned:
 
   All of that code is *gone* in 2.0.  The new code is so much better
 that it's really quite hard to describe how much better it is.
 
  Please let me know your thoughts on these matters (also on the patch
  we provide)
 
   Take a look at the current CVS snapshot.  It should be pretty robust
 with some recent bug fixes, and it will solve *all* of your proxying
 problems.
 
   And I do mean ALL of the problems.
 

I have read in the list about the major clean up version 2.0 of the
server will be. While reading the code of versions 1.x I could see
that there is great room for improvement. I will take a look in the
2.0 sources and I look forward to testing it when it becomes
available. 

Thanks a lot Alan.

Kostas

   Alan DeKok.
 --
   http://deployingradius.com   - The web site of the book
   http://deployingradius.com/blog/ - The blog
- 
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html


Re: EAP-TTLS PEAP MCHAPv2

2007-04-30 Thread Peter Nixon
On Mon 30 Apr 2007, Eshun Benjamin wrote:
 Any one has an idea of how to get rid of
 The server certificate  is  not trusted  because  there are no explicit
 trust  settings

 on MAC OSX 10.4.9 without selecting always trust these freecertificate

Yep. Buy a certificate that your machine trusts :-)

-- 

Peter Nixon
http://www.peternixon.net/
PGP Key: http://www.peternixon.net/public.asc
- 
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html


Re: Different Groups

2007-04-30 Thread Norman Zhang
[EMAIL PROTECTED] wrote:
 Yes. Use NAS-IP-Address as check item. If you need a list of groups
 and/or users/callerIDs/etc. that are allowed then use a huntgroup.

I added the following lines to huntgroup.

fw-pix  NAS-IP-Address == 10.0.0.1
fw-pix  NAS-IP-Address == 10.0.0.2

fw-pix-groupNAS-IP-Address == 10.0.0.1
User-Name = fw-admin,
Group = fw-group

However, I'm getting the following error. Could someone please give me 
few pointers?

Norman

---

Going to the next request
--- Walking the entire request list ---
Waking up in 1 seconds...
--- Walking the entire request list ---
Cleaning up request 5 ID 25 with timestamp 46362f79
Waking up in 1 seconds...
--- Walking the entire request list ---
Sending Access-Reject of id 26 to 10.0.0.1:1812
 Cisco-AVPair = shell:priv-lvl=1
Waking up in 4 seconds...
rad_recv: Access-Request packet from host 10.0.0.1:1812, id=27, length=109
 User-Name = fw-admin
 NAS-IP-Address = 10.0.0.1
 Calling-Station-Id = 10.0.0.3
 User-Password = \025\372\202`\370RE\005\327\231^\200\303\353
 NAS-Port = 27
 Cisco-AVPair = ip:source-ip=10.0.0.3
   Processing the authorize section of radiusd.conf
modcall: entering group authorize for request 7
   modcall[authorize]: module preprocess returns ok for request 7
   modcall[authorize]: module chap returns noop for request 7
   modcall[authorize]: module mschap returns noop for request 7
 rlm_realm: No '@' in User-Name = fw-admin, looking up realm NULL
 rlm_realm: No such realm NULL
   modcall[authorize]: module suffix returns noop for request 7
   rlm_eap: No EAP-Message, not doing EAP
   modcall[authorize]: module eap returns noop for request 7
 users: Matched DEFAULT at 152
   modcall[authorize]: module files returns ok for request 7
modcall: group authorize returns ok for request 7
   rad_check_password:  Found Auth-Type System
auth: type System
   Processing the authenticate section of radiusd.conf
modcall: entering group authenticate for request 7
rlm_unix: [fw-admin]: invalid password
   modcall[authenticate]: module unix returns reject for request 7
modcall: group authenticate returns reject for request 7
auth: Failed to validate the user.
Login incorrect: [fw-admin] (from client pix-network port 27 cli 10.0.0.3)
   WARNING: Unprintable characters in the password. ?  Double-check the 
shared secret on the server and the NAS!
Delaying request 7 for 1 seconds
Finished request 7
Going to the next request
--- Walking the entire request list ---
Waking up in 1 seconds...
--- Walking the entire request list ---
Cleaning up request 6 ID 26 with timestamp 46362f7e
Waking up in 1 seconds...
--- Walking the entire request list ---
Sending Access-Reject of id 27 to 10.0.0.1:1812
 Cisco-AVPair = shell:priv-lvl=1
Waking up in 4 seconds...
--- Walking the entire request list ---
Cleaning up request 7 ID 27 with timestamp 46362f83
Nothing to do.  Sleeping until we see a request.

- 
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html


Re: EAP-TTLS PEAP MCHAPv2

2007-04-30 Thread Guy Davies
Or, if you're using an Enterprise CA with a self signed cert, then
make sure that the CA's cert is installed on your Mac.  I do this at
home and it's fine once you've installed the CA's cert.

Rgds,

Guy

On 30/04/07, Peter Nixon [EMAIL PROTECTED] wrote:
 On Mon 30 Apr 2007, Eshun Benjamin wrote:
  Any one has an idea of how to get rid of
  The server certificate  is  not trusted  because  there are no explicit
  trust  settings
 
  on MAC OSX 10.4.9 without selecting always trust these freecertificate

 Yep. Buy a certificate that your machine trusts :-)

 --

 Peter Nixon
 http://www.peternixon.net/
 PGP Key: http://www.peternixon.net/public.asc
 -
 List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html

- 
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html


Maximum Attribute Size

2007-04-30 Thread Matt Dunkin
Is there any maximum size for the value of an attribute?

Thanks,
Matt
- 
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html


Re: Maximum Attribute Size

2007-04-30 Thread Alan DeKok
Matt Dunkin wrote:
 Is there any maximum size for the value of an attribute?

  The RFC's say 253 bytes.

  Alan DeKok.
--
  http://deployingradius.com   - The web site of the book
  http://deployingradius.com/blog/ - The blog
- 
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html


Re: SQL for return attributes only?

2007-04-30 Thread Hugh Messenger
Phil Mayers [EMAIL PROTECTED] wrote:
 Hugh Messenger wrote:

 Is it possible with freeradius to use SQL to retrieve certain return
 attributes (in this case rate limiting values for PPPOE sessions),
 whilst still handling authentication through PAM?


 Yes.

Great!

Thanks for the pointers, very much appreciated.  I got the basic AD 
authentication going with pam/winbind, about to dive head first into the SQL 
docs, armed with your suggestions and a powerful need to get this going by 
Friday.

No doubt I'll be back soon with more questions, but I'll give it The Good 
Old College Try before I bug you any more.

   -- hugh


- 
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html


Re: Freeradius Auth via LDAP against Active Directory Server 2003

2007-04-30 Thread Jacob Jarick
Thanks for the Tip ryan but I have been down that road and 2 reasons stopped me:

1 - no way of retrieving ldap groups
2 - Been requested not to have samba on the machine.

ntlm_auth was very straight forward for me because it supports all the
encryption methods.

On 5/1/07, Ryan Kramer [EMAIL PROTECTED] wrote:
 depending on the wifi auth method, you may want to also investigate a
 NTLM_AUTH method instead of straight ldap.  This requires the freeradius
 machine to be a member of the domain, but once you do that it works great.




 On 4/29/07, Jacob Jarick [EMAIL PROTECTED] wrote:
  OK tried with 1.1.4 and yerp works great.
 
  radiusd -X output: http://pastebin.ca/464153
  radiusd.conf: http://pastebin.ca/464156
 
  I also realised a mistake I have been making, see I want to search the
  whole active directory, hence I kept setting my basedn without an ou.
  After seeing your excellent example and auth'ing had failed I stuck in
  an OU and tried a user from the OU and worked fine.
 
  So my questions is this, to auth people from multiple OU's do I create
  a new ldap module for each OU or is their a simpler way.
 
  Thanks Very much for your help Phil, its been a very productive
  weekend thanks to the info you provided.
 
  My challenge for monday will be setting up the cisco and wireless clients
 now :)
 
  On 4/29/07, Jacob Jarick [EMAIL PROTECTED]  wrote:
   radiusd.conf: http://pastebin.ca/464133
   radius -X ouput: http://pastebin.ca/464138
  
   Tried with 1.1.6 and fails with this error:
  
   rlm_ldap: reading ldap-radius mappings from file
 /etc/raddb/ldap.attrmap
   rlm_ldap: Opening file /etc/raddb/ldap.attrmap failed
   rlm_ldap: Reading dictionary mappings from file /etc/raddb/ldap.attrmap
 failed
   radiusd.conf[540]: ldap: Module instantiation failed.
   radiusd.conf[586] Unknown module ldap.
   radiusd.conf[586] Failed to parse ldap entry.
   -
   /etc/raddb/ldap.attrmap does exist as provided by the rpm.
  
   [EMAIL PROTECTED] src]# ls -l /etc/raddb/ldap.attrmap
   -rw-r- 1 root root 2424 Apr 19 16:32 /etc/raddb/ldap.attrmap
  
   I assume the permissions are correct, as it was installed by rpm. Im
   building the 1.1.4 rpm now, will report back once done.
  
   On 4/29/07, Jacob Jarick [EMAIL PROTECTED] wrote:
Thanks for the very detailed instructions.
   
I will attempt this shortly (bought rad  ad servers home for weekend
 study).
   
Quite possible the biggest learning curve for me is the ldap fields
but I am finally starting to get familar with them.
   
Cheers again, will post back once Ive run the radtest.
   
On 4/28/07, Phil Mayers [EMAIL PROTECTED] wrote:
 I haven't been following your (quite extensive) queries, so
 apologies if
 I've missed something fundamental.

 I honestly don't know why this is proving so difficult. I've just
 tested
 this against our own 2k3 AD service, and although I'm pretty
 familiar
 with FR it took under 5 minutes. Try following the instructions
 below.
 These were tested with FreeRadius 1.1.4

 1. First, create or locate an existing account which FreeRadius can
 bind
 and do it's searches as. Record the following variables:

 SEARCHDN=the DN of the account
 SEARCHPW=the password
 BASEDN=the DN below which all your accounts live in AD
 ADHOST=hostname of the AD controller you'll search against

 For example, these might be:

 SEARCHDN=CN=freeradius,OU=Users,OU=My
 Site,DC=mysite,DC=com
 SEARCHPW=blahblah
 BASEDN=OU=My Site,DC=mysite,DC=com

 2. Next, take the default radiusd.conf

 3. Find the start of the modules section:

 modules {
   ...

 Delete this line and all the following lines

 4. Insert the following config:

 modules {
ldap {
  server = $ADHOST
  identity = $SEARCHDN
  password = $SEARCHPW

  basedn = $BASEDN
  filter =
 (sAMAccountName=%{Stripped-User-Name:-%{User-Name}})

  dictionary_mapping = ${raddbdir}/ldap.attrmap

  ldap_connections_number = 5
  timeout = 4
  timelimit = 3
  net_timeout = 1
}

preprocess {
  huntgroups = ${confdir}/huntgroups
  hints = ${confdir}/hints

  with_ascend_hack = no
  ascend_channels_per_line = 23

  with_ntdomain_hack = no
  with_specialix_jetstream_hack = no
  with_cisco_vsa_hack = no
}

detail {
  detailfile =
 ${radacctdir}/%{Client-IP-Address}/detail-%Y%m%d
  detailperm = 0644
}

 }

 instantiate {
 }

 authorize {
preprocess

ldap
 }

 authenticate {
Auth-Type LDAP {
  ldap
}
 }


 preacct {
preprocess
 }

 accounting {
detail
 }