Guest User

Untitled

a guest
Jan 19th, 2018
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.27 KB | None | 0 0
  1. #!/usr/bin/env bash
  2. usage () {
  3. echo -e "Usage:\nself-signed-cert-gen.sh DOMAIN";
  4. }
  5.  
  6. # Parse command line options
  7. DOMAIN=""
  8. while [ $# -gt 0 ]
  9. do
  10. case "$1" in
  11. -*)
  12. usage
  13. exit 1
  14. ;;
  15. *)
  16. if [[ ${DOMAIN} != "" ]]; then
  17. usage
  18. exit 1
  19. fi
  20. DOMAIN="$1"
  21. shift
  22. ;;
  23. esac
  24. done
  25.  
  26. echo "Generating an SSL private key to sign your certificate..."
  27. openssl genrsa -des3 -out ${DOMAIN}.key -passout pass:client11 1024
  28.  
  29. echo "Generating a Certificate Signing Request..."
  30. openssl req -new -key ${DOMAIN}.key -out ${DOMAIN}.csr -passin pass:client11 -subj "/C=RU/ST=Moscow/L=Moscow/O=Network/OU=Any Department/CN=${DOMAIN}"
  31.  
  32. echo "Removing passphrase from key (for nginx)..."
  33. mv ${DOMAIN}.key ${DOMAIN}
  34. openssl rsa -in ${DOMAIN} -out ${DOMAIN}.key -passin pass:client11
  35. rm ${DOMAIN}
  36.  
  37. echo "Generating certificate..."
  38. openssl x509 -req -days 365 -in ${DOMAIN}.csr -signkey ${DOMAIN}.key -out ${DOMAIN}.crt
  39. rm ${DOMAIN}.csr
  40.  
  41. echo "Copying certificate (${DOMAIN}.crt) to root/etc/ssl/certs/"
  42. mkdir -p root/etc/ssl/certs
  43. mv ${DOMAIN}.crt root/etc/ssl/certs/
  44.  
  45. echo "Copying key (${DOMAIN}.key) to root/etc/ssl/private/"
  46. mkdir -p root/etc/ssl/private
  47. mv ${DOMAIN}.key root/etc/ssl/private/
Add Comment
Please, Sign In to add comment