9.10. Internal Radius Servers

cOS Core has the ability to act as an authenticating RADIUS server by defining a RADIUS Authentication Service object. This object will listen for incoming RADIUS requests on a specified interface and an optional filter can be applied so that only specific source IP addresses will get a response. Multiple RADIUS Authentication Service objects can be defined.

It should be noted that this feature does not provide a general RADIUS server but is intended for the specific use case where clients need to authenticate themselves using EAP over a TLS connection to the firewall using their certificate. Once a client is authenticated, the cOS Core rule sets can then allow or prevent connections from the client to different resources, in the same way that an external RADIUS server might be used for authentication.

Setup Steps

The following steps are needed to set up this feature:

  1. Upload a suitable CA public key certificate to the firewall and define a Certificate object for this in cOS Core with its Type property set to the value Remote.

    This is the certificate that will authenticate the client's certificate.

  2. Upload the public and private key files to the firewall for the server's own certificate, and define a Certificate object for this in cOS Core with its Type property set to the value Local.

    This will be used for the EAP-TLS connection to the client. The algorithms used by this certificate can be different from the CA certificate.

  3. Define a RADIUS Authentication Service object which references the above certificates. The definition must specify the interface on which cOS Core will listen for RADIUS requests from clients. An example of defining this object can be found in Example 9.11, “Configuring an RADIUS Authentication Service.

  4. Activate the new configuration.

    There is no need to create a separate Authentication Rule. Authentication is enabled as soon as the RADIUS Authentication Service is created and the new configuration activated.

The following should be noted about the RADIUS Authentication Service:

Example 9.11. Configuring an RADIUS Authentication Service

This example shows how a RADIUS Authentication Service can be configured. It assumes that accepted RADIUS requests can have any source IP address. It will also be assumed the following Certificate objects A and B already exist in the cOS Core configuration:

A. CA Certificate (public key only):

          Property  Value          Remarks
 -----------------  -------------  ---------
             Name:  my_ca_cert
             Type:  Remote
  CertificateData:  (binary data)
        CRLChecks:  Disabled
 CRLDistPointList:  <empty>
          PKAType:  RSA            Read-only
             IsCA:  Yes            Read-only
        Attribute:  <empty>
         Comments:  <empty>

B. Server Certificate (both public and private key):

          Property  Value          Remarks
 -----------------  -------------  ---------
             Name:  my_server_cert
             Type:  Local
  CertificateData:  (binary data)
       PrivateKey:  (binary data)
        CRLChecks:  Disabled
 CRLDistPointList:  <empty>
          PKAType:  EC             Read-only
             IsCA:  No             Read-only
        Attribute:  <empty>
         Comments:  <empty>

Command-Line Interface

Device:/> add RadiusAuthService my_radius_server
			SourceInterface=If2
			ClientIPFilter=all-nets
			SharedSecret=mysecretcode
			Certificate=my_server_cert
			ClientCACertificate=my_ca_cert

InControl

Follow similar steps to those used for the Web Interface below.

Web Interface

  1. Go to: Policies > User Authentication > RADIUS > Add > RADIUS Authentication Service
  2. Now enter:
    • Name: my_radius_server
    • Source Interface: If2
    • Client IP Filter: all-nets
    • Shared Secret: mysecretcode
    • Server Certificate: my_server_cert
    • Client CA Certificate: my_client_cert
  3. Click OK