Merge pull request #8 from magicdude4eva/main

Improved firmware compatibility
This commit is contained in:
Stas Yakobov 2022-12-18 13:07:20 +02:00 committed by GitHub
commit 14f32bd044
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 12 additions and 7 deletions

View File

@ -10,10 +10,13 @@ This can be accomplished with a boot script. Flow this guide: [UDM / UDMPro Boot
- Tested on [UDM PRO][amz-udm-pro-url]
- UDM Pro doesn't support **ed25519** SSH Keys
## Installation
The script was tested on UDM PRO
(!) Depending on firmware your `$DATA_DIR` will be `/mnt/data` (Firmware 1.x) or `/data` (Firmware 2.x and 3.x)
```shell
curl -s https://raw.githubusercontent.com/fire1ce/UDM-Persistent-SSH-Keys/main/install.sh | sh
```
@ -21,7 +24,7 @@ curl -s https://raw.githubusercontent.com/fire1ce/UDM-Persistent-SSH-Keys/main/i
Add you public RSA keys to:
```shell
/mnt/data/ssh/authorized_keys
$DATA_DIR/ssh/authorized_keys
```
## Uninstall
@ -29,23 +32,23 @@ Add you public RSA keys to:
Delete the 99-ssh-keys.sh file
```shell
rm -rf /mnt/data/on_boot.d/99-ssh-keys.sh
rm -rf $DATA_DIR/on_boot.d/99-ssh-keys.sh
```
Delete your authorized_keys file
```shell
rm -rf /mnt/data/ssh/authorized_keys
rm -rf $DATA_DIR/ssh/authorized_keys
```
## Usage
At boot the script with read the **/mnt/data/ssh/authorized_keys** file and add the content to UDM's **/root/.ssh/authorized_keys**
At boot the script with read the **$DATA_DIR/ssh/authorized_keys** file and add the content to UDM's **/root/.ssh/authorized_keys**
Manual run:
```shell
/mnt/data/on_boot.d/99-ssh-keys.sh
$DATA_DIR/on_boot.d/99-ssh-keys.sh
```
<!-- --- -->

View File

@ -19,6 +19,7 @@ case "$(ubnt-device-info firmware || true)" in
esac
user_authorized_keys_file="$DATA_DIR/ssh/authorized_keys"
udm_authorized_keys_file="/root/.ssh/authorized_keys"
curl -sO https://raw.githubusercontent.com/fire1ce/UDM-Persistent-SSH-Keys/main/99-ssh-keys.sh
mv 99-ssh-keys.sh $DATA_DIR/on_boot.d/99-ssh-keys.sh
@ -28,8 +29,9 @@ echo "99-ssh-keys.sh installed"
if [ ! -f "$user_authorized_keys_file" ]; then
echo "Creating $user_authorized_keys_file"
mkdir -p $DATA_DIR/ssh
touch "$user_authorized_keys_file"
chmod 0644 "$user_authorized_keys_file"
mkdir -p /root/.ssh/
touch "$user_authorized_keys_file $udm_authorized_keys_file"
chmod 0644 "$user_authorized_keys_file $udm_authorized_keys_file"
fi
echo "==> Add you public keys to $user_authorized_keys_file"