/usr/share/doc/python3-certbot/examples/generate-csr.sh is in python-certbot-doc 0.23.0-1.
This file is owned by root:root, with mode 0o755.
The actual contents of the file can be viewed below.
| 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 | #!/bin/sh
# This script generates a simple SAN CSR to be used with Let's Encrypt
# CA. Mostly intended for "auth --csr" testing, but, since it's easily
# auditable, feel free to adjust it and use it on your production web
# server.
if [ "$#" -lt 1 ]
then
  echo "Usage: $0 domain [domain...]" >&2
  exit 1
fi
domains="DNS:$1"
shift
for x in "$@"
do
  domains="$domains,DNS:$x"
done
SAN="$domains" openssl req -config "${OPENSSL_CNF:-openssl.cnf}" \
  -new -nodes -subj '/' -reqexts san \
  -out "${CSR_PATH:-csr.der}" \
  -keyout "${KEY_PATH:-key.pem}" \
  -newkey rsa:2048 \
  -outform DER
# 512 or 1024 too low for Boulder, 2048 is smallest for tests
echo "You can now run: certbot auth --csr ${CSR_PATH:-csr.der}"
 |