diff --git a/recipes-apps/images/image-passwd.inc b/recipes-apps/images/image-passwd.inc new file mode 100644 index 0000000000..6839d195b4 --- /dev/null +++ b/recipes-apps/images/image-passwd.inc @@ -0,0 +1,16 @@ +DEPENDS += "openssl-native" + +rootpasswd = "${@d.getVar('ROOT_PASS', True) or ""}" + +ROOTFS_POSTPROCESS_COMMAND += "set_root_passwd;" + +set_root_passwd() { + if [ -n "${rootpasswd}" ]; then + HASHED_PASS=`openssl passwd -1 ${rootpasswd}` + if [ -n "${HASHED_PASS}" ]; then + sed -e "s%^root:[^:]*:%root:${HASHED_PASS}:%" \ + -i ${IMAGE_ROOTFS}/etc/shadow + echo "Generated new root-passwd" + fi + fi +} diff --git a/recipes-apps/images/image-sshkey.inc b/recipes-apps/images/image-sshkey.inc new file mode 100644 index 0000000000..ecbffff711 --- /dev/null +++ b/recipes-apps/images/image-sshkey.inc @@ -0,0 +1,18 @@ + +hostsshkeysfile = "${@d.getVar('SSH_KEYS_FILE', True) or ''}" + +ROOTFS_POSTPROCESS_COMMAND += "copy_ssh_keys;" + +copy_ssh_keys() { + if [ -n "${hostsshkeysfile}" ]; then + if [ -r "${hostsshkeysfile}" ]; then + echo "Installing sshkeys from ${hostsshkeysfile}" + mkdir -p ${IMAGE_ROOTFS}/home/root/.ssh/ + cat ${hostsshkeysfile} >> ${IMAGE_ROOTFS}/home/root/.ssh/authorized_keys + chown root:root ${IMAGE_ROOTFS}/home/root/.ssh/authorized_keys + chmod 0600 ${IMAGE_ROOTFS}/home/root/.ssh/authorized_keys + else + echo "Could not install sshkeys from ${hostsshkeysfile}" + fi + fi +}