2026年11月13日
2026年11月13日
VPSの証明書ストアを管理する方法(ca-certificates)
はじめに
本記事では、VPS(専用サーバー)上でSSL/TLS証明書を正しく利用するために重要な役割を果たすca-certificatesパッケージの管理方法について説明します。このパッケージは、システムが信頼できるインターネット通信を行うために必要となるCA(証明発行者)の証明書を提供するためのものです。
症状・背景
このテーマが必要になる主な場面は以下の通りです:
- VPS上でHTTPSサイトを設定する際に、TLS/SSL接続が確立できない。
- サーバー上のHTTPS通信に問題が発生し、エラーメッセージとして「could not verify the SSL certificate」などの警告が出る。
手順・設定方法
ステップ1: ca-certificatesパッケージのインストール
# ca-certificatesパッケージをインストールします。
sudo apt-get update && sudo apt-get install ca-certificates -y
ステップ2: 新しい証明書を追加する
# 新しいCA証明書をダウンロードします。ここでは例としてLet's Encryptを使用します。
wget https://letsencrypt.org/certs/isrgrootx1.pem -O /etc/ssl/certs/ca-certificates.crt
# ダウンロードしたファイルの所有者と権限を設定します。
sudo chown root:root /etc/ssl/certs/ca-certificates.crt
sudo chmod 644 /etc/ssl/certs/ca-certificates.crt
# ca-certificatesパッケージが追加した証明書を認識するように更新します。
update-ca-certificates
ステップ3: 設定の確認
# インストールされたCA証明書の一覧を表示します。
sudo cat /etc/ssl/certs/ca-certificates.crt | openssl x509 -noout -subject -dates
# ca-certificatesパッケージが認識しているすべてのCA証明書の一覧を確認します。
sudo update-ca-certificates --list
ステップ4: 実践/トラブルシュート/監視
# VPS上でHTTPS通信を行うアプリケーションやサービスの設定を確認します。例えばNginxの場合:
cat /etc/nginx/sites-available/default | grep ssl_certificate
# もしエラーメッセージが表示された場合、ca-certificatesパッケージに問題がないか再確認します。
sudo systemctl restart nginx
注意事項
- 新しいCA証明書を追加する際は、信頼性のあるソースから取得すること。
update-ca-certificatesコマンドを定期的に実行することで、最新の証明書リストを保ちます。- パッケージがインストールされているシステム全体で一貫性を持たせるために、
/etc/ssl/certs/ca-certificates.crtへの参照を更新します。
まとめ
1. ca-certificatesパッケージのインストール: VPS上でSSL/TLS接続を行うための基本的な設定を行います。
2. 新しいCA証明書の追加: 必要な証明書を手動で追加し、システムに認識させます。
3. 証明書の一覧確認: インストールされた証明書を確認します。
4. HTTPS通信の設定: NginxなどのWebサーバーでSSL/TLS接続を確立するための設定を行います。
関連記事: