30 lines
670 B
Bash
30 lines
670 B
Bash
#!/bin/bash
|
|
set -e
|
|
KEY_DIR="./keys"
|
|
HOST_KEY_DIR="$KEY_DIR/host_keys"
|
|
mkdir -p "$HOST_KEY_DIR"
|
|
echo "Generating RSA host key..."
|
|
ssh-keygen \
|
|
-t rsa \
|
|
-b 4096 \
|
|
-f "$HOST_KEY_DIR/ssh_host_rsa_key" \
|
|
-N ""
|
|
echo "Generating RSA client key..."
|
|
ssh-keygen \
|
|
-t rsa \
|
|
-b 4096 \
|
|
-f "$KEY_DIR/client_rsa" \
|
|
-N ""
|
|
echo "Creating authorized_keys..."
|
|
cp "$KEY_DIR/client_rsa.pub" "$KEY_DIR/authorized_keys"
|
|
chmod 700 "$KEY_DIR"
|
|
chmod 600 "$KEY_DIR/client_rsa"
|
|
chmod 644 "$KEY_DIR/client_rsa.pub"
|
|
chmod 600 "$KEY_DIR/authorized_keys"
|
|
chmod 600 "$HOST_KEY_DIR/ssh_host_rsa_key"
|
|
echo
|
|
echo "RSA keys generated successfully."
|
|
echo
|
|
echo "Client private key:"
|
|
echo "$KEY_DIR/client_rsa"
|