From 33742dec795652b7d9bc1553961e50fcf734c168 Mon Sep 17 00:00:00 2001 From: macmpi Date: Wed, 20 Sep 2023 09:09:20 +0200 Subject: [PATCH] Allow authorized_keys --- README.md | 3 ++- headless.apkovl.tar.gz | Bin 5934 -> 6043 bytes overlay/etc/local.d/headless.start | 22 ++++++++++++++++++---- 3 files changed, 20 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index b9cf427..1fa6aee 100644 --- a/README.md +++ b/README.md @@ -22,7 +22,8 @@ From there, actual system install can be performed as usual with `setup-alpine` Extra files may be added next to `headless.apkovl.tar.gz` to customise boostrapping configuration (check sample files): - `wpa_supplicant.conf`[^3] (*mandatory for wifi usecase*): define wifi SSID & password. - `interfaces`[^3] (*optional*): define network interfaces at will, if defaults DCHP-based are not suitable. -- `ssh_host_*_key*` (*optional*): provide custom ssh keys to be injected (may be stored), instead of using bundled ones[^2] (not stored). Providing an empty key file will trigger new keys generation (ssh server may take longer to start). +- `authorized_keys` (*optional*): provide client's public SSH key to secure `root` ssh login. +- `ssh_host_*_key*` (*optional*): provide server's custom ssh keys to be injected (may be stored), instead of using bundled ones[^2] (not stored). Providing an empty key file will trigger new keys generation (ssh server may take longer to start). - `unattended.sh`[^3] (*optional*): create custom automated deployment script to further tune & extend actual setup (backgrounded). diff --git a/headless.apkovl.tar.gz b/headless.apkovl.tar.gz index 4b9b1a29aa7dedaf8ef86ff9cdf1a482edcf5dc3..6d4d3e15e87b4b4e6c733a76bf2986a5087c34ec 100644 GIT binary patch literal 6043 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 V7%^hRh>`zI`2#)nfB67-0056v9xMO= literal 5934 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 diff --git a/overlay/etc/local.d/headless.start b/overlay/etc/local.d/headless.start index 18afb85..dcadf60 100755 --- a/overlay/etc/local.d/headless.start +++ b/overlay/etc/local.d/headless.start @@ -47,7 +47,7 @@ exec 1>/dev/console 2>&1 logger -st ${0##*/} "Alpine Linux headless bootstrap v$VERSION by macmpi" -mkdir /tmp/.trash +install -dm 0700 /tmp/.trash # grab used ovl filename from dmesg ovl="$( dmesg | grep -o 'Loading user settings from .*:' | awk '{print $5}' | sed 's/:.*$//' )" @@ -132,12 +132,26 @@ _apk add openssh _preserve "/etc/ssh/sshd_config" _preserve "/etc/conf.d/sshd" -cat <<-EOF >> /etc/ssh/sshd_config - AuthenticationMethods none - PermitEmptyPasswords yes +cat <<-EOF > /etc/ssh/sshd_config PermitRootLogin yes Banner /tmp/.trash/banner EOF + +if install -m600 "${ovlpath}/authorized_keys" /tmp/.trash/authorized_keys; then + logger -st ${0##*/} "Enabling public key SSH authentication..." + cat <<-EOF >> /etc/ssh/sshd_config + AuthenticationMethods publickey + AuthorizedKeysFile /tmp/.trash/authorized_keys + # relax strict mode as authorized_keys are inside /tmp + StrictModes no + EOF +else + logger -st ${0##*/} "No SSH authentication." + cat <<-EOF >> /etc/ssh/sshd_config + AuthenticationMethods none + PermitEmptyPasswords yes + EOF +fi # Banner file warn=""