This tutorial is for administrators who already have some general knowledge about the administration and operation of a Proxmox server.

## Installation

Using ZeeBORN on a Proxmox server is a straight forward process.

1. Download the LX container template
1. Upload the template to your Proxmox node/cluster
1. Create a new LX container by using the ZeeBORN template
1. Adjust the assigned resources depending on your requirements
1. Fine-tune

### Downloading the template

The server template can be requested via :icon-mail: suppor@zeeborn.net.

### Assigning required resources

The template uses a minimum configuration that should be suitable for most database servers operated in office and on a vessel. 

The minimum settings are:

* Memory: 1 GB
* Disk: 30 GB
* vCPU Cores: 4

If there is no restricted company policy in place that restricts the size of attachments to be managed with the system, the resource settings should be set to

* Memory: 4 GB
* Root Disk: 200 GB
* vCPU Cores: 4

### Fine-Tuning

It doesn't hurt to start with higher values and using the monitoring feature of Proxmox to analyze the real usage of available resources. Due to the way the server containers are implemented, the resource utilization is much lower than compared to running the ZeeBORN server on a Windows machine or another stand-alone operating system.

!!! INFO Recommendataion
While migrating already existing data from an ADS server to the new database server, the container's memory should be set to 16 GB for allowing a good performance during the processing intensive migration process. After migration it can be set back to the recommended values.
!!!

## Special Features of the ZeeBORN template

### SSH Server

The template creates a server that has SSH enabled by default. This can be used for maintaining the server over SSH instead of using the Proxmox console.

### SAMBA Server

!!! INFO Info
This feature is enabled by default. But can be easily disabled by uninstalling the SAMBA server with ```apt remove samba```.
!!!

#### Shared Network Folder

The server created with the template also contains a SAMBA server that provides a public folder that can be used as a shared folder for all connected client systems (see [Shared Folder](https://docs.zeeborn.info/installation/shared-folder/)).

The SAMBA server is configured as a public share and is accessible by any user within the network. If required, the SAMBA service configuration can be adjusted to allow access only for authorized users.

#### BLOB Storage

Beside the shared folder storage the SAMBA server can also be used as a BLOB storage. If the ZeeBORN system detects the server to be running via a Proxmox container, it will automatically detect the BLOB storage and it will use this storage instead of storing larger files in the database tables.  
With this additional BLOB storage feature, the performance of the database will be increased while decreasing the system requirements (RAM, network traffic and CPU usage).

### Multi Tenant Operation

If required, the template can be used for creating multiple containers with a ZeeBORN server. Each copy of the server will then be accessible via the hostname assigned during cloning of the template.

## Troubleshooting

### SAMBA Server

The SAMBA server in the container template is configured for full guest access - in other words: there is no restriction in who can access this shared folder. Newer Windows versions no longer allow access to shared folder that do not enforce authentication and a related error message will be shown while starting the ZeeBORN software.

For solving this problem you can a) reconfigure the included SAMBA server to allow only authenticated users or b) reconfigure Windows to re-enable access to unrestricted guest file shares.

On a Windows PC guest logins can be enabled by using the following command from an administrative Powershell console:
```PowerShell
Set-SmbClientConfiguration -EnableInsecureGuestLogons $true -Force
```

Depending on if the Windows PC is used as a standalone PC or being part of a Windows domain and being managed via Active Directory, additional steps can be necessary.

If enabling guest access via the PowerShell doesn't work, the full configuration steps are as following:

1. Ín the Local Group Policy editor (search in Start menu for "edit group policy") the option Enable insecure guest logins`` must be enabled under `Computer Configuration > Administrative Templates > Network > Lanman Workstation`
   ![](group-policy-settings.png)
1. IN the Local Security Policy editor (search in Start menu for "local security policy") the two options must be **disabled** as shown in the screenshot.
   ![](local-security.png)

Those changes should have an immediate effect without the need of restarting the PC.

Further details and background information about how Windows can be reconfigured via global group policies or via local configuration updates can be found at https://learn.microsoft.com/en-us/troubleshoot/windows-server/networking/guest-access-in-smb2-is-disabled-by-default

*[PO]: Purchase Order  
*[AZA]: local folder
*[(PO]: Purchase Order  
*[RQ]: Requisition  
*[(RQ]: Requisition  
*[RfQ]: Request for Quotation  
*[(RfQ]: Request for Quotation  
*[SO]: Service Order  
*[(SO]: Service Order  
*[SQ]: Service Requisition  
*[(SQ]: Service Requisition  
*[SRfQ]: Service Request for Quotation  
*[OoB]: Open on Board  
*[(OoB]: Open on Board 
*[ART]: Average Running Time (operation hours per day) 
*[MC]: Master Contract
*[ADS]: Advantage Database Server (database engine used in previous versions of the ZeeBORN software)
*[.replic]: file extension for replication files (aka data transfer files)
