Skip to content

OkabeLab/certbot-kuinsdb

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

certbot-KUINSDB

KUINSDBのDNSレコードAPIを使ってcertbotのDNS-01 challengeをするためのスクリプト

必要なツール

  • curl
  • jq

セットアップ

  1. .env.example.env にコピーする

    cp .env.example .env
  2. .env を編集し、APIエンドポイントやトークンを設定する

.env で設定する内容

DOMAIN=example.kyoto-u.ac.jp
GET_ENDPOINT_URI=
GET_ENDPOINT_METHOD=GET
ADD_ENDPOINT_URI=
ADD_ENDPOINT_METHOD=POST
DEL_ENDPOINT_URI=
DEL_ENDPOINT_METHOD=POST
AUTH_TOKEN=xxxxx

.env にはKUINSDBのDNSレコード管理APIを使うのに必要な情報を記載する。

DOMAINには管理対象のドメイン(ゾーン名)を記載する。

GET_ENDPOINT_URIには既存レコードの取得のためのURI、 ADD_ENDPOINT_URIにはDNSレコードの追加のためのURI、 DEL_ENDPOINT_URIにはDNSレコードの削除のためのURIを記載する。

また、各URIに対して_METHODでHTTPメソッドを指定する。

AUTH_TOKENには認証に必要なAPIトークンを指定する。

使い方

参考: UPKI certbotによる証明書管理手順 https://nii-auth.atlassian.net/wiki/spaces/UPKIManual/pages/43884506/ACME+certbot

certbot certonly --manual \
  --preferred-challenges dns \
  --server 'https://secomtrust-acme.com/acme/' \
  --key-type rsa \
  --manual-auth-hook /path/to/authenticator.sh \
  --manual-cleanup-hook /path/to/cleanup.sh \
  -d example.kyoto-u.ac.jp

以下のパラメータは実際の値に書き換える必要がある。他の部分はUPKIを認証局として使う場合は書き換えない。

  • /path/to/authenticator.sh /path/to/cleanup.sh : スクリプトのパスに書き換える
  • -d : 対象のドメインに書き換える

動作の概要

  1. certbot が authenticator.sh を呼び出す
  2. authenticator.sh が KUINSDB API を使って _acme-challenge TXT レコードを追加する
  3. DNSの設定が完了するまで待機する(60秒)
  4. certbot が ACME サーバーに検証を依頼する
  5. 検証完了後、certbot が cleanup.sh を呼び出す
  6. cleanup.sh が KUINSDB API を使って _acme-challenge TXT レコードを削除する

参考情報

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages