RADIUS

The RADIUS view presents the scaffolds associated with configuring the rXg integrated RADIUS server.

Centralized Infrastructure Device AAA Server

The rXg identity database may be used as a credential store for rXg units or other third party devices via the RADIUS protocol. One common use of the rXg RADIUS server is to serve as a central credential database for administrative access to infrastructure equipment. For example, most VLAN "smart" switches and "enterprise" wireless access points may be configured to look to a RADIUS server for authenticating administrative access. Using the integrated rXg RADIUS server as a central credential store for infrastructure is a simple and effective way to reduce the complexity that is usually associated with networks that have a large number of devices.

Configuring rXg For Centralized Infrastructure Device AAA Server

Procedure: 1. Create an Account Group that will be tied to Administrator Account(s) 2. Create a policy for Administrator Account(s) Account Group

Check the AAA Account Group in the Account group section.3. Create a WAN Target that contains the public IP the radius request will come from. 4. Edit Radius Server Options add WAN target previously created. 5. Create a RADIUS realm and attach the policy created from the Administrator Account(s). 6. Create a new Account that will contain the credentials.

Attach account to the policy for Administrator Account(s)7. Point remote device to the rXg RADIUS server.

  1. Navigate to Identities-->Groups and create a new Account Group.

  1. Navigate to Policies-->Captive Portal and create a new Policy. Enter a name for the new policy and check the Account Group created in the previous step.

  1. Create a new WAN Target or edit existing WAN Target by navigating to Identities-->Definitions. Enter the IP(s) that should be allowed access to the Radius Server.

  1. Edit the RADIUS Server Options by navigating to Services-->RADIUS and check the WAN Target. Click Update.

  1. Create a new RADIUS Server Realm and select the policy that was created for the Administator account(s). Click Create.

  1. Create a new Account by navigating to Identities-->Accounts, Enter the Login name and password. Under Provision set the Group to the Account Group created previously. A First and Last name will also need to be provided along with an email address.

  1. Point the device to use the RADIUS server running on the rXg, set the primary IP address of the rXg as the AAA server, and adjust the ports if necessary. The key can be copied from the Radius Server Options on the rXg.

Subscriber Roaming

Another common use of the integrated rXg RADIUS server is to share a single centrally located end-user database amongst a set of geographically diverse RADIUS NAS capable devices. For example, "smart" access points, DSLAMs and even modem banks may be configured to use RADIUS to use an rXg with the RADIUS server enabled as a credential store. Using a single unified credential store across devices that controls access to multiple media helps control operational costs.

In many cases, the RADIUS NAS may also be configured for forced browser redirect of unauthenticated end-users to the rXg captive portal. This enables end-user self-provisioning and further reduces operational overhead. Since the rXg billing mechanisms are fully integrated into with the RADIUS server enabling operators to easily bill end-users for access to a diverse set of media.

The rXg integrated RADIUS server may also be used as a mechanism to loosely federate multiple rXg units. RG Nets recommends the deployment of the rXg clustering mechanism with an rXg cluster controller for unified and simplified clustering of multiple rXg units. However, for certain special cases, it may be more appropriate to use the RADIUS server of an rXg node or an rXg cluster controller along with the RADIUS NAS of multiple other rXgs to create a federation of rXg devices that share a single database.

One rXg unit is then dedicated to being the federation master. The captive portal web application server and end-user database are centrally stored on the federation master. The federation nodes are configured to authenticate using the RADIUS NAS clients and the rXg federation master is configured to be a RADIUS server.

Enterprise NAC

The rXg integrated RADIUS Server can be used to as a centralized AAA server for enterprise wired and wireless networks. Edge infrastructure devices are configured as access servers with port control enabled. Both username/password tuples and MAC address authentication credentials are supported. The rXg can proxy authentication to an external LDAP or RADIUS server (discussed later in this manual page) and/or check the local database.

If the local database is used then the operator may choose to create accounts for each employee and set a password. Alternatively, the administrator can use MAC address device authentication. To accomplish this, the operator will need to populate an account with desired MAC addresses. In either case, the account(s)should be associated with an account group. The account group also needs to be associated to a policy that is selected under a RADIUS Server Realm's matching options. By associating VLAN(s) to the RADIUS Server Realm , an operator can control what network(s) enterprise owned devices are assigned.

