Creating and Installing an SSL certificate

Last modified by Christopher Dittrich on 2026/05/19 08:56

Introduction

3iMedia Contact center listens to the following ports and paths by default.

http://localhost:81 (direct listener)
http://localhost/QueueController (IIS listener, IIS has to be installed and running)

Contact Center also provides a port for https connections listening on port 444.

https://localhost:444 (direct listener)
https://localhost/QueueController (IIS listener, IIS has to be installed and running)

We strongly recommend using IIS for providing SSL connectivity. Instead of using netsh command line tool to assign SSL certificates, IIS GUI can be used instead which makes the installation easier.

Getting An SSL Certificate

To enable SSL connections via https a valid SSL certificate has to be provided. There are several ways to obtain this certificate. 

Certificate Issued By Microsoft Active Directory Certificate Services (ADCS)

The easiest way to create a valid SSL certificate is by using Microsoft's own certificate services. This service has to be installed and configured in advance. To create a valid certificate the following Powershell command can be used.

Get-Certificate -SubjectName "CN=ippbxsrv" -DnsName ippbxsrv -Template WebServer -CertStoreLocation Cert:\LocalMachine\My

In this example the DNS-name ippbxsrv is being used as SwyxWare uses this name for Client-Autodiscovery. The actual DNS-server-name can be used as well. It's just important to match the name used later in the https-request.

The computer certificate which is always already installed in the computer certificate store cannot be used for Webserver connections

Certificate Issued By A Valid Root Authority

There are plenty of companies issueing valid SSL certificates which can be purchased and installed into the Windows Certificate Store. These certificate usually come as PBX-file and can directly be installed into the Windows Certificate Store.

All certificates should be installed into the local machine certificate store using the Computer Certificate Snap-In

Certificate Issued By Let's Encrypt

It might also be possible to use free Let's Encrypt certificates. Using these kind of certificates could come with two downsides. Firstly the DNS-name has to point to the IP-address of the server, which might be challenging on internal servers. Secondly the DNS-name has to be externally accessible which might be a problem with domains ending with ".local".

All certificates should be installed into the local machine certificate store using the Computer Certificate Snap-In

Installing / Binding The SSL Certificate

In order to actually use the previously installed certificate it has to be bound to the SSL listener. As Contact Center provides two ways of SSL connections, both ways are described in this article.

Binding Using Microsoft IIS

Assuming Microsoft ISS has been installed the certificate can simple be bound using the IIS Management Console and adding a https-binding to the Default Web Site. 

2022-05-31 01_59_50-3iMedia GmbH - Fernwartung.png

The previsouly installed certificate has to be selected in the lower dropdown

Binding Using Netsh

To bind the certificate to port 444 instead, follow these steps. Execute all commands with administrative privileges.

(Get-ChildItem -Path Cert:\LocalMachine\My | Where-Object {$_.Subject -match "CN=ippbxsrv"}).Thumbprint

This command returns the thumbprint of the previously created certificate. The name "ippbxsrv" has to be changed accordingly if the certificate was created with another DNS-name before.

netsh http add sslcert ipport=0.0.0.0:444 certhash=6D.... appid={907023e7-f57a-4641-91a0-61528da1bef4}

This command binds the certificate with the former retrieved thumbprint on port 444. The thumbprint has to be inserted in the certhash=... parameter.

Testing The Connection

To check if the certificate has been installed correctly the following URLs should work without any browser security warning:

https://localhost/QueueController (if installed using IIS Management Console)
https://localhost:444 (if installed by netsh command)