15 Star 88 Fork 12

Gitee 极速下载 / pigsty

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
此仓库是为了提升国内下载速度的镜像仓库,每日同步一次。 原始仓库: https://github.com/Vonng/pigsty
克隆/下载
cert.yml 2.56 KB
一键复制 编辑 原始数据 按行查看 历史
Vonng 提交于 2023-02-07 09:08 . fix cert.yml openssl_csr missing san issue
#!/usr/bin/env ansible-playbook
---
#==============================================================#
# File : cert.yml
# Desc : issue certificates with local CA
# Ctime : 2022-11-19
# Mtime : 2023-02-07
# Path : cert.yml
# Author : Ruohang Feng (rh@vonng.com)
# License : AGPLv3
#==============================================================#
#---------------------------------------------------------------
# Example:
# issue postgres admin/monitor user client certificate:
# ./cert.yml -e cn=dbuser_dba
# ./cert.yml -e cn=dbuser_monitor
# cert are generated under files/pki/misc/<cn>.{key,crt} by default
#---------------------------------------------------------------
- name: Issue Cert
hosts: localhost
gather_facts: no
become: no
vars:
# CERT INFORMATION
cn: pigsty # add cn here, required [INPUT]
san: # add subject alternative names here
- DNS:localhost # dns records
- IP:127.0.0.1 # ip addresses
org: pigsty # organization name
unit: pigsty # organization unit name
expire: 7300d # 20 years
#key: files/pki/misc/misc.key # private key path [OUTPUT]
#crt: files/pki/misc/misc.crt # certificate file path [OUTPUT]
csr: files/pki/csr/tmp.csr # temporary csr file path
tasks:
# if key & crt path are not specified, generate them with cn
- name: set crt, key, csr path
when: key is not defined and crt is not defined
set_fact:
key: "files/pki/misc/{{ cn }}.key"
crt: "files/pki/misc/{{ cn }}.crt"
csr: "files/pki/csr/{{ cn }}.csr"
- name: generate key {{ key_path }}
connection: local
openssl_privatekey:
path: "{{ key }}"
mode: 0600
- name: generate csr {{ csr_path }}
connection: local
openssl_csr:
path: "{{ csr }}"
privatekey_path: "{{ key }}"
common_name: "{{ cn }}"
organization_name: "{{ org }}"
organizational_unit_name: "{{ unit }}"
subject_alt_name: "{{ san }}"
force: true
- name: signing crt {{ csr_path }}
connection: local
openssl_certificate:
path: "{{ crt }}"
csr_path: "{{ csr }}"
ownca_path: files/pki/ca/ca.crt
ownca_privatekey_path: files/pki/ca/ca.key
provider: ownca
selfsigned_not_after: "+{{ expire }}"
mode: 0600
- name: print summary
debug:
msg: "{{ key }} {{ crt }}"
...
Python
1
https://gitee.com/mirrors/pigsty.git
git@gitee.com:mirrors/pigsty.git
mirrors
pigsty
pigsty
master

搜索帮助