For example, in the packet exchange below, the Calling-Station-IDattribute contains the MAC Address of the requesting device. The highest-priority policy will be used to determine which RADIUS Server Realm the device matches. The Tunnel-Private-Group-IDattribute in the Access-Accept packet shows the VLAN assigned to this device. 14:38:33.381021 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto UDP (17), length 206) 10.103.254.4.56792 > 10.103.254.1.1812: [udp sum ok] RADIUS, length: 178 Access-Request (1), id: 0xe5, Authenticator: 2b9a4726041df0639dcc5f8574c30f5a User-Name Attribute (1), length: 14, Value: 449160ece7fa 0x0000: 3434 3931 3630 6563 6537 6661 User-Password Attribute (2), length: 18, Value: 0x0000: a0e8 7cc3 4eb8 c07f 2322 714c a2e7 416e**Calling-Station-Id Attribute (31), length: 19, Value: 44-91-60-EC-E7-FA** 0x0000: 3434 2d39 312d 3630 2d45 432d 4537 2d46 0x0010: 41 NAS-IP-Address Attribute (4), length: 6, Value: 10.103.254.4 0x0000: 0a67 fe04 Called-Station-Id Attribute (30), length: 32, Value: D4-68-4D-2A-39-F0:SomeSSID 0x0000: 4434 2d36 382d 3444 2d32 412d 3339 2d46 0x0010: 303a 4b61 7272 6963 6b48 6f75 7365 Service-Type Attribute (6), length: 6, Value: Framed 0x0000: 0000 0002 NAS-Port-Type Attribute (61), length: 6, Value: Wireless - IEEE 802.11 0x0000: 0000 0013 NAS-Identifier Attribute (32), length: 19, Value: D4-68-4D-2A-39-F8 0x0000: 4434 2d36 382d 3444 2d32 412d 3339 2d46 0x0010: 38 Vendor-Specific Attribute (26), length: 20, Value: Vendor: Unknown (25053) Vendor Attribute: 3, Length: 12, Value: KarrickHouse 0x0000: 0000 61dd 030e 4b61 7272 6963 6b48 6f75 0x0010: 7365 Message-Authenticator Attribute (80), length: 18, Value: .,H..-..S@.)..X. 0x0000: 842c 481d 8a2d 8c03 5340 0c29 deeb 5881 14:38:33.414314 IP (tos 0x0, ttl 64, id 6773, offset 0, flags [none], proto UDP (17), length 74) 10.103.254.1.1812 > 10.103.254.4.56792: [bad udp cksum 0x111c -> 0x598a!] RADIUS, length: 46 Access-Accept (2), id: 0xe5, Authenticator: d6f41b864e670829842982228b59649e Class Attribute (25), length: 8, Value: Family 0x0000: 4661 6d69 6c79 Tunnel-Medium-Type Attribute (65), length: 6, Value: Tag[Unused] 802 0x0000: 0000 0006**Tunnel-Private-Group-ID Attribute (81), length: 6, Value: 2002**0x0000: 3230 3032 Tunnel-Type Attribute (64), length: 6, Value: Tag[Unused] VLAN 0x0000: 0000 000d

The enterprise NAC functionality can be used to augment other functions of the rXg. For instance, some WLAN controllers proxy RADIUS access-requests through the controller for client authentication, while others send the requests directly from each AP. Because the rXg utilizes ACLs to limit access to the RADIUS server function, the operator should utilize RADIUS MAC authentication on switchports to automate servicing access-requests from many APs.

Procedure:

  1. Create AP managment VLANs
  2. Create an IP group for AP Managment VLANs
  3. Create a policy for AP Management IP group
    • Add AP Management policy to RADIUS Server Options scaffold
  4. Create a MAC group containing a wildcard of the OUIs of Access Points
  5. Attach MAC group to a policy
  6. Create a RADIUS realm for the AP MAC group policy
    • Attach AP Management VLANs
  7. Enable RADIUS MAC authentication bypass on switch ports

DVLAN for Large Public Venues

The rXg incorporates intelligent VLAN assignment in the RADIUS Server. A RADIUS Server Realm with the per-device setting is used for guest, quarantine and onboarding networks where true device isolation is desired. This mechanism is often used a large public venues so that event attendees can be split across operator chosen VLANs. Optionally each device can be assigned a /30 network. To accomplish this, the operator will need to create a RADIUS Server Realm matching a policy, or attribute pattern, and select per-account or per-device in the Dynamic VLANs sharing menu. To enable microsegmented L3s or L2s for attendees, VLANs with proper auto-increment, and ratio settings should be implemented. VLAN re-use can be used in LPVs, where capacity exceeds available VLANs. This allows for high-density deployments, with minimal broadcast domains.

