nginx 第14話: SSL/TLS 証明書の管理と HTTPS の設定
はじめに
前回はnginx のストリーミング設定とリアルタイム分析について学びました。今回はnginx のSSL/TLS 証明書の管理とHTTPS の設定について説明します。
これらの機能は、サーバーのセキュリティ性を向上させるために不可欠です。SSL/TLS 証明書の管理では、nginx が自動的に SSL/TLS 証明書を生成し、更新することができ、HTTPS の設定では、nginx が HTTPS プロトコルを使用して通信することができます。
SSL/TLS 証明書の管理
nginx では、SSL/TLS 証明書の管理は ssl_certificate と ssl_certificate_key ディレクティブを使用して行うことができます。例えば、以下のように ssl_certificate を指定すると、nginx は自動的に SSL/TLS 証明書を生成します。
http {
...
ssl_certificate /path/to/cert.pem;
ssl_certificate_key /path/to/key.pem;
}
また、ssl_trusted_certificate ディレクティブを使用して、信頼された CA の証明書を指定することもできます。
http {
...
ssl_trusted_certificate /path/to/trust.pem;
}
HTTPS の設定
nginx では、HTTPS の設定は listen ディレクティブで行うことができます。例えば、以下のように HTTPS を有効にすることで、nginx は HTTPS プロトコルを使用して通信することができます。
http {
...
server {
listen 443 ssl;
ssl_certificate /path/to/cert.pem;
ssl_certificate_key /path/to/key.pem;
}
}
また、ssl_protocols ディレクティブを使用して、サポートする SSL/TLS プロトコルを指定することもできます。
http {
...
server {
listen 443 ssl;
ssl_protocols TLSv1.2 TLSv1.3;
}
}
最後に
この記事では、nginx のSSL/TLS 証明書の管理とHTTPS の設定について説明しました。ssl_certificate と ssl_certificate_key ディレクティブを使用して SSL/TLS 証明書を生成し、更新することができ、listen ディレクティブで HTTPS を有効にすることで HTTPS プロトコルを使用して通信することができます。また、ssl_protocols ディレクティブを使用してサポートするSSL/TLSプロトコルを指定することもできます。