Add freeradius, a RADIUS daemon implementation compatible with

livingston radiusd-2.01.

This RADIUS implementation implements MS-CHAP authentication whereas
most or all of the others don't.

Forced into it by:	wollman (after removing freeradius-devel)
This commit is contained in:
Brian Somers 2002-05-10 18:59:23 +00:00
parent e255e727ce
commit 834673abe2
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=58874
14 changed files with 590 additions and 0 deletions

43
net/freeradius/Makefile Normal file
View File

@ -0,0 +1,43 @@
# New ports collection makefile for: freeradius
# Date created: May 9 2002
# Whom: Brian Somers <brian@FreeBSD.org>
#
# $FreeBSD$
#
PORTNAME= freeradius
PORTVERSION= 0.5
CATEGORIES= net
MASTER_SITES= ftp://ftp.freeradius.org/pub/radius/ \
ftp://ftp.Awfulhak.org/pub/radius/
MAINTAINER= brian@FreeBSD.org
LIB_DEPENDS= gdbm.2:${PORTSDIR}/databases/gdbm
HAS_CONFIGURE= yes
CONFIGURE_ARGS= --quiet --with-logdir=/var/log
MAN1= radclient.1 radlast.1 radtest.1 raduse.1 radwho.1 radzap.1
MAN5= acct_users.5 clients.5 dictionary.5 naslist.5 radiusd.conf.5 \
users.5
MAN8= builddbm.8 radiusd.8 radwatch.8
RADDB= acct_users attrs clients clients.conf dictionary \
dictionary.acc dictionary.aptis dictionary.ascend \
dictionary.bay dictionary.cisco dictionary.compat \
dictionary.erx dictionary.foundry dictionary.freeradius \
dictionary.livingston dictionary.microsoft dictionary.nomadix \
dictionary.quintum dictionary.redback dictionary.shasta \
dictionary.shiva dictionary.tunnel dictionary.usr \
dictionary.versanet hints huntgroups ldap.attrmap naslist \
naspasswd postgresql.conf proxy.conf radiusd.conf realms \
snmp.conf sql.conf users x99.conf
post-install:
.for db in ${RADDB}
${INSTALL_DATA} ${WRKSRC}/raddb/${db} ${PREFIX}/etc/raddb/${db}.sample
.endfor
${INSTALL_SCRIPT} ${FILESDIR}/radiusd.sh ${PREFIX}/etc/rc.d/radiusd.sh
.include <bsd.port.mk>

1
net/freeradius/distinfo Normal file
View File

@ -0,0 +1 @@
MD5 (freeradius-0.5.tar.gz) = 0e56b17d4bf7e0cf4885b8fa2a2fa859

View File

@ -0,0 +1,27 @@
--- Makefile.orig Wed Aug 22 18:31:55 2001
+++ Makefile Fri May 10 11:04:48 2002
@@ -31,24 +31,6 @@
$(INSTALL) -m 644 $$p $(R)$(mandir)/man$$i; \
done \
done
- @echo "Creating/updating files in $(R)$(raddbdir)"; \
- $(INSTALL) -d -m 755 $(R)$(raddbdir); \
- cd raddb; \
- for i in [a-c]* [e-z]*; do \
- [ $$i != radiusd.conf.in -a ! -f $(R)$(raddbdir)/$$i ] && \
- $(INSTALL) -m 644 $$i $(R)$(raddbdir); \
- done; \
- for i in dictionary*; do \
- [ ! -f $(R)$(raddbdir)/$$i ] && $(INSTALL) -m 644 $$i $(R)$(raddbdir); \
- if [ "`find $$i -newer $(R)$(raddbdir)/$$i`" ]; then \
- echo "** $(R)$(raddbdir)/$$i"; \
- nt=1; \
- fi; \
- done; \
- if [ "$$nt" ]; then \
- echo "** The samples in ../raddb are newer than these files";\
- echo "** Please investigate and copy manually if appropriate";\
- fi
common:
@for dir in $(SUBDIRS); do \