For example, in the packet exchange below, theCalled-Station-ID attribute contains the AP Radio MAC Address, and SSID the client device requested. By using a attribute pattern match, the operator can have all devices requesting this WLAN match this RADIUS Realm. The rXg has a variety of built in attributes, and allows the operator to define custom attributes to match 14:38:33.381021 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto UDP (17), length 206) 10.103.254.4.56792 > 10.103.254.1.1812: [udp sum ok] RADIUS, length: 178 Access-Request (1), id: 0xe5, Authenticator: 2b9a4726041df0639dcc5f8574c30f5a User-Name Attribute (1), length: 14, Value: 449160ece7fa 0x0000: 3434 3931 3630 6563 6537 6661 User-Password Attribute (2), length: 18, Value: 0x0000: a0e8 7cc3 4eb8 c07f 2322 714c a2e7 416e Calling-Station-Id Attribute (31), length: 19, Value: 44-91-60-EC-E7-FA 0x0000: 3434 2d39 312d 3630 2d45 432d 4537 2d46 0x0010: 41 NAS-IP-Address Attribute (4), length: 6, Value: 10.103.254.4 0x0000: 0a67 fe04**Called-Station-Id Attribute (30), length: 32, Value: D4-68-4D-2A-39-F0:EventSSID**0x0000: 4434 2d36 382d 3444 2d32 412d 3339 2d46 0x0010: 303a 4b61 7272 6963 6b48 6f75 7365 Service-Type Attribute (6), length: 6, Value: Framed 0x0000: 0000 0002 NAS-Port-Type Attribute (61), length: 6, Value: Wireless - IEEE 802.11 0x0000: 0000 0013 NAS-Identifier Attribute (32), length: 19, Value: D4-68-4D-2A-39-F8 0x0000: 4434 2d36 382d 3444 2d32 412d 3339 2d46 0x0010: 38 Vendor-Specific Attribute (26), length: 20, Value: Vendor: Unknown (25053) Vendor Attribute: 3, Length: 12, Value: KarrickHouse 0x0000: 0000 61dd 030e 4b61 7272 6963 6b48 6f75 0x0010: 7365 Message-Authenticator Attribute (80), length: 18, Value: .,H..-..S@.)..X. 0x0000: 842c 481d 8a2d 8c03 5340 0c29 deeb 5881 14:38:33.414314 IP (tos 0x0, ttl 64, id 6773, offset 0, flags [none], proto UDP (17), length 74) 10.103.254.1.1812 > 10.103.254.4.56792: [bad udp cksum 0x111c -> 0x598a!] RADIUS, length: 46 Access-Accept (2), id: 0xe5, Authenticator: d6f41b864e670829842982228b59649e Class Attribute (25), length: 8, Value: Family 0x0000: 4661 6d69 6c79 Tunnel-Medium-Type Attribute (65), length: 6, Value: Tag[Unused] 802 0x0000: 0000 0006 Tunnel-Private-Group-ID Attribute (81), length: 6, Value: 2002 0x0000: 3230 3032 Tunnel-Type Attribute (64), length: 6, Value: Tag[Unused] VLAN 0x0000: 0000 000d


DVLAN Microsegmentation for Multi-Tenant and Hospitality

By configuring a RADIUS Server Realm in the rXg to use per-room, or per-guest VLANs, users can be dynamically assigned a microsegmented network. This enables users to have private LANs on a shared infrastructure, enabling property wide coverage of their personal network. Unique features such as screencasting, printing, etc., can happen via standard L2 protocols. To accomplish this, the operator will need to create a RADIUS Server Realm matching a policy associated to the desired account group , and select per-room in the Dynamic VLANs sharing menu.

For example, a hotel client would integrate the rXg with their existing PMS, and assign per-room VLANs to segment guests. This enables the guests to use services like screencasting in their rooms without the need to download an app. A shared office space environment would implement per-guest VLANs, and segment traffic from other guests, while making tasks like printing and file-sharing seamless.

An operator can associate a Bi-NAT pool to a policy, and utilize the per-room DVLAN mechanism to provide a "virtual Residential Gateway" or vRG. This enables end-users to manage their own port forwards for web-hosting, and gaming. In MDU or Dorm environments, this enables zero-operator intervention, and instant provisioning of typically complex configurations.

RADIUS Proxying

RADIUS Proxy Servers can be used in a variety of ways. By defining a RADIUS Proxy Server an operator can choose to proxy authentication, accounting, or all RADIUS packets to a remote RADIUS Server, LDAP Server, or PMS Server. By proxying authentication requests to a remote server, an operator can enable centralized credential management in distributed rXg deployments.

For example, the rXg can proxy ONLY RADIUS Accounting packets to an upstream device. This is useful in routed scenarios, where the rXg is not the head-end. This enables the operator to send user-name and IP/session information to upstream devices such as content filters, or firewalls.

An operator may also choose to proxy authentication requests against a configured LDAP Server. This enables 802.1x authentication directly against an LDAP server such as Microsoft Active Directory, without the use of Microsoft Network Policy Server (NPS).

RADIUS Proxy with RadSec

RadSec is a a protocol for transporting RADIUS datagrams over TCP and TLS. Standard RADIUS communications depend upon the unreliable transport protocol UDP, and lack security for large parts of the packet payload. RadSec provides a means to secure the communication between a RADIUS NAS and Server by utilizing Transport Layer Security (TLS). By utilizing RadSec, an operator can proxy incoming RADIUS requests securely to a centralized credential store.

To learn more about RADIUS, there are numerous web pages that provide background information on the RADIUS protocol. In addition, the O'Relly RADIUS (ISBN 0596003226) book provides a basic overview of the protocol. A good reference for how to use RADIUS in more complex environments is AAA and Network Security for Mobile Access: Radius, Diameter, EAP, PKI and IP Mobility (ISBN 0470011947).


Multiple PSK with Adtran vWLAN

AdTran supports multiple sets of tagged Tunnel-* RADIUS attributes where each set represents a 'guess' of what the end user may have entered into her device as the PSK. When a set of Tunnel-* attributes tagged with :1 are configured in the rXg, the rXg will automatically create additional sets of Tunnel-* attributes that represent additional possible Accounts the device may belong to. The rXg will create up to 24 total attribute sets. The AP will determine which set contains the correct PSK, and if it finds one, will allow the device to connect and start tagging the device traffic with the VLAN from the set that contained the correct PSK. Assuming 'Automatic Provisioning' is enabled in the account, the rXg will then automatically add the new device to the Account that corresponds to the VLAN from the attribute set.

