Я пишу скрипт, который должен установить права доступа к файлу с закрытым ключом и добавить его в ssh, чтобы его можно было использовать позже:
echo "Setting up the private SSH key..."
if [[ $EUID > 0 ]]; then
echo "This script needs to be run as root/sudo"
exit 1
fi
#CmdLine Argument Parsing
for i in "$@"; do
case $i in
-k=*|--key=*)
KEY="${i#*=}"
;;
esac
done
if [ ! -e "$KEY" ]; then
echo "Error: The private key file $KEY does not exist"
exit 1
else
echo "Private key found..."
fi
sudo chmod 600 $KEY
echo "Private key permissions set..."
exec ssh-agent bash
eval `ssh-agent -s`
echo "SSH Agent restarted..."
sudo ssh-add $KEY
echo "SSH Key added..."
echo "...done"
Сценарий выполняется с помощью: sudo bash ./myscript.sh --key=~/.ssh/mykey-rsa
.
Сценарий, по-видимому, никогда не завершится, последним наблюдаемым эхом было «Установлены разрешения для закрытого ключа ...».
Может кто-нибудь объяснить, что не так с этим сценарием и как я должен исправить это, чтобы он работал как задумано?
С уважением