Tuesday, January 29, 2019

Migrating to new Radiator packages

New package formats

Radiator 4.22 is our first release that comes with Windows MSI package and Linux packages for Red Hat Enterprise Linux 7, CentOS 7, Ubuntu 18.04 and 16.04, and Debian 9. The old package formats, tar, zip and generic RPM, are also available. Our plan is to relabel the generic RPM package to legacy RPM and depreate it in favour of distribution specific RPMs.

See our earlier posts for more about new Linux and Windows packages. The topics below refer these posts for background information.

Before going to the topics below, here's what is common with each migration case. See the posts mentioned above for more details:
  • Your current Radiator configuration requires no large changes
  • Log directory is a prime example of packaging and startup related configuration file option that likely needs an update
  • New packages automatically configure Radiator to start at system boot. You may need to remove or disable what you currently use for starting Radiator

 Upgrading from old package format on Windows

Radiator MSI package comes with its own Strawberry Perl. As described in the aforementioned post, Radiator MSI package is designed to be self-contained. This also means that if you already have Radiator installed from a non-MSI package, you can switch to MSI without uninstalling your current Radiator.

We recommend making a copy of your current configuration before installation and checking that old Radiator installation is disabled or removed in Windows services after MSI installation. The blog post mentioned above has a wealth of information about MSI installation and post installation tasks.

Upgrading from generic RPM on Linux

Before starting an upgrade to new el7 RPM, review the Linux post from above to see what updates your current configuration requires. Most likely log directory needs to be updated, but also note the other changes, such as, new configuration file name, and system user and group radiator that are now used to run radiusd.

RPM packages for el7 replace generic RPM, which means you do not have to remove it before installing RPM for el7. We recommend making a backup of your configuration files, dictionaries and edited startup scripts and systemd service files. Although RPM package management tool renames edited files with rpmsave extension when upgrading from generic RPM, backups are recommended.

After the upgrade check that old startup scripts are disabled and Radiator is started with new systemd based unit file. It should run as radiator. See that logging and logrotate work as required.

Upgrading from tar or zip to RPM or deb

When Radiator is installed from RPM or deb package, old tar or zip based installation is not removed. Both RPM and deb packages prefer Radiator files from /opt/radiator directory, but you could consider locating old Radiator files installed from zip or tar package and removing them after the upgrade.

Because zip or tar based installation does not create any system user or group, log directories or require any other settings that come with new el7 RPM and deb packages, you need to review and updated your current Radiator configuration. See the Linux packaging blog post mentioned above for the details of paths, users and other information.

Also note that you need to manually disable old startup scripts. After the upgrade check that Radiator is started with new systemd based unit file. It should run as radiator. See that logging and logrotate work as required.

Thursday, January 24, 2019

Radiator SIM support 2.4 released

We are pleased to announce release 2.4 of Radiator SIM support. This release includes support for SCTP multihoming and has a number of smaller enhancements and bug fixes.

Revision 2.4 detailed updates and fixes
  • 3GPPAutHSS now supports Peer-Auth-Application-Id as DiaPeerDef selector. Requires Carrier module 1.5 or later and Radiator 4.20 or later.
  • Added configuration parameter HSSRealm to 3GPPAuthHSS. This value for this parameter is typically the realm where HSS resides. If not set, messages’ realm is set from DestinationRealm parameter of DiaPeerDef used to forwarding messages to the HSS. Defaults to not set.
  • Subscription-Id AVP is now added to SWm DEA messages to relay MSISDN to ePDG.
  • Updated EAP-SIM, EAP-AKA and EAP-AKA’ permanent, pseudonym (TMSI) and fast re-authentication identity leading characters to match RFC 4186, 4187 and 5448, and 3GPP TS 23.003 suggestions and requirements. Because of historical reasons, EAP-SIM fast re-authentication and EAP-AKA TMSI leading characters were swapped. EAP-AKA’ non-permanent identifiers are now fully separate from the respective EAP-AKA identifiers.
  • Removed obsolete configuration parameters TestNoMAP and GetReauthQueryEAP. Support for TestClient and TestVectorFile were removed from AuthAKA.pm and related files because they are obsolete. Use AuthAKATEST or ServerWXMAP based configurations for testing.
  • A number of code clean up and maintenance changes were done based on Perl::Critic and other tools.
  • SCTP multihoming is now supported. Requires Radiator 4.22 and Radiator Radius::UtilXS package.
