Secure Sockets Layer (SSL) provides a secure encrypted connection between client and host. An example of such a connection is between a browser and web server using HTTPS. This can prevent man-in-the-middle attacks.
Self signed certificates are for development only. Use
openssl to generate a new key and certificate.
$ openssl req -x509 -nodes -days 3650 -newkey rsa:2048 -keyout example.key -out example.crt
Two text files will be created,
example.key contains the private key, and