Prerequisites
- A XCA PKI database https://youtu.be/ezzj3x207lQ
Create Your SSL Certificate
- Launch XCA
- Open the PKI database if it is not already (File > Open DataBase), enter password
- Click on the Certificates tab, right click on your Intermediate CA certificate
- Select New
- On the Source tab, make sure Use this Certificate for signing is selected
- Verify your Intermediate CA certificate is selected from the drop down
- Click the Subject tab
- Complete the Distinguished Name section
internalName: nettools.i12bretro.local
countryName: US
stateOrProvinceName: Virginia
localityName: Northern
organizationName: i12bretro
organizationUnitName: i12bretro Certificate Authority
commonName: nettools.i12bretro.local - Click the Generate a New Key button
- Enter a name and set the key size to at least 2048
- Click Create
- Click on the Extensions tab
- Select End Entity from the type list
- Click Edit next to Subject Alternative Name
- Add any DNS or IP addresses that the certificate will identify
- Update the validity dates to fit your needs
- Click the Key Usage tab
- Under Key Usage select Digital Signature, Key Encipherment
- Under Extended Key Usage select Web Server and Web Client Authentication
- Click the Netscape tab
- Select SSL Server
- Click OK to create the certificate
Exporting Required Files
- In XCA, click on the Certificates tab
- Right click the SSL certificate > Export > File
- Set the file name with a .pem extension and verify the export format is PEM + Key (*.pem)
- Click OK
Applying the Certificates
- Download PuTTY Download
- Connect to the Linux host via PuTTY
- Install Webmin if it is not already installed
wget http://prdownloads.sourceforge.net/webadmin/webmin_1.941_all.deb
sudo dpkg -i webmin_1.941_all.deb
sudo apt-get -f install - Copy the certificates exported above to the Linux device
- Copy the certificates exported above to /etc/webmin
cp /home/pi/Downloads/webmin.pem /etc/webmin
- Open a web browser and navigate to Webmin via https://DNSorIP:10000
- Login with the root username and password
- Navigate to Webmin > Webmin Configuration > SSL Encryption
- Click the browse button next to the Private key file field
- Navigate to /etc/webmin and select the webmin.pem certificate
- Make sure the certificate file is set to Same file as private key
- Click the save button
- Webmin will apply the certificate and restart
- Close the web browser and relaunch using the DNS or IP address setup in the SSL certificate