Prerequisites

  • Have Onboarding VLANs, associated to policy with a splash portal
  • Have usage plan available for selection on splash portal
    • Make sure the "Automatic Provision" checkbox is selected
  • Have VLAN(s) available for registered accounts
  • Have account group(s) for registered accounts associated to a policy with a landing portal

Configuration

  1. 1. Deploy vWLAN OVA
    • vWLAN Appliance gets DHCP by default
  2. Login to vWLAN and add AP Licensing
  3. Either set Static IP on vWLAN, or add fixed-host address in DHCP
  4. Create "domain-name" DHCP Option , and attach to Global DHCP Option Group (Ex. Domain-Name = local)
  5. Create DNS Entry for apdiscovery.local to point to vWLAN controller (replace local with your domain name)
  6. Add vWLAN Controller to rXg wireless Infrastructure Devices
  7. Create an "Onboarding" RADIUS Realm and use an Attribute Pattern match since these devices would be unknown.
    • Select your Onboarding VLANs, to ensure that users are presented the splash portal
  8. Create a Radius Realm for the policy of registered accounts
    • - Select your Account VLANs
  9. Enable config sync on the vWLAN infrastructure device on the rXg
  10. Create a new WLAN choosing the following options
    • Encryption: WPA2
    • Authentication: Multiple PSK
    • VLANs (Any associated with both realms)
  11. New RADIUS Server Attributes will be automatically created
  12. Create new RADIUS Server Attribute for onboarding
    • Name: Tunnel-Password:1
    • Value: onboarding (or whatever you want the onboarding PSK to be)
  13. Edit your Onboarding RADIUS Realm to respond with these attributes (notice the :1)
    • Tunnel-Private-Group-Id:1 : %vlan_tag_assignment.tag%
    • Tunnel-Type:1 : VLAN
    • Tunnel-Medium-Type:1 : IEEE-802
    • Tunnel-Password:1 : onboarding
  14. Edit your registered account RADIUS Realm to respond with these attributes (notice NO :1)
    • Tunnel-Private-Group-Id : %vlan_tag_assignment.tag%
    • Tunnel-Type : VLAN
    • Tunnel-Medium-Type : IEEE-802
    • Tunnel-Password : %account.pre_shared_key%

Dynamic PSK with RUCKUS virtual SmartZone (vSZ)

RUCKUS eDPSK enables an external AAA server to manage multiple PSKs associated with a single SSID. the rXg leverages eDPSK in conjunction with internal and external account management to deleiver person area networks (PANs) and virtual residential gateway (vRG) for MDUs.

Prerequisites

  • Have Onboarding VLANs, associated to policy with a splash portal
  • Have usage plan available for selection on splash portal
    • Make sure the "Automatic Provision" checkbox is selected
  • Have VLAN(s) available for registered accounts
  • Have account group(s) for registered accounts associated to a policy with a landing portal

Configuration

  1. Deploy vSZ OVA, configure the following in the VM console:
    • Configure vSZ in Essentials mode
    • Set Static IP Address, or set DHCP Reservation
  2. Continue the vSZ deployment at web GUI - https://{vSZ IP}:8443
  3. Add vSZ to rXg wireless Infrastructure Devices
  4. Create an "Onboarding" RADIUS Realm and use an Attribute Pattern match since these devices would be unknown.
    • Select your Onboarding VLANs, to ensure that users are presented the splash portal
  5. Create a Radius Realm for the policy of registered accounts
    • - Select your Account VLANs
  6. Enable config sync on the vWLAN infrastructure device on the rXg
  7. Create a new WLAN choosing the following options
    • Encryption: WPA2
    • Authentication: Multiple PSK
    • VLANs (Any associated with both realms)
  8. Create new RADIUS Server Attribute for onboarding
    • Name: Ruckus-DPSK
    • Value: onboarding (or whatever you want the onboarding PSK to be)
  9. Edit your Onboarding RADIUS Realm to respond with these attributes
    • Tunnel-Private-Group-Id : %vlan_tag_assignment.tag%
    • Tunnel-Type : VLAN
    • Tunnel-Medium-Type : IEEE-802
    • Ruckus-DPSK : onboarding
  10. Edit your registered account RADIUS Realm to respond with these attributes
    • Tunnel-Private-Group-Id : %vlan_tag_assignment.tag%
    • Tunnel-Type : VLAN
    • Tunnel-Medium-Type : IEEE-802
    • Tunnel-Password : %account.pre_shared_key%

RADIUS Server Realms

An entry in the radius server realms scaffold creates a response realm that enables the rXg to respond to RADIUS requests.

One or more radius server realms are required in order to link RADIUS requests with attributes. Only one radius server realm is required if the network design requires that the same set of RADIUS attributes to be transmitted to all RADIUS requests.

Multiple radius server realms may be created in order to allow the rXg integrated RADIUS Server to respond with different RADIUS attributes depending upon the request. The most common usage scenario that requires the creation of two or more radius server realms is a network design that requires different VLANs or sets of VLANs to be assigned based on information present in the incoming RADIUS request. A RADIUS Access-Request will match at most a single RADIUS Server Realm

The name field is an arbitrary string descriptor used only for administrative identification. Choose a name that reflects the purpose of the record. This field has no bearing on the configuration or settings determined by this scaffold.

The rank of a RADIUS server realm, allows the operator to designate multiple RADIUS realms with the same policy selection. If a RADIUS request matches multiple RADIUS realms, the highest ranking realm is used. This is typically used to override RADIUS realms when specific criteria is met, such as a user of a given policy connecting to a special SSID.

The policies field enables the operator to restrict this response realm to one or more sets of Identities. RADIUS Access-Request messages usually contain the MAC address of the end-user device. Thus a radius server realm may be restricted to answer RADIUS Access-Requests originating from end-user devices whose MAC addresses are present within MAC Groups and Account Groups. If no policies are enabled then the rXg will not restrict this response realm based on Identities but may still be restricted by other parameters such as attribute patterns.

The attribute patterns subsection enables the operator to restrict this response realm to RADIUS Access-Requests that contain the specified RADIUS attributes. One common use for this is mechanism is to restrict a response realm to only respond to RADIUS Access-Requests originating from end-user devices that are attaching to a specific SSID. This capability enables the operator associate respond with different RADIUS attributes depending upon the data in RADIUS Access-Request.

The dynamic VLANs section determines which VLANs will be passed from the rXg to the RADIUS NAS when a RADIUS Access-Accept message is sent. VLAN assignments are typically passed through RADIUS Attributes.

VLAN assignments are made either per-Device, per-Account, per-Guest, or per-Room. Using the per-Device setting tells the rXg to assign each MAC address that it sees a unique VLAN. The per-Device selection maximizes broadcast domain separation. The per-Account selection puts MAC addresses that belong to the same Account within the same VLAN. The per-Room and per-Guest selections puts MAC addresses that are associated with the same PMS Room or Guest name within the same VLAN.

One or more VLAN records must be configured and selected in order for the dynamic VLAN mechanism to be enabled. In most cases each RADIUS Server Realm will be associated with only a single VLAN record.

VLANs will be assigned to devices / accounts / PMS-Rooms per the above described selection until all available VLANs in the selected record are exhausted. If the Reuse VLANs checkbox is enabled then the VLANs configured in the VLAN will be reused if the VLANs in the record are exhausted. This setting is most often used in conjunction with the per-Device VLAN assignment setting as the number of devices will sometimes exceed the number of available VLANs.

The infrastructure devices setting enables the operator to tie this RADIUS Server Realm with an infrastruture device for the purpose of sending vendor specific instructions when VLANs change. This configuration is an absolute requirement when the dynamic VLAN capability is used with most wireless LAN controllers and wired switches.

The Proxy Servers field enables the operator to proxy incoming RADIUS packets to configured RADIUS Proxy Servers , LDAP Domains , or PMS Servers.

The Proxy Options enable an operator to choose what type of RADIUS packets to proxy, Accounting, Authentication, or both. By default, the rXg integrated RADIUS Server will only proxy 802.1x authentications. The Proxy MAC Auth selection enables the operator to also proxy MAC based authentications. The Replace username selection will override the "User-Name" attribute with the associated accounts login. If the Proxy Server is being used for authentication, the Create Account selection will create a local account on the rXg, and optionally apply a Usage Plan.

The attributes field defines one or more RADIUS attributes that will be appended to all RADIUS responses. Use this mechanism to send vendor specific attributes to the devices making RADIUS requests.

The Assume MAC auth option specifies that when an Account is located during RADIUS lookup and the request looks like a MAC auth request (i.e., the username looks like a MAC address) that we should treat the request as a MAC auth request and use the MAC address as the cleartext password instead of setting the NT-Password.

The Always perform Account lookup option ensures that an Account lookup occurs for the request while checking this realm, assuming it has not been performed already by a higher ranked realm. This is in contrast to the normal behavior where Account lookup is skipped unless there are Account Group-based Policies attached to the realm (or a higher ranked realm). This is necessary if performing MSCHAP authentication and the realm is being selected based on a RADIUS Attribute match pattern, rather than group membership. In this case the lookup is still necessary in order to set the NT-Password for the MSCHAP module.

RADIUS Proxy Servers

An entry in the RADIUS proxy servers scaffold defines a server that may be used to proxy requests to other remote RADIUS servers.

The name field is an arbitrary string descriptor used only for administrative identification. Choose a name that reflects the purpose of the record. This field has no bearing on the configuration or settings determined by this scaffold.

The RADIUS server realms field determines which logical partitions of the RADIUS Server will proxy requests to THIS server.

The note field is a place for the administrator to enter a comment. This field is purely informational and has no bearing on the configuration settings.

The priority field is used when multiple RADIUS proxy servers are associated with a RADIUS realm. The RADIUS proxy server with the highest priority is queried first. If the RADIUS proxy server with the highest priority does not respond within the window defined by the tries and timeout fields, the next highest priority server is queried. If no RADIUS proxy servers respond, the end-user is denied access.

The IP field specifies the IP address of the RADIUS server to be queried for credential validation.

