ユーザ用ツール

サイト用ツール


letsencrypt

文書の過去の版を表示しています。


let's encrypt

無料のサーバ証明書

以下Ubuntu 16.04でnginxに証明書を設定する流れ

インストール

githubからcloneする

git clone https://github.com/certbot/certbot.git

必要なパッケージをインストールする

cd certbot
./certbot-auto

証明書の発行

example.comとwww.example.com用の証明書を作成する。1枚で複数ドメインに対応するマルチドメイン証明書が発行される。

/path/to/certbot-auto certonly --webroot -w /var/www/html -d example.com -d www.example.com

証明書を発行するために、このサーバの管理者がドメインの所持者であることを確認する必要がある。いくつかの方法があるが、ここではwebrootという方法を使う。これは、指定ドメインのport 80にHTTPアクセスして、certbotコマンドが作成したファイルを取得できればドメイン所持者であると見做すもの。

よって、このサーバ上でWebサーバが稼働していなくてはならない。

nginxの設定は以下のようにする

server {
    server_name: example.com
    root /var/www/example.com/htdocs
    
    location ^~ /.well-known/acme-challenge/ {
        root /var/www/html;
        try_files $uri =404;
    }
    
    // ... 以下略
}
server {
    server_name: www.example.com
    root /var/www/www.example.com/htdocs

    location ^~ /.well-known/acme-challenge/ {
        root /var/www/html;
        try_files $uri =404;
    }
}

証明書の更新

以下をroot権限でcronで週一ぐらいの期間で実行する。

/path/to/certbot-auto renew && service nginx reload
letsencrypt.1474884357.txt.gz · 最終更新: 2016/09/26 10:05 by nullpon