gpg-agent-forward/yubikey_gpg-agent-forward.sh

33 lines
1 KiB
Bash
Raw Normal View History

2018-07-19 21:45:12 +00:00
#!/bin/bash
function gpg-agent-forward() {
2018-07-19 22:05:24 +00:00
# BEGIN variables
# Input variables
2018-07-19 21:45:12 +00:00
ruser=$1
hostname=$2
2018-07-19 22:05:24 +00:00
# Generates random 3 character host shortcut. LC_CTYPE is needed for OS X and FreeBSD.
# https://gist.github.com/earthgecko/3089509
hostshortcut=$(cat /dev/urandom | env LC_CTYPE=C tr -dc "a-z0-9" | fold -w 3 | head -n 1)
# END VARIABLES
# BEGIN script
2018-07-19 21:45:12 +00:00
touch ~/.ssh/config
echo "CREATING GPG-AGENT FORWARDING CONFIG"
echo "YOUR HOST SHORTCUT IS \"$hostshortcut\""
echo "host $hostshortcut" >> ~/.ssh/config
echo " hostname $hostname" >> ~/.ssh/config
echo " User $ruser" >> ~/.ssh/config
echo " RemoteForward /home/$ruser/.gnupg/S.gpg-agent $HOME/.gnupg/S.gpg-agent" >> ~/.ssh/config
echo " RemoteForward /home/$ruser/.gnupg/S.gpg-agent.ssh $HOME/.gnupg/S.gpg-agent.ssh" >> ~/.ssh/config
echo " ServerAliveInterval 10" >> ~/.ssh/config
2018-07-19 22:20:06 +00:00
echo "Use this shortcut to forward your Yubikey to $hostname:"
2018-07-19 21:45:12 +00:00
echo " ssh $hostshortcut"
2018-07-19 22:05:24 +00:00
echo "Inspect or edit the config:"
echo " vi ~/.ssh/config"
echo "DONE"
2018-07-19 21:45:12 +00:00
return 0
2018-07-19 22:05:24 +00:00
# END script
2018-07-19 21:45:12 +00:00
}
gpg-agent-forward $1 $2