AlmaLinux9でApacheのSSL化を行う際の手順です。
秘密鍵の生成
↓
それを元にCSRの生成
↓
それを元に証明書の発行
↓
秘密鍵/中間証明書/サーバ証明書をapacheに適用
という大まかな流れになります。
まず秘密鍵を生成するところからになります。以下のコマンドで生成します。以前はランダムファイルやパスフレーズを設定していましたが、それらを省略したものです。
# openssl genrsa -out server.key 2048 |
カレントディレクトリにserver.keyという秘密鍵ファイルが生成されます。これを用いてCSRを生成します。
# openssl req -new -key server.key -out server.csr |
各項目に必要にそって入力していきます。
Country Name (2 letter code) [XX]: State or Province Name (full name) []: Locality Name (eg, city) [Default City]: Organization Name (eg, company) [Default Company Ltd]: Organizational Unit Name (eg, section) []: Common Name (eg, your name or your server's hostname) []: Email Address []: Please enter the following 'extra' attributes to be sent with your certificate request A challenge password []: An optional company name []: |
入力し終わるとserver.csrというファイルが生成されます。これを認証局に送付することでサーバ証明書が発行されます。
それらをapacheに設定していきます。
# vi /etc/httpd/conf.d/ssl.conf <一部抜粋> SSLProxyProtocol +TLSv1.2 # 証明書ファイル SSLCertificateFile /etc/pki/tls/certs/server.cer # 秘密鍵 SSLCertificateKeyFile /etc/pki/tls/private/server.key # 中間証明書(必要な場合) SSLCertificateChainFile /etc/pki/tls/certs/server-chain.cer |
apache再起動後、firewalldを有効にしている場合は、ポート443も開けておく必要があります。
# systemctl restart httpd # vi /etc/firewalld/zones/public.xml <以下を追加> <service name="https"/> # systemctl restart firewalld |