In this chapter, we will build a simple HTTPS server program. This serves as the counterpart to the HTTPS client we worked on in the previous chapter.
HTTPS is powered by Transport Layer Security (TLS). HTTPS servers, unlike HTTPS clients, are expected to identify themselves with certificates. We'll cover how to listen for HTTPS connections, provide certificates, and send an HTTP response over TLS.
The following topics are covered in this chapter:
- HTTPS overview
- HTTPS certificates
- HTTPS server setup with OpenSSL
- Accepting HTTPS connections
- Common problems
- OpenSSL alternatives
- Direct TLS termination alternatives