Posts Tagged ‘freeradius’
Stoke is quite a cool company when it comes to VPN gateways, and I mention here the SSX-3000, the only device I had the pleasure of working with. I could see on their website that new investments are made in LTE technologies, which should make this company even more attractive for me.
Well, this post is going to be about a specific thinggie of the SSX-3000 and StokeOS, that funky colored box, namely how they work with digital certificates. The scenario I am using them on is a classic Remote-Access scenario, for IKEv2. The StokeOS gateway is getting authenticated by the roadwarrior via digital certificate, while the roadwarrior authenticates via EAP.
First of all, we need digital certificates for the StokeOS. Following the User Guide got me nowhere, so we had to be inventive
A. The official version
1. Create a CSR on the Stoke:
Stoke[local]#certificate request new name newcsr.pem days 100 keylength 1024
2. Copy – paste the content of the CSR (or copy the file onto an ftp/tftp server), then generate a certificate using a CA (I had a Windows 2003 Server) => results a signed certificate – I used to download them in base64 format
3. Copy – paste the CA’s certificate and the Stoke’s certificate we’ve just signed onto Stoke and run the command:
— This command should “link” the CA, the signed certificate and the Stoke’s private RSA key to a PKCS12 file that this device uses for authentication. This is how Stoke authenticates
*** PROBLEM: when generating the CSR, the private key doesn’t get saved anywhere. I have looked everywhere: ” -r” : /hd/…, /cfint, /cfext… – so, the latest mightiest command is not working.
B. The working version
1. Do not create the CSR on the DUT
2. Generate a “Server Certificate” from IE and download it to a tftp/ftp server – it will be in pfx format
3. Export the private key to a separate key file – I have used openssl
4. Upload the CA’s certificate, signed certificate and the private key file on SSX and run the command (assuming I have put these files on /hd/Certs directory):
Stoke[local]#certificate device-certificate new name SSX format pem ca-certfile /hd/Certs/cacert.pem format pem signed-certificate /hd/Certs/signed-ssx-ca.pem format pem private-key /hd/Certs/signed-ssx-ca-key.pem
and now it works
as you can see from
Stoke[local]#sh certificate device-certificate all
Certificate Name
————————
SSX
Further on, create a context – I have called it test and a name for the radius session – I have called it ikev2, instruct the Stoke to do session authentication on radius, create a management interface on the same subnet as the radius machine, configure a radius server (where the Stoke should connect for session authentication) and, of course, the IKEv2 policies that make it work and the Configuration Payload (as we like to call the famous “mode-configuration” in IKEv2). The config should look like this:
Tags: csr, digital certificates, eap, freeradius, md5, openssl, p7b, PFX, PKCS12, PKI, techie, X509
