Generate CSR for LightBeam
Step-by-Step Guide
Here is a script that combines the generation of the private key and CSR using the configuration file:
#!/bin/bash
# Define filenames
PRIVATE_KEY="private.key"
CSR="request.csr"
CONFIG_FILE="openssl.cnf"
# Create OpenSSL configuration file
cat > $CONFIG_FILE <<EOL
[ req ]
default_bits = 2048
default_md = sha256
prompt = no
default_keyfile = $PRIVATE_KEY
distinguished_name = req_distinguished_name
req_extensions = req_ext
[ req_distinguished_name ]
C = US
ST = California
L = San Francisco
O = My Organization
OU = My Organizational Unit
CN = [email protected]
emailAddress = [email protected]
[ req_ext ]
subjectAltName = @alt_names
[ alt_names ]
email.1 = [email protected]
EOL
# Generate private key
echo "Generating private key..."
openssl genpkey -algorithm RSA -out $PRIVATE_KEY -aes256
# Generate CSR
echo "Generating CSR..."
openssl req -new -key $PRIVATE_KEY -out $CSR -config $CONFIG_FILE
echo "Private key and CSR have been generated."Usage
1. Save the script to a file, for example, `generate_key_and_csr_with_san.sh`.
2. Make the script executable:
chmod +x generate_key_and_csr_with_san.sh
3. Run the script:
./generate_key_and_csr_with_san.sh
This script will generate a private key and a CSR with the `subjectAltName` set to `[email protected]`. Adjust the values in the configuration file section of the script as needed for your specific requirements.
Configuration File Sections:
[ req ]:Main settings for the request.default_bits:Key size.default_md:Message digest algorithm.prompt:Whether to prompt for details.default_keyfile:Default private key file.distinguished_name:Section for distinguished name.req_extensions:Section for request extensions.
[ req_distinguished_name ]:Details for the distinguished name.[ req_ext ]:Extensions to add to the request.[ alt_names ]:Subject alternative names.
Last updated