new sslproxy xai cli commands cerbot info and renewal
This commit is contained in:
2
.gitignore
vendored
2
.gitignore
vendored
@@ -14,3 +14,5 @@ roles/vendor/
|
|||||||
|
|
||||||
!.idea/
|
!.idea/
|
||||||
password.txt
|
password.txt
|
||||||
|
!/dockerfiles/services/sslproxy/letsencrypt/live/
|
||||||
|
|
||||||
|
|||||||
2
.idea/sshConfigs.xml
generated
2
.idea/sshConfigs.xml
generated
@@ -5,7 +5,7 @@
|
|||||||
<sshConfig host="192.168.2.11" id="70bdbabf-db45-47a0-b2da-6be7a975b6fa" keyPath="$USER_HOME$/.ssh/id_rsa" port="22" customName="home.xai-corp.net" nameFormat="CUSTOM" username="ansible" />
|
<sshConfig host="192.168.2.11" id="70bdbabf-db45-47a0-b2da-6be7a975b6fa" keyPath="$USER_HOME$/.ssh/id_rsa" port="22" customName="home.xai-corp.net" nameFormat="CUSTOM" username="ansible" />
|
||||||
<sshConfig host="192.168.2.22" id="c31798ce-5b4f-4118-bdf5-5cb9558d855a" keyPath="$USER_HOME$/.ssh/id_rsa" port="22" customName="home02.xai-corp.net" nameFormat="CUSTOM" username="ansible" />
|
<sshConfig host="192.168.2.22" id="c31798ce-5b4f-4118-bdf5-5cb9558d855a" keyPath="$USER_HOME$/.ssh/id_rsa" port="22" customName="home02.xai-corp.net" nameFormat="CUSTOM" username="ansible" />
|
||||||
<sshConfig host="192.168.2.18" id="3d088a15-cbe4-479f-9805-05b8a7059f5a" keyPath="$USER_HOME$/.ssh/id_rsa" port="22" customName="web01.xai-corp.net" nameFormat="CUSTOM" username="ansible" />
|
<sshConfig host="192.168.2.18" id="3d088a15-cbe4-479f-9805-05b8a7059f5a" keyPath="$USER_HOME$/.ssh/id_rsa" port="22" customName="web01.xai-corp.net" nameFormat="CUSTOM" username="ansible" />
|
||||||
<sshConfig host="192.168.2.18" id="0b324960-0566-4103-bd7d-a290a70ceddc" keyPath="$USER_HOME$/.ssh/id_rsa" port="22" customName="web01.xai-corp.net" nameFormat="CUSTOM" username="ansible" />
|
<sshConfig host="192.168.2.18" id="0cb617df-eee4-4433-ba5c-874ed3d6cb97" keyPath="$USER_HOME$/.ssh/id_rsa" port="22" customName="web01.xai-corp.net" nameFormat="CUSTOM" username="ansible" />
|
||||||
</configs>
|
</configs>
|
||||||
</component>
|
</component>
|
||||||
</project>
|
</project>
|
||||||
31
dockerfiles/services/sslproxy/cli/certbot/certbot
Executable file
31
dockerfiles/services/sslproxy/cli/certbot/certbot
Executable file
@@ -0,0 +1,31 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
set -e
|
||||||
|
#set -x
|
||||||
|
|
||||||
|
LETSENCRYPT_IMAGE=dkregistry.xai-corp.net:5000/xaicorp/acme-certbot
|
||||||
|
LETSENCRYPT_MOUNT=/opt/shared/letsencrypt-2-staging
|
||||||
|
|
||||||
|
export DOCKER_HOST=${DOCKER_HOST:-'dkhost:2376'}
|
||||||
|
export LETSENCRYPT_MOUNT
|
||||||
|
export LETSENCRYPT_IMAGE
|
||||||
|
|
||||||
|
run() {
|
||||||
|
docker-compose \
|
||||||
|
-f docker-compose.tools.yml \
|
||||||
|
run test $@
|
||||||
|
}
|
||||||
|
|
||||||
|
run_help() {
|
||||||
|
docker-compose \
|
||||||
|
-f docker-compose.tools.yml \
|
||||||
|
run test --help $@
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
while getopts h name
|
||||||
|
do
|
||||||
|
case $name in
|
||||||
|
h) run_help $@;;
|
||||||
|
*) run $@;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
3
dockerfiles/services/sslproxy/cli/certbot/certbot.help
Normal file
3
dockerfiles/services/sslproxy/cli/certbot/certbot.help
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
ARGS - The arguments you wish to provide to this command
|
||||||
|
|
||||||
|
TODO: Fill out the help information for this command.
|
||||||
1
dockerfiles/services/sslproxy/cli/certbot/certbot.usage
Normal file
1
dockerfiles/services/sslproxy/cli/certbot/certbot.usage
Normal file
@@ -0,0 +1 @@
|
|||||||
|
ARGS...
|
||||||
22
dockerfiles/services/sslproxy/cli/certbot/info
Executable file
22
dockerfiles/services/sslproxy/cli/certbot/info
Executable file
@@ -0,0 +1,22 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
echo -e TODO: make this work!
|
||||||
|
set -e
|
||||||
|
set -x
|
||||||
|
|
||||||
|
LETSENCRYPT_IMAGE=dkregistry.xai-corp.net:5000/xaicorp/acme-certbot
|
||||||
|
LETSENCRYPT_MOUNT=/opt/shared/letsencrypt-2-staging
|
||||||
|
|
||||||
|
if [ "$1" == 'prod' ]; then
|
||||||
|
LETSENCRYPT_MOUNT=/opt/shared/letsencrypt-2
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
export LETSENCRYPT_MOUNT
|
||||||
|
export LETSENCRYPT_IMAGE
|
||||||
|
export DOCKER_HOST=${DOCKER_HOST:-'dkhost:2376'}
|
||||||
|
|
||||||
|
# shellcheck disable=SC2068
|
||||||
|
docker-compose \
|
||||||
|
-f docker-compose.tools.yml \
|
||||||
|
run certificates
|
||||||
3
dockerfiles/services/sslproxy/cli/certbot/info.help
Normal file
3
dockerfiles/services/sslproxy/cli/certbot/info.help
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
ARGS - The arguments you wish to provide to this command
|
||||||
|
|
||||||
|
TODO: Fill out the help information for this command.
|
||||||
1
dockerfiles/services/sslproxy/cli/certbot/info.usage
Normal file
1
dockerfiles/services/sslproxy/cli/certbot/info.usage
Normal file
@@ -0,0 +1 @@
|
|||||||
|
ARGS...
|
||||||
83
dockerfiles/services/sslproxy/cli/certbot/renew
Executable file
83
dockerfiles/services/sslproxy/cli/certbot/renew
Executable file
@@ -0,0 +1,83 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
set -e
|
||||||
|
#set -x
|
||||||
|
|
||||||
|
LETSENCRYPT_IMAGE=dkregistry.xai-corp.net:5000/xaicorp/acme-certbot
|
||||||
|
LETSENCRYPT_MOUNT=/opt/shared/letsencrypt-2-staging
|
||||||
|
|
||||||
|
LOG=$(mktemp)
|
||||||
|
|
||||||
|
##export LOCAL_IMAGE
|
||||||
|
#export REMOTE_IMAGE
|
||||||
|
##export TAG
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
run() {
|
||||||
|
if [ "$ENVIRONMENT" == 'prod' ]; then
|
||||||
|
LETSENCRYPT_MOUNT=/opt/shared/letsencrypt-2
|
||||||
|
fi
|
||||||
|
|
||||||
|
update
|
||||||
|
}
|
||||||
|
|
||||||
|
update() {
|
||||||
|
export DOCKER_HOST=${DOCKER_HOST:-'dkhost:2376'}
|
||||||
|
export LETSENCRYPT_MOUNT
|
||||||
|
export LETSENCRYPT_IMAGE
|
||||||
|
|
||||||
|
# shellcheck disable=SC2086
|
||||||
|
docker-compose \
|
||||||
|
-f docker-compose.tools.yml \
|
||||||
|
run renew ${OPTIONS}
|
||||||
|
}
|
||||||
|
|
||||||
|
function trap_exit() {
|
||||||
|
code=$?
|
||||||
|
if [ $code -gt 0 ]; then
|
||||||
|
echo
|
||||||
|
rm "$LOG"
|
||||||
|
echo -e "\033[31mFailed updating production certs \033[39m"
|
||||||
|
exit $code
|
||||||
|
fi
|
||||||
|
|
||||||
|
rm "$LOG"
|
||||||
|
echo -e "\033[32mSuccess:\033[39m ssl certs have been updated"
|
||||||
|
}
|
||||||
|
trap trap_exit EXIT
|
||||||
|
|
||||||
|
print_usage() {
|
||||||
|
printf "Usage: %s: [-b] [-t] [-s] \n" "$0"
|
||||||
|
echo -r rollback
|
||||||
|
echo -t smoke tests
|
||||||
|
echo -s tag as latest
|
||||||
|
echo -h help
|
||||||
|
exit 0
|
||||||
|
}
|
||||||
|
|
||||||
|
######
|
||||||
|
|
||||||
|
ENVIRONMENT=dev
|
||||||
|
OPTIONS=''
|
||||||
|
while getopts de: name
|
||||||
|
do
|
||||||
|
case $name in
|
||||||
|
d)
|
||||||
|
OPTIONS="$OPTIONS --dryrun"
|
||||||
|
;;
|
||||||
|
e)
|
||||||
|
if [ $OPTARG == 'prod' ]; then
|
||||||
|
ENVIRONMENT=prod
|
||||||
|
else
|
||||||
|
OPTIONS="$OPTIONS --test-cert"
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
: )
|
||||||
|
echo "Invalid option: $OPTARG requires an argument" 1>&2
|
||||||
|
;;
|
||||||
|
*) print_usage;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
# shellcheck disable=SC2068
|
||||||
|
run $@
|
||||||
3
dockerfiles/services/sslproxy/cli/certbot/renew.help
Normal file
3
dockerfiles/services/sslproxy/cli/certbot/renew.help
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
ARGS - The arguments you wish to provide to this command
|
||||||
|
|
||||||
|
TODO: Fill out the help information for this command.
|
||||||
1
dockerfiles/services/sslproxy/cli/certbot/renew.usage
Normal file
1
dockerfiles/services/sslproxy/cli/certbot/renew.usage
Normal file
@@ -0,0 +1 @@
|
|||||||
|
ARGS...
|
||||||
45
dockerfiles/services/sslproxy/docker-compose.tools.yml
Normal file
45
dockerfiles/services/sslproxy/docker-compose.tools.yml
Normal file
@@ -0,0 +1,45 @@
|
|||||||
|
---
|
||||||
|
version: '3.4'
|
||||||
|
|
||||||
|
services:
|
||||||
|
|
||||||
|
renew:
|
||||||
|
image: ${LETSENCRYPT_IMAGE}
|
||||||
|
volumes:
|
||||||
|
- ${LETSENCRYPT_MOUNT}:/etc/letsencrypt:ro
|
||||||
|
ports:
|
||||||
|
- 80:80
|
||||||
|
command:
|
||||||
|
- certonly
|
||||||
|
- -n
|
||||||
|
- --standalone
|
||||||
|
- --test-cert
|
||||||
|
- --dryrun
|
||||||
|
networks:
|
||||||
|
- prod_ui
|
||||||
|
|
||||||
|
certificates:
|
||||||
|
image: ${LETSENCRYPT_IMAGE}
|
||||||
|
volumes:
|
||||||
|
- ${LETSENCRYPT_MOUNT}:/etc/letsencrypt
|
||||||
|
ports:
|
||||||
|
- 80:80
|
||||||
|
command:
|
||||||
|
- certificates
|
||||||
|
# - --standalone
|
||||||
|
# - --test-cert
|
||||||
|
# - --dryrun
|
||||||
|
|
||||||
|
test:
|
||||||
|
image: ${LETSENCRYPT_IMAGE}
|
||||||
|
volumes:
|
||||||
|
- ${LETSENCRYPT_MOUNT}:/etc/letsencrypt
|
||||||
|
ports:
|
||||||
|
- 80:80
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
networks:
|
||||||
|
prod_ui:
|
||||||
|
external:
|
||||||
|
name: prod_ui
|
||||||
@@ -1,24 +0,0 @@
|
|||||||
-----BEGIN CERTIFICATE-----
|
|
||||||
MIIEGjCCAwKgAwIBAgIULbQEK4iaDmSK8Q1YfECc68c2eScwDQYJKoZIhvcNAQEL
|
|
||||||
BQAwfDELMAkGA1UEBhMCQ0ExDzANBgNVBAgMBlF1ZWJlYzERMA8GA1UEBwwITW9u
|
|
||||||
dHJlYWwxGDAWBgNVBAoMD1hhaSBDb3Jwb3JhdGlvbjEUMBIGA1UECwwLRGV2ZWxv
|
|
||||||
cG1lbnQxGTAXBgNVBAMMEHd3dy54YWktY29ycC5uZXQwHhcNMjAwNTI5MTIxNzM3
|
|
||||||
WhcNMjEwNTI5MTIxNzM3WjB8MQswCQYDVQQGEwJDQTEPMA0GA1UECAwGUXVlYmVj
|
|
||||||
MREwDwYDVQQHDAhNb250cmVhbDEYMBYGA1UECgwPWGFpIENvcnBvcmF0aW9uMRQw
|
|
||||||
EgYDVQQLDAtEZXZlbG9wbWVudDEZMBcGA1UEAwwQd3d3LnhhaS1jb3JwLm5ldDCC
|
|
||||||
ASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANUxDfARL54LvmZq1Ef4LAec
|
|
||||||
K4RJhdRG6R4vNCdc7Lskb7bYNo5n5w8dx1X2Wb2j2Dt4ReXBedq3Fw4e+C8zxwSY
|
|
||||||
XGheU98j7XRJwlOOtUokcIxiSgwF0e0mEIrtkF+J4H3Rudn/3HEdVz7c4kMxlS8a
|
|
||||||
cEEl41hNEyEJw6d5t86mFdkht8nhsk0+6s0RA8aYHr7ruwuHyWvHbFyLgphmt+hG
|
|
||||||
GdRNijcFWfhRm9a/DciW2rYVDpJIcpPHIUrG06vzxThuBdyaCsWHBwH1sVR3hYsi
|
|
||||||
R7jmzu9LPFVUQpSG/d1aaWvhQ6kFlud9qCzz2yoi57qcf3lUt/22z5gSmBQ8ZNMC
|
|
||||||
AwEAAaOBkzCBkDCBjQYDVR0RBIGFMIGCggx4YWktY29ycC5uZXSCEHd3dy54YWkt
|
|
||||||
Y29ycC5uZXSCEGFiYy54YWktY29ycC5uZXSCEWRrdWkueGFpLWNvcnAubmV0ghBn
|
|
||||||
aXQueGFpLWNvcnAubmV0ghRqZW5raW5zLnhhaS1jb3JwLm5ldIITeGFpYm94Lnhh
|
|
||||||
aS1jb3JwLm5ldDANBgkqhkiG9w0BAQsFAAOCAQEANjXv0L9pTlk5eVfmyrgQz2Uf
|
|
||||||
qe3nLZWRpwwOwDwdI32OQWB7VJwQtp13iRsvT+91xDGrpy7R52uz5Xxmf5vPcWtt
|
|
||||||
nh2J60oeqRIkuh+cyyBAlAElRFw5Lqk37XjAWXbRvyFiUEnTu2k2jlYq55Az/+0U
|
|
||||||
AXUj9LJbkBLZ89ZOEe9CNnlpV1mur1wGysxpRwh+lTan0WVdSy9nYnqsx5t8EOKM
|
|
||||||
6pUZxqJmmQk988dajVFEodb+TNom6apcbjAwymjx6ggJmCF0zAFuJ1S8EfbuK665
|
|
||||||
B10krT5BbEcV14V4W7Jne8tgxsN5wWkxytV029gsoBVes7EzuqQhGpUQ8mQ4KQ==
|
|
||||||
-----END CERTIFICATE-----
|
|
||||||
@@ -1,28 +0,0 @@
|
|||||||
-----BEGIN PRIVATE KEY-----
|
|
||||||
MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDVMQ3wES+eC75m
|
|
||||||
atRH+CwHnCuESYXURukeLzQnXOy7JG+22DaOZ+cPHcdV9lm9o9g7eEXlwXnatxcO
|
|
||||||
HvgvM8cEmFxoXlPfI+10ScJTjrVKJHCMYkoMBdHtJhCK7ZBfieB90bnZ/9xxHVc+
|
|
||||||
3OJDMZUvGnBBJeNYTRMhCcOnebfOphXZIbfJ4bJNPurNEQPGmB6+67sLh8lrx2xc
|
|
||||||
i4KYZrfoRhnUTYo3BVn4UZvWvw3Iltq2FQ6SSHKTxyFKxtOr88U4bgXcmgrFhwcB
|
|
||||||
9bFUd4WLIke45s7vSzxVVEKUhv3dWmlr4UOpBZbnfags89sqIue6nH95VLf9ts+Y
|
|
||||||
EpgUPGTTAgMBAAECggEACPIcAZzXAKzBeo61BagWQON+t/hV00h+c7PLXnN5w4iN
|
|
||||||
34BHGcamXW4EdUj3DwwXALfVRwTNVi4km4UVKPXlPf4esopyvoRFbIHD07nDRa8t
|
|
||||||
wdZGASclXewg+ZNqYXfpoZ3xTIJ9/4kZphuiqusjtWxIlZM/bO8fBF3ihd6HpfYi
|
|
||||||
gN/BWYWxhNnhIrctWGZmEmk1hB8oT6VWPNGaydwcorL9fHIxvfVEojByIIIqHS/K
|
|
||||||
krZN1nlZuPRLGackUGD5xJwAAvN6xwBQOqP+Eei7jBwQEABIoDaggZYuJLfCMpPq
|
|
||||||
7K1E7BsOtyAxXzWkW9Hrzx1VmmZYzw1uhDvU7nyesQKBgQD6vmzh4aB5r13rf0XE
|
|
||||||
sOBbzzf/otZujcotGkcsWp0Ylqj7EgcLjvlgy+STV6m1sdAeOEsHjiwGDa+geyk5
|
|
||||||
hFIclTlRRO8bvU3w4fsjl8qvd51cCPBwFHMQVeTubtFDKyeE3/3Bi0t1AUrAAkAg
|
|
||||||
VGfjfjaCrCcYVegkQ983YOEu/wKBgQDZqRyEnPCxlY6FHPw04lr/vg73y05zvaBa
|
|
||||||
bUolI6NosSjs6iXlOnpS9rR/YLVnCz3qPscu+QQEDCQokNmOSKbbsKHvtbC7CuoH
|
|
||||||
4uP1oridxVvx004A+RNPiePnVWGtEtEB6GctFtcZsK4c6XGs69wxAmOvvzgfnkol
|
|
||||||
3iEGABreLQKBgQDuyp0M/QAEAuOR29JIwB3asVxmIuDNxlCtZWI0tlL30Ls65+83
|
|
||||||
rcCG04ZqX8jqlV1a+kdR+a6pUS1ZyxD2irJcMCy23cxNAZqRddTjD7LiKir9NDIu
|
|
||||||
uvrdqr9r5rN5oUZwf5S9VnfVBRb4BuylHV0WxOMKzQIqZd2/c7fHmIa7ZwKBgQCO
|
|
||||||
jicCZ/Nwq74zSp+YV2Q4OZd+DabtQRYEA65bErNUvytJt7VoI9u3+KKRBproyUEc
|
|
||||||
6U71YdySdg08kFocyVKXcmEtKXd9mZFb5utclt2JX5hvkvB0zK0sG+irO42EmF1R
|
|
||||||
fZANxPbOeZwfjXmJQtTtOF5n3bp5Yue3U3uXfXwbZQKBgFn9PZJBHDrxQ1C1+2hG
|
|
||||||
ImKqz0Qvl79YXNTIezQynz7Fxz9UPcf9GkC5hHvD5d6pCrG7xLDGSnBdzwBZYyw/
|
|
||||||
3dmqhAjJzzPBlRd660CNOGWt5I7pQpb66hD+///KUg8DJtwuTXKrDeE+1j+ZWSDy
|
|
||||||
V5aOKsQb/RDKGeI0rnlTfhNt
|
|
||||||
-----END PRIVATE KEY-----
|
|
||||||
Reference in New Issue
Block a user