PUQ Mautic Skip to main content

Setup guide: WHMCS setup

MinIO S3 module WHMCS 

 Order now | Download | FAQ

Module is coded ionCube v13

Supported php version:

  • php 7.4 WHMCS 8.11.0 -
  • php 8.1 WHMCS 8.11.0 +
  • php 8.2 WHMCS 8.11.0 +

To install and update a module, you must perform one and the same action.

1. Download the latest version of the module.

PHP 8.2

wget http://download.puqcloud.com/WHMCS/servers/PUQ_WHMCS-MinIO-S3/php82/PUQ_WHMCS-MinIO-S3-latest.zip

PHP 8.1

wget http://download.puqcloud.com/WHMCS/servers/PUQ_WHMCS-MinIO-S3/php81/PUQ_WHMCS-MinIO-S3-latest.zip

PHP 7.4

wget http://download.puqcloud.com/WHMCS/servers/PUQ_WHMCS-MinIO-S3/php74/PUQ_WHMCS-MinIO-S3-latest.zip

All versions are available via link: http://download.puqcloud.com/WHMCS/servers/PUQ_WHMCS-MinIO-S3/

2. Unzip the archive with the module.
unzip PUQ_WHMCS-MinIO-S3-latest.zip
3. Copy and Replace "puqMinIOS3" from "PUQ_WHMCS-MinIO-S3" to "WHMCS_WEB_DIR/modules/servers/"
4. Create new server MinIO in WHMCS (System Settings->Products/Services->Servers)
System Settings->Servers->Add New Server
  • Enter the correct Name and Hostname

image-1660047004719.png

  • In the Server Details section, select the "PUQ MinIO S3" module and enter the correct username and password for the Synology NAS web interface.
  • To check, click the "Test connection" button

image-1660047051935.png

5. Create a new Products/Services
System Settings->Products/Services->Create a New Product

In the Module settings section, select the "PUQ MinIOS3" module

image-1660047236549.png

 

  • License key: A pre-purchased license key for the "PUQ MinIOS3" module. For the module to work correctly, the key must be active
  • Unit: Packet disk space units
  • Disk space size: Disk size in this product
  • Notification disk limit email template: Email template that will be sent when the disk quota is exceeded in %
  • Notification, used disk space X %: Sets a percentage parameter, after exceeding this parameter a notification will be sent to the user
  • Username prefix/Username suffix: Necessary in order to generate a username for the service, in the format: prefix<client_id>-<service_id>suffix
  • Group: The group that will be assigned to the user on the server side of the MinIO S3
  • Raw Policy: The policy that is assigned to the user during creation on the server

 Example:

In the given policy example. The user has the right to create buckets with a name starting with the username.

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "admin:Heal",
                "admin:SetBucketTarget",
                "admin:TopLocksInfo",
                "admin:DataUsageInfo",
                "admin:GetBucketQuota",
                "admin:GetBucketTarget"
            ],
            "Resource": [
                "arn:aws:s3:::<USER_ID>*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "s3:*"
            ],
            "Resource": [
                "arn:aws:s3:::<USER_ID>*"
            ]
        }
    ]
}
  • Suspend exceeding disk limit email template: The template of the letter that will be sent to the client if his disk limit is 100% or less 100%
  • Save usage history (days): The number of days it takes to save user disk usage statistics
  • Link to instruction: Link to the instruction, if filled out, it will be reflected in the client area