From 3b3785e19dda30a428f62745188496a6ea86a4c3 Mon Sep 17 00:00:00 2001 From: "Buster \"Silver Eagle\" Neece" Date: Tue, 2 Mar 2021 21:48:23 -0600 Subject: [PATCH] Update golang dependencies (sftpgo and dockerize). --- Dockerfile | 8 -- util/docker/web/setup/dockerize.sh | 9 +++ util/docker/web/setup/sftpgo.sh | 7 +- util/docker/web/sftpgo/sftpgo.json | 75 +++++++++++-------- .../web/startup_scripts/sftpgo_private_key.sh | 10 ++- 5 files changed, 68 insertions(+), 41 deletions(-) create mode 100644 util/docker/web/setup/dockerize.sh diff --git a/Dockerfile b/Dockerfile index 12c885c74..3f6ca6108 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,6 +1,4 @@ -# # Base install step (done first for caching purposes). -# FROM ubuntu:focal as base ENV TZ="UTC" @@ -15,12 +13,6 @@ RUN chmod a+x /bd_build/*.sh \ && /bd_build/cleanup.sh \ && rm -rf /bd_build -# Install SFTPgo -COPY --from=azuracast/azuracast_golang_deps:latest /usr/local/bin/sftpgo /usr/local/bin/sftpgo - -# Install Dockerize -COPY --from=azuracast/azuracast_golang_deps:latest /usr/local/bin/dockerize /usr/local/bin/dockerize - # # START Operations as `azuracast` user # diff --git a/util/docker/web/setup/dockerize.sh b/util/docker/web/setup/dockerize.sh new file mode 100644 index 000000000..28f56097c --- /dev/null +++ b/util/docker/web/setup/dockerize.sh @@ -0,0 +1,9 @@ +#!/bin/bash +set -e +source /bd_build/buildconfig +set -x + +DOCKERIZE_VERSION=v0.6.1 +wget https://github.com/jwilder/dockerize/releases/download/$DOCKERIZE_VERSION/dockerize-linux-amd64-$DOCKERIZE_VERSION.tar.gz +tar -C /usr/local/bin -xzvf dockerize-linux-amd64-$DOCKERIZE_VERSION.tar.gz +rm dockerize-linux-amd64-$DOCKERIZE_VERSION.tar.gz diff --git a/util/docker/web/setup/sftpgo.sh b/util/docker/web/setup/sftpgo.sh index 3de008b70..497daee6f 100644 --- a/util/docker/web/setup/sftpgo.sh +++ b/util/docker/web/setup/sftpgo.sh @@ -3,9 +3,14 @@ set -e source /bd_build/buildconfig set -x +add-apt-repository -y ppa:sftpgo/sftpgo +apt-get update + +$minimal_apt_get_install sftpgo + mkdir -p /var/azuracast/sftpgo/persist /var/azuracast/sftpgo/backups cp /bd_build/sftpgo/sftpgo.json /var/azuracast/sftpgo/sftpgo.json touch /var/azuracast/sftpgo/sftpgo.db -chown -R azuracast:azuracast /var/azuracast/sftpgo \ No newline at end of file +chown -R azuracast:azuracast /var/azuracast/sftpgo diff --git a/util/docker/web/sftpgo/sftpgo.json b/util/docker/web/sftpgo/sftpgo.json index 3530ca2f4..94896a25e 100644 --- a/util/docker/web/sftpgo/sftpgo.json +++ b/util/docker/web/sftpgo/sftpgo.json @@ -1,33 +1,46 @@ { - "sftpd": { - "bind_port": 2022, - "bind_address": "", - "idle_timeout": 15, - "max_auth_tries": 0, - "umask": "0022", - "banner": "", - "upload_mode": 1, - "actions": { - "execute_on": ["upload"], - "command": "/usr/local/bin/azuracast_sftp_upload" + "common": { + "idle_timeout": 15, + "upload_mode": 1, + "actions": { + "execute_on": [ + "upload" + ], + "hook": "/usr/local/bin/azuracast_sftp_upload" + } }, - "keys": [ - {"private_key": "persist/id_rsa"} - ], - "enable_scp": true - }, - "data_provider": { - "driver": "bolt", - "name": "sftpgo.db", - "users_base_dir": "/var/azuracast/stations", - "external_auth_program": "/usr/local/bin/azuracast_sftp_auth", - "external_auth_scope": 0 - }, - "httpd": { - "bind_port": 0, - "bind_address": "", - "templates_path": "templates", - "static_files_path": "static", - "backups_path": "backups" - } -} \ No newline at end of file + "sftpd": { + "bindings": [ + { + "port": 2022, + "address": "", + "apply_proxy_config": true + } + ], + "host_keys": [ + "persist/id_rsa", + "persist/id_ecdsa", + "persist/id_ed25519" + ], + "enable_scp": true + }, + "httpd": { + "bindings": [ + { + "port": 0 + } + ], + "templates_path": "/usr/share/sftpgo/templates", + "static_files_path": "/usr/share/sftpgo/static" + }, + "telemetry": { + "bind_port": 0 + }, + "data_provider": { + "driver": "bolt", + "name": "sftpgo.db", + "users_base_dir": "/var/azuracast/stations", + "external_auth_hook": "/usr/local/bin/azuracast_sftp_auth", + "external_auth_scope": 0 + } +} diff --git a/util/docker/web/startup_scripts/sftpgo_private_key.sh b/util/docker/web/startup_scripts/sftpgo_private_key.sh index 9b30d8fa1..0cff72767 100644 --- a/util/docker/web/startup_scripts/sftpgo_private_key.sh +++ b/util/docker/web/startup_scripts/sftpgo_private_key.sh @@ -4,4 +4,12 @@ if [[ ! -f /var/azuracast/sftpgo/persist/id_rsa ]]; then ssh-keygen -t rsa -b 4096 -f /var/azuracast/sftpgo/persist/id_rsa -q -N "" fi -chown -R azuracast:azuracast /var/azuracast/sftpgo/persist \ No newline at end of file +if [[ ! -f /var/azuracast/sftpgo/persist/id_ecdsa ]]; then + ssh-keygen -t ecdsa -b 521 -f /var/azuracast/sftpgo/persist/id_ecdsa -q -N "" +fi + +if [[ ! -f /var/azuracast/sftpgo/persist/id_ed25519 ]]; then + ssh-keygen -t ed25519 -f /var/azuracast/sftpgo/persist/id_ed25519 -q -N "" +fi + +chown -R azuracast:azuracast /var/azuracast/sftpgo/persist