LoadComplete from SmartBear. A desktop tool for load, stress, and scalability testing for both websites and web apps, LoadComplete by SmartBear doesn’t require advanced coding skills – meaning you can focus on the more important tasks. Check out LoadComplete’s documentation here.
- Aug 07, 2009 Radius Test is an implementation of the client side of RADIUS - Remote Authentication Dial In User Service. It is a useful tool for testing installations of your RADIUS server. Through Radius Test you can simulate authentication and accounting requests and send them to the RADIUS server making Radius Test as a NAS client.
- Radius Test by RadUtils is a Windows shareware RADIUS testing tool featuring a GUI and command-line access. Though not exactly a free product, you still may be able to use it for your needs before having to purchase a license. There’s a fully-functional 15-day trial before you must purchase a license for $29.95.
- ActiveMQ has a web console for sending test messages (like mentioned above), but if your provider doesn't have this, it might be easiest to just write a console app/web page to post test messages. Sending a message in JMS isn't too hard, you might get the most benefit just writing your own test client. If you can use Spring in Java, it has.
TinyRadius is a simple, small and fast Java Radius library capable ofsending and receiving Radius packets of all types. It is released under the terms of the LGPL.
SourceForge Project Overview | JavaDoc API documentation |Download current release
What you can do with it:
- send and receive Radius packets (Access-Request, Access-Accept,Access-Reject, Access-Challenge, Accounting-Request, Accounting-Responseand others) from within your Java application
- use PAP and CHAP as authentication types for Access-Request messages
- attach arbitrary Radius attributes to the packets employing attributenames read from a dictionary file
- send and receive Radius packets with 'Vendor-Specific' attributes
What you cannot/should not do with it:
Simple Radius Test Tool Reviews
- set up a complex Radius server (please use FreeRadiusor JRadius)
- connect the server to a user database without writing Java code(this library is ment to be plugged in applications and not to beused as a stand-alone server)
TinyRadius comes with small sample applications which show how to integrateit as a Radius server and a Radius client.
What are the requirements?
- TinyRadius works well and is tested with JDK 1.1 through 1.6.I recommend using at least JDK 1.4.
- You need Apache Commons Logging to compile and runTinyRadius. This small library is included with theTinyRadius release.
EXAMPLE 1: Authentication made easy
If you do not need to set special attribute values, you can just use themethod authenticate() from the RadiusClient:
EXAMPLE 2: Sending an Access-Request with multiple attributes
1. Create a RadiusClient object with the host name and shared secretof the Radius server you wish to contact. You may set additional details(port numbers, for example) using methods of this object.
2. Create the Access-Request Radius packet. Pass the user name andpassword in the constructor. The User-Name attribute will be addedon construction of the object, while the User-Password attribute (PAP)or the CHAP-Password and CHAP-Challenge attributes (CHAP) will begenerated when encoding the packet because the request authenticator ofthe packet is required to encrypt the password.
3. Set further attributes. Note that TinyRadius resolves the attribute typefrom the given type name and that it converts the IP address and the nameof the constant (Login-User) to the right values. Please also note howthe Vendor-Specific (WISPr) sub-attribute 'WISPr-Location-ID'is set. This call results in the creation of a Vendor-Specific attributewith the proper vendor ID and the addition of a sub-attribute to thisattribute.
Simple Radius Test Tool Online
4. Send the packet and receive the response.
EXAMPLE 3: How to implement a Radius server
You need to subclass org.tinyradius.util.RadiusServer
.Provide an implementation for the following methods:
This method should check whether the passed client is allowed to communicate with the Radius server. If this is the case, it should return the shared secret that secures the communication to the client.
This method returns the password for the given user. If you have not access to the password (in the case of CHAP) or you need finer control (you want to set attributes for the response packet, for example), you have to override the following method.
Override this methods for fine control about the way Accounting-Request and Access-Request packets are handled. Just return the Radius packet to be sent as a response or null if the request should be ignored.
After implementing your own server class, you can start and stop the serverusing the methods start() and stop(). For start(), you pass whether the servershould listen on the auth and/or the acct port. This method spawns new threads.
EXAMPLE 4: How to implement a Radius proxy server
You need to subclass org.tinyradius.proxy.RadiusProxy
.In addition to implementing the abstract methods from RadiusServer
,you have to provide an implementation for the following method.
Free Radius Test Tool
Using the provided client endpoint (containing the client's IP address,the port number as well as the shared secret) you have to decide whetherthe given Radius packet should be forwarded or if the TinyRadius serveritself shall handle the packet.
If you return null
, the packet will be dealt with asusual. Otherwise, the packet will be proxied (adding a Proxy-State attribute)to the returned Radius server.
For a complete example, please check the three classes TestProxy
,TestServer
and TestClient
, which can be used toset up an easy proxying Radius infrastructure only with TinyRadius andonly using 'localhost'.
Please do not hesitate to contact me if you have got questions orsuggestions.
Matthias Wuttkepost@matthias-wuttke.de