The port field specifies the UDP port to use when sending the RADIUS request for credential validation. Similarly the accounting port field specifies the UDP port to use when sending the RADIUS accounting start, stop and intermediate updates. Leave these fields blank to use the defaults.

The secret field is the RADIUS shared secret. It is used to encode and decode messages being sent to and from the RADIUS server. This setting must match that of the RADIUS server in order for credential validation to operate.

If a server does not respond to a request within the timeout time, the server marks the request as timed out. After the configured number of tries , the server is marked as being "zombie", and the zombie period starts. The default timeout window is large because responses may be slow, especially when proxying across the Internet.

A server that is marked "zombie" will be used for proxying as a low priority. If there are live servers, they will always be preferred to a zombie. Requests will be proxied to a zombie server ONLY when there are no live servers. Any request that is proxied to a server will continue to be sent to that server until the server is marked dead. At that point, it will fail over to another server, if a live server is available. If the server does not respond to ANY packets during the zombie period , it will considered to be dead.

If status check is something other than "none", then the server will start sending status checks at the start of the zombie period. It will continue sending status checks until the server is marked "alive". These status packets are sent ONLY if the server is believed to be dead. They are NOT sent if the server is believed to be alive. They are NOT sent if this server is not proxying packets. If the server responds to the status check packet, then it is marked alive again, and is returned to use.

The check interval field configures the number of status checks in a row that the server needs to respond to before it is marked alive. If you want to mark a server as alive after a short time period of being responsive, it is best to use a small check interval , and a large value for answers to alive. Using a long check interval and a small number for answers to alive increases the probability of spurious fail-over and fallback attempts.

RADIUS layer "status checks" are used to see if a server is alive when status check is set to "Status-Server".

Some servers do not support status checks via the Status-Server packet. Others may not have a "test" user configured that can be used to query the server, to see if it is alive. For those servers, there is NO WAY of knowing when it becomes alive again. In this case, after the server has been marked dead, the revival interval must elapse before it is marked alive again, in the hope that it has come back to life. If it has NOT come back to life, the zombie period must elapse before marking it dead again. During the zombie period , all authentications will fail, because the server is still dead. There is nothing that can be done about this, other than to enable the status checks. e.g. if zombie period is 40 seconds, and revive interval is 300 seconds, then for 40 seconds out of every 340, or about 10% of the time, all authentications will fail. If the zombie period and revive interval configurations are set smaller, then it is possible for up to 50% of authentications to fail. We recommend enabling status check , and we do NOT recommend relying on revive interval. The revive interval is used ONLY if status check is set to "none".

If the server does not support Status-Server packets, then the proxying server can still send Access-Request or Accounting-Request packets with a pre-defined username. This behavior is enabled by setting status check to "Access-Request". This practice is NOT recommended, as it may potentially let users gain network access by using these "test" accounts. If it is used, we recommend that the server ALWAYS respond to these Access-Request status checks with Access-Reject. The status check just needs an answer, it does not need an Access-Accept. For Accounting-Request status checks, only the username needs to be set. The rest of the accounting attribute are set to default values. The server that receives these accounting packets SHOULD NOT treat them like normal user accounting packets.

RADIUS Server

The rXg internal credential database of users and tokens may be remotely accessed via the RADIUS protocol. Records in the RADIUS Server scaffold configure the behavior of the rXg RADIUS server.

The active field enables an option set. Exactly one option set may be active at any time. Enabling a particular option set will automatically disable another existing active option set.

The name field is an arbitrary string descriptor used only for administrative identification. Choose a name that reflects the purpose of the record. This field has no bearing on the configuration or settings determined by this scaffold.

The secret field defines the RADIUS shared secret. This shared credential must be identical to one configured on the RADIUS NAS devices that will access this RADIUS server.

The auth port and acct port fields configure the ports that the RADIUS server will listen for requests on. In most cases, the RFC defined ports of 1812 and 1813 should be used as many RADIUS NAS devices are only able to connect to those ports.

The debug field configures the RADIUS server to log the contents of all request and response packets to the log file.

The certificate field specifies an alternate certificate chain to configure the RADIUS server with.

The WAN targets and policies fields determine the set of devices that are allowed to have access to the rXg integrated RADIUS server. By default the rXg has packet filtering rules in place that prevent access to the integrated RADIUS server. This ensures that no devices of any kind may access the RADIUS server unless the operator takes specific action to enable access.

Access to the rXg integrated RADIUS server for RADIUS NAS devices that are on the WAN is enabled by creating one or more WAN targets for the RADIUS NAS devices and then enabling the appropriate check boxes. RADIUS NAS devices on the LAN may be granted access by placing the IPs of the RADIUS NAS devices into an IP Group and then linking the IP Group into a Policy which may be selected here.

The note field is a place for the administrator to enter a comment. This field is purely informational and has no bearing on the configuration settings.

RADIUS Server Attributes

The rXg integrated RADIUS server responds to RADIUS requests with RFC defined attributes. The operator may define additional attributes to be present in RADIUS responses by creating RADIUS Server Attribute records. Each record defines one additional attribute that will be presnet

