2023年3月29日水曜日

証明書の内容をbase64化してシェルスクリプト内で使用する方法

証明書の内容をbase64化してシェルスクリプト内で使用する方法

概要

タイトルの通りです

環境

  • Ubuntu 18.04

追記: こっちのほうがシンプル

(コメントありがとうございます)

curl -XPOST 'http://localhost:8080/cert' -H 'Content-Type: application/json' \
-d @- << EOF
{
  "certificate": "$(base64 -w 0 /path/to/certs/fullchain.pem)",
  "key": "$(base64 -w 0 /path/to/certs/privkey.pem)"
}
EOF

サンプルコード

curl -XPOST 'http://localhost:8080/cert' -H 'Content-Type: application/json' \
-d @- << EOF
{
  "certificate": "$(cat /path/to/certs/fullchain.pem | base64 | tr -d '\n')",
  "key": "$(cat /path/to/certs/privkey.pem | base64 | tr -d '\n')"
}
EOF

base64 後に改行コードをなくすのがポイントです

2 件のコメント:

  1. base64 -w 0 /path/to/certs/fullchain.pem と書けばcatもtrも不要です

    返信削除
    返信
    1. ありがとうございます。記事に追記させていただきました。

      削除