Initial commit

This commit is contained in:
2020-06-26 10:41:13 +02:00
commit d16c28fe38
15 changed files with 1030 additions and 0 deletions

30
Docs/docs/index.md Executable file
View File

@@ -0,0 +1,30 @@
# Backup server
 
## Role explenation
| Name | Description |
| -------- | ------------ |
| Source | Can upload file to it home via sftp or ftp example: webserver |
| Viewer | Can read source home folders that have been allowed via ALC's |
| Admin | Can manage users and ACL's and can read/write to all home folders |
 
## Folder locations
| Location | Description |
| -------- | ------------ |
| /backups/ftp/`<sourcename>` | Home of ftp source users |
| /backups/sftp/`<sourcename>`/home | Home of sftp source users |
| /vhome/`<viewername>` | Home of viewer users |
| /tools/ | stores tools to manage ACL's and users for the admin |
## Tools
A admin can run tools using the following command `sudo /tools/<toolname>`
| Name | Description |
| -------- | ------------ |
| aclutil | For modifing ALC's |
| ez-aclutil | Like aclutil but with extra options for source home |
| adduserutil | For adding users |
| deluserutil | For removing users |
More information about using these tools can be found under the Utils tab

147
Docs/docs/utils.md Normal file
View File

@@ -0,0 +1,147 @@
# Provided tools/utilities
## aclutil
### Examples
Get info for /home/test
`sudo /tools/aclutil -l /home/test`
Give user: admin1 read acces to /test/folder
`sudo /tools/aclutil -a -u admin1 /test/folder`
Give group: accesusers read acces to /test/folder
`sudo /tools/aclutil -a -g accesusers /test/folder`
Remove read acces to /test/folder for user: admin1
`sudo /tools/aclutil -r -u admin1 /test/folder`
Remove read acces to /test/folder for group: accesusers
`sudo /tools/aclutil -r -g accesusers /test/folder`
### Help
Syntax: aclutil [-u <username> [-g `<groupname>`][-a|r] `<target folder>`
options:
Get info about Current ALC's
```
-l, --list #get current ACL rules
-lg --listgui #get current ACL rules using the eiciel GUI
```
Set user/group for ACL change
```
-u <username>, --user <username> #User for ACL change
-g <groupname>, --group <groupname> #group for ACL change
```
Action for ACL rule
```
-a, --add #add ACL rule
-r, --remove #Remove ACL rule
```
## ez-aclutil
a modified version of aclutil tailored for the backup server source users
### Examples
list info about source u1204 that uses ftp to upload
`sudo /tools/ez-aclutil -l -f u1204`
list info about source hxa001 that uses sftp to upload
`sudo /tools/ez-aclutil -l -s hxa001`
Give all Viewer acces to source hxa001 that uses sftp to upload
`sudo /tools/ez-aclutil -a -av -s hxa001`
Remove acces to all Viewers to acces source u1204 that uses ftp to upload
`sudo /tools/ez-aclutil -r -av -f u1204`
Give Viewer vwr21 acces to source hxa001 that uses sftp to upload
`sudo /tools/ez-aclutil -a -u vrw21 -s hxa001`
Remove acces for vwr21 Viewer to acces source hxa001 that uses sftp to upload
`sudo /tools/ez-aclutil -r -u vrw21 -s hxa001`
Give group: gra1 acces to source u1204 that uses ftp to upload
`sudo /tools/ez-aclutil -a -g gra1 -f u1204`
Remove acces for group: gra1 to acces source u1204 that uses ftp to upload
`sudo /tools/ez-aclutil -r -g gra1 -f u1204`
### Help
Syntax: ez-aclutil [-u `<username>` | -g `<groupname>` | -av] [-a|r] [-f `<ftpsourcename>`] [-s `<sftsourcename>`]
Get info about set ALC's
```
-l, --list #get current ACL for specified source user's home
-gl, --listgui #get current ACL for specified source user's home using eiciel
```
Set user/group for ACL change
```
-u <username>, --user <username> #User for ACL change
-g <groupname>, --group <groupname> #group for ACL change
-av, --allviewers #Set group to backup viewers (-g or -u not needed)
```
Action for ACL rule
```
-a, --add #add ACL rule
-r, --remove #Remove ACL rule
```
Set target for ACL change
```
-f <ftpusername>, --ftp <ftpusername> #User fot ACL change
-s <sftpusername>, --sftp <sftpusername> #group fot ACL change
```
## adduserutil
### Examples
Add "newadmin" as backupserver admin
`sudo /tools/adduserutil -a newadmin`
Add "vwrara1" as viewer
`sudo /tools/adduserutil -v vwrara1`
Add "hxa001" as source that can upload using sftp
`sudo /tools/adduserutil -s -ts hxa001`
Add "u1204" as source that can upload using ftp
`sudo /tools/adduserutil -s -tf u1204`
### Help
Syntax: adduserutil [-a|v|s] [-ts|tf] `<NewUserName>`
Set user type for new user
```
-a, --admin #Backup Admin
-v, --viewer #Backup Viewer
-s, --source #Backup Source
```
Set backup source options for new user
```
-ts, --sftp #Backup source will use sftp/rsync to upload files
-tf, --ftp #Backup source will use ftp to upload files
```
## deluserutil
### Examples
Remove "newadmin" who is a backupserver admin
`sudo /tools/deluserutil -a newadmin`
Remove "vwrara1" who is a viewer
`sudo /tools/deluserutil -v vwrara1`
Remove "hxa001" who is a source that can upload using sftp
`sudo /tools/deluserutil -s -ts hxa001`
Remove "u1204" who is a source that can upload using ftp
`sudo /tools/deluserutil -s -tf u1204`
### Help
Syntax: deluserutil [-a|v|s|] [-ts|tf] `<userthatshoudberemoved>`
Provide the user type for the user that shoud be remove
```
-a, --admin #Backup Admin
-v, --viewer #Backup Viewer
-s, --source #Backup Source
```
Provide the upload methode for the user that shoud be remove
```
-ts, --sftp #Backup source uses sftp/rsync to upload files
-tf, --ftp #Backup source uses ftp to upload files
```