From d7e642e93581cc6ed17a0d63c33569ef3bb61cf1 Mon Sep 17 00:00:00 2001 From: Jason Hobbs Date: Sat, 3 Jul 2021 00:34:52 -0500 Subject: [PATCH] add support for multiple keys to be added; plus dropbear conversion (#192) * add support for multiple keys to be added; converts private key to dropbear for unifi scp use * change ssh id filename for dropbear default using .ssh/id_dropbear is dropbear's default id file so no need to use `ssh -i /root/id_rsa` any more. Former-commit-id: 8043e6ae6ae78ecf2b956e99eef2ebebd1836f4e --- .../on_boot.d/15-add-root-ssh-key.sh | 31 ++++++++++++++++--- 1 file changed, 26 insertions(+), 5 deletions(-) diff --git a/on-boot-script/examples/udm-files/on_boot.d/15-add-root-ssh-key.sh b/on-boot-script/examples/udm-files/on_boot.d/15-add-root-ssh-key.sh index eb780cf..1f4173a 100644 --- a/on-boot-script/examples/udm-files/on_boot.d/15-add-root-ssh-key.sh +++ b/on-boot-script/examples/udm-files/on_boot.d/15-add-root-ssh-key.sh @@ -1,10 +1,31 @@ #!/bin/sh -MY_SSH_KEY="ADD PUBLIC SSH KEY HERE" +##################################################### +# ADD RSA KEYS AS BELOW - CHANGE BEFORE RUNNING # +##################################################### +# set -- "ssh-rsa first key here all keys quoted" \ # +# "ssh-rsa each line appended with slash " \ # +# "ssh-rsa last one has no backslash" # +##################################################### +set -- "ssh-rsa AAAABUNCHOFCHARACTERSANDSTUFF me on MyMachine" \ + "ssh-rsa AAAADIFFERENTKEYWITHCHARSETC! user@myhost" + KEYS_FILE="/root/.ssh/authorized_keys" -# Places public key in ~/.ssh/authorized_keys if not present -if ! grep -Fxq "$MY_SSH_KEY" "$KEYS_FILE"; then - echo "$MY_SSH_KEY" >> "$KEYS_FILE" -fi +counter=0 +for key in "$@" +do + ## Places public key in ~/.ssh/authorized_keys if not present + if ! grep -Fxq "$key" "$KEYS_FILE"; then + let counter++ + echo "$key" >> "$KEYS_FILE" + fi +done +echo $counter keys added to $KEYS_FILE + +echo Converting SSH private key to dropbear format +#convert ssh key to dropbear for shell interaction +dropbearconvert openssh dropbear /mnt/data/ssh/id_rsa /root/.ssh/id_dropbear + +exit 0;