Do all work in a single ssh command.
This means that if a password is required, it happens only once.
This commit is contained in:
@ -32,10 +32,17 @@ mkdir -p ~/.ssh/newkeys
|
|||||||
#echo rm -f ${keyname}
|
#echo rm -f ${keyname}
|
||||||
rm -f ~/.ssh/newkeys/${keyname}
|
rm -f ~/.ssh/newkeys/${keyname}
|
||||||
|
|
||||||
ssh-keygen -t ${keytype} -b ${keybits} -V +6w -f ~/.ssh/newkeys/${keyname}
|
ssh-keygen -N "" -t ${keytype} -b ${keybits} -V +6w -f ~/.ssh/newkeys/${keyname}
|
||||||
|
|
||||||
ssh ${target} "mkdir -p .ssh/incoming; rm -f .ssh/incoming/${keyname}" || exit
|
keytext=$(<~/.ssh/newkeys/${keyname}.pub)
|
||||||
scp ~/.ssh/newkeys/${keyname}.pub ${target}:.ssh/incoming/id_${hostname}.pub || exit
|
|
||||||
rm ~/.ssh/newkeys/${keyname}.pub
|
rm ~/.ssh/newkeys/${keyname}.pub
|
||||||
ssh ${target} "mkdir -p .ssh/valid; mv .ssh/incoming/id_${hostname}.pub .ssh/valid; cat .ssh/valid/* > .ssh/authorized_keys" || exit
|
|
||||||
|
ssh ${target} \
|
||||||
|
"\
|
||||||
|
mkdir -p .ssh/incoming; rm -f .ssh/incoming/${keyname};\
|
||||||
|
echo ${keytext} >> .ssh/incoming/id_${hostname}.pub; \
|
||||||
|
cat .ssh/incoming/id_${hostname}.pub >> .ssh/authorized_keys; \
|
||||||
|
mkdir -p .ssh/valid; mv .ssh/incoming/id_${hostname}.pub .ssh/valid; cat .ssh/valid/* > .ssh/authorized_keys;\
|
||||||
|
"
|
||||||
|
|
||||||
mv ~/.ssh/newkeys/${keyname} ~/.ssh/${keyname}
|
mv ~/.ssh/newkeys/${keyname} ~/.ssh/${keyname}
|
||||||
|
|||||||
Reference in New Issue
Block a user