SHA256
first commit
This commit is contained in:
commit
21788ba270
643 files changed
+45536
No files matched your search
@@ -0,0 +1,25 @@
|
||||
# minio s3
|
||||
|
||||
## Features
|
||||
|
||||
Auto generate keys on server creation bypassing default minio keys
|
||||
|
||||
## Update
|
||||
|
||||
Auto update minio to latest version using "update" startup feature
|
||||
|
||||
Automatic Key rotation using "rotate" startup feature
|
||||
|
||||
## Auto Rotate
|
||||
|
||||
It's possible to rotate your keys by changing the startup option to "rotate"
|
||||
|
||||
Once this is changed restart your server and it will automatically move your current keys to old and create your new keys
|
||||
|
||||
Be sure to change your startup back to "normal" once you have started your server using "rotate". This will ensure that you don't accidentally rotate your keys twice
|
||||
|
||||
## Known Issues
|
||||
|
||||
Double encryption may occur if you manually manipulate files in the keys directory
|
||||
|
||||
### Key rotation is handled automatically, DO NOT manually delete files in keys directory
|
||||
@@ -0,0 +1,42 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2022-10-07T04:56:20-04:00",
|
||||
"name": "Minio S3",
|
||||
"author": "accounts@bofanodes.io",
|
||||
"description": "MinIO is a cloud storage server compatible with Amazon S3, released under Apache License v2. As an object store, MinIO can store unstructured data such as photos, videos, log files, backups and container images. The maximum size of an object is 5TB.",
|
||||
"features": null,
|
||||
"docker_images": {
|
||||
"ghcr.io\/parkervcp\/yolks:debian": "ghcr.io\/parkervcp\/yolks:debian"
|
||||
},
|
||||
"file_denylist": [],
|
||||
"startup": ".\/minio.sh",
|
||||
"config": {
|
||||
"files": "{}",
|
||||
"startup": "{\r\n \"done\": \"guide\",\r\n \"done\": \"Documentation:\"\r\n}",
|
||||
"logs": "{}",
|
||||
"stop": "^C"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\n#\r\napt update\r\napt install -y wget\r\nARCH=$([[ \"$(uname -m)\" == \"x86_64\" ]] && echo \"amd64\" || echo \"arm64\")\r\ncd \/mnt\/server\r\nwget https:\/\/dl.min.io\/server\/minio\/release\/linux-${ARCH}\/minio\r\nchmod +x minio\r\nmkdir data\r\nmkdir keys\r\n\r\nwget https:\/\/github.com\/\/parkervcp\/eggs\/raw\/master\/storage\/minio\/minio.sh\r\nchmod +x minio.sh\r\nexport MINIO_ACCESS_KEY=$(cat \/dev\/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1)\r\necho $MINIO_ACCESS_KEY > keys\/key.txt\r\nexport MINIO_SECRET_KEY=$(cat \/dev\/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1)\r\necho $MINIO_SECRET_KEY > keys\/secret.txt\r\necho done",
|
||||
"container": "ghcr.io\/parkervcp\/installers:debian",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
"variables": [
|
||||
{
|
||||
"name": "Startup Type",
|
||||
"description": "normal,rotate,update",
|
||||
"env_variable": "STARTUP_TYPE",
|
||||
"default_value": "normal",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|in:normal,rotate,update",
|
||||
"field_type": "text"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,70 @@
|
||||
#!/bin/bash
|
||||
##################################
|
||||
echo "$(tput setaf 2)Starting up...."
|
||||
echo "Startup Type: $(tput setaf 2)$STARTUP_TYPE"
|
||||
if [ -f "keys/key.txt" ]; then
|
||||
echo "$(tput setaf 2)Key file detected..."
|
||||
export MINIO_ROOT_USER=`cat keys/key.txt`
|
||||
else
|
||||
echo minioadmin > keys/key.txt
|
||||
echo "$(tput setaf 3)No key file detected...Preparing First Time Boot"
|
||||
fi
|
||||
if [ -f "keys/secret.txt" ]; then
|
||||
echo "$(tput setaf 2)Secret file detected..."
|
||||
export MINIO_ROOT_PASSWORD=`cat keys/secret.txt`
|
||||
else
|
||||
echo minioadmin > keys/secret.txt
|
||||
echo "No secret file detected...Preparing First Time Boot"
|
||||
fi
|
||||
if [ -f "keys/oldsecret.txt" ]; then
|
||||
echo "$(tput setaf 1)Old secret file detected..."
|
||||
export MINIO_ROOT_PASSWORD_OLD=`cat keys/oldsecret.txt`
|
||||
fi
|
||||
if [ -f "keys/oldkey.txt" ]; then
|
||||
echo "$(tput setaf 1)Old key file detected..."
|
||||
export MINIO_ROOT_USER_OLD=`cat keys/oldkey.txt`
|
||||
fi
|
||||
if [ -f "keys/justrotated.txt" ]; then
|
||||
echo "$(tput setaf 3)Previous key rotation detected...."
|
||||
echo "$(tput setaf 3)Clearing the Lanes...."
|
||||
unset MINIO_ROOT_USER_OLD
|
||||
unset MINIO_ROOT_PASSWORD_OLD
|
||||
echo "$(tput setaf 2)Lanes Cleared!"
|
||||
STARTUP_TYPE=normal
|
||||
rm keys/justrotated.txt
|
||||
rm keys/oldsecret.txt
|
||||
rm keys/oldkey.txt
|
||||
fi
|
||||
|
||||
##########################################
|
||||
if [ -z "$STARTUP_TYPE" ] || [ "$STARTUP_TYPE" == "update" ]; then
|
||||
echo "$(tput setaf 3)Performing update...."
|
||||
echo "$(tput setaf 1)Removing old minio version"
|
||||
rm minio
|
||||
echo "$(tput setaf 3)Downloading new minio version"
|
||||
export ARCH=$([[ "$(uname -m)" == "x86_64" ]] && echo "amd64" || echo "arm64")
|
||||
wget https://dl.min.io/server/minio/release/linux-$ARCH/minio
|
||||
chmod +x minio
|
||||
echo "$(tput setaf 2)Update Complete"
|
||||
fi
|
||||
##########################################
|
||||
if [ -z "$STARTUP_TYPE" ] || [ "$STARTUP_TYPE" == "rotate" ]; then
|
||||
touch keys/justrotated.txt
|
||||
export MINIO_ROOT_USER_OLD=$MINIO_ROOT_USER
|
||||
echo $MINIO_ROOT_USER_OLD > keys/oldkey.txt
|
||||
export MINIO_ROOT_PASSWORD_OLD=$MINIO_ROOT_PASSWORD
|
||||
echo $MINIO_ROOT_PASSWORD_OLD > keys/oldsecret.txt
|
||||
export MINIO_ROOT_USER=$(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1)
|
||||
echo $MINIO_ROOT_USER > keys/key.txt
|
||||
export MINIO_ROOT_PASSWORD=$(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1)
|
||||
echo $MINIO_ROOT_PASSWORD > keys/secret.txt
|
||||
echo "Your New Access Key is: $(tput setaf 2)$MINIO_ROOT_USER"
|
||||
echo "Your New Secret Key is: $(tput setaf 2)$MINIO_ROOT_PASSWORD"
|
||||
echo "Your Old Access Key is: $(tput setaf 3)$MINIO_ROOT_USER_OLD"
|
||||
echo "Your Old Access Key is: $(tput setaf 3)$MINIO_ROOT_PASSWORD_OLD"
|
||||
echo "$(tput setaf 2)Booting..."
|
||||
./minio server data --console-address ":$SERVER_PORT"
|
||||
else
|
||||
echo "$(tput setaf 2)Booting..."
|
||||
./minio server data --console-address ":$SERVER_PORT"
|
||||
fi
|
||||
@@ -0,0 +1,40 @@
|
||||
# SFTP Storage Share
|
||||
|
||||
### Authors / Contributors
|
||||
|
||||
<!-- prettier-ignore-start -->
|
||||
<!-- markdownlint-disable -->
|
||||
<table>
|
||||
<tr>
|
||||
<td align="center">
|
||||
<a href="https://github.com/lilkingjr1">
|
||||
<img src="https://avatars.githubusercontent.com/u/4533989" width="50px;" alt=""/><br /><sub><b>Red-Thirten</b></sub>
|
||||
</a>
|
||||
<br />
|
||||
<a href="https://github.com/parkervcp/eggs/commits?author=lilkingjr1" title="Codes">💻</a>
|
||||
<a href="https://github.com/parkervcp/eggs/commits?author=lilkingjr1" title="Maintains">🔨</a>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<!-- markdownlint-enable -->
|
||||
<!-- prettier-ignore-end -->
|
||||
|
||||
___
|
||||
|
||||
### Description
|
||||
|
||||
A simple "empty" egg that acts as a private SFTP storage share by utilizing Pterodactyl's built in SFTP system for servers. Sub-users can be added to the server by the owner to allow additional people to access the share. "Starting" the server performs no actions and it should be left off.
|
||||
|
||||
You can access the SFTP server using your favorite SFTP client and the SFTP login information found under the "Settings" tab of the server.
|
||||
|
||||
___
|
||||
|
||||
### Server Ports
|
||||
|
||||
Pterodactyl may force you to assign a port to the server but it will not be used and can be any port. The only port that will be used will be the SFTP port assigned to the node the server is running on.
|
||||
|
||||
___
|
||||
|
||||
### Known Issues
|
||||
|
||||
- Pterodactyl currently does not enforce server storage size when the server is not running. Therefore, because this "server" does not run, the Disk Space setting when creating the server will not be enforced and caution should be used when deploying this solution to un-trusted end-users.
|
||||
@@ -0,0 +1,31 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2023-01-27T18:29:17+00:00",
|
||||
"name": "SFTP Storage Share",
|
||||
"author": "rehlmgaming@gmail.com",
|
||||
"description": "A simple \"empty\" egg that acts as a private SFTP storage share by utilizing Pterodactyl's built in SFTP system for servers. Sub-users can be added to the server by the owner to allow additional people to access the share. \"Starting\" the server performs no actions and it should be left off.",
|
||||
"features": null,
|
||||
"docker_images": {
|
||||
"ghcr.io\/parkervcp\/yolks:alpine": "ghcr.io\/parkervcp\/yolks:alpine"
|
||||
},
|
||||
"file_denylist": [],
|
||||
"startup": "echo -e \"\\n\\n\\033[0;31mThere is no need to start this server. The SFTP service is always running. Feel free to stop the server now.\\n\\t\\033[0;36m(Sub-users can be added via the Users tab to add\/remove access to the share in real time)\\n\\n\"",
|
||||
"config": {
|
||||
"files": "{}",
|
||||
"startup": "{\r\n \"done\": \"\"\r\n}",
|
||||
"logs": "{}",
|
||||
"stop": "^C"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "# Pterodactyl SFTP Storage Share Egg ~ David Wolfe (Red-Thirten) ~ 2023-01-27",
|
||||
"container": "ghcr.io\/parkervcp\/installers:alpine",
|
||||
"entrypoint": "ash"
|
||||
}
|
||||
},
|
||||
"variables": []
|
||||
}
|
||||
Reference in new issue
Block a user