Also, for more information, please do not hesitate to contact us at info@radiatorsoftware.com . See also Radiator SIM Pack product page.

Tuesday, January 15, 2019

Radiator Carrier Pack revision 1.5 released!


We are pleased to announce that Radiator Carrier revision 1.5 has been released. The many upgrades and enhancements in the new revision provide even better support for different carrier infrastructures than before.

Detailed changes and upgrades in revision 1.5
  • Added StreamServerUnix which allows to use UNIX domain sockets to connect to Radiator process. Integrator.pm in goodies shows an example how to create an integration interface which uses StreamServerUnix.
  • Updated ServerDIAMETERTelco and DiaPeerDef to fully support TLS_* configuration parameters.
  • DiaPeerDef now supports ReconnectTimeout parameter.
  • AuthBy DiaRelay now supports newly added DiaPeerDef selector Peer-Auth-Application-Id which allows selecting next hop Diameter peer based on the Auth-Application-Id advertised in the peer's CER or CEA. Requires Radiator 4.20 or later.
  • ReconnectTimeout and TLS support in DiaPeerDef requires Radiator 4.21 or later.
  • DiaPeerDef and ServerDiameterTelco now support SCTP multihoming when Radius::SCTP bindings for libsctp are available. Multiple local IP addresses are bound when BindAddress or LocalAddress are configured for ServerDIAMETERTelco or DiaPeerDef, respectively. DiaPeerDef now accepts one or more SCTPPeer configuration parameter for connecting to multiple destination IP addresses. Requires Radiator 4.22 and Radiator Radius::UtilXS package.
  • A number of code clean up and maintenance changes were done based on Perl::Critic and other tools.
  • Information about Diameter connection establishment, termination and DiaPeer selection is now logged on INFO level.

Now available as new Linux packages


Similar to Radiator 4.22, Radiator Carrier Pack is now available as packages suitable for Red Hat, CentOS and Ubuntu. These packages are based on the best practices we have used in our deployments and they comply with the current Linux distribution packaging practices. For more info regarding the new Radiator packages, please see our recent blog

These new packages are now available at:

As these are new packages, we are interested in any feedback you may have on the package design and installation. If you have any ideas, suggestions, feedback or questions of the new  packages, please do send them via this package feedback form or via email to support (a) radiatorsoftware.com.
Radiator Carrier Pack is now known as Radiator Service Provider Pack.

Friday, January 11, 2019

Radiator v4.22: Now with Windows installer package!

In our efforts to make Radiator easier to install, deploy and update in Windows environment, we have build a Windows installer package for Windows installations. The new package comes as an MSI that can be installed silently when needed. Supported Windows versions are Windows Server 2012 or newer, but older Windows Server versions can also be used provided they have at least PowerShell 3.0 installed.

These new packages are now first available at:
https://radiatorsoftware.com/products/radiator/downloads/

The MSI package includes Strawberry Perl for convenience, so that separate installation of Perl is no longer needed. However, if your environment already has a Perl installation, Strawberry Perl in Radiator MSI package does not disturb it. Since Radiator does require certain Perl modules that are available in the Windows package, it is mandatory to use the Radiator binaries from provided command line shortcuts. These shortcuts are located under Program Files\Radiator folder and for convenience shortcut to this folder and to reference manual are also available in the Start Menu under Radiator Software.