The name configures the name of the RADIUS attribute that will be sent to the RADIUS NAS. The name must be agreed upon and configured identically on both the RADIUS server and the RADIUS NAS.

The value configures the value of the payload of the RADIUS attribute that will be sent to the RADIUS NAS in RADIUS server response. The value may be static (e.g., 'IEEE-802' for the 'Tunnel-Medium-Type' when configuring dynamic VLANs). Alternatively the value may be a dynamic value configured through substitution variables.

The RADIUS Server Realms field determines which RADIUS requests will contain the RADIUS Server Attribute defined by this record. More than one RADIUS Server Realm may be selected and thus the RADIUS Server Attribute defined by this record will be present in the responses to each of the defined realms.

The note field is a place for the administrator to enter a comment. This field is purely informational and has no bearing on the configuration settings.

Most dynamic VLAN configurations require the following three attributes to be configured:

| Tunnel-Medium-Type | 802 | | Tunnel-Private-Group-ID | %vlan_tag_assignment.tag% | | Tunnel-Type | VLAN |

Substitution

Payload fields may contain special keywords surrounded by % signs that will be substituted with relevant values. This enables the operator to deliver values stored in the database as part of the payload.

List of objects available:

Account Create Usage Plan Purchase Transaction: success/failure
cluster_node cluster_node cluster_node
custom_email custom_email custom_email
device_option device_option device_option
ip_group login_session login_session
login_session usage_plan merchant
usage_plan account payment_method
account merchant_transaction
usage_plan
account
Credit Card Expiring Coupon Redemption Account Charge: success/failure/no response
cluster_node cluster_node cluster_node
custom_email custom_email custom_email
device_option device_option device_option
login_session coupon login_session
payment_method login_session payment_method
usage_plan usage_plan response
account account usage_plan
account
Trigger: Connections Trigger: Quota Trigger: DPI
cluster_node cluster_node cluster_node
custom_email custom_email custom_email
device_option device_option device_option
login_session login_session login_session
max_connections_trigger quota_trigger snort_trigger
transient_group_membership transient_group_membership transient_group_membership
account account account
Trigger: Time Trigger: Log Hits Health Notice: create
cluster_node cluster_node cluster_node
custom_email custom_email custom_email
device_option device_option device_option
login_session login_session health_notice
time_trigger log_hits_trigger
transient_group_membership transient_group_membership
account account
Health Notice: cured
cluster_node
custom_email
device_option
health_notice

List of objects available for all associated record types:

Aged AR Penalty
cluster_node
custom_email
device_option
aged_ar_penalty
login_session
payment_method
usage_plan
account

List of attributes available for each object:

account usage_plan merchant
id id id
type account_group_id name
login name gateway
crypted_password description login
salt currency password
state recurring_method test
first_name recurring_day note
last_name variable_recurring_day created_at
email automatic_login updated_at
usage_plan_id note created_by
usage_minutes created_at updated_by
unlimited_usage_minutes updated_at signature
usage_expiration created_by partner
no_usage_expiration updated_by invoice_prefix
automatic_login time_plan_id integration
note quota_plan_id store_payment_methods
logged_in_at usage_lifetime_time live_url
created_at absolute_usage_lifetime pem
updated_at unlimited_usage_lifetime scratch
created_by no_usage_lifetime dup_timeout_seconds
updated_by recurring_retry_grace_minutes
mb_up recurring_fail_limit
mb_down prorate_credit
pkts_up permit_unpaid_ar
pkts_down pms_server_id
usage_mb_up lock_devices
usage_mb_down scratch
unlimited_usage_mb_up max_sessions
unlimited_usage_mb_down max_devices
company unlimited_devices
address1 unlimited_sessions
address2 usage_lifetime_time_unit
city max_dedicated_ips
region pms_guest_match_operator
zip recurring_lifetime_time
country recurring_lifetime_time_unit
phone unlimited_recurring_lifetime
bill_at sms_gateway_id
lock_version validation_method
charge_attempted_at validation_grace_minutes
lock_devices max_party_devices
relative_usage_lifetime unlimited_party_devices
scratch upnp_enabled
portal_message automatic_provision
max_devices conference_id
unlimited_devices ips_are_static
max_sessions base_price
unlimited_sessions vtas_are_static
max_dedicated_ips manual_ar
account_group_id
email2
pre_shared_key
phone_validation_code
email_validation_code
phone_validated
email_validated
phone_validation_code_expires_at
email_validation_code_expires_at
max_party_devices
unlimited_party_devices
nt_password
upnp_enabled
automatic_provision
ips_are_static
guid
vtas_are_static
account_id
max_sub_accounts
unlimited_sub_accounts
approved_by
approved_at
pending_admin_approval
wispr_data
hide_from_operator
payment_method merchant_transaction coupon
id id id
account_id account_id usage_plan_id
active payment_method_id code
company merchant_id credit
address1 usage_plan_id expires_at
address2 amount note
city currency created_by
state test updated_by
zip ip created_at
country mac updated_at
phone customer batch
note email scratch
created_at merchant_string max_redemptions
updated_at description unlimited_redemptions
created_by success
updated_by response_yaml
scratch created_at
customer_id updated_at
card_id created_by
nickname updated_by
encrypted_cc_number message
encrypted_cc_number_iv authorization
encrypted_cc_expiration_month hostname
encrypted_cc_expiration_month_iv http_user_agent_id
encrypted_cc_expiration_year account_group_id
encrypted_cc_expiration_year_iv subscription_id
encrypted_first_name
encrypted_first_name_iv
encrypted_middle_name
encrypted_middle_name_iv
encrypted_last_name
encrypted_last_name_iv
email
cc_number
cc_expiration_month
cc_expiration_year
first_name
middle_name
last_name
login_session ip_group device_option
id id id
account_id policy_id name
radius_realm_id name active
login priority device_location
ip note domain_name
mac created_at ntp_server
expires_at updated_at time_zone
online created_by smtp_address
radius_acct_session_id updated_by rails_env
radius_response scratch note
radius_class_attribute created_at
created_at updated_at
updated_at created_by
created_by updated_by
updated_by smtp_port
bytes_up smtp_domain
bytes_down smtp_username
pkts_up smtp_password
pkts_down cluster_node_id
usage_bytes_up scratch
usage_bytes_down log_rotate_hour
ldap_domain_id log_rotate_count
radius_realm_server_id ssh_port
ldap_domain_server_id country_code
cluster_node_id disable_hyperthreading
shared_credential_group_id developer_mode
ip_group_id sync_builtin_admins
account_group_id delayed_job_workers
usage_plan_id log_level
lock_version max_forked_processes
hostname soap_port
total_bytes_up reboot_timestamp
total_bytes_down reboot_time_zone
total_pkts_up limit_sshd_start
total_pkts_down limit_sshd_rate
radius_server_id limit_sshd_full
radius_request use_puma_threads
backend_login_at
http_user_agent_id
backend_login_seconds
portal_login_at
omniauth_profile_id
encrypted_password
encrypted_password_iv
conference_id
password
custom_email transient_group_membership time_trigger
id id id
name ip_group_id account_group_id
from mac_group_id name
subject account_group_id mon
body account_id tues
event ip wed
note mac thurs
created_by reason fri
updated_by expires_at sat
created_at created_by sun
updated_at updated_by start
send_to_account created_at end
scratch updated_at note
email_recipient cluster_node_id created_by
include_custom_reports_in_body max_connections_trigger_id updated_by
attachment_format quota_trigger_id created_at
custom_event time_trigger_id updated_at
delivery_method snort_trigger_id ip_group_id
sms_gateway_id hostname mac_group_id
reply_to radius_group_id scratch
ldap_group_id flush_states
login_session_id flush_dhcp
log_hits_trigger_id flush_arp
flush_states flush_vtas
flush_dhcp infrastructure_area_id
flush_arp previous_infrastructure_area_id
flush_vtas duration
vulner_assess_trigger_id current_dwell
previous_dwell
log_hits_trigger snort_trigger max_connections_trigger
id id id
ip_group_id ip_group_id ip_group_id
mac_group_id name name
name duration max_connections
note note duration
log_file created_by note
duration updated_by created_by
max_hits created_at updated_by
window updated_at created_at
scratch scratch updated_at
created_by mac_group_id scratch
updated_by flush_states mac_group_id
created_at flush_dhcp flush_states
updated_at flush_arp flush_dhcp
flush_states flush_vtas flush_arp
flush_dhcp flush_vtas
flush_arp max_duration
flush_vtas max_mb
period
active_or_expired
max_duration_logic
max_mb_logic
quota_trigger health_notice cluster_node
id id id
account_group_id cluster_node_id name
name name iui
usage_mb_down short_message database_password
usage_mb_down_unit long_message note
usage_mb_up cured_short_message created_by
usage_mb_up_unit cured_long_message updated_by
up_down_logic_operator severity created_at
note cured_at updated_at
created_by created_at ip
updated_by updated_at ssh_public_key
created_at created_by scratch
updated_at updated_by heartbeat_at
radius_group_id fleet_node_id data_plane_ha_timeout_seconds
ldap_group_id node_mode
period cluster_node_team_id
unlimited_period wal_receiver_pid
duration wal_receiver_status
unlimited_duration wal_receiver_receive_start_lsn
scratch wal_receiver_receive_start_tli
ip_group_id wal_receiver_received_lsn
mac_group_id wal_receiver_received_tli
flush_states wal_receiver_latest_end_lsn
flush_dhcp wal_receiver_slot_name
flush_arp wal_receiver_sender_host
flush_vtas wal_receiver_sender_port
wal_receiver_last_msg_send_time
wal_receiver_last_msg_receipt_time
wal_receiver_latest_end_time
op_cluster_node_id
priority
auto_registration
permit_new_nodes
auto_approve_new_nodes
pending_auto_registration
pending_approval
control_plane_ha_backoff_seconds
data_plane_ha_enabled
upgrading
enable_radius_proxy
aged_ar_penalty
id
name
amount
days
suspend_account
note
created_at
updated_at
created_by
updated_by
custom_email_id
scratch
record_type
days_type

Cookies help us deliver our services. By using our services, you agree to our use of cookies.