Giter VIP home page Giter VIP logo

1thorsten / http-over-all Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 1.0 1.68 MB

A unified interface for accessing various resources (nfs, smb, ssh, http/dav, git, docker) through an http endpoint.

Home Page: https://hub.docker.com/r/1thorsten/http-over-all

License: Apache License 2.0

Dockerfile 5.62% Shell 47.43% PHP 35.52% Makefile 0.76% Go 10.67%
http webdav docker smb dav ssh nfs proxy git http-server

http-over-all's People

Contributors

1thorsten avatar stablestud avatar thorsten-sce avatar

Stargazers

 avatar

Watchers

 avatar

Forkers

stablestud

http-over-all's Issues

improve handling of force-update

At the moment the force update mechanism ensures that the process can only be called once, that's ok.
But after the first force update is processed, the waiting ones are processed as well.

This makes no sense, because the same update tasks will run again in no time.
It would be better if the waiting tasks are also finished with the termination of the initial call.

service: docker w/o CACHE / checks proxy cache

HEAD requests makes no sense !!
172.30.0.2 - - [10/Mar/2021:09:10:51 +0100] "HEAD /sce-scripts-aerownapi/softconex/sce-scripts/ibe-scripts/data/de/tourconex/geo/GeoObjectTranslation.ods HTTP/1.1" 200 0 "-" "Apache-HttpClient/4.5.12 (Java/11.0.9.1)"

172.30.0.2 - - [10/Mar/2021:09:10:51 +0100] "HEAD /sce-scripts-aerownapi/softconex/sce-scripts/ibe-scripts/data/de/tourconex/geo/GeoObjectTranslation.ods HTTP/1.1" 200 0 "-" "Apache-HttpClient/4.5.12 (Java/11.0.9.1)"

172.30.0.2 - - [10/Mar/2021:09:10:51 +0100] "GET /sce-scripts-aerownapi/softconex/sce-scripts/ibe-scripts/data/de/tourconex/geo/GeoObjectTranslation.ods HTTP/1.1" 200 130486 "-" "Apache-HttpClient/4.5.12 (Java/11.0.9.1)"

detect resources from environment (gap detection)

SMB_1_xxx
SMB_3_xxx

At the moment SMB_3 is not recognized because SMB_2 is missing.

root@ad0e958c9eca:/scripts# env | grep "^GIT_" | sort
GIT_1_NAME=git_ewake
GIT_1_REPO_BRANCH=main
GIT_1_REPO_URL=https://github.com/1thorsten/ewake.git
GIT_2_NAME=git_timeset
GIT_2_REPO_BRANCH=master
GIT_2_REPO_URL=https://github.com/1thorsten/timeset.git
GIT_3_NAME=git_sds
GIT_3_REPO_BRANCH=main
GIT_3_REPO_URL=https://github.com/1thorsten/http-over-all.git

root@ad0e958c9eca:/scripts# env | grep "^GIT_" | awk -F '_' '{print $2}' | sort | uniq 
1
2
3

docker base / add ubuntu:20.04

seems to work almost out of the box. Only the PHP_VERSION has to be adjusted (7.3 -> 7.4)

checked with the following protocols:
git, smb, docker

detect sub dir resources from environment (gap detection)

SMB_1_SUB_DIR_PATH_2=Scanner
SMB_1_SUB_DIR_NAME_2=darkside
SMB_1_SUB_DIR_PERMITTED_RESOURCES_2=permitted.txt
SMB_1_SUB_DIR_PATH_3=/
SMB_1_SUB_DIR_NAME_3=root

At the moment SMB_1_SUB_DIR_PATH_2 is not recognized because SMB_1_SUB_DIR_PATH_1 is missing.

root@ad0e958c9eca:/scripts# env | grep "^SMB_1_SUB_DIR_" 
SMB_1_SUB_DIR_PATH_2=Scanner
SMB_1_SUB_DIR_NAME_2=darkside
SMB_1_SUB_DIR_PERMITTED_RESOURCES_2=permitted.txt
SMB_1_SUB_DIR_PATH_3=/
SMB_1_SUB_DIR_NAME_3=root
SMB_1_SUB_DIR_PERMITTED_RESOURCES_3=permitted_root.txt

enhance security by avoid using plaintext passwords

Passwords must be accessible in plain text, because there is no control over the various sources. If necessary, the password must be sent in plain text.
However, this is no excuse for storing them in plain text in the configuration.

What is possible:

  • save encrypted password (use CRYPT_KEY which is also used for link encryption)
  • outsourcing the defining of CRYPT_KEY (separate config file; should be recommend as there is no obligation to do this)

Before:

CRYPT_KEY=2+oHyXHtwC6uxkliy4/ebM5aITT4eF9L2+Sf4YyIVUU=\n%
#-------------------
LOCAL_1_PATH=/local-data
LOCAL_1_NAME=local
LOCAL_1_DAV=true
LOCAL_1_DAV_AUTH=1thorsten:webdav

After (CRYPT_KEY is defined elsewhere)

#-------------------
LOCAL_1_PATH=/local-data
LOCAL_1_NAME=local
LOCAL_1_DAV=true
LOCAL_1_DAV_AUTH=1thorsten:{crypt:vaGcnaDY3T7YsFW9IQDKKIppJms68JVJ84ccg9c}

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.