In addition of the Strawberry Perl command line shortcuts there are other important files available on the Program Files\Radiator folder. For example the basic configuration that is automatically installed and installation time log. This folder is never cleaned during upgrade or uninstallation, so this is the suggested location for all your own configurations.


 Differences between the new Windows package and installation from zip 

  • Radiator will install itself automatically under Radiator\Radiator in the drive with largest space available
  • Automatically provided dictionary and users are no longer copied to Program Files\Radiator, instead they should be used from original location. If the files are changed locally, then these should be stored under Program Files\Radiator so they are not removed
  • Installation and other logs are available under Program Files\Radiator
  • Basic configuration file is available under Program Files\Radiator
    • Basic configuration file name has changed to radiator.conf
  • Strawberry Perl is included in the Windows package
    • Only way to avoid this is to install manually from package as before
    • Strawberry Perl is not in path, so when running commands manually they must be done from Perl command line shortcuts available under Program Files\Radiator
  • Windows Service with basic configuration is created automatically
    • This helps testing that installation has been successful with radpwtst
  • Radiator Software is added to Start menu, with shortcut to Program Files\Radiator and link to reference manual
  • Binary files are not copied under Strawberry Perl, instead they are available in Radiator location

 

 

Installing, upgrading and uninstalling the Windows Package

 

Installing the new Windows package is simple. Once the MSI file is copied to the target machine, double click the file, approve license screens, and the installation is done. It is not possible to select where Radiator is installing, it will automatically install to the drive with most space available under Radiator\Radiator. Strawberry Perl is installed under Radiator\StrawberryPerl-Radiator and configuration and logs will go under Program Files\Radiator.

Upgrading works similar way, double clicking the MSI file on the target machine will launch the upgrade functionality. Upgrade will not remove anything from Program Files\Radiator, and also the Windows Service will be available as it was before the upgrade.

Uninstalling can be done either from double clicking the MSI file used to install the software or from Control Panel - Add/Remove Programs. When uninstalling via MSI file, the only option available is Remove. Repair or Change is not available. All Radiator Software specific items are cleared out during the uninstall, except the Program Files\Radiator folder. This is to ensure your configurations are not lost.

The MSI also supports silent operations, so it is possible to start the installation, upgrade, or uninstallation from command line without any UIs.

Note that the MSI package is not signed.



How to change the Windows Service configuration

 

When Radiator Software is installed with the help of MSI package, it has automatically created Windows service with basic configuration. This configuration is mainly aimed to help testing with radpwtst that the installation was successful. Changing the configuration to the Windows Service requires manual steps:

Create the configuration and store it under Program Files\Radiator


Open Windows Services



Stop the Radiator service and close the Services dialog


Open Perl command line Elevated from Program Files\Radiator by double clicking



Initialize the new configuration to Windows Service with command:
perl  "C:\Radiator\Radiator\radiusd" -installservice -config "C:\Program Files\Radiator\lsa_eap_peap.cfg" -prepend_env PATH:C:\Radiator\StrawberryPerl-Radiator\perl\site\bin;C:\Radiator\StrawberryPerl-Radiator\perl\bin;C:\Radiator\StrawberryPerl-Radiator\c\bin;


Open Windows Services and verify from the Radiator service properties that the new configuration is available. Start the service.


Opening ports in Windows firewall for Radiator

 

For connections to work from outside localhost, UDP ports 1645, 1646, 1812, and 1813 need to be opened from the Windows firewall.


Open the Windows Defender Firewall with Advanced Security



Create new Inbound Rule



Rule Type should be Port



Select UDP protocol and specify the needed ports: 1645, 1646, 1812, 1813



Allow the connection



Apply the rule to all profiles



Give suitable name for the rule and Finish the creation

New firewall rule is now active, and incoming Radiator connections are possible.


Give us feedback

As these are new packages, we are interested in any feedback you may have on the package design and installation. If you have any ideas, suggestions, feedback or questions of the new  packages, please do send them via this package feedback form or via email to support (a) radiatorsoftware.com.

Thursday, January 10, 2019

Radiator v4.22: New Linux packages for Radiator products

Background


In our efforts to make Radiator easier to install, deploy and update, we have concentrated our efforts first to ensure Radiator software packaging is up-to-date with current Linux distribution packaging practices. We have started by designing our new packages based on the best practices we have used in our deployments and enhanced those with recommendations for packaging suitable for Red Hat, CentOS, Ubuntu and Debian.

These new packages are now available at:

