Free Online Course · Self-paced
OpenSSL & PKI Certificates Tutorial for Beginners
Complete OpenSSL and PKI tutorial - generate keys, build a Certificate Authority, issue SAN and ECC certificates, configure mTLS, renew and revoke certificates. 24 hands-on lessons tested on Linux.
- 24 parts
- ~233 min total
- Beginner to Advanced
- Updated May 2026
This tutorial walks you through OpenSSL and Public Key Infrastructure (PKI) from first principles - what a CA actually is, how certificates are signed, and why everyone keeps confusing openssl ca with openssl x509. We then build a complete two-tier PKI (Root CA + Intermediate CA), issue real server and client certificates with proper x509 extensions, set up mutual TLS, and cover the full lifecycle through renewal and revocation.
Every command is tested on a fresh Linux VM and uses real config files (openssl.cnf) rather than throwaway one-liners. By the end you will be able to operate a small internal CA confidently - the same skills used by Kubernetes admins, VPN administrators, and anyone running internal HTTPS services.
Click Start the course to begin with the PKI fundamentals chapter, or jump straight to the section you need - certificate generation, renewal, and revocation are the three most-bookmarked.
What you'll learn
- Generate private keys, CSRs, and self-signed certificates from scratch
- Build a complete two-tier PKI - Root CA + Intermediate CA - the right way
- Issue server certificates with SAN, ECC, and proper x509 extensions
- Configure mutual TLS (mTLS) authentication between client and server
- Renew, revoke, and re-issue certificates including the CRL workflow
Prerequisites
- A Linux workstation (RHEL 8+, Rocky/CentOS Stream, Ubuntu 22.04+) with openssl 1.1.1 or newer
- Comfortable on the command line and editing config files
- Basic understanding of asymmetric cryptography (public key / private key)
Syllabus
9 chapters · 24 lessons · ~233 min of reading
-
2 Build Your Certificate Authority 2 lessons
-
3 Generate Keys, CSRs and Certificates 6 lessons
- Part 5 Generate a private key and CSR with OpenSSL 7 min read
- Part 6 Things to consider when creating a CSR 11 min read
- Part 7 Generate a SAN certificate (multiple hostnames) 9 min read
- Part 8 Subject Alternative Name (SAN) - examples and config 6 min read
- Part 9 Add x509 extensions to a certificate 11 min read
- Part 10 Generate an ECC (Elliptic Curve) certificate 9 min read
-
6 Inspect and View Certificates 2 lessons
-
7 Renew and Manage Certificates 3 lessons
-
8 Revoke Certificates and CRL Workflow 2 lessons
-
9 Reference / Cheat Sheet 1 lesson