View File

@ -0,0 +1,39 @@
#!/bin/sh
# RADIUSD_FLAGS='-xxyzsf -l stdout'
RADIUSD_FLAGS=
if [ -r /etc/defaults/rc.conf ]; then
. /etc/defaults/rc.conf
source_rc_confs
elif [ -r /etc/rc.conf ]; then
. /etc/rc.conf
fi
prog=$(realpath $0) || exit 1
dir=${prog%/*}
PREFIX=${dir%/etc/rc.d}
if [ ."$dir" = ."$prog" -o ."$PREFIX" = ."$dir" ]
then
echo "$0: Cannot determine the PREFIX" >&2
exit 1
fi
case $1 in
start)
touch /var/run/radiusd.pid
chown nobody:nobody /var/run/radiusd.pid
"$PREFIX"/sbin/radiusd $RADIUSD_FLAGS && echo -n " radiusd"
;;
stop)
killall radiusd && echo -n ' radiusd'
;;
*)
echo "Usage: `basename $0` {start|stop}" >&2
exit 64
;;
esac
exit 0

View File

@ -0,0 +1 @@
A free RADIUS server implementation

23
net/freeradius/pkg-descr Normal file
View File

@ -0,0 +1,23 @@
All code in this server was written from scratch.
The server is mostly compatible with livingston radiusd-2.01
(no menus or s/key support though) but with more feautures, such as:
o Can limit max. number of simultaneous logins on a per-user basis!
o Multiple DEFAULT entries, that can optionally fall-through.
o In fact, every entry can fall-through
o Deny/permit access based on huntgroup users dials into
o Set certain parameters (such as static IP address) based on huntgroup
o Extra "hints" file that can select SLIP/PPP/rlogin based on
username pattern (Puser or user.ppp is PPP, plain "user" is rlogin etc).
o Can execute an external program when user has authenticated (for example
to run a sendmail queue).
o Can use `$INCLUDE filename' in radiusd.conf, users, and dictionary files
o Can act as a proxy server, relaying requests to a remote server
o Supports Vendor-Specific attributes
o No good documentation at all, just like the original radiusd 1.16!
Then of course for general RADIUS questions, especially if you are using
Livingston / Lucent RABU equipment, there is the portmaster-radius mailing
list. Send mail to portmaster-radius-request@livingston.com to find
out how to subscribe.

161
net/freeradius/pkg-plist Normal file
View File

@ -0,0 +1,161 @@
bin/radwho
bin/raduse
bin/radzap
bin/radlast
bin/radclient
bin/radtest
etc/raddb/acct_users.sample
etc/raddb/attrs.sample
etc/raddb/clients.sample
etc/raddb/clients.conf.sample
etc/raddb/dictionary.sample
etc/raddb/dictionary.acc.sample
etc/raddb/dictionary.aptis.sample
etc/raddb/dictionary.ascend.sample
etc/raddb/dictionary.bay.sample
etc/raddb/dictionary.cisco.sample
etc/raddb/dictionary.compat.sample
etc/raddb/dictionary.erx.sample
etc/raddb/dictionary.foundry.sample
etc/raddb/dictionary.freeradius.sample
etc/raddb/dictionary.livingston.sample
etc/raddb/dictionary.microsoft.sample
etc/raddb/dictionary.nomadix.sample
etc/raddb/dictionary.quintum.sample
etc/raddb/dictionary.redback.sample
etc/raddb/dictionary.shasta.sample
etc/raddb/dictionary.shiva.sample
etc/raddb/dictionary.tunnel.sample
etc/raddb/dictionary.usr.sample
etc/raddb/dictionary.versanet.sample
etc/raddb/hints.sample
etc/raddb/huntgroups.sample
etc/raddb/ldap.attrmap.sample
etc/raddb/naslist.sample
etc/raddb/naspasswd.sample
etc/raddb/postgresql.conf.sample
etc/raddb/proxy.conf.sample
etc/raddb/radiusd.conf.sample
etc/raddb/realms.sample
etc/raddb/snmp.conf.sample
etc/raddb/sql.conf.sample
etc/raddb/users.sample
etc/raddb/x99.conf.sample
etc/rc.d/radiusd.sh
lib/libltdl.so
lib/libltdl.la
lib/libltdl.a
lib/libltdl.so.1
lib/rlm_acct_unique.a
lib/rlm_acct_unique.la
lib/rlm_acct_unique.so
lib/rlm_acct_unique.so.0
lib/rlm_always.a
lib/rlm_always.la
lib/rlm_always.so
lib/rlm_always.so.0
lib/rlm_attr_filter.a
lib/rlm_attr_filter.la
lib/rlm_attr_filter.so
lib/rlm_attr_filter.so.0
lib/rlm_attr_rewrite.a
lib/rlm_attr_rewrite.la
lib/rlm_attr_rewrite.so
lib/rlm_attr_rewrite.so.0
lib/rlm_chap.a
lib/rlm_chap.la
lib/rlm_chap.so
lib/rlm_chap.so.0
lib/rlm_counter.a
lib/rlm_counter.la
lib/rlm_counter.so
lib/rlm_counter.so.0
lib/rlm_dbm.a
lib/rlm_dbm.la
lib/rlm_dbm.so
lib/rlm_dbm.so.0
lib/rlm_detail.a
lib/rlm_detail.la
lib/rlm_detail.so
lib/rlm_detail.so.0
lib/rlm_dictionary.a
lib/rlm_dictionary.la
lib/rlm_dictionary.so
lib/rlm_dictionary.so.0
lib/rlm_eap.a
lib/rlm_eap.la
lib/rlm_eap.so
lib/rlm_eap.so.0
lib/rlm_eap_md5.a
lib/rlm_eap_md5.la
lib/rlm_eap_md5.so
lib/rlm_eap_md5.so.0
lib/rlm_example.a
lib/rlm_example.la
lib/rlm_example.so
lib/rlm_example.so.0
lib/rlm_fastusers.a
lib/rlm_fastusers.la
lib/rlm_fastusers.so
lib/rlm_fastusers.so.0
lib/rlm_files.a
lib/rlm_files.la
lib/rlm_files.so
lib/rlm_files.so.0
lib/rlm_mschap.a
lib/rlm_mschap.la
lib/rlm_mschap.so
lib/rlm_mschap.so.0
lib/rlm_ns_mta_md5.a
lib/rlm_ns_mta_md5.la
lib/rlm_ns_mta_md5.so
lib/rlm_ns_mta_md5.so.0
lib/rlm_pam.a
lib/rlm_pam.la
lib/rlm_pam.so
lib/rlm_pam.so.0
lib/rlm_pap.a
lib/rlm_pap.la
lib/rlm_pap.so
lib/rlm_pap.so.0
lib/rlm_passwd.a
lib/rlm_passwd.la
lib/rlm_passwd.so
lib/rlm_passwd.so.0
lib/rlm_preprocess.a
lib/rlm_preprocess.la
lib/rlm_preprocess.so
lib/rlm_preprocess.so.0
lib/rlm_python.a
lib/rlm_python.la
lib/rlm_python.so
lib/rlm_python.so.0
lib/rlm_radutmp.a
lib/rlm_radutmp.la
lib/rlm_radutmp.so
lib/rlm_radutmp.so.0
lib/rlm_realm.a
lib/rlm_realm.la
lib/rlm_realm.so
lib/rlm_realm.so.0
lib/rlm_sql.a
lib/rlm_sql.la
lib/rlm_sql.so
lib/rlm_sql.so.0
lib/rlm_sql_postgresql.a
lib/rlm_sql_postgresql.la
lib/rlm_sql_postgresql.so
lib/rlm_sql_postgresql.so.0
lib/rlm_unix.a
lib/rlm_unix.la
lib/rlm_unix.so
lib/rlm_unix.so.0
lib/rlm_x99_token.a
lib/rlm_x99_token.la
lib/rlm_x99_token.so
lib/rlm_x99_token.so.0
sbin/checkrad
sbin/radiusd
sbin/rc.radiusd
sbin/radwatch
sbin/check-radiusd-config

43
net/freeradius2/Makefile Normal file
View File

@ -0,0 +1,43 @@
# New ports collection makefile for: freeradius
# Date created: May 9 2002
# Whom: Brian Somers <brian@FreeBSD.org>
#
# $FreeBSD$
#
PORTNAME= freeradius
PORTVERSION= 0.5
CATEGORIES= net
MASTER_SITES= ftp://ftp.freeradius.org/pub/radius/ \
ftp://ftp.Awfulhak.org/pub/radius/
MAINTAINER= brian@FreeBSD.org
LIB_DEPENDS= gdbm.2:${PORTSDIR}/databases/gdbm
HAS_CONFIGURE= yes
CONFIGURE_ARGS= --quiet --with-logdir=/var/log
MAN1= radclient.1 radlast.1 radtest.1 raduse.1 radwho.1 radzap.1
MAN5= acct_users.5 clients.5 dictionary.5 naslist.5 radiusd.conf.5 \
users.5
MAN8= builddbm.8 radiusd.8 radwatch.8
RADDB= acct_users attrs clients clients.conf dictionary \
dictionary.acc dictionary.aptis dictionary.ascend \
dictionary.bay dictionary.cisco dictionary.compat \
dictionary.erx dictionary.foundry dictionary.freeradius \
dictionary.livingston dictionary.microsoft dictionary.nomadix \
dictionary.quintum dictionary.redback dictionary.shasta \
dictionary.shiva dictionary.tunnel dictionary.usr \
dictionary.versanet hints huntgroups ldap.attrmap naslist \
naspasswd postgresql.conf proxy.conf radiusd.conf realms \
snmp.conf sql.conf users x99.conf
post-install:
.for db in ${RADDB}
${INSTALL_DATA} ${WRKSRC}/raddb/${db} ${PREFIX}/etc/raddb/${db}.sample
.endfor
${INSTALL_SCRIPT} ${FILESDIR}/radiusd.sh ${PREFIX}/etc/rc.d/radiusd.sh
.include <bsd.port.mk>

1
net/freeradius2/distinfo Normal file
View File

@ -0,0 +1 @@
MD5 (freeradius-0.5.tar.gz) = 0e56b17d4bf7e0cf4885b8fa2a2fa859

View File

@ -0,0 +1,27 @@
--- Makefile.orig Wed Aug 22 18:31:55 2001
+++ Makefile Fri May 10 11:04:48 2002
@@ -31,24 +31,6 @@
$(INSTALL) -m 644 $$p $(R)$(mandir)/man$$i; \
done \
done
- @echo "Creating/updating files in $(R)$(raddbdir)"; \
- $(INSTALL) -d -m 755 $(R)$(raddbdir); \
- cd raddb; \
- for i in [a-c]* [e-z]*; do \
- [ $$i != radiusd.conf.in -a ! -f $(R)$(raddbdir)/$$i ] && \
- $(INSTALL) -m 644 $$i $(R)$(raddbdir); \
- done; \
- for i in dictionary*; do \
- [ ! -f $(R)$(raddbdir)/$$i ] && $(INSTALL) -m 644 $$i $(R)$(raddbdir); \
- if [ "`find $$i -newer $(R)$(raddbdir)/$$i`" ]; then \
- echo "** $(R)$(raddbdir)/$$i"; \
- nt=1; \
- fi; \
- done; \
- if [ "$$nt" ]; then \
- echo "** The samples in ../raddb are newer than these files";\
- echo "** Please investigate and copy manually if appropriate";\
- fi
common:
@for dir in $(SUBDIRS); do \

View File

@ -0,0 +1,39 @@
#!/bin/sh
# RADIUSD_FLAGS='-xxyzsf -l stdout'
RADIUSD_FLAGS=
if [ -r /etc/defaults/rc.conf ]; then
. /etc/defaults/rc.conf
source_rc_confs
elif [ -r /etc/rc.conf ]; then
. /etc/rc.conf
fi
prog=$(realpath $0) || exit 1
dir=${prog%/*}
PREFIX=${dir%/etc/rc.d}
if [ ."$dir" = ."$prog" -o ."$PREFIX" = ."$dir" ]
then
echo "$0: Cannot determine the PREFIX" >&2
exit 1
fi
case $1 in
start)
touch /var/run/radiusd.pid
chown nobody:nobody /var/run/radiusd.pid
"$PREFIX"/sbin/radiusd $RADIUSD_FLAGS && echo -n " radiusd"
;;
stop)
killall radiusd && echo -n ' radiusd'
;;
*)
echo "Usage: `basename $0` {start|stop}" >&2
exit 64
;;
esac
exit 0

View File

@ -0,0 +1 @@
A free RADIUS server implementation

23
net/freeradius2/pkg-descr Normal file
View File

@ -0,0 +1,23 @@
All code in this server was written from scratch.
The server is mostly compatible with livingston radiusd-2.01
(no menus or s/key support though) but with more feautures, such as:
o Can limit max. number of simultaneous logins on a per-user basis!
o Multiple DEFAULT entries, that can optionally fall-through.
o In fact, every entry can fall-through
o Deny/permit access based on huntgroup users dials into
o Set certain parameters (such as static IP address) based on huntgroup
o Extra "hints" file that can select SLIP/PPP/rlogin based on
username pattern (Puser or user.ppp is PPP, plain "user" is rlogin etc).
o Can execute an external program when user has authenticated (for example
to run a sendmail queue).
o Can use `$INCLUDE filename' in radiusd.conf, users, and dictionary files
o Can act as a proxy server, relaying requests to a remote server
o Supports Vendor-Specific attributes
o No good documentation at all, just like the original radiusd 1.16!
Then of course for general RADIUS questions, especially if you are using
Livingston / Lucent RABU equipment, there is the portmaster-radius mailing
list. Send mail to portmaster-radius-request@livingston.com to find
out how to subscribe.

161
net/freeradius2/pkg-plist Normal file
View File

@ -0,0 +1,161 @@
bin/radwho
bin/raduse
bin/radzap
bin/radlast
bin/radclient
bin/radtest
etc/raddb/acct_users.sample
etc/raddb/attrs.sample
etc/raddb/clients.sample
etc/raddb/clients.conf.sample
etc/raddb/dictionary.sample
etc/raddb/dictionary.acc.sample
etc/raddb/dictionary.aptis.sample
etc/raddb/dictionary.ascend.sample
etc/raddb/dictionary.bay.sample
etc/raddb/dictionary.cisco.sample
etc/raddb/dictionary.compat.sample
etc/raddb/dictionary.erx.sample
etc/raddb/dictionary.foundry.sample
etc/raddb/dictionary.freeradius.sample
etc/raddb/dictionary.livingston.sample
etc/raddb/dictionary.microsoft.sample
etc/raddb/dictionary.nomadix.sample
etc/raddb/dictionary.quintum.sample
etc/raddb/dictionary.redback.sample
etc/raddb/dictionary.shasta.sample
etc/raddb/dictionary.shiva.sample
etc/raddb/dictionary.tunnel.sample
etc/raddb/dictionary.usr.sample
etc/raddb/dictionary.versanet.sample
etc/raddb/hints.sample
etc/raddb/huntgroups.sample
etc/raddb/ldap.attrmap.sample
etc/raddb/naslist.sample
etc/raddb/naspasswd.sample
etc/raddb/postgresql.conf.sample
etc/raddb/proxy.conf.sample
etc/raddb/radiusd.conf.sample
etc/raddb/realms.sample
etc/raddb/snmp.conf.sample
etc/raddb/sql.conf.sample
etc/raddb/users.sample
etc/raddb/x99.conf.sample
etc/rc.d/radiusd.sh
lib/libltdl.so
lib/libltdl.la
lib/libltdl.a
lib/libltdl.so.1
lib/rlm_acct_unique.a
lib/rlm_acct_unique.la
lib/rlm_acct_unique.so
lib/rlm_acct_unique.so.0
lib/rlm_always.a
lib/rlm_always.la
lib/rlm_always.so
lib/rlm_always.so.0
lib/rlm_attr_filter.a
lib/rlm_attr_filter.la
lib/rlm_attr_filter.so
lib/rlm_attr_filter.so.0
lib/rlm_attr_rewrite.a
lib/rlm_attr_rewrite.la
lib/rlm_attr_rewrite.so
lib/rlm_attr_rewrite.so.0
lib/rlm_chap.a
lib/rlm_chap.la
lib/rlm_chap.so
lib/rlm_chap.so.0
lib/rlm_counter.a
lib/rlm_counter.la
lib/rlm_counter.so
lib/rlm_counter.so.0
lib/rlm_dbm.a
lib/rlm_dbm.la
lib/rlm_dbm.so
lib/rlm_dbm.so.0
lib/rlm_detail.a
lib/rlm_detail.la
lib/rlm_detail.so
lib/rlm_detail.so.0
lib/rlm_dictionary.a
lib/rlm_dictionary.la
lib/rlm_dictionary.so
lib/rlm_dictionary.so.0
lib/rlm_eap.a
lib/rlm_eap.la
lib/rlm_eap.so
lib/rlm_eap.so.0
lib/rlm_eap_md5.a
lib/rlm_eap_md5.la
lib/rlm_eap_md5.so
lib/rlm_eap_md5.so.0
lib/rlm_example.a
lib/rlm_example.la
lib/rlm_example.so
lib/rlm_example.so.0
lib/rlm_fastusers.a
lib/rlm_fastusers.la
lib/rlm_fastusers.so
lib/rlm_fastusers.so.0
lib/rlm_files.a
lib/rlm_files.la
lib/rlm_files.so
lib/rlm_files.so.0
lib/rlm_mschap.a
lib/rlm_mschap.la
lib/rlm_mschap.so
lib/rlm_mschap.so.0
lib/rlm_ns_mta_md5.a
lib/rlm_ns_mta_md5.la
lib/rlm_ns_mta_md5.so
lib/rlm_ns_mta_md5.so.0
lib/rlm_pam.a
lib/rlm_pam.la
lib/rlm_pam.so
lib/rlm_pam.so.0
lib/rlm_pap.a
lib/rlm_pap.la
lib/rlm_pap.so
lib/rlm_pap.so.0
lib/rlm_passwd.a
lib/rlm_passwd.la
lib/rlm_passwd.so
lib/rlm_passwd.so.0
lib/rlm_preprocess.a
lib/rlm_preprocess.la
lib/rlm_preprocess.so
lib/rlm_preprocess.so.0
lib/rlm_python.a
lib/rlm_python.la
lib/rlm_python.so
lib/rlm_python.so.0
lib/rlm_radutmp.a
lib/rlm_radutmp.la
lib/rlm_radutmp.so
lib/rlm_radutmp.so.0
lib/rlm_realm.a
lib/rlm_realm.la
lib/rlm_realm.so
lib/rlm_realm.so.0
lib/rlm_sql.a
lib/rlm_sql.la
lib/rlm_sql.so
lib/rlm_sql.so.0
lib/rlm_sql_postgresql.a
lib/rlm_sql_postgresql.la
lib/rlm_sql_postgresql.so
lib/rlm_sql_postgresql.so.0
lib/rlm_unix.a
lib/rlm_unix.la
lib/rlm_unix.so
lib/rlm_unix.so.0
lib/rlm_x99_token.a
lib/rlm_x99_token.la
lib/rlm_x99_token.so
lib/rlm_x99_token.so.0
sbin/checkrad
sbin/radiusd
sbin/rc.radiusd
sbin/radwatch
sbin/check-radiusd-config