58 lines
1.5 KiB
Bash
Executable File
58 lines
1.5 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
# FIXME: Rather just creating these files in tmp move the actions into the loop blow.
|
|
LOCAL_USER_EMAIL=cyteen@ring-zero.co.uk
|
|
cat > /tmp/generate-ssh-key.sh << EOF
|
|
ssh-keygen -t rsa -b 4096 -N '' -C "${LOCAL_USER_EMAIL}" -f ~/.ssh/id_rsa
|
|
ssh-keygen -t rsa -b 4096 -N '' -C "${LOCAL_USER_EMAIL}" -f ~/.ssh/github_rsa
|
|
ssh-keygen -t rsa -b 4096 -N '' -C "${LOCAL_USER_EMAIL}" -f ~/.ssh/mozilla_rsa
|
|
ssh-keygen -t rsa -b 4096 -N '' -C "${LOCAL_USER_EMAIL}" -f ~/.ssh/gitlab_rsa
|
|
EOF
|
|
|
|
cat > /tmp/ssh-key-add.sh << EOF
|
|
eval "$(ssh-agent -s)"
|
|
ssh-add ~/.ssh/id_rsa
|
|
ssh-add ~/.ssh/github_rsa
|
|
ssh-add ~/.ssh/mozilla_rsa
|
|
ssh-add ~/.ssh/gitlab_rsa
|
|
EOF
|
|
|
|
cat > /tmp/ssh-key-permissions.sh << EOF
|
|
chmod 700 ~/.ssh
|
|
chmod 644 ~/.ssh/authorized_keys
|
|
chmod 644 ~/.ssh/known_hosts
|
|
chmod 644 ~/.ssh/config
|
|
chmod 600 ~/.ssh/id_rsa
|
|
chmod 644 ~/.ssh/id_rsa.pub
|
|
chmod 600 ~/.ssh/gitlab_rsa
|
|
chmod 644 ~/.ssh/gitlab_rsa.pub
|
|
chmod 600 ~/.ssh/github_rsa
|
|
chmod 644 ~/.ssh/github_rsa.pub
|
|
chmod 600 ~/.ssh/mozilla_rsa
|
|
chmod 644 ~/.ssh/mozilla_rsa.pub
|
|
EOF
|
|
|
|
|
|
DEST=/etc/skel
|
|
cat > ${DEST}/.zprofile <<'EOF'
|
|
|
|
if [ -f ${HOME}/.ssh/id_rsa.pub ]; then
|
|
chmod 644 ${HOME}/.ssh/id_rsa.pub
|
|
exit 0
|
|
else
|
|
echo "Generating ssh keys."
|
|
ssh-keygen -q -t rsa -N '' -f ${HOME}/.ssh/id_rsa 2>/dev/null <<< y >/dev/null
|
|
chmod 644 ${HOME}/.ssh/id_rsa.pub
|
|
fi
|
|
EOF
|
|
|
|
chmod +x ${DEST}/.zprofile
|
|
|
|
# System keys
|
|
ssh-keygen -A
|
|
|
|
# Root user keys
|
|
ssh-keygen -q -t rsa -N '' -f ${HOME}/.ssh/id_rsa 2>/dev/null <<< y >/dev/null
|
|
|
|
|