Letsencrypt/証明書/段階的実行について、ここに記述してください。

anaconda2 の下での実行記録

letsencrypt certonly --manual

メイルアドレスの入力が必要になる。

1. 確認方法がお粗末

66.133.109.36=outbound1.letsencrypt.org

MXしか存在しないドメイン名ではmail address が不正だと言われる。

Aレコードありのドメイン名を指定することで、回避する。

-- ToshinoriMaeno 2015-11-20 03:19:40

2. -a manual

To receive instructions for the (fairly complex) process of obtaining a cert
from Let's Encrypt by manually providing proof you control a domain:

  ./letsencrypt-auto certonly -a manual -d example.com \
  --server https://acme-v01.api.letsencrypt.org/directory --agree-dev-preview

3. web server の代用品を動かす必要がある

magic string は当然ながら、毎回変わる。

Make sure your web server displays the following content at
http://moin.qmail.jp/.well-known/acme-challenge/JYjhzY8zg3FyBtIAR6awsbKJTzpvko9xY4lAn8j_DkI before continuing:

JYjhzY8zg3FyBtIAR6awsbKJTzpvko9xY4lAn8j_DkI.xttmDxxSGofWVbGjLEliGq7-GH3CLqTIqi1JR1IU5V4

Content-Type header MUST be set to text/plain.

テスト用: http://moin.qmail.jp/.well-known/acme-challenge/JYjhzY8zg3FyBtIAR6awsbKJTzpvko9xY4lAn8j_DkI

If you don't have HTTP server configured, you can run the following
command on the target server (as root):

mkdir -p /tmp/letsencrypt/public_html/.well-known/acme-challenge
cd /tmp/letsencrypt/public_html
printf "%s" JYjhzY8zg3FyBtIAR6awsbKJTzpvko9xY4lAn8j_DkI.xttmDxxSGofWVbGjLEliGq7-GH3CLqTIqi1JR1IU5V4 > .well-known/acme-challenge/JYjhzY8zg3FyBtIAR6awsbKJTzpvko9xY4lAn8j_DkI

# run only once per server:
$(command -v python2 || command -v python2.7 || command -v python2.6) -c \
"import BaseHTTPServer, SimpleHTTPServer; \
SimpleHTTPServer.SimpleHTTPRequestHandler.extensions_map = {'': 'text/plain'}; \
s = BaseHTTPServer.HTTPServer(('', 80), SimpleHTTPServer.SimpleHTTPRequestHandler); \
s.serve_forever()" 

http://moin.qmail.jp はDJBのpublicfileが動作しているので、比較的簡単に対応できる。

-- ToshinoriMaeno 2015-11-20 06:58:26

「3ヶ月に一度やるのは面倒だ」と感じたので、打ち切りにします。

-- ToshinoriMaeno 2015-11-20 07:11:40

返事がおかしいらしく、認証を通らない。

-- ToshinoriMaeno 2015-11-20 12:27:06

4. congratulations

$ letsencrypt certonly -a manual -d moin.qmail.jp --server https://acme-v01.api.letsencrypt.org/directory --agree-dev-preview

指示通りにやったつもりが、末尾に改行が入って、検証を通らなかった。 (echo -n なんか忘れていた)

%echo -n 84eQUTTf_c9AKPbj2UuRkuScIDspoeUYTIv_SpnvfsI.xttmDxxSGofWVbGjLEliGq7-GH3CLqTIqi1JR1IU5V4 > 84eQUTTf_c9AKPbj2UuRkuScIDspoeUYTIv_SpnvfsI

IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at
   /etc/letsencrypt/live/moin.qmail.jp/fullchain.pem. Your cert will
   expire on 2016-02-18. To obtain a new version of the certificate in
   the future, simply run Let's Encrypt again.

5. echo では不十分

 For portability,  echo should only be used if the first argument does not start with a
     hyphen (`-') and does not contain any backslashes (`\').  If this is not  sufficient, printf(1) should be used.