-
-
Notifications
You must be signed in to change notification settings - Fork 47
/
Copy pathcreate-cert.sh
64 lines (56 loc) · 1.9 KB
/
create-cert.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
#!/bin/bash
# setup certificates required for spinning up
# backup jobs via NBDS
set -e
SYSTEM_PKIDIR=/etc/pki/qemu/
USER_PKIDIR=$HOME/.pki/libnbd/
mkdir -p "${SYSTEM_PKIDIR}" "${USER_PKIDIR}"
cat <<EOF > certificate_authority_template.info
cn = virtnbdbackup
ca
cert_signing_key
EOF
certtool --generate-privkey > ca_key.pem
certtool --generate-self-signed \
--template certificate_authority_template.info \
--load-privkey ca_key.pem \
--outfile ca-cert.pem
cp ca-cert.pem ${SYSTEM_PKIDIR}/ca-cert.pem
cat <<EOF > host1_server_template.info
organization = virtnbdbackup
cn = server.example.com
tls_www_server
encryption_key
signing_key
EOF
certtool --generate-privkey > host1_server_key.pem
certtool --generate-certificate \
--template host1_server_template.info \
--load-privkey host1_server_key.pem \
--load-ca-certificate ca-cert.pem \
--load-ca-privkey ca_key.pem \
--outfile host1_server_certificate.pem
cp host1_server_key.pem ${SYSTEM_PKIDIR}/server-key.pem
cp host1_server_certificate.pem ${SYSTEM_PKIDIR}/server-cert.pem
cat <<EOF > host1_client_template.info
country = Country
state = State
locality = City
organization = Name of your organization
cn = client.example.com
tls_www_client
encryption_key
signing_key
EOF
certtool --generate-privkey > host1_client_key.pem
certtool --generate-certificate \
--template host1_client_template.info \
--load-privkey host1_client_key.pem \
--load-ca-certificate ca-cert.pem \
--load-ca-privkey ca_key.pem \
--outfile host1_client_certificate.pem
cp host1_client_certificate.pem "${USER_PKIDIR}"/client-cert.pem
cp host1_client_key.pem "${USER_PKIDIR}"/client-key.pem
cp ca-cert.pem "${USER_PKIDIR}"/ca-cert.pem
sed -i 's/#backup_tls_x509_verify.*/backup_tls_x509_verify=0/' /etc/libvirt/qemu.conf
systemctl restart libvirtd