2
0

ssl_client_auth.template.sh 827 B

1234567891011121314151617181920212223
  1. apk add mariadb-client
  2. # List client CA of all domains
  3. CA_LIST="/etc/nginx/conf.d/client_cas.crt"
  4. > "$CA_LIST"
  5. # Define your SQL query
  6. query="SELECT DISTINCT ssl_client_ca FROM domain WHERE ssl_client_ca IS NOT NULL;"
  7. result=$(mysql --socket=/var/run/mysqld/mysqld.sock -u ${DBUSER} -p${DBPASS} ${DBNAME} -e "$query" -B -N)
  8. if [ -n "$result" ]; then
  9. echo "$result" | while IFS= read -r line; do
  10. echo -e "$line"
  11. done > $CA_LIST
  12. #tail -n 1 "$CA_LIST" | wc -c | xargs -I {} truncate "$CA_LIST" -s -{}
  13. echo "
  14. ssl_verify_client optional;
  15. ssl_client_certificate /etc/nginx/conf.d/client_cas.crt;
  16. " > /etc/nginx/conf.d/includes/ssl_client_auth.conf
  17. echo "SSL client CAs have been appended to $CA_LIST"
  18. else
  19. > /etc/nginx/conf.d/includes/ssl_client_auth.conf
  20. echo "No SSL client CAs found"
  21. fi