In the near future we intend to introduce Linux package repositories for our customer interested in automating their Radiator updates. We will also continue making legacy RPM packages for a small number of future Radiator releases to provide time for users to migrate to new packages. We will publish blog posts with more detailed migration information during January 2019.

What has changed in packaging?

  • New packages are named as radiator-4.22-1.el7.noarch.rpm and radiator_4.22-1_all.deb. Legacy RPMs are named as Radiator-4.22-1.noarch.rpm. Note the changes in RPM name.
  • Radiator AAA server software now installs completely separately to /opt/radiator/radiator directory to keep Radiator product files separate from system files and Perl libraries. For this reason radiusd and radpwtst and other utilities are no longer copied in /usr/bin and other directories. Startup configuration that comes with the new packages sets this directory as the primary source for Radiator module files.
  • A system user and group radiator is created for Radiator as there is no need to run Radiator as a privileged user. Also the default configuration file and log file permissions have been revised to more secure defaults.
  • Radiator's log directory is now /var/log/radiator/ with permissions set correctly for radiator system user and group. If this directory exists, its permissions are updated but existing old log files are not changed.
  • Radiator package is now fully compliant with systemd for running a single as well as multiple Radiator  instances. This however means that the oldest supported Red Hat / CentOS distribution version for new packages is Red Hat Enterprise Linux or CentOS 7. For Ubuntu we support 16.04 LTS (Xenial Xerus) as well as 18.04 LTS (Bionic Beaver). For Debian we support 9 (stretch).
  • systemd unit files set Radiator configuration file to /etc/radiator/radiator.conf
  • Radiator service is installed but is neither enabled nor started by default according to Red Hat packaging recommendations. This is also how deb packages are configured.
  • In addition to a new example configuration file, located at /etc/radiator/radiator.conf, the new package installs also a logrotate configuration file at /etc/logrotate.d/radiator. By default the configuration rotates and compresses Radiator logs every month and keeps 24 months worth of logs.
  • Root privileges are no longer needed for TACACS+. Radiator is started with privileges that allow binding to reserved ports.
  • New packages are signed. More information will be available in Radiator documentation.
See Radiator documentation for the latest installation instructions and other information. See the separate blog post about migration information.

What packages do not do?

Package configuration tries to keep system changes at minimum. For example, firewall rules are not updated. 

Some Linux distributions such as Red Hat Enterprise Linux 7 and Centos 7, have a firewall setup enabled by default. To make Radiator accessible from the network on Red Hat or Centos, use firewall configuration command (sudo firewall-cmd --permanent --zone=public --add-service=radius; sudo firewall-cmd --reload) to setup and enable rules for RADIUS.

Give us feedback

As these are new packages, we are interested in any feedback you may have on the package design and installation. If you have any ideas, suggestions, feedback or questions of the new packages, please do send them via this package feedback form or via email to support (a) radiatorsoftware.com.


UPDATE 2019-01-29: Mention Debian 9. Firewall configuration example was added. Link to migration information post was added.

Wednesday, January 9, 2019

Radiator version 4.22 released!

We are pleased to announce the release of Radiator version 4.22!

This version comes with additional Radiator package formats and contains new features, enhancements and bug fixes.

Radiator is now packaged as RPM for Red Hat Enterprise Linux 7 and CentOS 7, deb for Ubuntu 16.04 and 18.04, and MSI for Windows. These are  in addition to the previous package formats: generic RPM, zip and tgz.  Other software, such as Radiator SIM pack, will be packaged later. More information about new packages will be posted separately.

Revision 4.22 (2019-01-09) major packaging update, new features,  enhancements and bug fixes

Selected compatibility notes, enhancements and fixes:

  • New Radiator packages: Red Hat Enterprise Linux 7 and Centos 7, Ubuntu 16.04 and 18.04, and Windows MSI
  • Major updates to Yubikey Validation server support
  • SCTP multihoming support for Diameter and other stream modules

Known caveats and other notes

  • TLSv1.3 is not enabled by default for TLS based EAP methods.
  • TLSv1.3 is not enabled by default for Stream based classes, such as RadSec.
More info and detailed changes can be found from our Radiator revision history.