USERNAME="plom"
PATH_USER_HOME="/home/${USERNAME}"
-FILENAME_PUBLIC_KEY='id_rsa.pub'
+FILENAME_PRIVATE_KEY='id_rsa.pub'
+FILENAME_PUBLIC_KEY="${FILENAME_PRIVATE_KEY}.pub"
URL_PUBLIC_KEY="https://dump.plomlompom.com/dump/${FILENAME_PUBLIC_KEY}"
PATH_REL_LOCAL_SSH=".ssh"
PATH_REL_AUTHORIZED_KEYS="${PATH_REL_LOCAL_SSH}/authorized_keys"
fi
}
PATH_REL_SECRETS=to_usb
-PATH_TARGET=${PATH_USER_HOME}/${PATH_REL_SECRETS}
+PATH_SECRETS=${PATH_USER_HOME}/${PATH_REL_SECRETS}
PATH_SSH=${PATH_USER_HOME}/${PATH_REL_LOCAL_SSH}
-abort_if_exists "${PATH_TARGET}"
+abort_if_exists "${PATH_SECRETS}"
abort_if_exists "${PATH_USER_SSH}"
-# Build paths based on device name.
+# Mount secrets device and copy over its content.
expect_min_n_args 1 "(device name)" "$@"
SECRETS_DEV=$1
PATH_SOURCE=/media/${SECRETS_DEV}/${PATH_REL_SECRETS}
-PATH_SECRETS_DEV=/dev/${SECRETS_DEV}
-NAME_KEY=id_rsa
-
-# Mount secrets device and copy over its content.
-echo "Put secrets drive into slot for ${PATH_SECRETS_DEV}."
-while [ ! -e "${PATH_SECRETS_DEV}" ]; do
+PATH_DEV=/dev/${SECRETS_DEV}
+echo "Put secrets drive into slot for ${PATH_DEV}."
+while [ ! -e "${PATH_DEV}" ]; do
sleep 0.1
done
while [ true ]; do
stty echo
echo "" # newline so user knows their input return was accepted
set +e
- echo "${SECRETS_PASS}" | pmount "${PATH_SECRETS_DEV}"
+ echo "${SECRETS_PASS}" | pmount "${PATH_DEV}"
result=$?
set -e
if [ "${result}" = "0" ]; then
exit 1
fi
done
-cp -a "${PATH_SOURCE}" "${PATH_TARGET}"
-chown -R plom:plom "${PATH_TARGET}"
+cp -a "${PATH_SOURCE}" "${PATH_SECRETS}"
+chown -R plom:plom "${PATH_SECRETS}"
pumount "${SECRETS_DEV}"
-echo "You can remove ${PATH_SECRETS_DEV} now."
+echo "You can remove ${PATH_DEV} now."
# Set up SSH authentication.
echo "Setting up .ssh"
-su -lc "mkdir -p ${PATH_USER_SSH} && cp ${PATH_TARGET}/${NAME_KEY} ${PATH_USER_SSH}/"
-su -lc "ssh-keygen -y -f ${PATH_SSH}/${NAME_KEY} > ${PATH_SSH}/${NAME_KEY}.pub" plom
+PATH_PRIVATE_KEY=${PATH_USER_SSH}/${FILENAME_PRIVATE_KEY}
+PATH_PUBLIC_KEY=${PATH_USER_SSH}/${FILENAME_PUBLIC_KEY}
+su -lc "mkdir -p ${PATH_USER_SSH} && cp ${PATH_SECRETS}/${FILENAME_PRIVATE_KEY} ${PATH_PRIVATE_KEY}" plom
+while [ ! -e "${PATH_PUBLIC_KEY}" ]; do
+ set +e
+ su -lc "ssh-keygen -y -f ${PATH_PRIVATE_KEY} > ${PATH_PUBLIC_KEY}" plom
+ set -e
+done