mirror of
https://github.com/unifi-utilities/unifios-utilities.git
synced 2024-08-30 18:32:21 +00:00
Merge remote-tracking branch 'origin/master'
This commit is contained in:
commit
669b36ba11
@ -97,6 +97,12 @@ A shell script with the goal to make the UDM-Pro silenced while still having goo
|
||||
|
||||
A split tunnel VPN script for the UDM with policy based routing. This helper script can be used on your UDM to route select VLANs, clients, or even domains through a VPN connection. It supports OpenVPN, WireGuard, and OpenConnect (Cisco AnyConnect) clients running directly on your UDM, and external VPN clients running on other servers on your network.
|
||||
|
||||
### rclone
|
||||
|
||||
<https://rclone.org/>
|
||||
|
||||
Run rclone container with Web GUI for offsite backups.
|
||||
|
||||
## Unsupported / No longer maintained
|
||||
### nextdns
|
||||
Run NextDNS on your UDM with podman.
|
||||
|
@ -1,26 +1,20 @@
|
||||
# Run Homebridge on your UDM
|
||||
|
||||
### Features
|
||||
1. Run [Homebridge](https://homebridge.io/) on your UDM.
|
||||
1. Run [Homebridge](https://homebridge.io/) on your UDM(P).
|
||||
2. Integrate Unifi Protect cameras in HomeKit via `homebridge-unifi-protect`.
|
||||
3. Persists through reboots and firmware updates.
|
||||
|
||||
### Requirements
|
||||
1. You have successfully setup the on boot script described [here](https://github.com/boostchicken/udm-utilities/tree/master/on-boot-script).
|
||||
2. You have applied [container-common](https://github.com/boostchicken/udm-utilities/tree/master/container-common) change to prevent UDM storage to fill up with Homebridge logs and addon error messages that can move fast.
|
||||
|
||||
### Customization
|
||||
|
||||
- Update [90-homebridge.conflist](cni/90-homebridge.conflist) to match your network:
|
||||
- Change `"bridge": "br0"` to the appropriate VLAN for your network.
|
||||
- Update `"subnet"` and `"gateway"` to match that VLAN.
|
||||
- If you want a specific IP assigned, update `"rangeStart"` and `"rangeEnd"`. Otherwise those properties can be deleted.
|
||||
3. You have applied [cni-plugins](https://github.com/boostchicken/udm-utilities/tree/master/cni-plugins "cni-plugins") to setup for cni configeration. (You dont need the configeration files, just place the script in the on boot folder.)
|
||||
|
||||
### Steps
|
||||
|
||||
1. `mkdir -p /mnt/data/homebridge/run`
|
||||
2. Copy [25-homebridge.sh](on_boot.d/25-homebridge.sh) to `/mnt/data/on_boot.d`.
|
||||
3. Copy [90-homebridge.conflist](cni/90-homebridge.conflist) to `/mnt/data/podman/cni`. This will create the podman network that bridges the container to your VLAN.
|
||||
1. Type this command: `mkdir -p /mnt/data/homebridge/run`
|
||||
2. Copy [25-homebridge.sh](on_boot.d/25-homebridge.sh) to `/mnt/data/on_boot.d`. To do this, cd into `/mnt/data/on_boot.d`, then type `vim 25-homebridge.sh` then go to [this page](https://raw.githubusercontent.com/boostchicken/udm-utilities/master/homebridge/on_boot.d/25-homebridge.sh "this page") and copy everything using CTRL + A and then CTRL + C and then paste it into vim then click ESC and then type `:x` then click the enter key.
|
||||
3. Copy [90-homebridge.conflist](cni/90-homebridge.conflist) to `/mnt/data/podman/cni`. This will create the podman network that bridges the container to your VLAN. To do this, cd into `/mnt/data/podman/cni` and type `vim 90-homebridge.conflist` then go to [this page](https://raw.githubusercontent.com/boostchicken/udm-utilities/master/homebridge/cni/90-homebridge.conflist "this page") and the press CTRL + A and then CTRL + C and then paste it into vim and click ESC and then type `:x` then click the enter key.
|
||||
4. Run the Homebridge docker container. Change the timezone (`-e TZ`) to match your timezone, and DNS (`--dns`) to match your VLAN gateway.
|
||||
|
||||
```shell script
|
||||
@ -41,3 +35,10 @@
|
||||
|
||||
5. Access the Homebridge UI based on the IP you assigned, like [http://192.168.1.20/](http://192.168.1.20/).
|
||||
6. If using the UDM Pro, the `homebridge-unifi-protect` plugin can be installed via the Homebridge UI to integrate Unifi Protect cameras.
|
||||
|
||||
### Customization
|
||||
|
||||
- Update [90-homebridge.conflist](cni/90-homebridge.conflist) to match your network:
|
||||
- Change `"bridge": "br0"` to the appropriate VLAN for your network.
|
||||
- Update `"subnet"` and `"gateway"` to match that VLAN.
|
||||
- If you want a specific IP assigned, update `"rangeStart"` and `"rangeEnd"`. Otherwise those properties can be deleted.
|
21
rclone/10-rclone.sh
Normal file
21
rclone/10-rclone.sh
Normal file
@ -0,0 +1,21 @@
|
||||
#!/bin/sh
|
||||
CONTAINER=rclone
|
||||
|
||||
if podman container exists "$CONTAINER"; then
|
||||
podman start "$CONTAINER"
|
||||
else
|
||||
podman run -i -d --rm \
|
||||
--net=host \
|
||||
-v /mnt/data/rclone:/data/backups/rclone \
|
||||
-v /mnt/data/pihole:/data/backups/pihole \
|
||||
-v /mnt/data/on_boot.d:/data/backups/on_boot.d \
|
||||
-v /data/unifi/data/backup/autobackup:/data/backups//data/unifi/data/backup/autobackup \
|
||||
-v /mnt/data/podman/cni:/data/backups/podman/cni \
|
||||
-v /mnt/data/rclone:/config/rclone \
|
||||
-v /mnt/data/rclone/sync.sh:/data/sync.sh \
|
||||
--name "$CONTAINER" \
|
||||
--security-opt=no-new-privileges \
|
||||
rclone/rclone:latest \
|
||||
rcd --rc-web-gui --rc-addr :5572 \
|
||||
--rc-user rclone --rc-pass randompassword12345
|
||||
fi
|
33
rclone/README.md
Normal file
33
rclone/README.md
Normal file
@ -0,0 +1,33 @@
|
||||
# Rclone
|
||||
|
||||
## Features
|
||||
|
||||
- Rclone w/ WebGUI
|
||||
|
||||
## Requirements
|
||||
|
||||
1. You have successfully setup the on boot script described [here](https://github.com/boostchicken/udm-utilities/tree/master/on-boot-script)
|
||||
|
||||
## Steps
|
||||
|
||||
1. Make a directory for your configuration
|
||||
|
||||
```sh
|
||||
mkdir -p /mnt/data/rclone
|
||||
```
|
||||
|
||||
2. Create [rclone.conf](https://rclone.org/commands/rclone_config/) in `/mnt/data/rclone` and update it to meet yours needs.
|
||||
3. Copy [sync.sh](sync.sh) in `/mnt/data/rclone` and update it to meet your needs.
|
||||
4. Copy [10-rclone.sh](10-rclone.sh) to `/mnt/data/on_boot.d` and update it to meet your needs.
|
||||
5. Execute `/mnt/data/on_boot.d/10-rclone.sh`
|
||||
6. Execute `podman logs rclone`, this will provide a link to the Web GUI.
|
||||
7. Copy [rclone](rclone) in `/etc/cron.hourly/`.
|
||||
8. Set permissions to executable `chmod +x /etc/cron.hourly/rclone`.
|
||||
|
||||
## Customization
|
||||
|
||||
1. Login to run rclone commands locally to create and test configs
|
||||
|
||||
```sh
|
||||
podman exec -ti rclone /bin/sh
|
||||
```
|
3
rclone/rclone
Normal file
3
rclone/rclone
Normal file
@ -0,0 +1,3 @@
|
||||
#!/bin/sh
|
||||
|
||||
podman exec -ti rclone sh -x /data/sync.sh
|
2
rclone/sync.sh
Normal file
2
rclone/sync.sh
Normal file
@ -0,0 +1,2 @@
|
||||
# sync job for cron
|
||||
rclone sync Unifi:/data/backups google:backups
|
@ -1,7 +1,7 @@
|
||||
#!/bin/sh
|
||||
CONTAINER=zerotier-one
|
||||
# Starts a wireguard container that is deleted after it is stopped.
|
||||
# All configs stored in /mnt/data/wireguard
|
||||
# Starts a ZeroTier container that is deleted after it is stopped.
|
||||
# All configs stored in /mnt/data/zerotier-one
|
||||
if podman container exists ${CONTAINER}; then
|
||||
podman start ${CONTAINER}
|
||||
else
|
||||
|
Loading…
Reference in New Issue
Block a user