# radius.cfg # # This is a very simple radius.cfg that you can use to get started. # only the most important parameters are set here. The full set # of parameters can be seen in radius.cfg in the top of the distribution tree. # # As it stands, it will authenticate a single client and a # single realm from a flat file # database, and save the accounting info to a single details file. # # Author: Mike McCauley (mikem@open.com.au) # Copyright (C) 1997 Open System Consultants # $Id: radius.cfg,v 1.3 1999/01/28 05:13:52 mikem Exp $ #Foreground #Trace 5 AuthPort 1812 AcctPort 1813 # # Some problem on Linux(SLES) with Perl and ownership of /proc/self/exe link # #User radiusd #Group radiusd # Set this to the directory where your logfile and details file are to go LogDir /var/log/radius # Set this to the database directory. It should contain these files: # users The user database # dictionary The dictionary for your NAS DbDir /etc/radiator # # Read client details (IP,Secret,TACAC+ Key, PrehandlerHook) # Include %D/readclients.pl| # This clause defines a single client to listen to Secret thesharedsecret # This clause handles all users from all realms by looking them up Key ciscodefault GroupMemberAttr T-GROUP # AuthorizeGroup all permit service=shell AuthorizeGroup all permit service=exec cmd=.* cmd-arg=.* AuthorizeGroup all permitreplace service=ciscowlc role1=MONITOR # AuthorizeGroup ops permit service=shell AuthorizeGroup ops deny service=exec cmd=dir cmd-arg=.* AuthorizeGroup ops permit service=exec cmd=.* cmd-arg=.* AuthorizeGroup ops permitreplace service=ciscowlc role1=ALL # AuthorizeGroup console deny service=shell # AuthorizeGroup reject permitreplace service=exec status=fail # AuthorizeGroup readonly permit service=shell cmd=enable cmd-args=.* AuthorizeGroup readonly permit service=shell cmd=exit cmd-args=.* AuthorizeGroup readonly deny service=shell cmd=show cmd-args=run.* AuthorizeGroup readonly deny service=shell cmd=show cmd-args=start.* AuthorizeGroup readonly permit service=shell cmd=show cmd-args=.* AuthorizeGroup readonly permit service=shell cmd=write cmd-args=terminal AuthorizeGroup readonly deny service=shell # Mark request as TACACS+ request AddToRequest Request-Protocol=TACACS+ # # Authentication for PAM # Identifier PAMAuthentication Service radiusd # # Authorise users based on Attributes # Identifier EapTLS Filename %D/EapTLSUsers EAPType TLS EAPTLS_CAPath /etc/ssl/certs EAPTLS_CertificateFile %D/servercert.pem EAPTLS_CertificateType PEM EAPTLS_PrivateKeyFile %D/serverkey.pem EAPTLS_PrivateKeyPassword password EAPTLS_MaxFragmentSize 1000 # # Authorise users based on Attributes # Identifier UserFilter Filename %D/users # # Authorise users based on Attributes # Identifier UserHTTPFilter Filename %D/HTTPusers # # Log authentication attempts # Identifier LogEapTLSAuthentication Filename %L/EapTLSauthlog LogSuccess 1 LogFailure 1 SuccessFormat %B| Permitted %{Request:USER-PRINCIPAL-NAME} access to %N from %{Request:Calling-Station-Id} using %{Request:Request-Protocol} FailureFormat %B| Denied %{Request:USER-PRINCIPAL-NAME} access to %N from %{Request:Calling-Station-Id} using %{Request:Request-Protocol} # # Log HTTP authentication attempts # Identifier LogHTTPAuthentication Filename %L/authlog LogSuccess 1 LogFailure 1 SuccessFormat %B| Permitted %u(%{Request:Service-Type}) access to %N from %{Request:Calling-Station-Id} using HTTP(s) FailureFormat %B| Denied %u(%{Request:Service-Type}) access to %N from %{Request:Calling-Station-Id} using HTTP(s) # # Log authentication attempts # Identifier LogAuthentication Filename %L/authlog LogSuccess 1 LogFailure 1 SuccessFormat %B| Permitted %u(%{Request:Service-Type}) access to %N from %{Request:Calling-Station-Id} using %{Request:Request-Protocol} FailureFormat %B| Denied %u(%{Request:Service-Type}) access to %N from %{Request:Calling-Station-Id} using %{Request:Request-Protocol} # # Authenticate Wlan users with certificates # # Mark request as Radius request if not already set by TACACS+ AddToRequestIfNotExist Request-Protocol=EapTLS AuthByPolicy ContinueUntilReject AuthBy EapTLS AuthLog LogEapTLSAuthentication AcctLogFileName %L/detail # # Authenticate Internal users against Windows domain # # Add reply attribute for tacacs authorisation (copy of request attribute set via ldap) AddToReplyIfNotExist T-GROUP=%{Request:T-GROUP} # Mark request as Radius request if not already set by TACACS+ AddToRequestIfNotExist Request-Protocol=Radius AuthByPolicy ContinueUntilReject AuthBy UserFilter AuthBy PAMAuthentication AuthLog LogAuthentication # Log accounting to the detail file in LogDir AcctLogFileName %L/detail # DefaultPrivilegeLevel 15 AuthByPolicy ContinueUntilReject AuthBy UserHTTPFilter AuthBy PAMAuthentication AuthLog LogHTTPAuthentication AuditTrail %L/auditlog SessionTimeout 600 Port 9443 UseSSL TLS_CAPath /etc/ssl/certs TLS_CertificateFile /etc/ssl/certs/radius1-cert.pem TLS_PrivateKeyFile /etc/ssl/certs/radius1-key.pem TLS_PrivateKeyPassword password TLS_CertificateType PEM