The v-* commands in /usr/local/arcpanel/bin do the work of the panel: every page and every API call runs them. Run them as root: in a root shell (sudo -i) they are on the PATH; with plain sudo, give the full path, such as sudo /usr/local/arcpanel/bin/v-list-users. This page lists the 756 commands of ArcPanel v2.2.3, generated from the header of each command.
- Arguments in
[brackets]are optional; the others are required, in the order shown. - Commands that list objects take a
FORMATargument:plain,json,shellorcsv. - A command that fails prints the reason and exits with a code from Exit codes.
- Some commands are used by the panel itself, such as the queue and the nightly jobs; run them only when a guide says so.
Users and packages
v-acknowledge-user-notification
Update user notification.
v-acknowledge-user-notification USER NOTIFICATION
Example:
v-acknowledge-user-notification
This function updates user notification.
v-add-user
Add system user.
v-add-user USER PASSWORD EMAIL [PACKAGE] [NAME] [LASTNAME]
Example:
v-add-user user 'P4$$w@rD' bgates@aol.com
This function creates new user account.
v-add-user-2fa
Add 2fa to existing user.
v-add-user-2fa USER
Example:
v-add-user-2fa admin
This function creates a new 2fa token for user.
v-add-user-composer
Add composer (php dependency manager) for a user.
v-add-user-composer USER
Example:
v-add-user-composer user [version]
This function adds support for composer (php dependency manager) Homepage: <https://getcomposer.org/>
v-add-user-malware-ignore
Mark a malware finding of a user as not malware.
v-add-user-malware-ignore USER FINDING
Example:
v-add-user-malware-ignore alice 3f2a9c0d1b4e5f60
This function adds the SHA-256 of a finding to the ignore list of the user and drops every open finding with that content. A file with the same content is not reported again; a changed file is scanned as usual.
v-add-user-malware-quarantine
Move a suspicious file of a user to quarantine.
v-add-user-malware-quarantine USER FINDING
Example:
v-add-user-malware-quarantine alice 3f2a9c0d1b4e5f60
This function moves the file of an open finding into the root-only quarantine store data/quarantine/USER/. The file is read and removed as the user, never opened by root in the user's tree. When its content changed since the scan (another SHA-256), nothing is moved and the command answers E_INVALID: scan again first. Prints the quarantine ID.
v-add-user-node-version
Install a Node.js runtime for a user.
v-add-user-node-version USER SPEC
Examples:
v-add-user-node-version alice lts
v-add-user-node-version alice 22
v-add-user-node-version alice 24.3.0
This function installs the newest Node.js release matching SPEC (lts, a major, or X.Y.Z) into ~/.nvm/versions/node of the user. The release is downloaded into the shared cache once, checked against the signature of the Node.js releasers and its checksum, then unpacked by the user. The package decides which majors (NODE_ALLOWED) and how many runtimes (NODE_VERSIONS) are allowed. The first runtime becomes the default.
v-add-user-notification
Add user notification.
v-add-user-notification USER TOPIC NOTICE [TYPE]
This function adds a new user notification to the panel.
v-add-user-npm-package
Install a global npm package for a user.
v-add-user-npm-package USER VERSION SPEC
Examples:
v-add-user-npm-package alice 24.3.0 pm2
v-add-user-npm-package alice 24.3.0 @nestjs/cli@11
This function runs `npm install -g SPEC` as the user with the runtime VERSION. SPEC is a package name, optionally scoped, with an optional version, range or dist-tag; URLs, git, file and path specs are refused. pnpm and yarn are installed this way too.
v-add-user-nvm
Enable Node.js (nvm) for a user.
v-add-user-nvm USER
Example:
v-add-user-nvm alice
This function installs nvm into ~/.nvm of the user and adds the nvm block to ~/.bashrc, so that `node`, `npm` and `nvm use` work in the user's shell. The user's package must have NODE='yes'. Running it again repairs the shell block. Node.js runtimes are added with v-add-user-node-version.
v-add-user-package
Adding user package.
v-add-user-package tmpfile PACKAGE [REWRITE]
This function adds new user package to the system.
v-add-user-port
Allocate a port or range to a user.
v-add-user-port USER PORT|RANGE [PUBLIC_OK] [COMMENT]
Example:
v-add-user-port alice 30100-30109 yes 'API servers'
This function allocates free ports of the server range to a user. The ports must not be reserved or allocated to anyone. PUBLIC_OK (yes or no, default no) lets the user open them to the internet. A user in a reseller's tree cannot take the tree above the reseller's PORTS.
v-add-user-port-pool
Allocate a block of ports to a user.
v-add-user-port-pool USER [SIZE] [PUBLIC_OK]
Example:
v-add-user-port-pool alice 10
This function allocates SIZE ports to a user, by default the ports it is missing to reach the PORTS of its package (for a reseller, its whole tree counts). A reseller's customer gets them from the reseller's free pool, which is topped up from the server range while the reseller's tree has room. Other users get one contiguous block of the server range; PUBLIC_OK (yes or no, default no) lets them open its ports to the internet.
v-add-user-secret
Add a secret to the secret store of a user.
v-add-user-secret USER NAME VALUE_FILE [DESCRIPTION]
Example:
v-add-user-secret alice /shop/db_password /tmp/value 'Shop database'
This function stores the value held in VALUE_FILE as version 1 of the secret NAME (/path/name: one to five segments of letters, digits, _ . -) of USER, encrypted with the user's key. One trailing newline of the file is dropped; the value is 1 byte to 32 KiB without NUL bytes. The value is never printed or logged; apps reference it as {{secret:NAME}}.
v-add-user-sftp-jail
Add user sftp jail.
v-add-user-sftp-jail USER [RESTART]
Example:
v-add-user-sftp-jail admin
This function enables sftp jailed environment
v-add-user-ssh-key
Add ssh key.
v-add-user-ssh-key USER KEY
Example:
v-add-user-ssh-key user 'valid ssh key'
Function check if $user/.ssh/authorized_keys exists and create it. After that it append the new key. Every read and write of the file runs as the user, so a link in ~/.ssh cannot make root write elsewhere.
v-add-user-wp-cli
Add wp-cli for a user.
v-add-user-wp-cli USER
Example:
v-add-user-wp-cli user
This function adds support for wp-cli to the user account
v-allocate-user-port
Assign a port of a user's pool to an app.
v-allocate-user-port USER APP [PROTO] [PORT] [COMMENT]
Examples:
v-allocate-user-port alice node:api.example.com
v-allocate-user-port alice manual tcp 30105 'game server'
This function assigns a free port of the user's pool to an app and prints the port: the given PORT, or the lowest free one. APP is "manual" for a port the user runs something on by hand, or <kind>:<id> for apps of the panel (node:<domain>, docker:<app>). When the pool is empty it is first topped up to the package PORTS; with PORTS unlimited a port of the server range is taken. With PORT_REGISTRY='no' any free port of the server range is taken without pool checks.
v-change-package-tenancy
Change a reseller setting of a package.
v-change-package-tenancy PACKAGE KEY VALUE
Example:
v-change-package-tenancy reseller USERS 25
This function sets USERS (integer or unlimited), RESELLER_PACKAGES (comma list of packages, or *), RESELLER_VISIBLE (yes or no), PORTS (integer or unlimited), NODE (yes or no), NODE_VERSIONS and NODE_APPS (integer or unlimited), NODE_ALLOWED (lts, * or a comma list of majors), DOCKER (yes or no), DOCKER_APPS (integer or unlimited), DOCKER_CPUS (CPUs per app, like 0.5, or unlimited) or DOCKER_MEMORY (memory per app, like 512M, or unlimited) of a package. PORTS, NODE_VERSIONS, NODE_APPS, DOCKER_APPS, DOCKER_CPUS and DOCKER_MEMORY of a reseller's own package cannot be above the reseller's, its NODE and DOCKER cannot be yes when the reseller's are no, and its NODE_ALLOWED allows only what the reseller's allows. PHP_VERSIONS (* or a comma list of catalog versions), PHP_PROFILES (* or a comma list of PHP-FPM profiles) and PHP_DEFAULT_PROFILE (one of the allowed profiles) choose the PHP of the package's web domains: a reseller's own package may only allow what the reseller's package allows, * only when that is *, and the package's BACKEND_TEMPLATE must name an allowed version. APP_PROCESSES (yes or no), APP_PROCESSES_MAX (integer or unlimited), APP_PROCESSES_MEMORY (memory per process, like 512M, or unlimited) and APP_PROCESSES_CPUS (CPUs per process, like 0.5, or unlimited) allow app processes; a reseller's own package cannot go beyond the reseller's.
v-change-user-config-value
Changes user configuration value.
v-change-user-config-value USER KEY VALUE
Example:
v-change-user-config-value admin ROLE admin
Changes key/value for specified user.
v-change-user-contact
Change user contact email.
v-change-user-contact USER EMAIL
Example:
v-change-user-contact admin admin@yahoo.com
This function for changing of e-mail associated with a certain user.
v-change-user-language
Change user language.
v-change-user-language USER LANGUAGE
Example:
v-change-user-language admin en
This function for changing language.
v-change-user-name
Change user full name.
v-change-user-name USER NAME [LAST_NAME]
Example:
v-change-user-name admin John Smith
This function allow to change user's full name.
v-change-user-node-default
Change the default Node.js runtime of a user.
v-change-user-node-default USER VERSION
Example:
v-change-user-node-default alice 24.3.0
This function points the nvm default alias of the user at an installed runtime; new shells (SSH, Web Terminal) use it.
v-change-user-ns
Change user name servers.
v-change-user-ns USER NS1 NS2 [NS3] [NS4] [NS5] [NS6] [NS7] [NS8]
Example:
v-change-user-ns ns1.domain.tld ns2.domain.tld
This function for changing default name servers for specific user.
v-change-user-owner
Change the owner of a user.
v-change-user-owner USER OWNER
Example:
v-change-user-owner alice agency
This function moves a user to another owner: a reseller (owned by the system administrator, resellers do not nest) or ROOT_USER. The user must fit into the new reseller's plan. Administrators and resellers always belong to ROOT_USER.
v-change-user-package
Change user package.
v-change-user-package USER PACKAGE [FORCE]
Example:
v-change-user-package admin yourpackage
This function changes user's hosting package.
v-change-user-password
Change user password.
v-change-user-password USER PASSWORD
Example:
v-change-user-password admin NewPassword123
This function changes user's password and updates RKEY value.
v-change-user-php-cli
Add php version alias to .bash_aliases.
v-change-user-php-cli USER VERSION
Example:
v-change-user-php-cli user 7.4
add line to .bash_aliases to set default php command line version when multi-php is enabled.
v-change-user-port-owner
Move free ports to another user.
v-change-user-port-owner USER PORT|RANGE|+COUNT NEW_USER
Example:
v-change-user-port-owner agency +10 alice
This function moves free ports (not used by an app) from one user to another: a reseller gives ports to a customer, takes unused ports back, or the administrator moves ports between users. +COUNT moves the COUNT lowest free ports; a reseller that gives more than its free pool to its customer is topped up first while its tree has room. A move into a reseller's tree cannot take the tree above the reseller's PORTS. Who may move what is decided by the panel.
v-change-user-port-public
Open or close a port to the internet.
v-change-user-port-public USER PORT PUBLIC [RULE]
Example:
v-change-user-port-public alice 30105 yes
This function makes an assigned port public (yes) or private (no). A public port has a firewall ACCEPT rule tagged arcpanel-port-<port>-<user>. The port must be allowed to be public (PUBLIC_OK) and the user must not be suspended. With RULE, an existing firewall rule on the same port is linked to it (it gets the tag) instead of a new one; RULE is for administrators, so the panel and API v2 pass it for them only. With the firewall off the flag is stored and the rule is written by v-check-sys-ports repair once it is on.
v-change-user-port-public-ok
Allow or forbid public ports.
v-change-user-port-public-ok USER PORT|RANGE PUBLIC_OK
Example:
v-change-user-port-public-ok alice 30100-30109 yes
This function sets whether a user may open ports to the internet (yes or no). Turning it off closes the ports that are public.
v-change-user-rkey
Change user random key.
v-change-user-rkey USER [HASH]
This function changes user's RKEY value that has been used for security value to be used forgot password function only.
v-change-user-role
Updates user role.
v-change-user-role USER ROLE
Example:
v-change-user-role user administrator
Give/revoke user administrator rights to manage all accounts as admin
v-change-user-secret
Change the value of a secret of a user.
v-change-user-secret USER NAME VALUE_FILE [RESTART]
Example:
v-change-user-secret alice /shop/db_password /tmp/value yes
This function stores the value held in VALUE_FILE as the next version of the secret NAME of USER and keeps the last five versions. It prints the apps that reference the secret (node:DOMAIN, docker:NAME); with RESTART set to yes it restarts the ones that run, so they get the new value.
v-change-user-secret-description
Change the description of a secret of a user.
v-change-user-secret-description USER NAME DESCRIPTION
Example:
v-change-user-secret-description alice /shop/db_password 'Shop DB'
This function changes the description of the secret NAME of USER. The value and its version stay as they are.
v-change-user-shell
Change user shell.
v-change-user-shell USER SHELL
Example:
v-change-user-shell admin nologin
This function changes system shell of a user. Shell gives ability to use ssh.
v-change-user-sort-order
Updates user role.
v-change-user-sort-order USER SORT_ORDER
Example:
v-change-user-sort-order user date
Changes web UI display sort order for specified user.
v-change-user-template
Change user default template.
v-change-user-template USER TYPE TEMPLATE
Example:
v-change-user-template admin WEB wordpress
This function changes default user web template.
v-change-user-theme
Updates user theme.
v-change-user-theme USER THEME
Examples:
v-change-user-theme admin dark
v-change-user-theme peter vestia
Changes web UI display theme for specified user.
v-check-user-2fa
Check user token.
v-check-user-2fa USER TOKEN [IP]
Example:
v-check-user-2fa admin 493690 203.0.113.7
This function verifies user 2fa token. A token is accepted once: the time step of the last accepted token is kept as TWOFA_STEP. A wrong token is written to the auth log that fail2ban reads.
v-check-user-hash
Check user hash.
v-check-user-hash USER HASH [IP]
Example:
v-check-user-hash admin CN5JY6SMEyNGnyCuvmK5z4r7gtHAC4mRZ...
This function verifies user hash. It exits with 5 when the hash matches a suspended (locked) account and with 9 when it does not match.
v-check-user-npm-outdated
Check the global npm packages of a user for updates.
v-check-user-npm-outdated USER VERSION
Example:
v-check-user-npm-outdated alice 24.3.0
This function runs `npm outdated -g --json` as the user with the runtime VERSION and keeps the result for v-list-user-npm-packages (6 hours).
v-check-user-password
Check user password.
v-check-user-password USER PASSWORD [IP] [RETURN_HASH]
Example:
v-check-user-password admin qwerty1234
This function verifies user password from file. A suspended (locked) account is checked without its lock mark: with RETURN_HASH the hash is printed as for any account (v-check-user-hash then says it is suspended), without it the command exits with 5 when the password matches.
v-check-user-port
Check that a user may bind a port.
v-check-user-port USER PORT [PROTO]
Example:
v-check-user-port alice 30105
This function exits 0 when the port belongs to the user and no process of another account listens on it, E_NOTEXIST when the port is not the user's and E_INUSE when another account listens on it.
v-copy-user-package
Duplicate existing package.
v-copy-user-package PACKAGE NEW_PACKAGE
Example:
v-copy-user-package default new
This function allows the user to duplicate an existing package file to facilitate easier configuration.
v-delete-package-tenancy
Delete the reseller settings of a package.
v-delete-package-tenancy PACKAGE
Example:
v-delete-package-tenancy starter
This function removes the reseller settings file of a package. The panel runs it after v-delete-user-package.
v-delete-user
Delete user.
v-delete-user USER [RESTART]
Example:
v-delete-user whistler
This function deletes a certain user and all his resources such as domains, databases, cron jobs, etc.
v-delete-user-2fa
Delete 2fa of existing user.
v-delete-user-2fa USER
Example:
v-delete-user-2fa admin
This function deletes 2fa token of a user.
v-delete-user-app-processes
Delete the app processes of a user.
v-delete-user-app-processes USER
Example:
v-delete-user-app-processes alice
This function deletes every app process of USER: units, run files, records, ports and the templates of their domains. The pre_delete_user hook runs it before the user is deleted.
v-delete-user-auth-log
Delete auth log file for user.
v-delete-user-auth-log USER
Example:
v-delete-user-auth-log admin
This function for deleting a users auth log file
v-delete-user-backup
Delete user backup.
v-delete-user-backup USER BACKUP
Example:
v-delete-user-backup admin admin.2012-12-21_00-10-00.tar
This function deletes user backup.
v-delete-user-backup-exclusions
Delete backup exclusion.
v-delete-user-backup-exclusions USER [SYSTEM]
Example:
v-delete-user-backup-exclusions admin
This function for deleting backup exclusion
v-delete-user-backup-restic
Delete a specific user snapshot from restic backup repository.
v-delete-user-backup-restic USER SNAPSHOT
Example:
v-delete-user-backup-restic admin snapshot
Delete a specific user snapshot from restic backup repository. It doesn't take in account any pruning done by the retention policy. This function is used for deleting a specific user snapshot from restic backup repository.
v-delete-user-docker-apps
Delete the Docker apps of a user.
v-delete-user-docker-apps USER
Example:
v-delete-user-docker-apps alice
This function deletes every Docker app of USER: containers, networks, ports, records and rendered projects. The data folders stay in the home directory (removed with it when the user is deleted). It is run by the pre_delete_user hook.
v-delete-user-ips
Delete user ips.
v-delete-user-ips USER
Example:
v-delete-user-ips admin
This function deletes all user's ip addresses.
v-delete-user-log
Delete log file for user.
v-delete-user-log USER
Example:
v-delete-user-log user
This function for deleting a users log file
v-delete-user-login-limits
Clear the login limits of a user.
v-delete-user-login-limits USER
Example:
v-delete-user-login-limits admin
This function clears the hourly login limit and the 2FA limit that the panel keeps for a user name, so a user locked out by failed attempts of someone else can log in again.
v-delete-user-malware-ignore
Remove an entry of the malware ignore list of a user.
v-delete-user-malware-ignore USER SHA256
Example:
v-delete-user-malware-ignore alice 9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08
This function removes a SHA-256 from the ignore list of the user. The next scan reports a file with that content again.
v-delete-user-malware-quarantine
Delete a quarantined file of a user.
v-delete-user-malware-quarantine USER ID
Example:
v-delete-user-malware-quarantine alice 17602000001234
This function deletes a quarantined file and its entry for good.
v-delete-user-node-apps
Remove the Node.js apps of a user that is deleted.
v-delete-user-node-apps USER
Example:
v-delete-user-node-apps alice
This function is run by the pre_delete_user hook: it stops and removes the user's pm2 daemon, its linger and logrotate file and the app records. The home directory, the web domains and the ports are removed by v-delete-user and its other hooks.
v-delete-user-node-version
Uninstall a Node.js runtime of a user.
v-delete-user-node-version USER VERSION
Example:
v-delete-user-node-version alice 22.3.0
This function deletes one runtime from ~/.nvm/versions/node of the user, with its global packages. When it was the default, the newest remaining runtime becomes the default.
v-delete-user-notification
Delete user notification.
v-delete-user-notification USER NOTIFICATION
Example:
v-delete-user-notification admin 1
This function deletes user notification.
v-delete-user-npm-package
Uninstall a global npm package of a user.
v-delete-user-npm-package USER VERSION NAME
Example:
v-delete-user-npm-package alice 24.3.0 pm2
This function runs `npm uninstall -g NAME` as the user with the runtime VERSION. npm and corepack, which come with Node.js, cannot be removed.
v-delete-user-nvm
Remove Node.js (nvm) of a user.
v-delete-user-nvm USER
Example:
v-delete-user-nvm alice
This function deletes ~/.nvm of the user, with every Node.js runtime and global package in it, and the nvm block of ~/.bashrc.
v-delete-user-package
Delete user package.
v-delete-user-package PACKAGE
Example:
v-delete-user-package admin palegreen
This function for deleting user package.
If the package is in use, users will be updated to use the default package.
v-delete-user-port
Delete ports of a user.
v-delete-user-port USER PORT|RANGE [force]
Example:
v-delete-user-port alice 30100-30109
This function takes ports away from a user and closes their firewall rules. Ports of a reseller's customer go back to the reseller's pool, other ports go back to the server range. Ports used by an app are only deleted with "force".
v-delete-user-ports
Delete all ports of a user.
v-delete-user-ports USER
Example:
v-delete-user-ports alice
This function closes the firewall rules of every port of the user, keeps a copy of its registry file in data/ports/.deleted/ and gives the ports back: to the reseller's pool for a reseller's customer, to the server range otherwise. v-delete-user runs it through the pre_delete_user hook.
v-delete-user-secret
Delete a secret of a user.
v-delete-user-secret USER NAME [FORCE]
Example:
v-delete-user-secret alice /shop/db_password
This function deletes the secret NAME of USER with all its versions. A secret that an app references is refused with E_INUSE and the list of those apps, unless FORCE is yes; such apps then fail to start until the reference is removed or the secret is added again.
v-delete-user-sftp-jail
Delete user sftp jail.
v-delete-user-sftp-jail USER
Example:
v-delete-user-sftp-jail whistler
This function disables sftp jailed environment for USER
v-delete-user-ssh-key
Delete ssh key.
v-delete-user-ssh-key USER KEY
Example:
v-delete-user-ssh-key user unique_id
Delete user ssh key from authorized_keys
v-delete-user-stats
Delete user usage statistics.
v-delete-user-stats USER DOMAIN
Examples:
v-delete-user-stats user
v-delete-user-stats admin overall
This function deletes user statistics data.
v-generate-password-hash
No description in the command header.
v-generate-password-hash
v-get-user-salt
Get user salt.
v-get-user-salt USER [IP] [FORMAT]
Example:
v-get-user-salt admin
This function provides users salt
v-get-user-secret
Print the value of a secret of a user.
v-get-user-secret USER NAME [VERSION]
Example:
v-get-user-secret alice /shop/db_password
This function prints the value of the secret NAME of USER, or of a kept VERSION. It is for root on the shell only: it refuses to run through sudo, so neither the panel nor the APIs can read a value (spec D7).
v-get-user-value
Get user value.
v-get-user-value USER KEY
Example:
v-get-user-value admin FNAME
This function for obtaining certain user's parameters.
v-list-package-tenancy
List the reseller settings of packages.
v-list-package-tenancy [PACKAGE] [FORMAT]
Example:
v-list-package-tenancy reseller json
This function lists every package (or one) with its limits and its reseller settings: USERS, RESELLER_PACKAGES, RESELLER_VISIBLE and RESELLER_OWNER, defaults filled in.
v-list-user
List user parameters.
v-list-user USER [FORMAT]
Example:
v-list-user admin
This function to obtain user parameters.
v-list-user-auth-log
List user login log.
v-list-user-auth-log USER [FORMAT] [LINES]
Example:
v-list-user-auth-log alice json 100
This function prints the last LINES entries of the user's login history (default 10, at most 10000), oldest first.
v-list-user-backup
List user backup.
v-list-user-backup USER BACKUP [FORMAT]
Example:
v-list-user-backup admin admin.2019-05-19_03-31-30.tar
This function of obtaining the list of backup parameters. This call, just as all v_list_* calls, supports 3 formats - json, shell and plain.
v-list-user-backup-exclusions
List backup exclusions.
v-list-user-backup-exclusions USER [FORMAT]
Example:
v-list-user-backup-exclusions admin
This function for obtaining the backup exclusion list
v-list-user-backup-restic
List what a restic snapshot of a user holds.
v-list-user-backup-restic USER SNAPSHOT [FORMAT]
Example:
v-list-user-backup-restic alice 4f2a91c0 json
This function prints the backup.conf stored in a restic snapshot of USER: the web, DNS and mail domains, databases, cron jobs and folders it holds. The file is read into a working folder of root and parsed as untrusted input.
v-list-user-backups
List user backups.
v-list-user-backups USER [FORMAT]
Example:
v-list-user-backups admin
This function for obtaining the list of available user backups.
v-list-user-backups-restic
Backup system user with all its objects.
v-list-user-backups-restic USER NOTIFY
Example:
v-backup-user admin yes
This function is used for backing up user with all its domains and databases.
v-list-user-files-restic
List a folder of a restic snapshot.
v-list-user-files-restic USER SNAPSHOT FOLDER
Example:
v-list-user-files-restic alice 4f2a91c0 /home/alice/web
This function prints `restic ls --json` for FOLDER of a snapshot of USER. FOLDER is /home/USER or a folder below it; every argument reaches restic quoted and after "--".
v-list-user-ips
List user IPs.
v-list-user-ips USER [FORMAT]
Example:
v-list-user-ips admin
This function for obtaining the list of available IP addresses.
v-list-user-log
List user log.
v-list-user-log USER [FORMAT] [LINES]
Example:
v-list-user-log alice json 100
This function prints the last LINES entries of the user's action log (default 300, at most 10000), oldest first. USER 'system' reads the activity log of the server.
v-list-user-malware-findings
List the open malware findings of a user.
v-list-user-malware-findings USER [FORMAT]
Example:
v-list-user-malware-findings alice json
This function lists the suspicious files that the last scans found and that were neither quarantined nor ignored, most severe first: ID, DOMAIN, PATH (relative to public_html), SHA256, SIZE, MTIME, SEVERITY, RULES, LINE, SNIPPET (the matching line, attacker-controlled text), DETECTED, SCAN and DESCRIPTIONS (the description of each rule).
v-list-user-malware-ignores
List the files a user marked as not malware.
v-list-user-malware-ignores USER [FORMAT]
Example:
v-list-user-malware-ignores alice json
This function lists the ignore list of the user: SHA256, DOMAIN, PATH, RULES and ADDED. A file with one of these SHA-256 values is not reported.
v-list-user-malware-quarantine
List the quarantined files of a user.
v-list-user-malware-quarantine USER [FORMAT]
Example:
v-list-user-malware-quarantine alice json
This function lists the files moved to quarantine: ID, DOMAIN, PATH, SHA256, SIZE, MODE, SEVERITY, RULES and QUARANTINED, newest first.
v-list-user-malware-scans
List the malware scans of a user.
v-list-user-malware-scans USER [FORMAT]
Example:
v-list-user-malware-scans alice json
This function lists the records of the last scans of the user, newest first: ID, DOMAIN (empty for every domain), MODE, TRIGGER, STATUS, START, END, FILES, CHANGED, SKIPPED, ERRORS, FINDINGS, NEW, NEW_SUMMARY, RULES and ERROR.
v-list-user-malware-task
Show the current or last background malware scan of a user.
v-list-user-malware-task USER [LINES] [FORMAT]
Example:
v-list-user-malware-task alice 100 json
This function prints the task record (ID, DOMAIN, STATUS, EXIT, START, END) of the scan started by v-start-user-malware-scan and the last LINES lines of its output (default 100, at most 1000). STATUS is running, done or failed; a running task whose process is gone is reported, and stored, as failed. Without a task, STATUS is empty.
v-list-user-node-task
Show the current or last Node.js task of a user.
v-list-user-node-task USER [LINES] [FORMAT]
Example:
v-list-user-node-task alice 100 json
This function prints the task record (ID, ACTION, ARGS, STATUS, EXIT, START, END) and the last LINES lines of its output (default 100, at most 1000). STATUS is running, done or failed; a running task whose process is gone is reported, and stored, as failed. Without a task, STATUS is empty.
v-list-user-node-versions
List the Node.js runtimes of a user.
v-list-user-node-versions USER [FORMAT]
Example:
v-list-user-node-versions alice json
This function reads ~/.nvm of the user and lists each installed runtime: VERSION, MAJOR, DEFAULT, LTS, STATUS, EOL, SIZE (MB) and PACKAGES (global packages besides npm and corepack). The json format adds the package settings (NODE, ALLOWED, LIMIT), ENABLED (nvm installed), SHELL (nvm block in ~/.bashrc), COUNT, DEFAULT and ARCH.
v-list-user-notifications
List user notifications.
v-list-user-notifications USER [FORMAT]
Example:
v-list-user-notifications admin
This function for getting the notifications list
v-list-user-npm-packages
List the global npm packages of a user.
v-list-user-npm-packages USER VERSION [FORMAT]
Example:
v-list-user-npm-packages alice 24.3.0 json
This function lists the global packages of the runtime VERSION: NAME, VERSION, LATEST and OUTDATED (from the last v-check-user-npm-outdated when it is younger than 6 hours, else empty) and BUNDLED (npm and corepack come with Node.js). CHECKED is the time of that check.
v-list-user-ns
List user nameservers.
v-list-user-ns USER [FORMAT]
Example:
v-list-user-ns admin
Function for obtaining the list of user's DNS servers.
v-list-user-owners
List every user with its role and owner.
v-list-user-owners [FORMAT]
Example:
v-list-user-owners json
This function lists every panel user with its ROLE, its resolved OWNER (the reseller that owns it, else ROOT_USER; empty for administrators) and whether it is suspended.
v-list-user-package
List user package.
v-list-user-package PACKAGE [FORMAT]
This function for getting the list of system ip parameters.
v-list-user-packages
List user packages.
v-list-user-packages [FORMAT]
This function for obtaining the list of available hosting packages.
v-list-user-ports
List the ports of a user.
v-list-user-ports USER [FORMAT]
Example:
v-list-user-ports alice json
This function lists the user's ports with their live state (LISTEN: no, local for loopback, any for every other address) and the totals of the pool: LIMIT (package PORTS), ALLOCATED, ASSIGNED, PUBLIC and FREE. For a reseller, TREE_TOTAL and TREE_USED count its customers too.
v-list-user-quick-install-task
Show the current or last Quick Install of a user.
v-list-user-quick-install-task USER [LINES] [FORMAT]
Example:
v-list-user-quick-install-task alice 100 json
This function prints the task record (ID, DOMAIN, APP, STATUS, EXIT, START, END) and the last LINES lines of its output (default 100, at most 1000). STATUS is running, done or failed; a running task whose process is gone is reported, and stored, as failed. Without a task, STATUS is empty.
v-list-user-secret
List one secret of a user.
v-list-user-secret USER NAME [FORMAT]
Example:
v-list-user-secret alice /shop/db_password json
This function lists the secret NAME of USER: description, current version, fingerprint, the kept versions with their fingerprints and dates, and the apps that reference it (node:DOMAIN, docker:NAME). It never prints a value.
v-list-user-secret-store
List the secrets of a user.
v-list-user-secret-store USER [FORMAT] [USAGE]
Example:
v-list-user-secret-store alice json
This function lists the secrets of USER with their description, current version, fingerprint (8 hex characters of a keyed hash of the value) and the number of apps that reference them. It never prints a value. With USAGE set to no, USED_BY stays empty and the apps are not read (the reference pickers of the panel need the names only).
v-list-user-ssh-key
List ssh keys.
v-list-user-ssh-key USER [FORMAT]
Lists $user/.ssh/authorized_keys
v-list-user-stats
List user stats.
v-list-user-stats USER [FORMAT]
Example:
v-list-user-stats admin
This function for listing user statistics
v-list-user-tasks
List the tasks of a user.
v-list-user-tasks USER [ID] [LINES] [FORMAT]
Examples:
v-list-user-tasks admin json
v-list-user-tasks admin 17280000001234 100 json
This function prints the queue-task records of USER, newest first, or one record. LOG is the last LINES lines of the task log (default 100, at most 1000). A record that is still queued but whose line is gone from every queue is stored as failed. ATTEMPTS counts the runs of a task that the queue retries.
v-list-users
List users.
v-list-users [FORMAT]
Example:
v-list-users
This function to obtain the list of all system users.
v-list-users-stats
List overall user stats.
v-list-users-stats [FORMAT]
This function for listing overall user statistics
v-log-user-login
Add user login.
v-log-user-login USER IP STATUS [FINGERPRINT] [USER_AGENT] [AUTHLOG] [REASON]
The user agent and the reason are made log-safe (quotes and control characters replaced) instead of refused, so a failure always reaches the auth log that fail2ban reads.
v-log-user-logout
Log User logout event.
v-log-user-logout USER FINGERPRINT
v-rebuild-user
Rebuild system user.
v-rebuild-user USER [RESTART]
Example:
v-rebuild-user admin yes
This function rebuilds system user account.
v-rebuild-users
Rebuild system users.
v-rebuild-users [RESTART]
Example:
v-rebuild-users
This function rebuilds user configuration for all users.
v-release-user-port
Release ports assigned to an app.
v-release-user-port USER APP|PORT
Examples:
v-release-user-port alice node:api.example.com
v-release-user-port alice 30105
This function frees the ports assigned to an app (or one port): it closes their firewall rules and clears the app, the public flag and the comment. The ports stay in the user's pool.
v-rename-package-tenancy
Rename the reseller settings of a package.
v-rename-package-tenancy OLD_NAME NEW_NAME
Example:
v-rename-package-tenancy starter basic
This function moves the reseller settings of a package to its new name and updates RESELLER_PACKAGES lists that name it. The panel runs it after v-rename-user-package.
v-rename-user-package
Change package name.
v-rename-user-package OLD_NAME NEW_NAME [mode]
Example:
v-rename-package package package2
This function changes the name of an existing package.
v-rollback-user-secret
Roll a secret of a user back to an earlier version.
v-rollback-user-secret USER NAME VERSION [RESTART]
Example:
v-rollback-user-secret alice /shop/db_password 2
This function copies VERSION of the secret NAME of USER into a new version, so the history only moves forward. Like v-change-user-secret it prints the apps that reference the secret and, with RESTART set to yes, restarts the ones that run.
v-run-user-node-task
Run a Node.js task started by v-start-user-node-task.
v-run-user-node-task ID USER ACTION [ARGS...]
Example:
v-run-user-node-task 17286400001234 alice add-version lts
This function is the background part of v-start-user-node-task: it runs the command of the task and records its result. It refuses to run a task that v-start-user-node-task did not start.
v-run-user-quick-install
Run a Quick Install started by v-start-user-quick-install.
v-run-user-quick-install ID USER DOMAIN APP
Example:
v-run-user-quick-install 17286400001234 alice example.com DokuWiki
This function is the background part of v-start-user-quick-install: it runs v-add-web-domain-app with the staged options, removes them on every exit path and records the result. It refuses to run a task that v-start-user-quick-install did not start.
v-scan-user-web
Scan the web files of a user for malware.
v-scan-user-web USER [DOMAIN] [MODE] [TRIGGER] [FORMAT]
Example:
v-scan-user-web alice example.com full manual json
This function scans the public_html folder of one web domain, or of every web domain of the user when DOMAIN is empty, with the malware scanner (func/malware-scan.php) running as the user under nice and ionice. MODE is full (default) or incremental (only new and changed files since the last scan with the same rules). TRIGGER is manual (default) or nightly.
The open findings of the scanned domains are replaced by the result; ignored and quarantined files are left out. New findings send a panel notification to the user and the administrator. Prints the scan record. A scan of the user that is already running answers E_INUSE.
v-schedule-user-backup
Schedule user backup creation.
v-schedule-user-backup USER [FORMAT]
Example:
v-schedule-user-backup admin
This function for scheduling user backup creation.
v-schedule-user-backup-download
Schedule a backup.
v-schedule-user-backup-download USER BACKUP [FORMAT]
Example:
v-schedule-user-backup-download admin 2019-04-22_01-00-00.tar
This function for scheduling user backup creation.
v-schedule-user-backup-restic
Schedule user backup creation.
v-schedule-user-backup-restic USER [FORMAT]
Example:
v-schedule-user-backup admin
This function for scheduling user backup creation.
v-schedule-user-restore
Schedule user backup restoration.
v-schedule-user-restore USER BACKUP [WEB] [DNS] [MAIL] [DB] [CRON] [UDIR] [FORMAT]
Example:
v-schedule-user-restore 2019-04-22_01-00-00.tar
This function for scheduling user backup restoration.
v-schedule-user-restore-file-restic
Schedule the restore of a file or folder from a restic snapshot.
v-schedule-user-restore-file-restic USER SNAPSHOT PATH [FORMAT]
Example:
v-schedule-user-restore-file-restic alice 4f2a91c0 /home/alice/web/example.com/public_html/index.php
This function queues v-restore-file-restic for one file or folder of a snapshot of USER. PATH is absolute and inside /home/USER; it may hold letters, digits and . _ @ + - only, because v-restore-file-restic passes it to restic unquoted. The restore overwrites the current file. The queue line removes itself when it has run (v-restore-file-restic cannot remove a line whose path holds slashes); the restore is logged in the user's log.
v-schedule-user-restore-restic
Schedule user backup restoration.
v-schedule-user-restore-restic USER SNAPSHOT [OBJECT] [VALUE] [FORMAT]
Example:
v-schedule-user-restore-restic alice 4f2a91c0 web example.com
This function for scheduling user backup restoration from a restic snapshot.
v-search-user-object
Search objects.
v-search-user-object USER OBJECT [FORMAT]
Example:
v-search-user-object admin example.com json
This function that allows to find user objects.
v-start-user-malware-scan
Start a malware scan of a user in the background.
v-start-user-malware-scan USER [DOMAIN]
Example:
v-start-user-malware-scan alice example.com
This function starts a full v-scan-user-web of one web domain, or of every web domain of the user when DOMAIN is empty, detached from the caller, and prints the task ID. One scan per user runs at a time; the state and the output are read with v-list-user-malware-task.
v-start-user-node-task
Start a Node.js task of a user in the background.
v-start-user-node-task USER ACTION [ARGS...]
Examples:
v-start-user-node-task alice add-version lts
v-start-user-node-task alice add-package 24.3.0 pm2
v-start-user-node-task alice update-packages 24.3.0
v-start-user-node-task alice check-outdated 24.3.0
v-start-user-node-task alice app-build shop.example.com build
This function checks the arguments of a long Node.js operation, starts it detached from the caller and prints the task ID. ACTION is add-version (SPEC), add-package (VERSION SPEC), update-packages (VERSION) or check-outdated (VERSION), app-install (DOMAIN) or app-build (DOMAIN [SCRIPT]) for a Node.js app. A user runs one task at a time; the state and the output are read with v-list-user-node-task.
v-start-user-quick-install
Start a Quick Install of an application on a web domain in the background.
v-start-user-quick-install USER DOMAIN APP OPTIONS_FILE
Example:
v-start-user-quick-install alice example.com DokuWiki /tmp/options.json
This function checks the arguments of a Quick Install, keeps a root-only copy of the options (a JSON object, at most 64 KiB), starts v-add-web-domain-app detached from the caller and prints the task ID. A user runs one install at a time; the state and the output are read with v-list-user-quick-install-task.
v-suspend-user
Suspend user.
v-suspend-user USER [RESTART]
Example:
v-suspend-user alice yes
This function suspends a certain user and all his objects.
v-suspend-user-app-processes
Suspend the app processes of a user.
v-suspend-user-app-processes USER
Example:
v-suspend-user-app-processes alice
This function stops every app process of USER and marks them suspended, so that neither a reboot nor v-check-sys-app-processes starts them. The post_suspend_user hook runs it when the user is suspended.
v-suspend-user-docker-apps
Stop the Docker apps of a suspended user.
v-suspend-user-docker-apps USER
Example:
v-suspend-user-docker-apps alice
This function stops every Docker app of USER and marks the apps that were not suspended on their own as suspended with the user (SUSPENDED='user'), so that v-unsuspend-user-docker-apps starts exactly those again. It is run by the post_suspend_user hook.
v-suspend-user-node-apps
Stop the Node.js apps of a suspended user.
v-suspend-user-node-apps USER
Example:
v-suspend-user-node-apps alice
This function is run by the post_suspend_user hook: it marks every app that is not suspended on its own as suspended with the user (SUSPENDED='user') and stops and disables the user's pm2 daemon, so it does not start at boot. Ports stay assigned.
v-suspend-user-ports
Suspend the ports of a user.
v-suspend-user-ports USER
Example:
v-suspend-user-ports alice
This function closes the firewall rules of the user's public ports and marks its ports suspended. The ports stay public in the registry, so v-unsuspend-user-ports opens them again. v-suspend-user runs it through the post_suspend_user hook.
v-unsuspend-user
Unsuspend user.
v-unsuspend-user USER [RESTART]
Example:
v-unsuspend-user bob
This function unsuspends user and all his objects.
v-unsuspend-user-app-processes
Unsuspend the app processes of a user.
v-unsuspend-user-app-processes USER
Example:
v-unsuspend-user-app-processes alice
This function lifts the suspension of every app process of USER and starts those the user had running (not the ones of a suspended domain). The post_unsuspend_user hook runs it when the user is unsuspended.
v-unsuspend-user-docker-apps
Start the Docker apps of an unsuspended user again.
v-unsuspend-user-docker-apps USER
Example:
v-unsuspend-user-docker-apps alice
This function lifts the suspension that v-suspend-user-docker-apps set on the Docker apps of USER (SUSPENDED='user') and starts the apps that were running. Apps suspended on their own stay suspended. It is run by the post_unsuspend_user hook.
v-unsuspend-user-node-apps
Start the Node.js apps of an unsuspended user again.
v-unsuspend-user-node-apps USER
Example:
v-unsuspend-user-node-apps alice
This function is run by the post_unsuspend_user hook: apps suspended with the user are unsuspended, the user's pm2 daemon is started and the apps that should run are started. Apps suspended on their own stay suspended.
v-unsuspend-user-ports
Unsuspend the ports of a user.
v-unsuspend-user-ports USER
Example:
v-unsuspend-user-ports alice
This function clears the suspended mark of the user's ports and opens the firewall rules of its public ports again. v-unsuspend-user runs it through the post_unsuspend_user hook.
v-update-user-backup-exclusions
Update backup exclusion list.
v-update-user-backup-exclusions USER FILE
Example:
v-update-user-backup-exclusions admin /tmp/backup_exclusions
This function for updating backup exclusion list
v-update-user-cgroup
Update user disk quota.
v-update-user-cgroup USER
Example:
v-update-user-cgroup admin
The functions updates cgroup, cpu, ram ,... for specific user
v-update-user-counters
Update user usage counters.
v-update-user-counters [USER]
Example:
v-update-user-counters admin
Function updates usage counters like U_WEB_DOMAINS, U_MAIL_ACCOUNTS, etc.
v-update-user-disk
Update user disk usage.
v-update-user-disk USER
Example:
v-update-user-disk admin
The functions recalculates disk usage and updates database.
v-update-user-npm-packages
Update the global npm packages of a user.
v-update-user-npm-packages USER VERSION
Example:
v-update-user-npm-packages alice 24.3.0
This function runs `npm update -g` as the user with the runtime VERSION.
v-update-user-package
Update user package.
v-update-user-package PACKAGE
Example:
v-update-user-package default
This function propagates package to connected users.
v-update-user-quota
Update user disk quota.
v-update-user-quota USER
Example:
v-update-user-quota alice
The functions updates disk quota for specific user
v-update-user-stats
Update user statistics.
v-update-user-stats [USER]
Example:
v-update-user-stats admin
Function logs user parameters into statistics database.
Resellers
v-add-reseller-package
Add a package owned by a reseller.
v-add-reseller-package RESELLER TMPFILE NAME
Example:
v-add-reseller-package agency /tmp/package.XXXX starter
This function adds the package RESELLER_NAME from TMPFILE (same format as v-add-user-package) for RESELLER, when POLICY_RESELLER_CREATE_PACKAGES is yes. No limit may be higher than the reseller's own limit, the shell must be one of POLICY_RESELLER_PACKAGE_SHELLS, and while users may not choose templates (POLICY_USER_EDIT_WEB_TEMPLATES, POLICY_USER_EDIT_DNS_TEMPLATES) the templates are the reseller's own.
v-add-reseller-user
Add a customer owned by a reseller.
v-add-reseller-user RESELLER USER PASSWORD EMAIL [PACKAGE] [NAME] [LASTNAME]
Example:
v-add-reseller-user agency alice 'P4$$w@rD' alice@example.com starter Alice Smith
This function creates a user owned by RESELLER. The package must be one the reseller may assign (v-list-reseller-packages) and must fit into the reseller's own plan (v-check-reseller-quota).
v-change-reseller-package
Change a package owned by a reseller.
v-change-reseller-package RESELLER TMPFILE PACKAGE
Example:
v-change-reseller-package agency /tmp/package.XXXX agency_starter
This function rewrites the limits of a package created by RESELLER from TMPFILE and applies them to the users of that package. No limit may be higher than the reseller's own limit, the shell must be one of POLICY_RESELLER_PACKAGE_SHELLS or the one the package has, and while users may not choose templates the templates are the reseller's own.
v-change-reseller-user-package
Change the package of a reseller's customer.
v-change-reseller-user-package RESELLER USER PACKAGE
Example:
v-change-reseller-user-package agency alice business
This function changes the package of a customer owned by RESELLER. The new package must be assignable by the reseller and fit into its plan after the customer's current package is taken out.
v-check-reseller-quota
Check whether a package fits into a reseller's plan.
v-check-reseller-quota RESELLER PACKAGE [USER]
Example:
v-check-reseller-quota agency starter
This function exits with 0 when a customer on PACKAGE fits into the reseller's plan. Otherwise it prints the first exceeded key (USERS, WEB_DOMAINS, ...) and exits with E_LIMIT. With USER, that customer's current package is left out (package change).
v-delete-reseller-package
Delete a package owned by a reseller.
v-delete-reseller-package RESELLER PACKAGE
Example:
v-delete-reseller-package agency agency_starter
This function deletes a package created by RESELLER, with its reseller settings, when no user has it.
v-list-reseller-packages
List the packages a reseller may assign.
v-list-reseller-packages RESELLER [FORMAT]
Example:
v-list-reseller-packages agency json
This function lists the packages RESELLER may assign to its customers: the packages named in RESELLER_PACKAGES of its own package (with "*", every package flagged RESELLER_VISIBLE) and the packages it created.
v-list-reseller-users
List the customers of a reseller.
v-list-reseller-users RESELLER [FORMAT]
Example:
v-list-reseller-users agency json
This function lists the users owned by RESELLER, with the fields of v-list-users and their OWNER.
v-list-reseller-users-stats
List the monthly statistics of a reseller's tree.
v-list-reseller-users-stats RESELLER [FORMAT]
Example:
v-list-reseller-users-stats agency json
This function sums the monthly statistics (stats.log) of a reseller and its customers, one row per month, in the columns of v-list-users-stats. A limit (DISK_QUOTA, BANDWIDTH) is unlimited when one account of the month has no limit. U_USERS counts the accounts with a row for the month.
v-update-reseller-counters
Update the usage totals of resellers.
v-update-reseller-counters RESELLER|all
Example:
v-update-reseller-counters all
This function recomputes the R_* totals of a reseller (its own usage plus its customers'). With "all" it updates every reseller and reports users whose owner no longer exists or is no longer a reseller, and package sidecars without a package.
Web domains
v-add-domain
Add web/dns/mail domain.
v-add-domain USER DOMAIN [IP] [RESTART]
Example:
v-add-domain admin example.com
This function adds web/dns/mail domain to a server.
v-add-fastcgi-cache
Enable FastCGI cache for nginx.
v-add-fastcgi-cache USER DOMAIN [DURATION] [RESTART]
Example:
v-add-fastcgi-cache user domain.tld 30m
This function enables FastCGI cache for nginx Acceptable values for duration is time in seconds (10s) minutes (10m) or days (10d) Add "yes" as last parameter to restart nginx
v-add-web-domain
Add web domain.
v-add-web-domain USER DOMAIN [IP] [RESTART] [ALIASES] [PROXY_EXTENSIONS]
Example:
v-add-web-domain admin wonderland.com 192.18.22.43 yes www.wonderland.com
This function adds virtual host to a server. In cases when ip is undefined in the script, "default" template will be used. The alias of `www.domain.tld` type will be automatically assigned to the domain unless "none" is transmitted as argument. If ip have associated dns name, this domain will also get the alias domain-tpl.$ipname. An alias with the ip name is useful during the site testing while dns isn't moved to server yet.
v-add-web-domain-alias
Add web domain alias.
v-add-web-domain-alias USER DOMAIN ALIASES [RESTART]
Example:
v-add-web-domain-alias admin acme.com www.acme.com yes
This function adds one or more aliases to a domain (it is also called "domain parking"). This function supports wildcards <*.domain.tld>.
v-add-web-domain-allow-users
Allow other users create subdomains.
v-add-web-domain-allow-users USER DOMAIN
Example:
v-add-web-domain-allow-users admin admin.com
Bypass the rule check for Enforce subdomain ownership for a specific domain. Enforce subdomain ownership setting in /edit/server/ set to no will always overwrite this behaviour eg: admin adds admin.com user can create user.admin.com
v-add-web-domain-app
No description in the command header.
v-add-web-domain-app
v-add-web-domain-backend
Add web domain backend.
v-add-web-domain-backend USER DOMAIN [TEMPLATE] [RESTART]
Example:
v-add-web-domain-backend admin example.com default yes
This function is used to add the web backend configuration.
v-add-web-domain-ftp
Add ftp account for web domain.
v-add-web-domain-ftp USER DOMAIN FTP_USER FTP_PASSWORD [FTP_PATH]
Example:
v-add-web-domain-ftp alice wonderland.com alice_ftp p4$$vvOrD
This function creates additional ftp account for web domain.
v-add-web-domain-httpauth
Add password protection for web domain.
v-add-web-domain-httpauth USER DOMAIN AUTH_USER AUTH_PASSWORD [RESTART]
Example:
v-add-web-domain-httpauth admin acme.com user02 super_pass
This function is used for securing web domain with http auth
v-add-web-domain-proxy
Add webdomain proxy support.
v-add-web-domain-proxy USER DOMAIN [TEMPLATE] [EXTENSIONS] [RESTART]
Example:
v-add-web-domain-proxy admin example.com
This function enables proxy support for a domain. This can significantly improve website speed.
v-add-web-domain-redirect
Adding force redirect to domain.
v-add-web-domain-redirect USER DOMAIN REDIRECT HTTPCODE [RESTART]
Examples:
v-add-web-domain-redirect user domain.tld domain.tld
v-add-web-domain-redirect user domain.tld www.domain.tld
v-add-web-domain-redirect user domain.tld shop.domain.tld
v-add-web-domain-redirect user domain.tld different-domain.com
v-add-web-domain-redirect user domain.tld shop.different-domain.com
v-add-web-domain-redirect user domain.tld different-domain.com 302
Function creates a forced redirect to a domain
v-add-web-domain-ssl
Adding ssl for domain.
v-add-web-domain-ssl USER DOMAIN SSL_DIR [SSL_HOME] [RESTART]
Example:
v-add-web-domain-ssl admin example.com /tmp/folder/contains/certificate/files/
This function turns on SSL support for a domain. Parameter ssl_dir is a path to directory where 2 or 3 ssl files can be found. Certificate file domain.tld.crt and its key domain.tld.key are mandatory. Certificate authority domain.tld.ca file is optional. If home directory parameter (ssl_home) is not set, https domain uses public_shtml as separate documentroot directory.
v-add-web-domain-ssl-force
Adding force SSL for a domain.
v-add-web-domain-ssl-force USER DOMAIN [RESTART] [QUIET]
Example:
v-add-web-domain-ssl-force admin acme.com
This function forces SSL for the requested domain.
v-add-web-domain-ssl-hsts
Adding hsts to a domain.
v-add-web-domain-ssl-hsts USER DOMAIN [RESTART] [QUIET]
This function enables HSTS for the requested domain.
v-add-web-domain-ssl-preset
Adding force SSL for a domain.
v-add-web-domain-ssl-preset USER DOMAIN [SSL]
Example:
v-add-web-domain-ssl-preset
Up on creating an web domain set the SSL Force values due to the delay of LE due to DNS propergation over DNS cluster When LE has been activated it will set the actions
v-add-web-domain-stats
Add log analyser to generate domain statistics.
v-add-web-domain-stats USER DOMAIN TYPE
Example:
v-add-web-domain-stats admin example.com awstats
This function is used for enabling log analyser system to a domain. For viewing the domain statistics use <http://domain.tld/vstats/> link. Access this page is not protected by default. If you want to secure it with passwords you should use v-add-web-domain_stat_auth script.
v-add-web-domain-stats-user
Add password protection to web domain statistics.
v-add-web-domain-stats-user USER DOMAIN STATS_USER STATS_PASSWORD [RESTART]
Example:
v-add-web-domain-stats-user admin example.com watchdog your_password
This function is used for securing the web statistics page.
v-add-web-php
Add php fpm version.
v-add-web-php VERSION
Example:
v-add-web-php 8.0
Install php-fpm for provided version. The version must be listed as installable in the version catalog (install/common/php/versions.conf) and provided by the PHP repository of the server.
v-change-domain-owner
Change domain owner.
v-change-domain-owner DOMAIN USER
Example:
v-change-domain-owner www.example.com bob
This function of changing domain ownership.
v-change-web-domain-backend-tpl
Change web domain backend template.
v-change-web-domain-backend-tpl USER DOMAIN TEMPLATE [RESTART]
Example:
v-change-web-domain-backend-tpl admin acme.com PHP-7_4
This function changes backend template
v-change-web-domain-dirlist
Enable/disable directory listing.
v-change-web-domain-dirlist USER DOMAIN MODE
Example:
v-change-web-domain-dirlist user demo.com on
This function is used for changing the directory list mode.
v-change-web-domain-docroot
Changes the document root for an existing web domain.
v-change-web-domain-docroot USER DOMAIN TARGET_DOMAIN [DIRECTORY] [PHP]
Examples:
v-change-web-domain-docroot admin domain.tld otherdomain.tld
v-change-web-domain-docroot admin test.local default
# add custom docroot # points domain.tld to otherdomain.tld's document root.
# remove custom docroot # returns document root to default value for domain.
This call changes the document root of a chosen web domain to another available domain under the user context.
v-change-web-domain-ftp-password
Change ftp user password.
v-change-web-domain-ftp-password USER DOMAIN FTP_USER FTP_PASSWORD
Example:
v-change-web-domain-ftp-password admin example.com ftp_usr ftp_qwerty
This function changes ftp user password.
v-change-web-domain-ftp-path
Change path for ftp user.
v-change-web-domain-ftp-path USER DOMAIN FTP_USER FTP_PATH
Example:
v-change-web-domain-ftp-path admin example.com /home/admin/example.com
This function changes ftp user path.
v-change-web-domain-httpauth
Change password for http auth user.
v-change-web-domain-httpauth USER DOMAIN AUTH_USER AUTH_PASSWORD [RESTART]
Example:
v-change-web-domain-httpauth admin acme.com alice white_rA$$bIt
This function is used for changing http auth user password
v-change-web-domain-ip
Change web domain ip.
v-change-web-domain-ip USER DOMAIN DOMAIN [RESTART]
Example:
v-change-web-domain-ip admin example.com 167.86.105.230 yes
This function is used for changing domain ip
v-change-web-domain-name
Change web domain name.
v-change-web-domain-name USER DOMAIN NEW_DOMAIN [RESTART]
Example:
v-change-web-domain-name alice wonderland.com lookinglass.com yes
This function is used for changing the domain name.
v-change-web-domain-php
Change the PHP version and PHP-FPM profile of a web domain.
v-change-web-domain-php USER DOMAIN VERSION PROFILE [RESTART]
Example:
v-change-web-domain-php alice example.com 8.4 medium
This function sets the PHP version and the PHP-FPM profile of a web domain's pool. Both must be allowed by the user's package (PHP_VERSIONS and PHP_PROFILES) unless the domain already has them: a version or profile that the package no longer allows is kept but cannot be chosen again. A new version changes the backend template to PHP-X_Y; the pool is written with the profile. With WEB_BACKEND_POOL='user' the profile is the one of the user's shared pool.
v-change-web-domain-proxy-tpl
Change web domain proxy template.
v-change-web-domain-proxy-tpl USER DOMAIN TEMPLATE [EXTENSIONS] [RESTART]
Example:
v-change-web-domain-proxy-tpl admin domain.tld hosting
This function changes proxy template
v-change-web-domain-sslcert
Change domain ssl certificate.
v-change-web-domain-sslcert USER DOMAIN SSL_DIR [RESTART]
Example:
v-change-web-domain-sslcert admin example.com /home/admin/tmp
This function changes SSL domain certificate and the key. If ca file present it will be replaced as well. The previous certificate is handed to the user in a folder below private/, copied there by the user.
v-change-web-domain-sslhome
Changing domain ssl home.
v-change-web-domain-sslhome USER DOMAIN SSL_HOME [RESTART]
Examples:
v-change-web-domain-sslhome admin acme.com single
v-change-web-domain-sslhome admin acme.com same
This function changes SSL home directory. Single will separate the both public_html / public_shtml. Same will always point to public_shtml
v-change-web-domain-stats
Change web domain statistics.
v-change-web-domain-stats USER DOMAIN TYPE
Example:
v-change-web-domain-stats admin example.com awstats
This function of deleting site's system of statistics. Its type is automatically chooses from client's configuration file.
v-change-web-domain-tpl
Change web domain template.
v-change-web-domain-tpl USER DOMAIN TEMPLATE [RESTART]
Example:
v-change-web-domain-tpl admin acme.com opencart
This function changes template of the web configuration file. The content of webdomain directories remains untouched.
v-change-web-domain-tpl-vars
Change the template variables of a web domain.
v-change-web-domain-tpl-vars USER DOMAIN KEY=VALUE [KEY=VALUE...]
Examples:
v-change-web-domain-tpl-vars alice example.com BACKEND_PORT=auto
v-change-web-domain-tpl-vars alice example.com BACKEND_PORT=30001
This function sets variables declared by the metadata of the domain's client-facing template (the proxy template on NGINX + Apache, the web template on NGINX + PHP-FPM) and rebuilds the domain. A port variable must be a port of the domain owner's pool: an unassigned port (or "auto" for the lowest free one) is assigned to web:<domain>; a port already assigned to web:<domain>, node:<domain>, app:<domain>, docker:<app> or manual is used as it is. When NGINX refuses the result, the previous values are restored.
v-delete-domain
Delete web/dns/mail domain.
v-delete-domain USER DOMAIN
Example:
v-delete-domain admin domain.tld
This function deletes web/dns/mail domain.
v-delete-fastcgi-cache
Disable FastCGI cache for nginx.
v-delete-fastcgi-cache USER DOMAIN [RESTART]
Example:
v-delete-fastcgi-cache user domain.tld
This function disables FastCGI cache for nginx
v-delete-web-domain
Delete web domain.
v-delete-web-domain USER DOMAIN [RESTART]
Example:
v-delete-web-domain admin wonderland.com
The call of function leads to the removal of domain and all its components (statistics, folders contents, ssl certificates, etc.). This operation is not fully supported by "undo" function, so the data recovery is possible only with a help of reserve copy.
v-delete-web-domain-alias
Delete web domain alias.
v-delete-web-domain-alias USER DOMAIN ALIAS [RESTART]
Example:
v-delete-web-domain-alias admin example.com www.example.com
This function of deleting the alias domain (parked domain). By this call default www alias can be removed as well.
v-delete-web-domain-allow-users
Disables other users create subdomains.
v-delete-web-domain-allow-users USER DOMAIN
Example:
v-delete-web-domain-allow-users admin admin.com
Enable the rule check for Enforce subdomain ownership for a specific domain. Enforce subdomain ownership setting in /edit/server/ set to no will always overwrite this behaviour eg: admin adds admin.com user can create user.admin.com
v-delete-web-domain-backend
Deleting web domain backend configuration.
v-delete-web-domain-backend USER DOMAIN [RESTART]
Example:
v-delete-web-domain-backend admin acme.com
This function of deleting the virtualhost backend configuration.
v-delete-web-domain-ftp
Delete webdomain ftp account.
v-delete-web-domain-ftp USER DOMAIN FTP_USER
Example:
v-delete-web-domain-ftp admin wonderland.com bob_ftp
This function deletes additional ftp account.
v-delete-web-domain-httpauth
Delete http auth user.
v-delete-web-domain-httpauth USER DOMAIN AUTH_USER [RESTART]
Example:
v-delete-web-domain-httpauth admin example.com alice
This function is used for deleting http auth user
v-delete-web-domain-proxy
Deleting web domain proxy configuration.
v-delete-web-domain-proxy USER DOMAIN [RESTART]
Example:
v-delete-web-domain-proxy alice lookinglass.com
This function of deleting the virtualhost proxy configuration.
v-delete-web-domain-redirect
Delete force redirect to domain.
v-delete-web-domain-redirect USER DOMAIN [RESTART]
Example:
v-add-web-domain-redirect user domain.tld
Function delete a forced redirect to a domain
v-delete-web-domain-ssl
Delete web domain SSL support.
v-delete-web-domain-ssl USER DOMAIN [RESTART]
Example:
v-delete-web-domain-ssl admin acme.com
This function disable https support and deletes SSL certificates.
v-delete-web-domain-ssl-force
Remove ssl force from domain.
v-delete-web-domain-ssl-force USER DOMAIN [RESTART] [QUIET]
Example:
v-delete-web-domain-ssl-force admin domain.tld
This function removes force SSL configurations.
v-delete-web-domain-ssl-hsts
Remove ssl force from domain.
v-delete-web-domain-ssl-hsts USER DOMAIN [RESTART] [QUIET]
Example:
v-delete-web-domain-ssl-hsts user domain.tld
This function removes force SSL configurations.
v-delete-web-domain-stats
Delete web domain statistics.
v-delete-web-domain-stats USER DOMAIN
Example:
v-delete-web-domain-stats user02 h1.example.com
This function of deleting site's system of statistics. Its type is automatically chooses from client's configuration file.
v-delete-web-domain-stats-user
Disable web domain stats authentication support.
v-delete-web-domain-stats-user USER DOMAIN [RESTART]
Example:
v-delete-web-domain-stats-user admin acme.com
This function removes authentication of statistics system. If the script is called without naming a certain user, all users will be removed. After deleting all of them statistics will be accessible for view without an authentication.
v-delete-web-domain-tpl-vars
Delete the template variables of a web domain.
v-delete-web-domain-tpl-vars USER DOMAIN
Example:
v-delete-web-domain-tpl-vars alice example.com
This function releases the ports assigned to web:<domain>, removes the domain's variables and rebuilds the domain. It also cleans up after a deleted domain: a missing domain or variables file is not an error.
v-delete-web-domains
Delete web domains.
v-delete-web-domains USER [RESTART]
Example:
v-delete-web-domains admin
This function deletes all user's webdomains.
v-delete-web-php
Delete php fpm version.
v-delete-web-php VERSION
Example:
v-delete-web-php 7.3
This function removes an installed PHP-FPM version with its extension packages. It refuses the default version and a version that web domains use.
v-dump-site
Dumps the files of a site into a zip archive.
v-dump-site USER DOMAIN [TYPE]
Examples:
v-dump-site user domain
v-dump-site user domain full
Dumps site files in /backup/user.domain.timestamp.zip
v-list-quick-install-app-options
No description in the command header.
v-list-quick-install-app-options
v-list-quick-install-apps
No description in the command header.
v-list-quick-install-apps
v-list-web-domain
List web domain parameters.
v-list-web-domain USER DOMAIN [FORMAT]
Example:
v-list-web-domain admin example.com
This function to obtain web domain parameters.
v-list-web-domain-accesslog
List web domain access log.
v-list-web-domain-accesslog USER DOMAIN [LINES] [FORMAT]
Example:
v-list-web-domain-accesslog admin example.com
This function of obtaining raw access web domain logs.
v-list-web-domain-errorlog
List web domain error log.
v-list-web-domain-errorlog USER DOMAIN [LINES] [FORMAT]
Example:
v-list-web-domain-errorlog admin acme.com
This function of obtaining raw error web domain logs.
v-list-web-domain-php
List the PHP settings of a web domain.
v-list-web-domain-php USER DOMAIN [FORMAT]
Example:
v-list-web-domain-php alice example.com json
This function lists the PHP version and PHP-FPM profile of a web domain: VERSION (empty for no-php), BACKEND, PROFILE, PROFILE_APPLIED (no when the backend template has no %php_profile% line), VERSION_ALLOWED and PROFILE_ALLOWED (no when the package no longer allows the domain's value), ALLOWED (both), the VERSIONS (installed, with STATUS and EOL) and PROFILES the package allows, DEFAULT_PROFILE, and EFFECTIVE: the values of the PHP limits with their SOURCE (php.ini of the version, or the profile).
v-list-web-domain-ssl
List web domain ssl certificate.
v-list-web-domain-ssl USER DOMAIN [FORMAT]
Example:
v-list-web-domain-ssl admin wonderland.com
This function of obtaining domain ssl files.
v-list-web-domain-tpl-vars
List the template variables of a web domain.
v-list-web-domain-tpl-vars USER DOMAIN [FORMAT]
Example:
v-list-web-domain-tpl-vars alice example.com json
This function lists the variables stored for a web domain, the client-facing template they belong to (ACTIVE_KIND, ACTIVE_TEMPLATE), the variables that template declares and the required ones without a value (MISSING).
v-list-web-domains
List web domains.
v-list-web-domains USER [FORMAT]
Example:
v-list-web-domains alice
This function to obtain the list of all user web domains.
v-list-web-stats
List web statistics.
v-list-web-stats [FORMAT]
Example:
v-list-web-stats
labels: web panel
This function for obtaining the list of web statistics analyzer.
v-list-web-templates
List web templates.
v-list-web-templates [FORMAT]
Example:
v-list-web-templates
This function for obtaining the list of web templates available to a user.
v-list-web-templates-backend
Listing backend templates.
v-list-web-templates-backend [FORMAT]
Example:
v-list-web-templates-backend
This function for obtaining the list of available backend templates.
v-list-web-templates-meta
List web templates with their metadata.
v-list-web-templates-meta [KIND] [FORMAT]
Example:
v-list-web-templates-meta proxy json
This function lists the templates of KIND (web, proxy or backend) that exist on this server, from the same folders as v-list-web-templates, v-list-web-templates-proxy and v-list-web-templates-backend, with the title, description, category, runtime and variables of their metadata file. A template without metadata is listed with its name as title and HAS_META='no'.
v-list-web-templates-proxy
Listing proxy templates.
v-list-web-templates-proxy [FORMAT]
Example:
v-list-web-templates-proxy
This function for obtaining the list of proxy templates available to a user.
v-purge-nginx-cache
Purge nginx cache.
v-purge-nginx-cache USER DOMAIN
Example:
v-purge-nginx-cache user domain.tld
This function purges nginx cache.
v-rebuild-web-domain
Rebuild web domain.
v-rebuild-web-domain USER DOMAIN [RESTART]
Example:
v-rebuild-web-domain user domain.tld
This function rebuilds web configuration files.
v-rebuild-web-domains
Rebuild web domains.
v-rebuild-web-domains USER [RESTART]
Example:
v-rebuild-web-domains
This function rebuilds web configuration files.
v-restart-proxy
Restart proxy server.
v-restart-proxy NONE
Example:
v-restart-proxy [RESTART]
This function reloads proxy server configuration.
v-restart-web
Restart web server.
v-restart-web [RESTARRT]
Example:
v-restart-web
This function reloads web server configuration.
v-restart-web-backend
Restart php interpreter.
v-restart-web-backend NONE
Example:
v-restart-web-backend
This function reloads php interpreter configuration.
v-search-domain-owner
Search domain owner.
v-search-domain-owner DOMAIN [TYPE]
Example:
v-search-domain-owner acme.com
This function that allows to find user objects.
v-suspend-domain
Suspend web/dns/mail domain.
v-suspend-domain USER DOMAIN
Example:
v-suspend-domain admin example.com
This function suspends web/dns/mail domain.
v-suspend-web-domain
Suspend web domain.
v-suspend-web-domain USER DOMAIN [RESTART]
Example:
v-suspend-web-domain admin example.com yes
This function for suspending the site's operation. After blocking it all visitors will be redirected to a web page explaining the reason of suspend. By blocking the site the content of all its directories remains untouched.
v-suspend-web-domains
Suspend web domains.
v-suspend-web-domains USER [RESTART]
Example:
v-suspend-web-domains bob
This function of suspending all user's sites.
v-unsuspend-domain
Unsuspend web/dns/mail domain.
v-unsuspend-domain USER DOMAIN
Example:
v-unsuspend-domain admin acme.com
This function unsuspends web/dns/mail domain.
v-unsuspend-web-domain
Unsuspend web domain.
v-unsuspend-web-domain USER DOMAIN [RESTART]
Example:
v-unsuspend-web-domain admin acme.com
This function of unsuspending the domain.
v-unsuspend-web-domains
Unsuspend web domains.
v-unsuspend-web-domains USER [RESTART]
Example:
v-unsuspend-web-domains admin
This function of unsuspending all user's sites.
v-update-web-domain-disk
Update disk usage for domain.
v-update-web-domain-disk USER DOMAIN
Example:
v-update-web-domain-disk alice wonderland.com
This function recalculates disk usage for specific webdomain.
v-update-web-domain-ssl
Updating ssl certificate for domain.
v-update-web-domain-ssl USER DOMAIN SSL_DIR [RESTART]
Example:
v-update-web-domain-ssl admin domain.com /home/admin/tmp
This function updates the SSL certificate for a domain. Parameter ssl_dir is a path to directory where 2 or 3 ssl files can be found. Certificate file domain.tld.crt and its key domain.tld.key are mandatory. Certificate authority domain.tld.ca file is optional.
v-update-web-domain-stat
Update domain statistics.
v-update-web-domain-stat USER DOMAIN
Example:
v-update-web-domain-stat alice acme.com
This function runs log analyser for specific webdomain.
v-update-web-domain-traff
Update domain bandwidth usage.
v-update-web-domain-traff USER DOMAIN
Example:
v-update-web-domain-traff admin example.com
This function recalculates bandwidth usage for specific domain.
v-update-web-domains-disk
Update domains disk usage.
v-update-web-domains-disk USER
Example:
v-update-web-domains-disk alice
This function recalculates disk usage for all user webdomains.
v-update-web-domains-stat
Update domains statistics.
v-update-web-domains-stat USER
Example:
v-update-web-domains-stat admin
This function runs log analyser usage for all user webdomains.
v-update-web-domains-traff
Update domains bandwidth usage.
v-update-web-domains-traff USER
Example:
v-update-web-domains-traff bob
This function recalculates bandwidth usage for all user webdomains.
v-update-web-templates
Update web templates.
v-update-web-templates [RESTART] [SKIP]
Example:
v-update-web-templates
This function for obtaining updated web (Nginx/Apache2/PHP) templates from the ArcPanel package.
SSL certificates
v-add-letsencrypt-domain
Check letsencrypt domain.
v-add-letsencrypt-domain USER DOMAIN [ALIASES] [MAIL] [KEY_ALGO]
Examples:
v-add-letsencrypt-domain admin wonderland.com www.wonderland.com,demo.wonderland.com
v-add-letsencrypt-domain admin wonderland.com '' yes
This function check and validates domain with Let's Encrypt
v-add-letsencrypt-host
Add letsencrypt for host and backend.
v-add-letsencrypt-host NONE
Example:
v-add-letsencrypt-host
This function check and validates the backend certificate and generate a new let's encrypt certificate.
v-add-letsencrypt-user
Register letsencrypt user account.
v-add-letsencrypt-user USER
Example:
v-add-letsencrypt-user bob
This function creates and register LetsEncrypt account
v-delete-letsencrypt-domain
Deleting letsencrypt ssl certificate for domain.
v-delete-letsencrypt-domain USER DOMAIN [RESTART] [MAIL]
Example:
v-delete-letsencrypt-domain admin acme.com yes
This function turns off letsencrypt SSL support for a domain.
v-generate-ssl-cert
Generate self signed certificate and CSR request.
v-generate-ssl-cert DOMAIN EMAIL COUNTRY STATE CITY ORG UNIT [ALIASES] [FORMAT] [KEY_ALGO]
Example:
v-generate-ssl-cert example.com mail@yahoo.com USA California Monterey ACME.COM IT
This function generates self signed SSL certificate and CSR request
v-list-letsencrypt-user
List letsencrypt key.
v-list-letsencrypt-user USER [FORMAT]
Example:
v-list-letsencrypt-user admin
This function for obtaining the letsencrypt key thumbprint
v-schedule-letsencrypt-domain
Queue a Let's Encrypt certificate for a web or mail domain.
v-schedule-letsencrypt-domain USER DOMAIN [ALIASES] [KEY_ALGO] [MAIL] [FORMAT]
Examples:
v-schedule-letsencrypt-domain admin example.com www.example.com ecdsa-256
v-schedule-letsencrypt-domain admin example.com '' ecdsa-256 yes
This function queues a Let's Encrypt certificate: the letsencrypt queue, run by cron every five minutes, issues it with v-add-letsencrypt-domain. ALIASES defaults to the aliases of the web domain, KEY_ALGO (rsa, ecdsa-256, ecdsa-384) to its current key type. MAIL=yes queues the certificate of the mail domain (no aliases) and leaves a queued web certificate of the same domain in place.
v-update-letsencrypt-ssl
Update letsencrypt ssl certificates.
v-update-letsencrypt-ssl NONE
Example:
v-update-letsencrypt-ssl
This function for renew letsencrypt expired ssl certificate for all users
DNS and DNS clusters
v-add-dns-domain
Add dns domain.
v-add-dns-domain USER DOMAIN IP [NS1] [NS2] [NS3] [NS4] [NS5] [NS6] [NS7] [NS8] [RESTART]
Example:
v-add-dns-domain admin example.com ns1.example.com ns2.example.com '' '' '' '' '' '' yes
This function adds DNS zone with records defined in the template. If the exp argument isn't stated, the expiration date value will be set to next year. The soa argument is responsible for the relevant record. By default the first user's NS server is used. TTL is set as common for the zone and for all of its records with a default value of 14400 seconds.
v-add-dns-on-web-alias
Add dns domain or dns record after web domain alias.
v-add-dns-on-web-alias USER ALIAS IP [RESTART]
Example:
v-add-dns-on-web-alias admin www.example.com 8.8.8.8
This function adds dns domain or dns record based on web domain alias.
v-add-dns-record
Add dns record.
v-add-dns-record USER DOMAIN RECORD TYPE VALUE [PRIORITY] [ID] [RESTART] [TTL]
Example:
v-add-dns-record admin acme.com www A 162.227.73.112
This function is used to add a new DNS record. Complex records of TXT, MX and SRV types can be used by a filling in the 'value' argument. This function also gets an ID parameter for definition of certain record identifiers or for the regulation of records.
v-add-remote-dns-domain
Add remote dns domain.
v-add-remote-dns-domain USER DOMAIN [FLUSH]
Example:
v-add-remote-dns-domain admin mydomain.tld yes
This function synchronise dns domain with the remote server.
v-add-remote-dns-host
Add new remote dns host.
v-add-remote-dns-host HOST PORT USER PASSWORD [TYPE] [DNS_USER]
Examples:
v-add-remote-dns-host slave.your_host.com 8083 admin your_passw0rd
v-add-remote-dns-host slave.your_host.com 8083 api_key ''
This function adds remote dns server to the dns cluster. As alternative api_key generated on the slave server. See v-generate-api-key can be used to connect the remote dns server
v-add-remote-dns-record
Add remote dns domain record.
v-add-remote-dns-record USER DOMAIN ID
Example:
v-add-remote-dns-record bob acme.com 23
This function synchronise dns domain with the remote server.
v-change-dns-domain-dnssec
Change dns domain dnssec status.
v-change-dns-domain-dnssec USER DOMAIN STATUS
Example:
v-change-dns-domain-dnssec admin domain.pp.ua yes
v-change-dns-domain-exp
Change dns domain expiration date.
v-change-dns-domain-exp USER DOMAIN EXP
Example:
v-change-dns-domain-exp admin domain.pp.ua 2020-11-20
This function of changing the term of expiration domain's registration. The serial number will be refreshed automatically during update.
v-change-dns-domain-ip
Change dns domain ip address.
v-change-dns-domain-ip USER DOMAIN IP [RESTART]
Example:
v-change-dns-domain-ip admin domain.com 123.212.111.222
This function for changing the main ip of DNS zone.
v-change-dns-domain-soa
Change dns domain soa record.
v-change-dns-domain-soa USER DOMAIN SOA [RESTART]
Example:
v-change-dns-domain-soa admin acme.com d.ns.domain.tld
This function for changing SOA record. This type of records can not be modified by v-change-dns-record call.
v-change-dns-domain-tpl
Change dns domain template.
v-change-dns-domain-tpl USER DOMAIN TEMPLATE [RESTART]
Example:
v-change-dns-domain-tpl admin example.com child-ns yes
This function for changing the template of records. By updating old records will be removed and new records will be generated in accordance with parameters of new template.
v-change-dns-domain-ttl
Change dns domain ttl.
v-change-dns-domain-ttl USER DOMAIN TTL [RESTART]
Example:
v-change-dns-domain-ttl alice example.com 14400
This function for changing the time to live TTL parameter for all records.
v-change-dns-record
Change dns domain record.
v-change-dns-record USER DOMAIN ID RECORD TYPE VALUE [PRIORITY] [RESTART] [TTL]
Example:
v-change-dns-record admin domain.ua 42 192.18.22.43
This function for changing DNS record.
v-change-dns-record-id
Change dns domain record id.
v-change-dns-record-id USER DOMAIN ID NEWID [RESTART]
Example:
v-change-dns-record-id admin acme.com 24 42 yes
This function for changing internal record id.
v-change-remote-dns-domain-exp
Change remote dns domain expiration date.
v-change-remote-dns-domain-exp USER DOMAIN
This function synchronise dns domain with the remote server.
v-change-remote-dns-domain-soa
Change remote dns domain SOA.
v-change-remote-dns-domain-soa USER DOMAIN
Example:
v-change-remote-dns-domain-soa admin example.org.uk
This function synchronise dns domain with the remote server.
v-change-remote-dns-domain-ttl
Change remote dns domain TTL.
v-change-remote-dns-domain-ttl USER DOMAIN
Example:
v-change-remote-dns-domain-ttl admin domain.tld
This function synchronise dns domain with the remote server.
v-delete-dns-domain
Delete dns domain.
v-delete-dns-domain USER DOMAIN
Example:
v-delete-dns-domain alice acme.com
This function for deleting DNS domain. By deleting it all records will also be deleted.
v-delete-dns-domains
Delete dns domains.
v-delete-dns-domains USER [RESTART]
Example:
v-delete-dns-domains bob
This function for deleting all users DNS domains.
v-delete-dns-domains-src
Delete dns domains based on SRC field.
v-delete-dns-domains-src USER SRC [RESTART]
Example:
v-delete-dns-domains-src admin '' yes
This function for deleting DNS domains related to a certain host.
v-delete-dns-on-web-alias
Delete dns domain or dns record based on web domain alias.
v-delete-dns-on-web-alias USER DOMAIN ALIAS [RESTART]
Example:
v-delete-dns-on-web-alias admin example.com www.example.com
This function deletes dns domain or dns record based on web domain alias.
v-delete-dns-record
Delete dns record.
v-delete-dns-record USER DOMAIN ID [RESTART]
Example:
v-delete-dns-record bob acme.com 42 yes
This function for deleting a certain record of DNS zone.
v-delete-remote-dns-domain
Delete remote dns domain.
v-delete-remote-dns-domain USER DOMAIN
Example:
v-delete-remote-dns-domain admin example.tld
This function synchronise dns with the remote server.
v-delete-remote-dns-domains
Delete remote dns domains.
v-delete-remote-dns-domains [HOST]
This function deletes remote dns domains.
v-delete-remote-dns-host
Delete remote dns host.
v-delete-remote-dns-host HOST
Example:
v-delete-remote-dns-host example.org
This function for deleting the remote dns host from arcpanel configuration.
v-delete-remote-dns-record
Delete remote dns domain record.
v-delete-remote-dns-record USER DOMAIN ID
Example:
v-delete-remote-dns-record user07 acme.com 44
This function synchronise dns with the remote server.
v-get-dns-domain-value
Get dns domain value.
v-get-dns-domain-value USER DOMAIN KEY
Example:
v-get-dns-domain-value admin example.com SOA
This function for getting a certain DNS domain parameter.
v-insert-dns-domain
Insert dns domain.
v-insert-dns-domain USER DATA [SRC] [FLUSH] #
This function inserts raw record to the dns.conf
v-insert-dns-record
Insert dns record.
v-insert-dns-record USER DOMAIN DATA
This function inserts raw dns record to the domain conf
v-insert-dns-records
Inserts dns records.
v-insert-dns-records USER DOMAIN DATA_FILE
This function copy dns record to the domain conf
v-list-dns-domain
List dns domain.
v-list-dns-domain USER DOMAIN [FORMAT]
Example:
v-list-dns-domain alice wonderland.com
This function of obtaining the list of dns domain parameters.
v-list-dns-domains
List dns domains.
v-list-dns-domains USER [FORMAT]
Example:
v-list-dns-domains admin
This function for obtaining all DNS domains of a user.
v-list-dns-records
List dns domain records.
v-list-dns-records USER DOMAIN [FORMAT]
Example:
v-list-dns-records admin example.com
This function for getting all DNS domain records.
v-list-dns-template
List dns template.
v-list-dns-template TEMPLATE [FORMAT]
Example:
v-list-dns-template zoho
This function for obtaining the DNS template parameters.
v-list-dns-templates
List dns templates.
v-list-dns-templates [FORMAT]
Example:
v-list-dns-templates json
This function for obtaining the list of all DNS templates available.
v-list-dnssec-public-key
List public dnssec key.
v-list-dnssec-public-key USER DOMAIN [FORMAT]
Example:
v-list-dnssec-public-key admin acme.com
This function list the public key to be used with DNSSEC and needs to be added to the domain register.
v-list-remote-dns-hosts
List remote dns host.
v-list-remote-dns-hosts [FORMAT]
Example:
v-list-remote-dns-hosts json
This function for obtaining the list of remote dns host.
v-rebuild-dns-domain
Rebuild dns domain.
v-rebuild-dns-domain USER DOMAIN [RESTART] [UPDATE_SERIAL]
Example:
v-rebuild-dns-domain alice wonderland.com
This function rebuilds DNS configuration files.
v-rebuild-dns-domains
Rebuild dns domains.
v-rebuild-dns-domains USER [RESTART] [UPDATE_SERIAL]
Example:
v-rebuild-dns-domains alice
This function rebuilds DNS configuration files.
v-restart-dns
Restart dns service.
v-restart-dns NONE
Example:
v-restart-dns
This function tells BIND service to reload dns zone files.
v-suspend-dns-domain
Suspend dns domain.
v-suspend-dns-domain USER DOMAIN [RESTART]
Example:
v-suspend-dns-domain alice acme.com
This function suspends a certain user's domain.
v-suspend-dns-domains
Suspend dns domains.
v-suspend-dns-domains USER [RESTART]
Example:
v-suspend-dns-domains admin yes
This function suspends all user's DNS domains.
v-suspend-dns-record
Suspend dns domain record.
v-suspend-dns-record USER DOMAIN ID [RESTART]
Example:
v-suspend-dns-record alice wonderland.com 42 yes
This function suspends a certain domain record.
v-suspend-remote-dns-host
Suspend remote dns server.
v-suspend-remote-dns-host HOST
Example:
v-suspend-remote-dns-host hostname.tld
This function for suspending remote dns server.
v-sync-dns-cluster
Synchronize dns domains.
v-sync-dns-cluster HOST
This function synchronise all dns domains.
v-unsuspend-dns-domain
Unsuspend dns domain.
v-unsuspend-dns-domain USER DOMAIN
Example:
v-unsuspend-dns-domain alice wonderland.com
This function unsuspends a certain user's domain.
v-unsuspend-dns-domains
Unsuspend dns domains.
v-unsuspend-dns-domains USER [RESTART]
Example:
v-unsuspend-dns-domains alice
This function unsuspends all user's DNS domains.
v-unsuspend-dns-record
Unsuspend dns domain record.
v-unsuspend-dns-record USER DOMAIN ID [RESTART]
Example:
v-unsuspend-dns-record admin example.com 33
This function unsuspends a certain domain record.
v-unsuspend-remote-dns-host
Unsuspend remote dns server.
v-unsuspend-remote-dns-host HOST
Example:
v-unsuspend-remote-dns-host hosname.com
This function for unsuspending remote dns server.
v-update-dns-templates
Update dns templates.
v-update-dns-templates [RESTART]
Example:
v-update-dns-templates
This function for obtaining updated dns templates from ArcPanel package.
v-add-mail-account
Add mail domain account.
v-add-mail-account USER DOMAIN ACCOUNT PASSWORD [QUOTA]
Example:
v-add-mail-account user example.com john P4$$vvOrD
This function add new email account.
v-add-mail-account-alias
Add mail account alias aka nickname.
v-add-mail-account-alias USER DOMAIN ACCOUNT ALIAS
Example:
v-add-mail-account-alias admin acme.com alice alicia
This function add new email alias.
v-add-mail-account-autoreply
Add mail account autoreply message.
v-add-mail-account-autoreply USER DOMAIN ACCOUNT MESSAGE
Example:
v-add-mail-account-autoreply admin example.com user Hello from e-mail!
This function add new email account.
v-add-mail-account-forward
Add mail account forward address.
v-add-mail-account-forward USER DOMAIN ACCOUNT FORWARD
Example:
v-add-mail-account-forward admin acme.com alice bob
This function add new email account.
v-add-mail-account-fwd-only
Add mail account forward-only flag.
v-add-mail-account-fwd-only USER DOMAIN ACCOUNT
Example:
v-add-mail-account-fwd-only admin example.com user
This function adds fwd-only flag
v-add-mail-account-sso
Start a webmail sign-on for a mail account.
v-add-mail-account-sso USER DOMAIN ACCOUNT ACTOR CLIENT_IP
Example:
v-add-mail-account-sso admin example.com info admin 203.0.113.5
This function prints a ticket that signs the browser at CLIENT_IP into Roundcube as ACCOUNT@DOMAIN without the account password: valid for 60 seconds and once. ACTOR is the panel user who asked for it; the sign-on is written to the action log of USER.
v-add-mail-domain
Add mail domain.
v-add-mail-domain USER DOMAIN [ANTISPAM] [ANTIVIRUS] [DKIM] [DKIM_SIZE] [RESTART] [REJECT_SPAM]
Example:
v-add-mail-domain admin mydomain.tld
This function adds MAIL domain.
v-add-mail-domain-antispam
Add mail domain antispam support.
v-add-mail-domain-antispam USER DOMAIN
Example:
v-add-mail-domain-antispam admin mydomain.tld
This function enables spamassasin for incoming emails.
v-add-mail-domain-antivirus
Add mail domain antivirus support.
v-add-mail-domain-antivirus USER DOMAIN
Example:
v-add-mail-domain-antivirus admin mydomain.tld
This function enables clamav scan for incoming emails.
v-add-mail-domain-catchall
Add mail domain catchall account.
v-add-mail-domain-catchall USER DOMAIN EMAIL
Example:
v-add-mail-domain-catchall admin example.com master@example.com
This function enables catchall account for incoming emails.
v-add-mail-domain-dkim
Add mail domain dkim support.
v-add-mail-domain-dkim USER DOMAIN [DKIM_SIZE]
Example:
v-add-mail-domain-dkim admin acme.com
This function adds DKIM signature to outgoing domain emails.
v-add-mail-domain-reject
Add mail domain reject spam support.
v-add-mail-domain-reject USER DOMAIN
Example:
v-add-mail-domain-reject admin mydomain.tld
labels: mail
The function enables spam rejection for incoming emails.
v-add-mail-domain-smtp-relay
Add mail domain smtp relay support.
v-add-mail-domain-smtp-relay USER DOMAIN HOST [USERNAME] [PASSWORD] [PORT]
Example:
v-add-mail-domain-smtp-relay user domain.tld srv.smtprelay.tld uname123 pass12345
This function adds mail domain smtp relay support.
v-add-mail-domain-ssl
Add mail SSL for $domain.
v-add-mail-domain-ssl USER DOMAIN SSL_DIR [RESTART]
This function turns on SSL support for a mail domain. Parameter ssl_dir is a path to a directory where 2 or 3 ssl files can be found. Certificate file mail.domain.tld.crt and its key mail.domain.tld.key are mandatory. Certificate authority mail.domain.tld.ca file is optional.
v-add-mail-domain-webmail
Add webmail support for a domain.
v-add-mail-domain-webmail USER DOMAIN [WEBMAIL] [RESTART] [QUIET]
Examples:
v-add-mail-domain-webmail user domain.com
v-add-mail-domain-webmail user domain.com snappymail
v-add-mail-domain-webmail user domain.com roundcube
This function enables webmail client for a mail domain.
v-change-mail-account-password
Change mail account password.
v-change-mail-account-password USER DOMAIN ACCOUNT PASSWORD
Example:
v-change-mail-account-password admin mydomain.tld user p4$$vvOrD
This function changes email account password.
v-change-mail-account-quota
Change mail account quota.
v-change-mail-account-quota USER DOMAIN ACCOUNT QUOTA
Example:
v-change-mail-account-quota admin mydomain.tld user01 unlimited
This function changes email account disk quota.
v-change-mail-account-rate-limit
Change mail account rate limit.
v-change-mail-account-rate-limit USER DOMAIN ACCOUNT RATE
Example:
v-change-mail-account-rate-limit admin mydomain.tld user01 100
This function changes email account rate limit. Use system to use domain or "server" setting
v-change-mail-domain-catchall
Change mail domain catchall email.
v-change-mail-domain-catchall USER DOMAIN EMAIL
Example:
v-change-mail-domain-catchall user01 mydomain.tld master@mydomain.tld
This function changes mail domain catchall.
v-change-mail-domain-rate-limit
Change mail domain rate limit.
v-change-mail-domain-rate-limit USER DOMAIN RATE
Example:
v-change-mail-domain-rate-limit admin mydomain.tld 100
This function changes email account rate limit for the domain. Account specific setting will overwrite domain setting!
v-change-mail-domain-sslcert
Change domain ssl certificate.
v-change-mail-domain-sslcert USER DOMAIN SSL_DIR [RESTART]
This function changes SSL domain certificate and the key. If ca file present it will be replaced as well.
v-check-mail-account-hash
Check user password.
v-check-mail-account-hash TYPE PASSWORD HASH
Example:
v-check-mail-account-hash ARGONID2 PASS HASH
This function verifies email account password hash
v-check-mail-account-sso
Exchange a webmail sign-on ticket for a session password.
v-check-mail-account-sso TICKET_FILE CLIENT_IP [FORMAT]
Example:
v-check-mail-account-sso /tmp/ticket 203.0.113.5 json
This function consumes the ticket in TICKET_FILE (written by the panel) and prints the address and a new session password of the mail account, which Dovecot accepts from the loopback address only for 8 hours. The ticket must be valid, unused and issued for CLIENT_IP, and the account, its domain and its user must not be suspended since.
v-delete-mail-account
Delete mail account.
v-delete-mail-account USER DOMAIN ACCOUNT
Example:
v-delete-mail-account admin acme.com alice
This function deletes email account.
v-delete-mail-account-alias
Delete mail account alias aka nickname.
v-delete-mail-account-alias USER DOMAIN ACCOUNT ALIAS
Example:
v-delete-mail-account-alias admin example.com alice alicia
This function deletes email account alias.
v-delete-mail-account-autoreply
Delete mail account autoreply message.
v-delete-mail-account-autoreply USER DOMAIN ACCOUNT ALIAS
Example:
v-delete-mail-account-autoreply admin mydomain.tld bob
This function deletes an email accounts autoreply.
v-delete-mail-account-forward
Delete mail account forward.
v-delete-mail-account-forward USER DOMAIN ACCOUNT EMAIL
Example:
v-delete-mail-account-forward admin acme.com tony bob@acme.com
This function deletes an email accounts forwarding address.
v-delete-mail-account-fwd-only
Delete mail account forward-only flag.
v-delete-mail-account-fwd-only USER DOMAIN ACCOUNT
Example:
v-delete-mail-account-fwd-only admin example.com jack
This function deletes fwd-only flag
v-delete-mail-account-sso
End the webmail sign-on sessions of a mail account or domain.
v-delete-mail-account-sso DOMAIN [ACCOUNT]
Example:
v-delete-mail-account-sso example.com info
This function removes the session password of ACCOUNT@DOMAIN, or of every account of DOMAIN, so that Roundcube asks for the password again. The mail commands run it when a password, a status or an owner changes.
v-delete-mail-domain
Delete mail domain.
v-delete-mail-domain USER DOMAIN
Example:
v-delete-mail-domain admin mydomain.tld
This function for deleting MAIL domain. By deleting it all accounts will also be deleted.
v-delete-mail-domain-antispam
Delete mail domain antispam support.
v-delete-mail-domain-antispam USER DOMAIN
Example:
v-delete-mail-domain-antispam admin mydomain.tld
This function disable spamassasin for incoming emails.
v-delete-mail-domain-antivirus
Delete mail domain antivirus support.
v-delete-mail-domain-antivirus USER DOMAIN
Example:
v-delete-mail-domain-antivirus admin mydomain.tld
This function disables clamav scan for incoming emails.
v-delete-mail-domain-catchall
Delete mail domain catchall email.
v-delete-mail-domain-catchall USER DOMAIN
Example:
v-delete-mail-domain-catchall admin mydomain.tld
This function disables mail domain cathcall.
v-delete-mail-domain-dkim
Delete mail domain dkim support.
v-delete-mail-domain-dkim USER DOMAIN
Example:
v-delete-mail-domain-dkim admin mydomain.tld
This function delete DKIM domain pem.
v-delete-mail-domain-reject
Delete mail domain reject spam support.
v-delete-mail-domain-reject USER DOMAIN
Example:
v-delete-mail-domain-reject admin mydomain.tld
labels: mail
The function disables spam rejection for incoming emails.
v-delete-mail-domain-smtp-relay
Remove mail domain smtp relay support.
v-delete-mail-domain-smtp-relay USER DOMAIN
Example:
v-delete-mail-domain-smtp-relay user domain.tld
This function removes mail domain smtp relay support.
v-delete-mail-domain-ssl
Delete mail domain ssl support.
v-delete-mail-domain-ssl USER DOMAIN
Example:
v-delete-mail-domain-ssl user demo.com
This function delete ssl certificates.
v-delete-mail-domain-webmail
Delete webmail support for a domain.
v-delete-mail-domain-webmail USER DOMAIN [RESTART] [QUIET]
Example:
v-delete-mail-domain-webmail user demo.com
This function removes support for webmail from a specified mail domain.
v-delete-mail-domains
Delete mail domains.
v-delete-mail-domains USER
Example:
v-delete-mail-domains admin
This function for deleting all users mail domains.
v-get-mail-account-value
Get mail account value.
v-get-mail-account-value USER DOMAIN ACCOUNT KEY
Example:
v-get-mail-account-value admin example.tld tester QUOTA
This function for getting a certain mail account parameter.
v-get-mail-domain-value
Get mail domain value.
v-get-mail-domain-value USER DOMAIN KEY
Example:
v-get-mail-domain-value admin example.com DKIM
This function for getting a certain mail domain parameter.
v-list-mail-account
List mail domain account.
v-list-mail-account USER DOMAIN ACCOUNT [FORMAT]
Example:
v-list-mail-account admin domain.tld tester
This function of obtaining the list of account parameters.
v-list-mail-account-autoreply
List mail account autoreply.
v-list-mail-account-autoreply USER DOMAIN ACCOUNT [FORMAT]
Example:
v-list-mail-account-autoreply admin example.com testing
This function of obtaining mail account autoreply message.
v-list-mail-accounts
List mail domain accounts.
v-list-mail-accounts USER DOMAIN [FORMAT]
Example:
v-list-mail-accounts admin acme.com
This function of obtaining the list of all user domains.
v-list-mail-domain
List mail domain.
v-list-mail-domain USER DOMAIN [FORMAT]
Example:
v-list-mail-domain user01 mydomain.com
This function of obtaining the list of domain parameters.
v-list-mail-domain-dkim
List mail domain dkim.
v-list-mail-domain-dkim USER DOMAIN [FORMAT]
Example:
v-list-mail-domain-dkim admin maildomain.tld
This function of obtaining domain dkim files.
v-list-mail-domain-dkim-dns
List mail domain dkim dns records.
v-list-mail-domain-dkim-dns USER DOMAIN [FORMAT]
Example:
v-list-mail-domain-dkim-dns admin example.com
This function of obtaining domain dkim dns records for proper setup.
v-list-mail-domain-ssl
List mail domain ssl certificate.
v-list-mail-domain-ssl USER DOMAIN [FORMAT]
Example:
v-list-mail-domain-ssl user acme.com json
This function of obtaining domain ssl files.
v-list-mail-domains
List mail domains.
v-list-mail-domains USER [FORMAT]
Example:
v-list-mail-domains admin
This function of obtaining the list of all user domains.
v-rebuild-mail-domain
Rebuild mail domain.
v-rebuild-mail-domain USER DOMAIN
Example:
v-rebuild-mail-domain user domain.tld
This function rebuilds configuration files for a single domain.
v-rebuild-mail-domains
Rebuild mail domains.
v-rebuild-mail-domains USER
Example:
v-rebuild-mail-domains admin
This function rebuilds EXIM configuration files for all mail domains.
v-restart-mail
Restart mail service.
v-restart-mail [RESTART]
Example:
v-restart-mail
This function tells exim or dovecot services to reload configuration files.
v-suspend-mail-account
Suspend mail account.
v-suspend-mail-account USER DOMAIN ACCOUNT
Example:
v-suspend-mail-account admin acme.com bob
This function suspends mail account.
v-suspend-mail-accounts
Suspend all mail domain accounts.
v-suspend-mail-accounts USER DOMAIN
Example:
v-suspend-mail-accounts admin example.com
This function suspends all mail domain accounts.
v-suspend-mail-domain
Suspend mail domain.
v-suspend-mail-domain USER DOMAIN
Example:
v-suspend-mail-domain admin domain.com
This function suspends mail domain.
v-suspend-mail-domains
Suspend mail domains.
v-suspend-mail-domains USER
Example:
v-suspend-mail-domains admin
This function suspends all user's MAIL domains.
v-unsuspend-mail-account
Unsuspend mail account.
v-unsuspend-mail-account USER DOMAIN ACCOUNT
Example:
v-unsuspend-mail-account admin acme.com tester
This function unsuspends mail account.
v-unsuspend-mail-accounts
Unsuspend all mail domain accounts.
v-unsuspend-mail-accounts USER DOMAIN
Example:
v-unsuspend-mail-accounts admin acme.com
This function unsuspends all mail domain accounts.
v-unsuspend-mail-domain
Unsuspend mail domain.
v-unsuspend-mail-domain USER DOMAIN
Example:
v-unsuspend-mail-domain user02 acme.com
This function unsuspends mail domain.
v-unsuspend-mail-domains
Unsuspend mail domains.
v-unsuspend-mail-domains USER
Example:
v-unsuspend-mail-domains admin
This function unsuspends all user's MAIL domains.
v-update-mail-domain-disk
Update mail domain disk usage.
v-update-mail-domain-disk USER DOMAIN
Example:
v-update-mail-domain-disk admin example.com
This function updates domain disk usage.
v-update-mail-domain-ssl
Updating ssl certificate for domain.
v-update-mail-domain-ssl USER DOMAIN SSL_DIR [RESTART]
Example:
v-update-mail-domain-ssl admin domain.com /home/admin/tmp
This function updates the SSL certificate for a domain. Parameter ssl_dir is a path to directory where 2 or 3 ssl files can be found. Certificate file domain.tld.crt and its key domain.tld.key are mandatory. Certificate authority domain.tld.ca file is optional.
v-update-mail-domains-disk
Calculate disk usage for all mail domains.
v-update-mail-domains-disk USER
Example:
v-update-mail-domains-disk admin
This function calculates disk usage for all mail domains.
v-update-mail-sso
Remove expired webmail sign-on sessions and tickets.
v-update-mail-sso NONE
Example:
v-update-mail-sso
This function removes the session passwords and the tickets of webmail sign-ons that have expired. Cron runs it every 5 minutes.
v-update-mail-templates
Update mail templates.
v-update-mail-templates [RESTART] [SKIP]
Example:
v-update-mail-templates
This function for obtaining updated webmail templates from ArcPanel package.
Databases
v-add-database
Add database.
v-add-database USER DATABASE DBUSER DBPASS [TYPE] [HOST] [CHARSET]
Example:
v-add-database admin wordpress_db matt qwerty123
This function creates the database concatenating username and user_db. Supported types of databases you can get using v-list-sys-config script. If the host isn't stated and there are few hosts configured on the server, then the host will be defined by one of three algorithms. "First" will choose the first host in the list. "Random" will chose the host by a chance. "Weight" will distribute new database through hosts evenly. Algorithm and types of supported databases is designated in the main configuration file.
v-add-database-host
Add new database server.
v-add-database-host TYPE HOST DBUSER DBPASS [MAX_DB] [CHARSETS] [TEMPLATE] [PORT]
Example:
v-add-database-host mysql localhost alice p@$$wOrd
This function add new database server to the server pool. It supports local and remote database servers, which is useful for clusters. By adding a host you can set limit for number of databases on a host. Template parameter is used only for PostgreSQL and has an default value "template1". You can read more about templates in official PostgreSQL documentation.
v-add-database-temp-user
Add temp database user.
v-add-database-temp-user USER DATABASE [TYPE] [HOST] [TTL]
Example:
v-add-database-temp-user wordress wordpress_db mysql
This function creates an temporary database user mysql_sso_db_XXXXXXXX and a random password The user has an limited validity and only granted access to the specific database Returns json to be read SSO Script
v-change-database-host-password
Change database server password.
v-change-database-host-password TYPE HOST USER PASSWORD
Example:
v-change-database-host-password mysql localhost wp_user pA$$w@rD
This function changes database server password.
v-change-database-owner
Change database owner.
v-change-database-owner DATABASE USER
Example:
v-change-database-owner mydb alice
This function for changing database owner.
v-change-database-password
Change database password.
v-change-database-password USER DATABASE DBPASS
Example:
v-change-database-password admin wp_db neW_pAssWorD
This function for changing database user password to a database. It uses the full name of database as argument.
v-change-database-user
Change database username.
v-change-database-user USER DATABASE DBUSER [DBPASS]
Example:
v-change-database-user admin my_db joe_user
This function for changing database user. It uses the
v-delete-database
Delete database.
v-delete-database USER DATABASE
Example:
v-delete-database admin wp_db
This function for deleting the database. If database user have access to another database, he will not be deleted.
v-delete-database-host
Delete database server.
v-delete-database-host TYPE HOST
Example:
v-delete-database-host pgsql localhost
This function for deleting the database host from arcpanel configuration. It will be deleted if there are no databases created on it only.
v-delete-database-temp-user
Deletes temp database user.
v-delete-database-temp-user USER DBUSER [TYPE] [HOST]
Example:
v-delete-database-temp-user wordpress arcpanel_sso_user mysql
Revokes "temp user" access to a database and removes the user To be used in combination with v-add-database-temp-user
v-delete-databases
Delete user databases.
v-delete-databases USER
Example:
v-delete-databases admin
This function deletes all user databases.
v-dump-database
Dumps database contents in STDIN or file optional file can be compressed.
v-dump-database USER DATABASE [FILE] [COMPRESSION]
Examples:
v-dump-database user user_databse > test.sql
v-dump-database user user_databse file gzip
v-dump-database user user_databse file zstd
Dumps database in STDIN or file (/backup/user.database.type.sql) For compression gzip or zstd is supported by default plain sql is used
v-import-database
Import database.
v-import-database USER DB PATH
Example:
v-import-database alice mydb /full/path/to.sql
This function for importing database.
v-list-database
List database.
v-list-database USER DATABASE [FORMAT]
Example:
v-list-database wp_db
This function for obtaining of all database's parameters.
v-list-database-host
List database host.
v-list-database-host TYPE HOST [FORMAT]
Example:
v-list-database-host mysql localhost
This function for obtaining database host parameters.
v-list-database-hosts
List database hosts.
v-list-database-hosts [FORMAT]
Example:
v-list-database-hosts json
This function for obtaining the list of all configured database hosts.
v-list-database-types
List supported database types.
v-list-database-types [FORMAT]
Example:
v-list-database-types json
This function for obtaining the list of database types.
v-list-databases
Listing databases.
v-list-databases USER [FORMAT]
Example:
v-list-databases user json
This function for obtaining the list of all user's databases.
v-rebuild-database
Rebuild databases.
v-rebuild-database USER DATABASE
Example:
v-rebuild-database user user_wordpress
This function for rebuilding a single database for a user
v-rebuild-databases
Rebuild databases.
v-rebuild-databases USER
Example:
v-rebuild-databases admin
This function for rebuilding of all databases of a single user.
v-suspend-database
Suspend database.
v-suspend-database USER DATABASE
Example:
v-suspend-database admin admin_wordpress_db
This function for suspending a certain user database.
v-suspend-database-host
Suspend database server.
v-suspend-database-host TYPE HOST
Example:
v-suspend-database-host mysql localhost
This function for suspending a database server.
v-suspend-databases
Suspend databases.
v-suspend-databases USER
Example:
v-suspend-databases admin
This function for suspending of all databases of a single user.
v-unsuspend-database
Unsuspend database.
v-unsuspend-database USER DATABASE
Example:
v-unsuspend-database admin mydb
This function for unsuspending database.
v-unsuspend-database-host
Unsuspend database server.
v-unsuspend-database-host TYPE HOST
Example:
v-unsuspend-database-host mysql localhost
This function for unsuspending a database server.
v-unsuspend-databases
Unsuspend databases.
v-unsuspend-databases USER
This function for unsuspending all user's databases.
v-update-database-disk
Update database disk usage.
v-update-database-disk USER DATABASE
Example:
v-update-database-disk admin wp_db
This function recalculates disk usage for specific database.
v-update-databases-disk
Update databases disk usage.
v-update-databases-disk USER
Example:
v-update-databases-disk admin
This function recalculates disk usage for all user databases.
Cron jobs
v-add-cron-arcpanel-autoupdate
Add cron job for arcpanel automatic updates.
v-add-cron-arcpanel-autoupdate MODE
This function adds a cronjob for arcpanel automatic updates that can be downloaded from apt or git. The apt line runs v-update-sys-arcpanel-all auto at a random night time; an existing apt line is brought to that form: auto is added, and the fixed time 41 4 of older installs is replaced.
v-add-cron-job
Add cron job.
v-add-cron-job USER MIN HOUR DAY MONTH WDAY CRON_COMMAND [JOB] [RESTART]
Example:
v-add-cron-job admin * * * * * sudo /usr/local/arcpanel/bin/v-backup-users
This function adds a job to cron daemon. When executing commands, any output is mailed to user's email if parameter REPORTS is set to 'yes'.
v-add-cron-letsencrypt-job
Add cron job for Let's Encrypt certificates.
v-add-cron-letsencrypt-job NONE
This function adds a new cron job for Let's Encrypt.
v-add-cron-reports
Add cron reports.
v-add-cron-reports USER
Example:
v-add-cron-reports admin
This function for enabling reports on cron tasks and administrative notifications.
v-add-cron-restart-job
Add cron reports.
v-add-cron-restart-job NONE
This function for enabling restart cron tasks
v-change-cron-job
Change cron job.
v-change-cron-job USER JOB MIN HOUR DAY MONTH WDAY CRON_COMMAND
Example:
v-change-cron-job admin 7 * * * * * /usr/bin/uptime
This function is used for changing existing job. It fully replace job parameters with new one but with same id.
v-delete-cron-arcpanel-autoupdate
Delete arcpanel autoupdate cron job.
v-delete-cron-arcpanel-autoupdate NONE
This function deletes arcpanel autoupdate cron job.
v-delete-cron-job
Delete cron job.
v-delete-cron-job USER JOB
Example:
v-delete-cron-job admin 9
This function deletes cron job.
v-delete-cron-reports
Delete cron reports.
v-delete-cron-reports USER
Example:
v-delete-cron-reports admin
This function for disabling reports on cron tasks and administrative notifications.
v-delete-cron-restart-job
Delete restart job.
v-delete-cron-restart-job NONE
This function for disabling restart cron tasks
v-list-cron-job
List cron job.
v-list-cron-job USER JOB [FORMAT]
Example:
v-list-cron-job admin 7
This function of obtaining cron job parameters.
v-list-cron-jobs
List user cron jobs.
v-list-cron-jobs USER [FORMAT]
Example:
v-list-cron-jobs admin
This function for obtaining the list of all users cron jobs.
v-rebuild-cron-jobs
Rebuild cron jobs.
v-rebuild-cron-jobs USER [RESTART]
Example:
v-rebuild-cron-jobs admin yes
This function rebuilds system cron config file for specified user.
v-restart-cron
Restart cron service.
v-restart-cron NONE
Example:
v-restart-cron
This function tells crond service to reread its configuration files.
v-suspend-cron-job
Suspend cron job.
v-suspend-cron-job USER JOB [RESTART]
Example:
v-suspend-cron-job admin 5 yes
This function suspends a certain job of the cron scheduler.
v-suspend-cron-jobs
Suspending sys cron jobs.
v-suspend-cron-jobs USER [RESTART]
Example:
v-suspend-cron-jobs admin
This function suspends all user cron jobs.
v-unsuspend-cron-job
Unsuspend cron job.
v-unsuspend-cron-job USER JOB [RESTART]
Example:
v-unsuspend-cron-job admin 7 yes
This function unsuspend certain cron job.
v-unsuspend-cron-jobs
Unsuspend sys cron.
v-unsuspend-cron-jobs USER [RESTART]
Example:
v-unsuspend-cron-jobs admin no
This function unsuspends all suspended cron jobs.
Backups
v-add-backup-host
Add backup host.
v-add-backup-host TYPE HOST USERNAME PASSWORD [PATH] [PORT]
Example:
v-add-backup-host sftp backup.acme.com admin 'P4$$w@rD'
v-add-backup-host b2 bucketName keyID applicationKey
Add a new remote backup location. Currently SFTP, FTP and Backblaze are supported
v-add-backup-host-restic
Add backup host.
v-add-backup-host-restic TYPE HOST USERNAME PASSWORD [PATH] [PORT]
Example:
v-add-backup-host sftp backup.acme.com admin 'P4$$w@rD'
v-add-backup-host b2 bucketName keyID applicationKey
Add a new remote backup location. Currently SFTP, FTP and Backblaze are supported
v-backup-docker-apps
Dump the databases of Docker apps before a backup.
v-backup-docker-apps USER|all [NAME]
Examples:
v-backup-docker-apps all
v-backup-docker-apps alice miniflux
This function runs the dump commands that the catalog manifests declare (for example pg_dump) in the running Docker apps of USER, or of every user with "all", and writes their output as the user to ~/apps/<name>/data/.dumps/, so that the nightly backup holds a consistent copy of each database. data/.dumps/.last records the time of the last complete dump. It runs from cron 15 minutes before v-backup-users.
v-backup-user
Backup system user with all its objects.
v-backup-user USER NOTIFY
Example:
v-backup-user admin yes
This function is used for backing up user with all its domains and databases.
v-backup-user-config
Backup system user config only.
v-backup-user-config USER NOTIFY
Example:
v-backup-user admin yes
This function is used for backing up user with all its domains and databases. The configuration is staged in a working folder of root and then copied into ~/backup as the user, where the restic backup of the home picks it up: root never writes into the user's home.
v-backup-user-restic
Backup system user with all its objects to restic backup.
v-backup-user-restic USER NOTIFY
Example:
v-backup-user-restic admin yes
Backup user with all its objects to restic backup. If the repo doesn't exists a new one will be created.
v-backup-users
Backup all users.
v-backup-users NONE
Example:
v-backup-users
This function backups all system users.
v-backup-users-restic
Backup all users.
v-backup-users-restic NONE
Example:
v-backup-users
This function backups all system users.
v-delete-backup-host
Delete backup ftp server.
v-delete-backup-host TYPE [HOST]
Example:
v-delete-backup-host sftp
This function deletes ftp backup host
v-delete-backup-host-restic
Delete backup ftp server.
v-delete-backup-host-restic [NONE]
Example:
v-delete-backup-host sftp
This function deletes ftp backup host
v-download-backup
Download backup.
v-download-backup USER BACKUP
Example:
v-download-backup admin admin.2020-11-05_05-10-21.tar
This function download back-up from remote server
v-list-backup-host
List backup host.
v-list-backup-host TYPE [FORMAT]
Example:
v-list-backup-host local
This function for obtaining the list of backup host parameters.
v-list-backup-host-restic
List backup host.
v-list-backup-host-restic TYPE [FORMAT]
Example:
v-list-backup-host local
This function for obtaining the list of backup host parameters.
v-restore-cron-job
Restore single cron job.
v-restore-cron-job USER BACKUP DOMAIN [NOTIFY]
Example:
v-restore-cron-job USER BACKUP CRON [NOTIFY]
This function allows the user to restore a single cron job from a backup archive.
v-restore-cron-job-restic
Restore single cron job.
v-restore-cron-job-restic USER SNAPSHOT [NOTIFY]
Example:
v-restore-cron-job USER BACKUP [NOTIFY]
This function allows the user to restore a cron jobs from a snapshot. The jobs are read from the snapshot as untrusted records: each line is rebuilt from the known keys.
v-restore-database
Restore single database.
v-restore-database USER BACKUP DATABASE [NOTIFY]
Example:
v-restore-database USER BACKUP DATABASE [NOTIFY]
This function allows the user to restore a single database from a backup archive.
v-restore-database-restic
Restore Database.
v-restore-database-restic USER SNAPSHOT DATABASE
Examples:
v-restore-database-restic user snapshot user_database
v-restore-database-restic user snapshot 'user_database,user_database2'
v-restore-database-restic user snapshot '*'
This function for restoring database from restic snapshot. The records and dumps of a snapshot are untrusted: names must carry the user's prefix, and the dump is imported with an account limited to the database.
v-restore-dns-domain
Restore single dns domain.
v-restore-dns-domain USER BACKUP DOMAIN [NOTIFY]
Example:
v-restore-dns-domain USER BACKUP DOMAIN [NOTIFY]
This function allows the user to restore a single DNS domain from a backup archive.
v-restore-dns-domain-restic
Restore DNS domain.
v-restore-dns-domain-restic USER SNAPSHOT DOMAIN
Example:
v-restore-dns-domain-restic user snapshot domain.com
This function for restoring DNS domains from restic snapshot. Names and records read from the snapshot are validated and rebuilt.
v-restore-file-restic
Restore a file or folder from a restic snapshot.
v-restore-file-restic USER SNAPSHOT PATH [NOTIFY]
Example:
v-restore-file-restic alice 4f2a91c0 /home/alice/web/example.com/public_html/index.php
This function restores PATH, a file or folder in the home directory of USER, from a restic snapshot. restic restores into a working folder of root; the user copies the result into the home, so the files belong to the user and nothing outside the user's permissions is written. The restore overwrites the current file.
v-restore-mail-domain
Restore single mail domain.
v-restore-mail-domain USER BACKUP DOMAIN [NOTIFY]
Example:
v-restore-mail-domain USER BACKUP DOMAIN [NOTIFY]
This function allows the user to restore a single mail domain from a backup archive.
v-restore-mail-domain-restic
Restore mail domain.
v-restore-mail-domain-restic USER SNAPSHOT DOMAIN [NOTIFY]
Examples:
v-restore-mail-domain-restic user snapshot domain.com
v-restore-mail-domain-restic user snapshot 'domain.com,domain2.com'
v-restore-mail-domain-restic user snapshot '*'
This function for restoring mail domains from restic snapshot. Names, records and certificates read from the snapshot are validated; the mailboxes are copied into the home as the user.
v-restore-user
Restore user.
v-restore-user USER BACKUP [WEB] [DNS] [MAIL] [DB] [CRON] [UDIR] [NOTIFY]
Example:
v-restore-user admin 2019-04-22_01-00-00.tar
This function for restoring user from backup. To be able to restore the backup, the archive needs to be placed in /backup. Root unpacks the archive in a working folder of its own; names and records read from it are validated, and the user's files are unpacked into the home by the user.
v-restore-user-full-restic
Restore user via Restic.
v-restore-user-full-restic USER SNAPSHOT KEY
Example:
v-restore-user-full-restic user snapshot key
Full user restore from a non existing user
v-restore-user-malware-quarantine
Put a quarantined file of a user back in place.
v-restore-user-malware-quarantine USER ID
Example:
v-restore-user-malware-quarantine alice 17602000001234
This function writes a quarantined file back to its path, as the user and with its mode, and removes it from the quarantine. It refuses when a file exists at that path (E_EXISTS) or its folder is gone (E_NOTEXIST). The next scan reports the file again unless the user ignores it.
v-restore-user-restic
Restore user via Restic.
v-restore-user-restic USER SNAPSHOT WEB DNS MAIL DB CRON UDIR
Example:
v-restore-user-restic user snapshot
This function for restoring a user from restic snapshot: domains, databases and cron jobs through their own commands, then the user's own folders, copied into the home as the user.
v-restore-web-domain
Restore single web domain.
v-restore-web-domain USER BACKUP DOMAIN [NOTIFY]
Example:
v-restore-web-domain USER BACKUP DOMAIN [NOTIFY]
This function allows the user to restore a single web domain from a backup archive.
v-restore-web-domain-restic
Restore WEB domain.
v-restore-web-domain-restic USER SNAPSHOT DOMAIN [NOTIFY] [NEW_USER]
Examples:
v-restore-web-domain-restic user snapshot domain.com
v-restore-web-domain-restic user snapshot 'domain.com,domain2.com'
v-restore-web-domain-restic user snapshot '*'
This function for restoring web domains from restic snapshot. The record, certificates and paths read from the snapshot are validated; the site files are copied into the home as the user. Custom web server configuration is not restored from a snapshot, because the user can change it in ~/backup before the backup runs.
Files
v-add-fs-archive
Archive directory.
v-add-fs-archive USER ARCHIVE SOURCE [SOURCE...]
Example:
v-add-fs-archive admin /home/admin/archive.tar /home/admin/readme.txt
This function creates tar archive as the user. The archive and every source must be absolute paths inside the user's home; the archive must not exist.
v-add-fs-directory
Add directory.
v-add-fs-directory USER DIRECTORY
Example:
v-add-fs-directory admin /home/admin/mybar
This function creates new directory on the file system, with its missing parents, as the user. The path must be absolute and inside the user's home.
v-add-fs-download
Prepare a download from a user's home.
v-add-fs-download USER TICKET PATH [PATH...]
Example:
v-add-fs-download alice 0123456789abcdef0123456789abcdef /home/alice/web/example.com/public_html
This function writes the download ticket TICKET into the panel's staging tree for arcpanel-nginx to serve: one regular file is copied as read by the user; several paths or a folder are zipped as the user (symlinks stored as links, never followed). All paths of a zip must share one parent folder. Prints {NAME, SIZE, MIME}.
v-add-fs-file
Add file.
v-add-fs-file USER FILE
Example:
v-add-fs-file admin /home/admin/readme.md
This function creates new files on file system as the user. The path must be absolute and inside the user's home; its folder must exist.
v-add-fs-upload
Move an uploaded file into a user's home.
v-add-fs-upload USER STAGED_FILE DST_PATH [MODE] [ON_CONFLICT]
Example:
v-add-fs-upload alice /usr/local/arcpanel/web-app/storage/app/files/uploads/0123…/file /home/alice/web/example.com/public_html/logo.png 0644 rename
This function writes STAGED_FILE (assembled by the panel) into DST_PATH as the user, so the user's quota applies, with MODE (default 0644). An existing destination fails with E_EXISTS (ON_CONFLICT=fail, default), is replaced (overwrite) or the file gets the first free "name (n).ext" (rename). Prints the final path. STAGED_FILE is always removed.
v-add-fs-zip
Compress files of a user's home into a zip archive.
v-add-fs-zip USER ARCHIVE PATH [PATH...]
Example:
v-add-fs-zip alice /home/alice/web/example.com/public_html/site.zip /home/alice/web/example.com/public_html/assets
This function creates the new zip archive ARCHIVE as the user from PATHs that share one parent folder, which is also the folder of ARCHIVE. Symlinks are stored as links.
v-change-fs-directory-permission
Change the permissions of a folder of a user's home.
v-change-fs-directory-permission USER DIR DIR_MODE [FILES_MODE] [RECURSIVE]
Example:
v-change-fs-directory-permission alice /home/alice/web/example.com/public_html 0755 0644 yes
This function changes the mode of DIR as the user. RECURSIVE=no (default) changes DIR only. RECURSIVE=yes gives DIR_MODE to DIR and every folder below it and FILES_MODE (default DIR_MODE) to every file below it; symlinks are skipped. Entries the user does not own are left as they are and the command ends with E_FORBIDEN after changing the rest.
v-change-fs-file-permission
Change file permission.
v-change-fs-file-permission USER FILE PERMISSIONS
Example:
v-change-fs-file-permission admin /home/admin/readme.txt 0777
This function changes file access permissions on the file system as the user. The path must be absolute and inside the user's home; PERMISSIONS is an octal mode.
v-check-fs-permission
Check file permission.
v-check-fs-permission USER FILE
Example:
v-check-fs-permission admin /home/admin/readme.txt
This function checks that the user can read a file or folder on the file system. The path must be absolute and inside the user's home.
v-copy-fs-directory
Copy directory.
v-copy-fs-directory USER SRC_DIRECTORY DST_DIRECTORY
Example:
v-copy-fs-directory alice /home/alice/dir1 /home/alice/dir2
This function copies directory on the file system as the user. Both paths must be absolute and inside the user's home; the folder of DST_DIRECTORY must exist.
v-copy-fs-file
Copy file.
v-copy-fs-file USER SRC_FILE DST_FILE
Example:
v-copy-fs-file admin /home/admin/readme.txt /home/admin/readme_new.txt
This function copies file on the file system as the user. Both paths must be absolute and inside the user's home; the folder of DST_FILE must exist.
v-delete-fs-directory
Delete directory.
v-delete-fs-directory USER DIRECTORY
Example:
v-delete-fs-directory admin /home/admin/report1
This function deletes directory on the file system as the user. The path must be absolute and inside the user's home; the home itself cannot be deleted.
v-delete-fs-file
Delete file.
v-delete-fs-file USER FILE
Example:
v-delete-fs-file admin /home/admin/readme.txt
This function deletes file on the file system as the user. The path must be absolute and inside the user's home.
v-extract-fs-archive
Archive to directory.
v-extract-fs-archive USER ARCHIVE DIRECTORY [SELECTED_DIR] [STRIP] [TEST]
Example:
v-extract-fs-archive admin /home/admin/latest.tar.gz /home/admin/latest
This function extracts archive into directory on the file system as the user. Both paths must be absolute and inside the user's home; DIRECTORY and its missing parents are created. zip, tar, tar.gz/tgz, tar.bz2/tbz, tar.zst, 7z (with 7-Zip installed) and rar archives are unpacked into DIRECTORY; a single .gz, .bz2 or .zst file is moved into DIRECTORY and decompressed there.
v-get-fs-file-info
Show one file or folder of a user's home.
v-get-fs-file-info USER PATH [FORMAT]
Example:
v-get-fs-file-info alice /home/alice/web/example.com/public_html/index.php json
This function shows type, size, mode, owner, group, modification time, MIME type and whether the user can write the entry, all seen as the user.
v-get-fs-file-type
Get file type.
v-get-fs-file-type USER FILE
Example:
v-get-fs-file-type admin index.html
This function shows file type
v-list-fs-directory
List directory.
v-list-fs-directory USER DIRECTORY
Example:
v-list-fs-directory /home/admin/web
This function lists directory on the file system
v-list-fs-directory-json
List a directory of a user's home as JSON.
v-list-fs-directory-json USER DIR [OFFSET] [LIMIT] [SORT] [ORDER] [HIDDEN]
Example:
v-list-fs-directory-json alice /home/alice/web 0 2000 name asc yes
This function lists the entries of DIR as the user: folders first, then sorted by SORT (name, size, mtime) in ORDER (asc, desc). HIDDEN=no drops dot entries. LIMIT is at most 5000. Symlinks carry their target, the target's type and whether the target stays in the home directory.
v-list-fs-disk-usage
Show the size of a folder of a user's home.
v-list-fs-disk-usage USER DIR [FORMAT]
Example:
v-list-fs-disk-usage alice /home/alice/web/example.com json
This function counts the bytes below DIR as the user (du -sb) and gives up after 30 seconds with E_LIMIT.
v-move-fs-directory
Move file.
v-move-fs-directory USER SRC_DIRECTORY DST_DIRECTORY
Example:
v-move-fs-directory admin /home/admin/web /home/admin/www/
This function moved file or directory on the file system. This function can also be used to rename files just like normal mv command. It runs as the user; both paths must be absolute and inside the user's home, and the home itself cannot be moved.
v-move-fs-file
Move file.
v-move-fs-file USER SRC_FILE DST_FILE
Example:
v-move-fs-file admin /home/admin/readme.txt /home/admin/new_readme.txt
This function moved file or directory on the file system. This function can also be used to rename files just like normal mv command. It runs as the user; both paths must be absolute and inside the user's home.
v-open-fs-config
Open config.
v-open-fs-config CONFIG
Example:
v-open-fs-config /etc/mysql/my.cnf
This function opens/reads config files on the file system
v-open-fs-file
Open file.
v-open-fs-file USER FILE
Example:
v-open-fs-file admin /home/admin/README.md
This function opens/reads files on the file system as the user. The path must be absolute and inside the user's home.
v-read-fs-file
Read a text file of a user's home for the editor.
v-read-fs-file USER PATH [MAX_BYTES]
Example:
v-read-fs-file alice /home/alice/web/example.com/public_html/.htaccess
This function prints a JSON header line {SIZE, MTIME, MIME, HASH} and then the content of a regular file read as the user. HASH is the SHA-256 of the printed content; v-save-fs-file expects it back. Files above MAX_BYTES (default 2097152) are refused with E_LIMIT.
v-save-fs-file
Save the editor content into a file of a user's home.
v-save-fs-file USER STAGED_FILE DST_PATH [EXPECTED_HASH]
Example:
v-save-fs-file alice /usr/local/arcpanel/web-app/storage/app/files/uploads/0123…/file /home/alice/web/example.com/public_html/index.php 9f86d0…
This function writes STAGED_FILE (staged by the panel) into DST_PATH as the user. An existing file must still have the SHA-256 EXPECTED_HASH that v-read-fs-file printed (E_INUSE otherwise) and keeps its mode; a file the user owns is replaced atomically, a file owned by someone else is rewritten in place so it keeps its owner. A new file needs an empty EXPECTED_HASH. Prints the JSON header of the saved content. STAGED_FILE is always removed.
v-search-fs-object
Search file or directory.
v-search-fs-object USER OBJECT [PATH]
Example:
v-search-fs-object admin hello.txt
This function search files and directories on the file system
Node.js
v-add-node-app
Add a Node.js app to a web domain.
v-add-node-app USER DOMAIN [START] [NODE_VERSION] [PORT] [CWD] [INSTANCES] [TEMPLATE] [NAME]
Examples:
v-add-node-app alice api.example.com
v-add-node-app alice shop.example.com npm:start 24.3.0 auto public_html 1 nextjs
This function runs a Node.js app for a web domain with the user's pm2 daemon. START is a file relative to CWD (default public_html) or npm:<script> for a script of package.json; without it, the start script, the main file or server.js, app.js, index.js is used. NODE_VERSION is an installed runtime or "default". PORT is a port of the user's pool or "auto". TEMPLATE is a Node.js template (default nodejs-proxy). The domain is switched to the template with the app's port; deleting the app restores the previous template.
v-change-node-app-env
Replace the environment of a Node.js app.
v-change-node-app-env USER DOMAIN FILE
Example:
v-change-node-app-env alice api.example.com /tmp/env.txt
This function replaces the .env file of the app with FILE: KEY=value lines (blank lines and # comments are kept), at most 200 lines and 64 KB. PORT, HOST, NODE_ENV and PATH are set by the panel and cannot be set here. A running app is restarted. Values are never logged. A value may reference secrets of the user as {{secret:NAME}}: they must exist and be single-line, and are resolved only when the app starts.
v-change-node-app-scale
Change the instances and the memory limit of a Node.js app.
v-change-node-app-scale USER DOMAIN INSTANCES [MAX_MEMORY]
Examples:
v-change-node-app-scale alice api.example.com 2
v-change-node-app-scale alice api.example.com 1 768
This function sets the number of pm2 instances (more than one runs the app in cluster mode, at most NODE_MAX_INSTANCES) and the memory in MB at which pm2 restarts the app (at most the package MEMORY_LIMIT). A running app is restarted.
v-change-node-app-start
Change the start command of a Node.js app.
v-change-node-app-start USER DOMAIN START [CWD]
Examples:
v-change-node-app-start alice api.example.com server.js
v-change-node-app-start alice shop.example.com npm:start app
This function sets the start command (a file relative to CWD or npm:<script>) and optionally the working directory (relative to the domain directory) of the app. A running app is restarted.
v-change-node-app-version
Change the Node.js runtime of an app.
v-change-node-app-version USER DOMAIN NODE_VERSION
Examples:
v-change-node-app-version alice api.example.com 22.11.0
v-change-node-app-version alice api.example.com default
This function runs the app with another installed runtime, or with the user's default runtime ("default"). A running app is restarted.
v-delete-node-app
Delete the Node.js app of a web domain.
v-delete-node-app USER DOMAIN [KEEP_FILES]
Examples:
v-delete-node-app alice api.example.com
v-delete-node-app alice api.example.com keep-files
This function stops and removes the app from the user's pm2 daemon, releases its port, removes the template variables and restores the template the domain had before the app. The nodeapp folder is removed; with keep-files only the generated files go and .env and the logs stay. The daemon is removed with the last app.
v-list-node-app
List the Node.js app of a web domain.
v-list-node-app USER DOMAIN [FORMAT]
Example:
v-list-node-app alice api.example.com json
This function shows one app with its live state (as v-list-node-apps), the web address and SSL state of the domain and the default memory and instance limits.
v-list-node-app-env
List the environment of a Node.js app.
v-list-node-app-env USER DOMAIN [FORMAT]
Example:
v-list-node-app-env alice api.example.com json
This function lists the KEY=value lines of the .env file of the app, with quotes around a value removed as the app sees it.
v-list-node-app-logs
List the logs of a Node.js app.
v-list-node-app-logs USER DOMAIN [STREAM] [OFFSET] [LINES] [FORMAT]
Examples:
v-list-node-app-logs alice api.example.com out
v-list-node-app-logs alice api.example.com err 18231 '' json
This function shows a log of the app: STREAM is out (default), err, install or build. Without OFFSET it shows the last LINES lines (default 200, at most 1000); with OFFSET (bytes) it shows what was written after it, at most 256 KB and whole lines only. OFFSET in the output is where the next read starts; an offset beyond the end (the log was rotated) starts again at 0.
v-list-node-apps
List the Node.js apps of a user.
v-list-node-apps USER [FORMAT]
Example:
v-list-node-apps alice json
This function lists the apps of the user with their live state from the user's pm2 daemon: STATUS (online, stopped, errored, launching, suspended, missing), PID, CPU (%), MEMORY (MB), RESTARTS and UPTIME (seconds), plus the package limit NODE_APPS.
v-rebuild-node-apps
Rebuild the Node.js apps of a user.
v-rebuild-node-apps USER
Example:
v-rebuild-node-apps alice
This function brings the apps of the user back after a restore, a rebuild or a reboot. The app.conf copies of domains without a record (a restored backup) are checked and imported. For every app the port is registered again (the same port when it is free, otherwise a new one that becomes the domain's BACKEND_PORT), a missing runtime is installed from the cache, the files and the pm2 daemon are rendered again and the apps that should run are started. Records of domains that no longer exist are removed.
v-reload-node-app
Reload the Node.js app of a web domain.
v-reload-node-app USER DOMAIN
Example:
v-reload-node-app alice api.example.com
This function reloads a running app with pm2 (zero downtime in cluster mode); a stopped app is started.
v-restart-node-app
Restart the Node.js app of a web domain.
v-restart-node-app USER DOMAIN
Example:
v-restart-node-app alice api.example.com
This function starts the app again with a new ecosystem file, so changes of .env apply.
v-run-node-app-build
Run the build script of a Node.js app.
v-run-node-app-build USER DOMAIN [SCRIPT]
Examples:
v-run-node-app-build alice shop.example.com
v-run-node-app-build alice shop.example.com build:prod
This function runs a script of package.json (default build) in the working directory of the app as the user, with the app's runtime. The output goes to logs/build.log of the app. When the script succeeds, an app that should run is reloaded, or started when it is not online (it could not start before its first build). The panel runs it as a task (v-start-user-node-task USER app-build DOMAIN [SCRIPT]).
v-run-node-app-install
Install the dependencies of a Node.js app.
v-run-node-app-install USER DOMAIN
Example:
v-run-node-app-install alice api.example.com
This function installs the dependencies of the app in its working directory as the user, with the app's runtime: pnpm install --frozen-lockfile with pnpm-lock.yaml, yarn install (--immutable for Yarn 2 and later, --frozen-lockfile for Yarn 1) with yarn.lock, npm ci with package-lock.json, npm install otherwise. The output goes to logs/install.log of the app. An app that should run is then restarted, so it loads the new modules. The panel runs it as a task (v-start-user-node-task USER app-install DOMAIN).
v-start-node-app
Start the Node.js app of a web domain.
v-start-node-app USER DOMAIN
Example:
v-start-node-app alice api.example.com
This function starts the app with the user's pm2 daemon (the daemon is started when it is down). The ecosystem file is generated again first.
v-stop-node-app
Stop the Node.js app of a web domain.
v-stop-node-app USER DOMAIN
Example:
v-stop-node-app alice api.example.com
This function stops the app; it stays stopped after a reboot, a rebuild and an unsuspend until it is started again.
v-suspend-node-app
Suspend the Node.js app of a web domain.
v-suspend-node-app USER DOMAIN
Example:
v-suspend-node-app alice api.example.com
This function stops the app and marks it suspended: it is not started by a reboot, a rebuild or the unsuspension of the user until v-unsuspend-node-app. Its port stays assigned.
v-unsuspend-node-app
Unsuspend the Node.js app of a web domain.
v-unsuspend-node-app USER DOMAIN
Example:
v-unsuspend-node-app alice api.example.com
This function clears the suspension of the app and starts it again, unless it had been stopped before.
App processes
v-add-app-process
Add an app process to a web domain.
v-add-app-process USER DOMAIN NAME PRESET [START] [CWD] [MEMORY] [CPUS] [KIND] [TEMPLATE]
Examples:
v-add-app-process alice shop.example.com web octane-swoole
v-add-app-process alice shop.example.com queue laravel-queue
v-add-app-process alice api.example.com web custom 'python3 -m http.server 8000' . 256 0.5 web flask-fastapi
This function runs a long-running command of a web domain as the user, under its own systemd unit with the memory and CPU limits of the package. PRESET (see v-list-app-process-presets) fills the command, the reload action and, for a web process, the template; START replaces the command (an empty value keeps the preset's). CWD is relative to the domain folder (default public_html). MEMORY is in MB (default from the package), CPUS a number such as 1 or 0.5 (default 1). KIND (web or worker) and TEMPLATE are for the custom preset. A web process gets a port of the user's pool, and the domain is switched to the template with that port; deleting the process restores the previous template. A domain has at most one web process and any number of workers within APP_PROCESSES_MAX.
v-change-app-process-env
Replace the environment of an app process.
v-change-app-process-env USER DOMAIN NAME FILE
Example:
v-change-app-process-env alice shop.example.com web /tmp/env.txt
This function replaces the environment file of the app process with FILE: KEY=value lines (blank lines and # comments are kept), at most 200 lines and 64 KB. PORT, HOST, PATH, HOME, USER and LOGNAME are set by the panel and cannot be set here. A value may reference secrets of the user as {{secret:NAME}}: they must exist and are resolved only when the process starts, outside the home directory. A running process is restarted. Values are never logged.
v-change-app-process-limits
Change the memory and CPU limits of an app process.
v-change-app-process-limits USER DOMAIN NAME MEMORY CPUS
Example:
v-change-app-process-limits alice shop.example.com web 768 1.5
This function sets the memory (MB) and the CPUs (such as 1 or 0.5) of the app process within the limits of the user's package. A running process is restarted with the new limits.
v-change-app-process-start
Change the command of an app process.
v-change-app-process-start USER DOMAIN NAME START [CWD]
Example:
v-change-app-process-start alice shop.example.com web '/usr/bin/php8.4 artisan octane:start --server=swoole --host=127.0.0.1 --port=30001 --workers=4'
This function replaces the command line of the app process and, with CWD, its working directory (relative to the domain folder). Words are split without a shell: quotes group, a backslash escapes, nothing is expanded. %port% is replaced with the port of a web process. A running process is restarted.
v-delete-app-process
Delete an app process of a web domain.
v-delete-app-process USER DOMAIN NAME
Example:
v-delete-app-process alice shop.example.com queue
This function stops the process and removes its unit and record. For the web process, the port goes back to the user's pool and the domain gets its previous template again. The log and the environment file stay in the domain folder (app-process/).
v-list-app-process
List one app process of a web domain.
v-list-app-process USER DOMAIN NAME [FORMAT]
Example:
v-list-app-process alice shop.example.com web json
This function prints the record of the app process with its live state (see v-list-app-processes), its unit, the path of its log and of its environment file and the reason when its runtime is missing.
v-list-app-process-env
List the environment of an app process.
v-list-app-process-env USER DOMAIN NAME [FORMAT]
Example:
v-list-app-process-env alice shop.example.com web json
This function lists the KEY=value lines of the environment file of the app process, read as the user. {{secret:NAME}} references are shown as written, never resolved.
v-list-app-process-logs
List the log of an app process.
v-list-app-process-logs USER DOMAIN NAME [STREAM] [OFFSET] [LINES] [FORMAT]
Examples:
v-list-app-process-logs alice shop.example.com web
v-list-app-process-logs alice shop.example.com web process 18231 '' json
This function shows a log of the app process: STREAM is process (default, the output of the process and its reloads) or task (the last one-off task of the domain's processes). Without OFFSET it shows the last LINES lines (default 200, at most 1000); with OFFSET (bytes) it shows what was written after it, at most 256 KB and whole lines only. OFFSET in the output is where the next read starts; an offset beyond the end (the log was rotated) starts again at 0.
v-list-app-process-presets
List the presets of app processes.
v-list-app-process-presets [USER DOMAIN [CWD]] [FORMAT]
Examples:
v-list-app-process-presets json
v-list-app-process-presets alice shop.example.com public_html json
This function lists the presets of the app process catalog: kind, template, runtime and the command with its placeholders. With USER and DOMAIN, each preset also says whether its files were found in CWD (default public_html, read as the user) and why its runtime is missing, and the command shows its placeholders filled in (%port% and %workers%, which depend on the process, stay).
v-list-app-process-task
List the last one-off task of a user's app processes.
v-list-app-process-task USER [FORMAT]
Example:
v-list-app-process-task alice json
This function shows the last task started with v-start-app-process-task: its id, domain, process, task, STATUS (running, done or failed), exit code and times. A running task whose process is gone is shown as failed.
v-list-app-processes
List the app processes of a user.
v-list-app-processes USER [FORMAT]
Example:
v-list-app-processes alice json
This function lists the app processes of USER with their live state from systemd (STATUS running, starting, stopping, stopped, failed, suspended or missing; PID, MEMORY_USED in MB, CPU_SECONDS, RESTARTS, UPTIME in seconds) and the limits of the user's package.
v-rebuild-app-processes
Rebuild the app processes of a user.
v-rebuild-app-processes USER
Example:
v-rebuild-app-processes alice
This function brings the app processes of USER in line with their records: processes of deleted web domains are removed, copies in a domain's app-process/ folder without a record (after a restore) are validated again and imported, units, run files, ports, templates and the logrotate file are written again, and the processes that should run are started, the others stopped. The panel runs it after a user rebuild and v-check-sys-app-processes when it finds something to repair.
v-reload-app-process
Reload an app process.
v-reload-app-process USER DOMAIN NAME
Example:
v-reload-app-process alice shop.example.com web
This function runs the reload action of the process's preset so that it serves new code: a command run as the user (php artisan octane:reload, queue:restart, horizon:terminate), a signal (HUP for Gunicorn, USR1 for Puma) or a restart. The output of a reload command goes to the log of the process. A process that does not run is refused.
v-restart-app-process
Restart an app process.
v-restart-app-process USER DOMAIN NAME
Example:
v-restart-app-process alice shop.example.com web
This function stops and starts the app process with its current command, environment and limits. A stopped process is started.
v-run-app-process-task
Run a one-off task of an app process.
v-run-app-process-task ID USER DOMAIN NAME TASK [COMMAND]
Example:
v-run-app-process-task 17606214250042 alice shop.example.com web migrate
This function is started by v-start-app-process-task and runs the task in the foreground as the user, appending its output to app-process/logs/task.log of the domain, then records the exit code. COMMAND is base64, for the custom task. The task runs in a transient unit in the user's slice with the limits of the process, so it shares the package's resources and stops with all its children. Not meant to be called directly.
v-start-app-process
Start an app process.
v-start-app-process USER DOMAIN NAME
Example:
v-start-app-process alice shop.example.com web
This function starts the app process (a running one is restarted), clears a failed state and keeps it running across reboots.
v-start-app-process-task
Start a one-off task of an app process.
v-start-app-process-task USER DOMAIN NAME TASK [COMMAND]
Examples:
v-start-app-process-task alice shop.example.com web composer-install
v-start-app-process-task alice shop.example.com web custom 'php8.4 artisan optimize'
This function runs TASK in the background, as the user, in the working directory of the app process: composer-install (composer install --no-dev with the domain's PHP), migrate (php artisan migrate --force), pip-install (pip of .venv with requirements.txt), bundle-install (bundle install into vendor/bundle) or custom (COMMAND, split without a shell). One task runs at a time per user, for at most 30 minutes; its output goes to app-process/logs/task.log of the domain. After a successful install a running process is reloaded. It prints the id of the task; follow it with v-list-app-process-task and v-list-app-process-logs ... task.
v-stop-app-process
Stop an app process.
v-stop-app-process USER DOMAIN NAME
Example:
v-stop-app-process alice shop.example.com queue
This function stops the app process and keeps it stopped across reboots until it is started again.
Docker
v-add-docker-app
Install a Docker app of the catalog for a user.
v-add-docker-app USER SLUG NAME [DOMAIN] [VARS_FILE] [VERSION]
Examples:
v-add-docker-app alice uptime-kuma status status.example.com
v-add-docker-app alice redis cache '' /tmp/vars
This function installs the catalog app SLUG (default: its latest VERSION) as the app NAME of USER. An app with a web port needs one of the user's web domains, which is switched to the docker-proxy template with the app's port; deleting the app restores the previous template. VARS_FILE holds NAME=value lines for the app's variables (secrets are generated when they are left out). Ports come from the user's port pool. The images are pulled and the app is started by a background task: the command prints its ID, read with v-list-docker-app-task.
v-change-docker-app-domain
Move a Docker app to another web domain.
v-change-docker-app-domain USER NAME DOMAIN
Example:
v-change-docker-app-domain alice status uptime.example.com
This function binds the Docker app NAME of USER to DOMAIN (docker-proxy template with the app's port) and gives the previous domain its template back. ARC_DOMAIN and ARC_URL of the app change with it; a running app is started again.
v-change-docker-app-env
Change the variables of a Docker app.
v-change-docker-app-env USER NAME FILE
Example:
v-change-docker-app-env alice status /tmp/vars
This function sets variables of the Docker app NAME of USER from FILE (NAME=value lines). Only variables of the app's manifest are accepted, values are checked against their type, an empty value of a secret keeps the stored one and immutable variables cannot change. A running app is started again with the new values.
v-change-docker-app-limits
Change the CPU and memory limits of a Docker app.
v-change-docker-app-limits USER NAME CPUS MEMORY
Example:
v-change-docker-app-limits alice status 1 1024
This function sets the CPUs (like 0.5) and the memory in MB of each service of the Docker app NAME of USER, within DOCKER_CPUS, DOCKER_MEMORY and MEMORY_LIMIT of the package and at least the memory the app needs. A running app is started again with the new limits.
v-check-docker-catalog
Check the Docker app catalog.
v-check-docker-catalog [DIR] [FORMAT]
Examples:
v-check-docker-catalog
v-check-docker-catalog /root/my-catalog json
This function validates every app of a catalog (default: the catalog shipped with ArcPanel): the icon, each manifest.json against the rules of the manifest schema, and each compose.yaml rendered with the default variables and merged with the ArcPanel override, refused when it asks for privileges, devices, host namespaces, the Docker socket, named volumes, bind mounts outside the app's data folder, published ports of its own or images that are not pinned in the manifest. It needs the Docker CLI with the Compose plugin, not a running engine. Exits with E_INVALID when an app is refused.
v-delete-docker-app
Delete a Docker app of a user.
v-delete-docker-app USER NAME [KEEP_DATA]
Examples:
v-delete-docker-app alice status
v-delete-docker-app alice status keep-data
This function removes the containers and the network of the Docker app NAME of USER, frees its ports, restores the previous template of its domain and removes ~/apps/NAME. With KEEP_DATA (keep-data), the data folder is moved to ~/apps/.removed/NAME-<date>/ instead.
v-list-docker-app
Show a Docker app of a user.
v-list-docker-app USER NAME [FORMAT]
Example:
v-list-docker-app alice status json
This function prints the Docker app NAME of USER: the fields of v-list-docker-apps, its services (image, state, health), its ports with their container port and whether they are public, the catalog entry (name, summary, homepage, changelog, icon), the rendered post-install note and the state of its last task.
v-list-docker-app-env
List the variables of a Docker app.
v-list-docker-app-env USER NAME [FORMAT]
Example:
v-list-docker-app-env alice status json
This function lists the variables that the catalog manifest of the Docker app NAME of USER declares, with their label, type, options and current value. Values of secret (password) variables are never printed: VALUE is empty and SET tells whether one is stored, except for a value that is one reference to the secret store ({{secret:NAME}}), shown as written.
v-list-docker-app-logs
Show the container logs of a Docker app.
v-list-docker-app-logs USER NAME [SERVICE] [SINCE] [LINES] [FORMAT]
Examples:
v-list-docker-app-logs alice status
v-list-docker-app-logs alice status app 2026-10-05T10:00:00.123456789Z 200 json
This function prints the logs of the containers of the Docker app NAME of USER (SERVICE, or "all"). Without SINCE, the last LINES lines (default 200, at most 1000) of each service; with SINCE (the NEXT value of a previous answer), only the lines written after it. Lines are TIME SERVICE TEXT, oldest first; NEXT is the time of the last line.
v-list-docker-app-task
Show the current or last task of a Docker app.
v-list-docker-app-task USER NAME [OFFSET] [FORMAT]
Example:
v-list-docker-app-task alice status 0 json
This function prints the task record of the Docker app NAME of USER (ID, ACTION, ARGS, STATUS, EXIT, START, END) and its output after byte OFFSET (default 0, at most 256 KB) with the next OFFSET. STATUS is running, done or failed; a running task whose process is gone is reported, and stored, as failed. Without a task, STATUS is empty.
v-list-docker-apps
List the Docker apps of a user.
v-list-docker-apps USER [FORMAT]
Example:
v-list-docker-apps alice json
This function lists the Docker apps of USER with their state: STATUS (installing, updating, running, degraded, restarting, stopped, exited, missing, failed or suspended), CPU (percent), MEM (MB), the latest catalog version and UPDATE, plus the package limit DOCKER_APPS.
v-list-docker-catalog
List the apps of the Docker app catalog.
v-list-docker-catalog [CATEGORY] [FORMAT]
Examples:
v-list-docker-catalog
v-list-docker-catalog monitoring json
This function lists the latest version of every catalog app: slug, name, summary, category, version, versions, admin_only, arch, requirements, homepage, licence, whether it has a web port, and the icon as a data URI (json only). CATEGORY (or "all") filters the list. Apps whose manifest is invalid are left out.
v-list-docker-catalog-app
Show an app of the Docker app catalog.
v-list-docker-catalog-app SLUG [VERSION] [FORMAT]
Examples:
v-list-docker-catalog-app uptime-kuma
v-list-docker-catalog-app uptime-kuma 2.5.5 json
This function prints the manifest of a catalog app (default: its latest version) with the icon as a data URI and the list of versions. Variable defaults that name the server time zone are rendered; defaults with {{random:N}} are left empty (a value is generated at installation).
v-rebuild-docker-apps
Rebuild the Docker apps of a user from their records and copies.
v-rebuild-docker-apps USER
Example:
v-rebuild-docker-apps alice
This function brings the Docker apps of USER back after a restore or a move: app.conf copies in ~/apps/<name>/ without a record are imported (every field is checked again; the recorded version must still be in the catalog), ports are registered again (the recorded port when it is free, kept ports first, then new ones), domains get the docker-proxy template with their port, the projects are rendered again from the catalog and the .env copies, and apps that should run are started.
v-restart-docker-app
Restart a Docker app.
v-restart-docker-app USER NAME
Example:
v-restart-docker-app alice status
This function renders the Docker app NAME of USER again, checks it, recreates the containers whose configuration changed and restarts the others.
v-run-docker-app-task
Run a Docker app task started by v-start-docker-app-task.
v-run-docker-app-task ID USER NAME ACTION [VERSION]
Example:
v-run-docker-app-task 17286400001234 alice status install
This function is the background part of v-start-docker-app-task: it runs the task and records its result. It refuses to run a task that v-start-docker-app-task did not start.
v-start-docker-app
Start a Docker app.
v-start-docker-app USER NAME
Example:
v-start-docker-app alice status
This function renders the Docker app NAME of USER again, checks it and starts its containers; the app then starts with the server again.
v-start-docker-app-task
Start a task of a Docker app in the background.
v-start-docker-app-task USER NAME ACTION [VERSION]
Examples:
v-start-docker-app-task alice status install
v-start-docker-app-task alice status update 2.6.0
v-start-docker-app-task alice status rollback
v-start-docker-app-task alice status snapshot
This function checks a long operation on the Docker app NAME of USER, starts it detached from the caller and prints the task ID. ACTION is install (pull, start and health check again after a failed installation), update (to VERSION, default the latest of the catalog, with a snapshot of the data and an automatic rollback), rollback (to the version before the last update) or snapshot (the database dumps of the app now). An app runs one task at a time; the state and the output are read with v-list-docker-app-task.
v-stop-docker-app
Stop a Docker app.
v-stop-docker-app USER NAME
Example:
v-stop-docker-app alice status
This function stops the containers of the Docker app NAME of USER. The app stays stopped after a reboot until it is started again.
v-suspend-docker-app
Suspend a Docker app.
v-suspend-docker-app USER NAME
Example:
v-suspend-docker-app alice status
This function stops the containers of the Docker app NAME of USER and marks it suspended: it does not start again until it is unsuspended. Its ports stay assigned.
v-unsuspend-docker-app
Unsuspend a Docker app.
v-unsuspend-docker-app USER NAME
Example:
v-unsuspend-docker-app alice status
This function lifts the suspension of the Docker app NAME of USER and starts it again unless it was stopped before.
Firewall
v-add-firewall-ban
Add firewall blocking rule.
v-add-firewall-ban IPV4_CIDR CHAIN
Example:
v-add-firewall-ban 37.120.129.20 MAIL
This function adds new blocking rule to system firewall
v-add-firewall-chain
Add firewall chain.
v-add-firewall-chain CHAIN [PORT] [PROTOCOL]
Example:
v-add-firewall-chain CRM 5678 TCP
This function adds new rule to system firewall
v-add-firewall-ipset
Add firewall ipset.
v-add-firewall-ipset NAME [SOURCE] [IPVERSION] [AUTOUPDATE] [REFRESH]
Example:
v-add-firewall-ipset country-nl "https://raw.githubusercontent.com/ipverse/rir-ip/master/country/nl/ipv4-aggregated.txt"
This function adds new ipset to system firewall
v-add-firewall-rule
Add firewall rule.
v-add-firewall-rule ACTION IPV4_CIDR PORT [PROTOCOL] [COMMENT] [RULE]
Example:
v-add-firewall-rule DROP 185.137.111.77 25
This function adds new rule to system firewall
v-change-firewall-rule
Change firewall rule.
v-change-firewall-rule RULE ACTION IPV4_CIDR PORT [PROTOCOL] [COMMENT]
Example:
v-change-firewall-rule 3 ACCEPT 5.188.123.17 443
This function is used for changing existing firewall rule. It fully replace rule with new one but keeps same id.
v-delete-firewall-ban
Delete firewall blocking rule.
v-delete-firewall-ban IPV4_CIDR CHAIN
Example:
v-delete-firewall-ban 198.11.130.250 MAIL
This function deletes blocking rule from system firewall
v-delete-firewall-chain
Delete firewall chain.
v-delete-firewall-chain CHAIN
Example:
v-delete-firewall-chain WEB
This function adds new rule to system firewall
v-delete-firewall-ipset
Delete firewall ipset.
v-delete-firewall-ipset NAME
Example:
v-delete-firewall-ipset country-nl
This function removes ipset from system and from arcpanel
v-delete-firewall-rule
Delete firewall rule.
v-delete-firewall-rule RULE
Example:
v-delete-firewall-rule SSH_BLOCK
This function deletes firewall rule.
v-list-firewall
List iptables rules.
v-list-firewall [FORMAT]
Example:
v-list-firewall json
This function of obtaining the list of all iptables rules.
v-list-firewall-ban
List firewall block list.
v-list-firewall-ban [FORMAT]
Example:
v-list-firewall-ban json
This function of obtaining the list of currently blocked ips.
v-list-firewall-ipset
List firewall ipset.
v-list-firewall-ipset [FORMAT]
Example:
v-list-firewall-ipset json
This function prints defined ipset lists
v-list-firewall-rule
List firewall rule.
v-list-firewall-rule RULE [FORMAT]
Example:
v-list-firewall-rule 2
This function of obtaining firewall rule parameters.
v-move-firewall-rule
Change firewall rule.
v-move-firewall-rule RULE DIRECTION
Example:
v-move-firewall-rule 4 up
This function is used for moving an existing firewall rule. Direction can be either "up" or "down".
If the direction is "up", the rule will be moved to a lower number (higher priority).
If the direction is "down", the rule will be moved to a higher number (lower priority).
v-stop-firewall
Stop system firewall.
v-stop-firewall NONE
Example:
v-stop-firewall
This function stops iptables
v-suspend-firewall-rule
Suspend firewall rule.
v-suspend-firewall-rule RULE
Example:
v-suspend-firewall-rule 7
This function suspends a certain firewall rule.
v-unsuspend-firewall-rule
Unsuspend firewall rule.
v-unsuspend-firewall-rule RULE
Example:
v-unsuspend-firewall-rule 7
This function unsuspends a certain firewall rule.
v-update-firewall
Update system firewall rules.
v-update-firewall NONE
Example:
v-update-firewall
This function updates iptables rules
v-update-firewall-ipset
Update firewall ipset.
v-update-firewall-ipset [REFRESH]
Example:
v-update-firewall-ipset
This function creates ipset lists and updates the lists if they are expired or ondemand
API and access keys
v-add-access-key
Generate access key.
v-add-access-key USER [PERMISSIONS] [COMMENT] [ALLOWED_IPS] [EXPIRES] [FORMAT]
Examples:
v-add-access-key admin v-purge-nginx-cache,v-list-mail-accounts comment json
v-add-access-key bob v2-observe fleet 203.0.113.7,2001:db8::/48 1830297600 json
The "PERMISSIONS" argument is optional for the admin user only. This function creates a key file in $ARCPANEL/data/access-keys/
ALLOWED_IPS limits the key to at most 20 addresses or CIDR networks, comma separated; EXPIRES is the Unix time after which the key is refused, at least an hour and at most three years ahead. Both are set once: a different restriction means a new key. A format name (json, shell, plain, csv) as the fourth argument is FORMAT, as before ALLOWED_IPS existed.
v-check-access-key
Check access key.
v-check-access-key ACCESS_KEY_ID SECRET_ACCESS_KEY COMMAND [IP] [FORMAT]
Example:
v-check-access-key key_id secret v-purge-nginx-cache 127.0.0.1 json
* Checks if the key exists; * Checks if the secret belongs to the key; * Checks if the key has expired or the client address is outside its list; * Checks if the key user is suspended; * Checks if the key has permission to run the command.
v-check-access-key-permissions
Check an access key for API v2.
v-check-access-key-permissions ACCESS_KEY_ID SECRET_FILE IP [FORMAT]
Example:
v-check-access-key-permissions 1234567890ABCDefghij /tmp/arcSecret 203.0.113.5 json
This function checks an access key for REST API v2 and prints its owner, the owner's role, its permission sets, the commands they allow and its restrictions (EXPIRES, a Unix time, and ALLOWED_IPS): * the key exists and the secret (read from SECRET_FILE) belongs to it; * the key has not expired (E_PASSWORD, like a wrong secret) and the client address is in its address list, when it has one (E_DISABLED); * the owner exists and is not suspended; * a key of another user than the administrator has permission sets. COMMANDS is "*" for an administrator's key without permission sets. Sets marked API_VERSION='2' are expanded too (API v1 skips them).
v-check-api-key
Check api key.
v-check-api-key KEY [IP]
Example:
v-check-api-key random_key 127.0.0.1
This function checks a key file in $ARCPANEL/data/keys/
v-delete-access-key
Delete access key.
v-delete-access-key ACCESS_KEY_ID
Example:
v-delete-access-key mykey
This function removes a key from in $ARCPANEL/data/access-keys/
v-generate-api-key
Generate api key.
v-generate-api-key NONE
Example:
v-generate-api-key
This function creates a key file in $ARCPANEL/data/keys/
v-list-access-key
List all API access keys.
v-list-access-key ACCESS_KEY_ID [FORMAT]
Example:
v-list-access-key 1234567890ABCDefghij json
v-list-access-keys
List all API access keys.
v-list-access-keys [USER] [FORMAT]
Example:
v-list-access-keys json
v-list-api
List api.
v-list-api API [FORMAT]
Example:
v-list-api mail-accounts json
v-list-apis
List available APIs.
v-list-apis [FORMAT]
Example:
v-list-apis json
v-revoke-api-key
Revokes api key.
v-revoke-api-key [HASH]
Example:
v-revoke-api-key mykey
This function removes a key from in $ARCPANEL/data/keys/
Imports
v-import-cpanel
Import Cpanel backup to a new user.
v-import-cpanel BACKUP [MX]
Example:
v-import-cpanel /backup/backup.tar.gz yes
Based on sk-import-cpanel-backup-to-vestacp Credits: Maks Usmanov (skamasle) and contributors: Thanks to <https://github.com/Skamasle/sk-import-cpanel-backup-to-vestacp/graphs/contributors>
v-import-directadmin
Import DirectAdmin backup to a new user.
v-import-directadmin BACKUP_FILE
Example:
v-import-directadmin /backup/backup.tar.gz
Based on sk-da-importer Credits: Maks Usmanov (skamasle), Jaap Marcus (jaapmarcus) and contributors: Thanks to <https://github.com/Skamasle/sk_da_importer/graphs/contributors>
System
v-add-sys-api-ip
Add IP address to API allow list.
v-add-sys-api-ip IP
Example:
v-add-sys-api-ip 1.1.1.1
v-add-sys-app-processes
Set up app processes.
v-add-sys-app-processes NONE
Example:
v-add-sys-app-processes
This function prepares a server for app processes: the root-owned folder of their run files, the PHP settings of the processes ($ARCPANEL/data/app-processes/.php/zz-app-processes.ini), the app process keys of the "developer" package and the 5-minute v-check-sys-app-processes job that converges the units with the records. It is safe to run again and keeps packages an administrator has changed.
v-add-sys-arcpanel
Set up the ArcPanel panel app (Laravel, web-app/).
v-add-sys-arcpanel NONE
Example:
v-add-sys-arcpanel
This function prepares the panel app that is shipped in the arcpanel package: writable directories, its configuration file with a private key, the command allow-list, the sudo rules of arcpanelweb (v-update-sys-sudoers) and the framework caches. It is safe to run again; an existing key is kept.
v-add-sys-cgroups
Enable cgroup support for user.
v-add-sys-cgroups NONE
Example:
v-add-sys-cgroup
v-add-sys-dependencies
Add PHP dependencies to ArcPanel.
v-add-sys-dependencies [MODE]
This function install PHPMailer and quoteshellarg as via composer
v-add-sys-docker
Install the Docker engine for Docker apps.
v-add-sys-docker [DATA_ROOT]
Examples:
v-add-sys-docker
v-add-sys-docker /srv/docker
This function installs Docker Engine and the Compose plugin from Docker's apt repository (key fingerprint checked), writes /etc/docker/daemon.json when it does not exist (log limits, live restore, no userland proxy, DATA_ROOT, address pools 172.30.0.0/16), enables the engine and records DOCKER_SYSTEM and DOCKER_DATA_ROOT. No hosting user gets access to the Docker socket: Docker apps are run by the v-*-docker-app commands only. It is safe to run again. DOCKER_APT_URL in arcpanel.conf overrides the repository location (mirrors).
v-add-sys-filemanager
Enable the file manager of the panel.
v-add-sys-filemanager [MODE]
Example:
v-add-sys-filemanager quiet
This function turns the file manager of the panel app on (FILE_MANAGER). ArcPanel 2.0 ships the file manager with the panel; FileGator is no longer downloaded or installed.
v-add-sys-firewall
Add system firewall.
v-add-sys-firewall NONE
Example:
v-add-sys-firewall
This function enables the system firewall.
v-add-sys-ip
Add system IP address.
v-add-sys-ip IP NETMASK [INTERFACE] [USER] [IP_STATUS] [IP_NAME] [NAT_IP]
Example:
v-add-sys-ip 203.0.113.1 255.255.255.0
This function adds IP address into a system. It also creates rc scripts. You can specify IP name which will be used as root domain for temporary aliases. For example, if you set a1.myhosting.com as name, each new domain created on this IP will automatically receive alias $domain.a1.myhosting.com. Of course you must have wildcard record *.a1.myhosting.com pointed to IP. This feature is very handy when customer wants to test domain before dns migration.
v-add-sys-mail-dnsbl
Add dnsbl entry.
v-add-sys-mail-dnsbl HOST [RESTART]
Example:
v-add-sys-mail-dnsbl zen.spamhaus.org
This function adds a new DNSBL server for Exim to check.
v-add-sys-mail-sso
Set up webmail single sign-on.
v-add-sys-mail-sso NONE
Example:
v-add-sys-mail-sso
This function sets up the webmail sign-on of the panel: the second Dovecot passdb of session passwords (auth-arcpanel-sso.conf.ext and an empty /etc/dovecot/arcpanel-sso.passwd), the cron job that removes expired sessions, and the Roundcube plugin when Roundcube is installed. It can run on every install and upgrade.
v-add-sys-malware-scan
Turn the malware scan of web files on.
v-add-sys-malware-scan [MODE]
Example:
v-add-sys-malware-scan quiet
This function turns the malware scan plugin on (MALWARE_SCAN='yes') and adds the nightly incremental scan of every user (v-scan-sys-web) to the crontab of arcpanelweb. It can run again without harm.
v-add-sys-node
Set up the Node.js manager.
v-add-sys-node NONE
Example:
v-add-sys-node
This function prepares a server for per-user Node.js runtimes: the shared download cache, the keyring of the Node.js releasers, the release index, the daily refresh of the index and the "developer" package, plus the 5-minute v-check-sys-node repair job of Node.js apps. It is safe to run again and keeps packages an administrator has changed. NODE_RELEASES_URL, NODE_SCHEDULE_URL and NODE_NVM_URL in arcpanel.conf override the download locations (mirrors, tests).
v-add-sys-package
Install a system package of the catalog.
v-add-sys-package SLUG
Example:
v-add-sys-package python
This function installs the packages of a catalog entry that are missing on this server from the distribution's apt archive (apt-get update, then apt-get install without recommends; apt waits up to 300 seconds for its lock) and records them, so v-delete-sys-package removes only what ArcPanel installed. An entry that is partly installed gets its missing packages.
v-add-sys-panel-files
Set up the file transfers of the panel app.
v-add-sys-panel-files NONE
Example:
v-add-sys-panel-files
This function creates the staging tree of the file manager below the panel app's storage directory (uploads, editor saves and download tickets, owned by arcpanelweb, mode 0700) and adds the panel app's scheduler to the arcpanelweb crontab; the scheduler removes stale uploads and tickets. It is idempotent and runs on every upgrade.
v-add-sys-php-extension
Install a PHP extension for a version.
v-add-sys-php-extension VERSION NAME
Example:
v-add-sys-php-extension 8.4 redis
This function installs the Debian package of an extension of the catalog (install/common/php/extensions.conf) for one PHP version; the package enables the module for PHP-FPM and the CLI. A conflicting extension that is enabled stops the install. When php-fpm -t fails afterwards the package is removed again (E_INVALID); when PHP-FPM does not run after the reload, the package is removed and the service restarted (E_RESTART).
v-add-sys-php-profile
Add a PHP-FPM profile.
v-add-sys-php-profile NAME FILE
Example:
v-add-sys-php-profile shop /tmp/profile
This function adds a PHP-FPM profile. FILE holds KEY='value' lines with the keys DESCRIPTION, PM (ondemand, dynamic or static), MAX_CHILDREN (1-500), START_SERVERS, MIN_SPARE and MAX_SPARE (dynamic), MAX_REQUESTS (0-100000), IDLE_TIMEOUT (ondemand, like 10s), REQUEST_TERMINATE_TIMEOUT (empty or like 300s) and the PHP limits MEMORY_LIMIT, UPLOAD_MAX_FILESIZE, POST_MAX_SIZE, MAX_EXECUTION_TIME and MAX_INPUT_VARS (empty: from php.ini). It prints a warning when MAX_CHILDREN x MEMORY_LIMIT is above the server's memory.
v-add-sys-php-profiles
Set up the PHP-FPM profiles.
v-add-sys-php-profiles NONE
Example:
v-add-sys-php-profiles
This function creates the profile store ($ARCPANEL/data/php/profiles.conf) with the shipped profiles default, small, medium and large, and rewrites the pool templates of $ARCPANEL/data/templates/web/php-fpm that still carry the pool lines of ArcPanel 2.0.0 (pm = ondemand, 8 children, 4000 requests, 10s idle) to the %php_profile% placeholder. The default profile renders exactly those lines, so existing pools do not change. Templates an administrator changed are left alone. Safe to run on every upgrade.
v-add-sys-pma-restrict
Restrict phpMyAdmin access to ArcPanel Single Sign-On only.
v-add-sys-pma-restrict [mode]
Example:
v-add-sys-pma-restrict
This function blocks direct/anonymous access to phpMyAdmin. Without a valid ArcPanel SSO token or an already established SSO session, requests are redirected to the ArcPanel login page instead of falling back to phpMyAdmin's own login form.
v-add-sys-pma-sso
Enables support for single sign on phpMyAdmin.
v-add-sys-pma-sso [mode]
Example:
v-add-sys-pma-sso
This function enables support for SSO to phpMyAdmin
v-add-sys-port-registry
Set up the port registry.
v-add-sys-port-registry NONE
Example:
v-add-sys-port-registry
This function prepares a server for the port registry: the server range and the registry switch with their defaults, the registry directory, the list of reserved ports and the nightly reconciliation job. It is safe to run again and keeps values an administrator has changed.
v-add-sys-port-reserved
Reserve a port or range.
v-add-sys-port-reserved PORT|RANGE [COMMENT]
Example:
v-add-sys-port-reserved 31000-31009 'monitoring agents'
This function adds a port or a range to the ports the registry never hands out. The ports must not be allocated to a user.
v-add-sys-quota
Add system quota.
v-add-sys-quota NONE
Example:
v-add-sys-quota
This function enables filesystem quota on /home partition Supports XFS and ext4 (both external and native quotas)
v-add-sys-rclone
Install or update rclone.
v-add-sys-rclone NONE
Example:
v-add-sys-rclone
This function installs /usr/bin/rclone from the rclone release pinned in install/upgrade/upgrade.conf (rclone_v, rclone_sha256), when rclone is missing or older than that release. The archive is checked against its SHA-256 before it is unpacked. A current rclone is left alone, so the command is safe to run on every upgrade.
v-add-sys-roundcube
Install Roundcube webmail client.
v-add-sys-roundcube [MODE]
This function installs the Roundcube webmail client.
v-add-sys-secret-key
Set up the secret store.
v-add-sys-secret-key NONE
Example:
v-add-sys-secret-key
This function creates the master key of the secret store once: $ARCPANEL/data/secrets/.master/identity (an age identity, root 0400) and its public recipient. An existing key is kept, so the command is safe to run on every upgrade. Keep a copy of the identity off the server: without it no secret can be decrypted, also not from backups.
v-add-sys-sftp-jail
Add system sftp jail.
v-add-sys-sftp-jail [RESTART]
Example:
v-add-sys-sftp-jail yes
This function enables sftp jailed environment.
v-add-sys-smtp
Add SMTP Account for logging, notification and internal mail.
v-add-sys-smtp DOMAIN PORT SMTP_SECURITY USERNAME PASSWORD EMAIL
Example:
v-add-sys-smtp example.com 587 STARTTLS test@domain.com securepassword test@example.com
This function allows configuring a SMTP account for the server to use for logging, notification and warn emails etc.
v-add-sys-smtp-relay
Add system wide smtp relay support.
v-add-sys-smtp-relay HOST [USERNAME] [PASSWORD] [PORT]
Example:
v-add-sys-smtp-relay srv.smtprelay.tld uname123 pass12345
This function adds system wide smtp relay support.
v-add-sys-snappymail
Install SnappyMail webmail client.
v-add-sys-snappymail [MODE]
This function installs the SnappyMail webmail client.
v-add-sys-ssh-jail
Add system ssh jail.
v-add-sys-ssh-jail NONE
Example:
v-add-sys-ssh-jail
This function enables ssh jailed environment.
v-add-sys-tenancy
Set up resellers.
v-add-sys-tenancy NONE
Example:
v-add-sys-tenancy
This function prepares a server for resellers: the reseller policies with their defaults, the example "reseller" package and the daily job that updates the resellers' usage totals. It is safe to run again and keeps values an administrator has changed.
v-add-sys-tool-ports
Set up the tool ports.
v-add-sys-tool-ports NONE
Example:
v-add-sys-tool-ports
This function sets up the webmail port (8086) and the database tools port (8087) when arcpanel.conf has no key for them yet: a port is turned on when its tool is installed and the port is free, otherwise its key stays empty and a warning is printed. WEBMAIL_LINK starts as "port". It runs on every install and upgrade.
v-add-sys-web-templates-meta
Install the web template metadata and the ArcPanel web templates.
v-add-sys-web-templates-meta NONE
Example:
v-add-sys-web-templates-meta
This function copies the template metadata (templates/web/meta) and the templates ArcPanel ships for NGINX (static, spa, nodejs-proxy and the other templates, with their trigger scripts) from the installed package into the server's template folder, and the wp-login.php rate limit zone of the wordpress-secure template into /etc/nginx/conf.d when it is missing (NGINX is reloaded then). Other templates are not touched and no domain is rebuilt. Safe to run on every upgrade.
v-add-sys-web-terminal
Add system web terminal.
v-add-sys-web-terminal NONE
Example:
v-add-sys-web-terminal
This function enables the web terminal.
v-add-sys-web-terminal-key
Add the key of the web terminal tickets.
v-add-sys-web-terminal-key [ROTATE]
Example:
v-add-sys-web-terminal-key
This function writes the key with which the panel signs web terminal tickets and the web terminal server checks them, readable by root and the panel user only. It keeps an existing key unless ROTATE is "yes", and can run on every upgrade.
v-change-sys-api
Enable / Disable API access.
v-change-sys-api STATUS [VERSION]
Examples:
v-change-sys-api enable api
v-change-sys-api enable v1
v-change-sys-api enable legacy
v-change-sys-api enable all
v-change-sys-api disable
# Enable access keys and REST API v2 (API_SYSTEM) # Enable REST API v1 (lib/api, API_V1) # Enable REST API v1 with the legacy hash and password login (API) # All of the above
# Disable every API and clear the allowed addresses
The switches are configuration keys only; lib/api/index.php ships in the package and reads API_V1.
v-change-sys-arcpanel-ssl
Change arcpanel ssl certificate.
v-change-sys-arcpanel-ssl SSL_DIR [RESTART]
Example:
v-change-sys-arcpanel-ssl /home/new/dir/path yes
This function changes arcpanel SSL certificate and the key.
v-change-sys-config-value
Change sysconfig value.
v-change-sys-config-value KEY VALUE
Example:
v-change-sys-config-value VERSION 1.0
This function is for changing main config settings such as COMPANY_NAME or COMPANY_EMAIL and so on.
v-change-sys-db-admin-port
Change the database tools port.
v-change-sys-db-admin-port PORT|none
Example:
v-change-sys-db-admin-port 8087
This function serves phpMyAdmin and phpPgAdmin on PORT of every address of the server, with the panel certificate, or stops serving them there with "none". It moves the reservation and the firewall rule of the port.
v-change-sys-db-alias
Change phpmyadmin/phppgadmin alias url.
v-change-sys-db-alias TYPE ALIAS
Examples:
v-change-sys-db-alias pma phpmyadmin
v-change-sys-db-alias pga phppgadmin
# Sets phpMyAdmin alias to phpmyadmin
# Sets phpPgAdmin alias to phppgadmin
This function changes the database editor url in apache2 or nginx configuration.
v-change-sys-demo-mode
Enable or disable demo mode.
v-change-sys-demo-mode ACTIVE
This function will set the demo mode variable, which will prevent usage of certain v-scripts in the backend and prevent modification of objects in the control panel. It will also disable virtual hosts for Apache and NGINX for domains which have been created.
v-change-sys-hostname
Change hostname.
v-change-sys-hostname HOSTNAME
Example:
v-change-sys-hostname mydomain.tld
This function for changing system hostname.
v-change-sys-ip-name
Change IP name.
v-change-sys-ip-name IP NAME
Example:
v-change-sys-ip-name 203.0.113.1 acme.com
This function for changing dns domain associated with IP.
v-change-sys-ip-nat
Change NAT IP address.
v-change-sys-ip-nat IP NAT_IP [RESTART]
Example:
v-change-sys-ip-nat 10.0.0.1 203.0.113.1
This function for changing NAT IP associated with IP.
v-change-sys-ip-owner
Change IP owner.
v-change-sys-ip-owner IP USER
Example:
v-change-sys-ip-owner 203.0.113.1 admin
This function of changing IP address ownership.
v-change-sys-ip-status
Change IP status.
v-change-sys-ip-status IP IP_STATUS
Example:
v-change-sys-ip-status 203.0.113.1 yourstatus
This function of changing an IP address's status.
v-change-sys-language
Change sys language.
v-change-sys-language LANGUAGE [UPDATE_USERS]
Example:
v-change-sys-language ru
This function for changing system language.
v-change-sys-php
Change default php version server wide.
v-change-sys-php VERSION
v-change-sys-php-extension
Turn a PHP extension on or off.
v-change-sys-php-extension VERSION NAME STATE [SAPI]
Example:
v-change-sys-php-extension 8.4 xdebug off fpm
This function enables (on) or disables (off) the module of an installed extension of the catalog (install/common/php/extensions.conf) with phpenmod or phpdismod, for PHP-FPM (fpm), the command line (cli) or both (empty). Required extensions cannot be turned off; turning one on checks its conflicts. A PHP-FPM change is tested with php-fpm -t and a reload, a CLI change by starting the CLI binary; on a failure the change is undone (E_INVALID, or E_RESTART when PHP-FPM stopped).
v-change-sys-php-ini
Replace the php.ini of a PHP version.
v-change-sys-php-ini VERSION SAPI FILE
Example:
v-change-sys-php-ini 8.4 fpm /tmp/php.ini
This function replaces the PHP-FPM (fpm) or command line (cli) php.ini of an installed version with FILE. The file is validated first as v-check-sys-php-ini does: errors stop the change (E_INVALID, with the findings), warnings are printed and accepted. The current file is backed up (the ten newest backups are kept), the new one is moved into place and, for fpm, PHP-FPM is reloaded; when it does not run afterwards the previous file comes back (E_RESTART).
v-change-sys-php-ini-values
Change php.ini directives of a PHP version.
v-change-sys-php-ini-values VERSION SAPI FILE
Example:
v-change-sys-php-ini-values 8.4 fpm /tmp/values
This function changes directives of the php.ini form in the PHP-FPM (fpm) or command line (cli) php.ini of an installed version. FILE holds directive=value lines (memory_limit=256M); each directive is replaced in place, or added at the end of the [PHP] section when the file does not set it, and comments are kept. The result is validated, saved and applied as v-change-sys-php-ini does.
v-change-sys-php-profile
Change a PHP-FPM profile.
v-change-sys-php-profile NAME FILE [RESTART]
Example:
v-change-sys-php-profile medium /tmp/profile
This function changes a PHP-FPM profile from FILE (the KEY='value' lines of v-add-sys-php-profile), rewrites the pool of every web domain that uses it and reloads the PHP-FPM versions concerned (unless RESTART is no). When a version does not run after the reload, the previous profile and pools come back (E_RESTART).
v-change-sys-port
Change system backend port.
v-change-sys-port PORT
Example:
v-change-sys-port 5678
This function for changing the system backend port in NGINX configuration.
v-change-sys-port-range
Change the server port range.
v-change-sys-port-range START END
Example:
v-change-sys-port-range 30000 39999
This function changes the range the port registry allocates from. It refuses a range that would leave allocated ports outside.
v-change-sys-release
Update web templates.
v-change-sys-release [RESTART]
This function for changing the release branch for the ArcPanel Control Panel. This allows the user to switch between stable and pre-release builds which will automatically update based on the appropriate release schedule if auto-update is turned on.
v-change-sys-service-config
Change service config.
v-change-sys-service-config CONFIG SERVICE [RESTART]
Example:
v-change-sys-service-config /home/admin/dovecot.conf dovecot yes
This function for changing service configuration.
v-change-sys-timezone
Change system timezone.
v-change-sys-timezone TIMEZONE
Example:
v-change-sys-timezone Europe/Berlin
This function for changing system timezone.
v-change-sys-web-terminal-port
Change system web terminal backend port.
v-change-sys-web-terminal-port PORT
Example:
v-change-sys-web-terminal-port 5678
This function for changing the system's web terminal backend port in NGINX configuration.
v-change-sys-webmail
Change webmail alias url.
v-change-sys-webmail WEBMAIL
Example:
v-change-sys-webmail YourtrickyURLhere
This function changes the webmail url in apache2 or nginx configuration.
v-change-sys-webmail-link
Change the webmail link of the panel.
v-change-sys-webmail-link port|domain
Example:
v-change-sys-webmail-link domain
This function sets where "Open Webmail" points: "port" opens the webmail port of the panel host, "domain" opens webmail.<domain>.
v-change-sys-webmail-port
Change the webmail port.
v-change-sys-webmail-port PORT|none
Example:
v-change-sys-webmail-port 8086
This function serves the webmail client on PORT of every address of the server, with the panel certificate, or stops serving it there with "none". It moves the reservation and the firewall rule of the port.
v-check-sys-app-processes
Check the app processes of all users.
v-check-sys-app-processes [MODE] [FORMAT]
Examples:
v-check-sys-app-processes
v-check-sys-app-processes repair
v-check-sys-app-processes check json
This function looks for app processes that do not match their records: import (a copy in a domain's app-process/ folder without a record, after a restore), domain-missing (the web domain was deleted), unit-missing (a record without its unit), unit-orphan (a unit without a record), process-down (a process that should run does not), process-failed (it stopped after too many restarts), process-suspended (a process of a suspended user or domain runs) and over-limit (more processes than APP_PROCESSES_MAX, reported only). MODE repair (run every 5 minutes from cron) fixes all but over-limit with v-rebuild-app-processes. The totals are the users with processes, the processes, those running and their memory in MB.
v-check-sys-docker
Check the Docker apps of all users.
v-check-sys-docker [MODE] [FORMAT]
Examples:
v-check-sys-docker
v-check-sys-docker repair json
This function compares the Docker apps of every user with their records and reports: import (an app.conf copy without a record, after a restore), suspended-running (a suspended app with running containers), domain-missing (the web domain of an app was deleted), stopped (an app that should run has no running container), public-mismatch (a port was made public or private in the registry), orphan (containers of ArcPanel projects without a record or of deleted users) and disk (the data root is more than 85 % full). MODE repair (run every 5 minutes from cron) fixes them: rebuild, stop, delete the app of a missing domain (data kept), start, render again, remove the orphan containers; it also prunes unused images older than 7 days. The result is written to data/docker/report.json.
v-check-sys-node
Check the Node.js apps and pm2 daemons of all users.
v-check-sys-node [MODE] [FORMAT]
Examples:
v-check-sys-node
v-check-sys-node repair
v-check-sys-node check json
This function looks for apps and daemons that do not match their records: import (an app.conf copy without a record, after a restore), daemon-down (apps should run but the user's daemon does not), app-missing (an app that should run is not in pm2), daemon-suspended (a suspended user's daemon runs), linger-orphan (daemon files of a user without apps), runtime-missing (the runtime of an app is not installed), domain-missing (the web domain of an app was deleted) and over-limit (more apps than NODE_APPS, reported only). MODE repair (run every 5 minutes from cron) fixes all but over-limit. The totals are the users with apps, the running daemons, the apps and the memory of the daemons in MB.
v-check-sys-packages
Check the system package catalog.
v-check-sys-packages [DIR] [FORMAT]
Examples:
v-check-sys-packages
v-check-sys-packages /root/my-catalog json
This function validates every manifest of a system package catalog (default: the catalog shipped with ArcPanel) against the manifest format: keys, slug equal to the file name, name, summary, category, package names, release overrides and provided runtimes. Exits with E_INVALID when a manifest is refused.
v-check-sys-php-ini
Check a php.ini candidate without saving it.
v-check-sys-php-ini VERSION SAPI FILE [FORMAT] [MODE]
Examples:
v-check-sys-php-ini 8.4 fpm /tmp/php.ini json
v-check-sys-php-ini 8.4 fpm /tmp/values json values
This function validates a candidate php.ini for the PHP-FPM (fpm) or command line (cli) of an installed version, as v-change-sys-php-ini does before saving: the syntax with the version's parser, the values of known directives, unknown directives (warnings), a start of PHP with the file and, for fpm, php-fpm -t. It prints the findings with their line (json: an array of {line, level, directive, message}, level error or warning) and exits 0 when the check ran; the file is valid when no finding is an error. With MODE values, FILE holds directive=value lines that are applied to the current php.ini first, as v-change-sys-php-ini-values does.
v-check-sys-ports
Reconcile the port registry with the server.
v-check-sys-ports [notify|repair]
Example:
v-check-sys-ports repair
This function compares the registry with the listening sockets and the firewall rules, prints the findings and writes them to data/ports/.report.json. With "notify", the administrator gets one notification when there are findings. With "repair", missing firewall rules of public ports are written, stale tagged rules are deleted, the files of users that no longer exist are archived and ports of web domains that no longer use them (orphan-web) are released.
v-delete-sys-api-ip
Delete ip address from allowed ip list api.
v-delete-sys-api-ip IP
Example:
v-delete-sys-api-ip 1.1.1.1
v-delete-sys-cgroups
Delete all cgroups.
v-delete-sys-cgroups NONE
Example:
v-delete-sys-cgroups
This function disables cgroups
v-delete-sys-docker
Stop the Docker engine of Docker apps.
v-delete-sys-docker [PURGE]
Examples:
v-delete-sys-docker
v-delete-sys-docker purge
This function stops and disables the Docker engine and sets DOCKER_SYSTEM to no. It refuses while a user has Docker apps. With PURGE (purge) it also removes the Docker packages, the repository and the data root with every image.
v-delete-sys-filemanager
Disable the file manager of the panel.
v-delete-sys-filemanager [MODE]
Example:
v-delete-sys-filemanager
This function turns the file manager of the panel app off (FILE_MANAGER) and removes what is left of the FileGator install of ArcPanel 1.x.
v-delete-sys-firewall
Delete system firewall.
v-delete-sys-firewall NONE
Example:
v-delete-sys-firewall
This function disables firewall support
v-delete-sys-ip
Delete system IP.
v-delete-sys-ip IP
Example:
v-delete-sys-ip 203.0.113.1
This function for deleting a system IP. It does not allow to delete first IP on interface and do not allow to delete IP which is used by a web domain.
v-delete-sys-mail-dnsbl
Delete dnsbl entry.
v-delete-sys-mail-dnsbl HOST [RESTART]
Example:
v-delete-sys-mail-dnsbl zen.spamhaus.org
This function deletes a DNSBL server from Exim.
v-delete-sys-mail-queue
Delete exim mail queue.
v-delete-sys-mail-queue none
Example:
v-delete-sys-mail-queue
This function checks for messages stuck in the exim mail queue and prompts the user to clear the queue if desired.
v-delete-sys-malware-scan
Turn the malware scan of web files off.
v-delete-sys-malware-scan [MODE]
Example:
v-delete-sys-malware-scan quiet
This function turns the malware scan plugin off (MALWARE_SCAN='no') and removes the nightly scan from the crontab of arcpanelweb. Findings, quarantined files and ignore lists are kept.
v-delete-sys-node-cache
Delete Node.js tarballs from the download cache.
v-delete-sys-node-cache [VERSION]
Example:
v-delete-sys-node-cache 22.3.0
This function removes one cached Node.js version, or every cached version when VERSION is omitted. Runtimes users have installed are not affected; the next install of a removed version downloads it again.
v-delete-sys-package
Remove a system package of the catalog.
v-delete-sys-package SLUG [FORCE]
Examples:
v-delete-sys-package ruby
v-delete-sys-package python force
This function removes the packages that v-add-sys-package installed for a catalog entry (apt-get remove, no autoremove); packages that were on the server before, and packages another entry recorded, stay. It refuses an entry that ArcPanel did not install and, unless FORCE is "force", an entry whose runtime is needed by the template of a web domain.
v-delete-sys-php-extension
Remove a PHP extension of a version.
v-delete-sys-php-extension VERSION NAME
Example:
v-delete-sys-php-extension 8.4 redis
This function purges the Debian package of an extension of the catalog (install/common/php/extensions.conf) for one PHP version and reloads PHP-FPM. Required extensions and modules that ship with PHP (toggle only) cannot be removed; neither can a package that other installed packages need (E_INUSE, naming them).
v-delete-sys-php-profile
Delete a PHP-FPM profile.
v-delete-sys-php-profile NAME [FORCE]
Example:
v-delete-sys-php-profile shop yes
This function deletes a PHP-FPM profile. The default profile cannot be deleted. A profile that web domains use or that packages name is refused (E_INUSE, with the list) unless FORCE is yes: the domains then move to the default profile and the packages no longer name it.
v-delete-sys-pma-restrict
Undo phpMyAdmin access restriction, allow its normal login form again.
v-delete-sys-pma-restrict [mode]
Example:
v-delete-sys-pma-restrict
Reverts v-add-sys-pma-restrict: phpMyAdmin falls back to its own login form again when no valid ArcPanel SSO token or session is present.
v-delete-sys-pma-sso
Disables support for single sign on PHPMYADMIN.
v-delete-sys-pma-sso [mode]
Example:
v-delete-sys-pma-sso
Disables support for SSO to phpMyAdmin
v-delete-sys-port-reserved
Delete a reserved port or range.
v-delete-sys-port-reserved PORT|RANGE
Example:
v-delete-sys-port-reserved 31000-31009
This function removes a reservation an administrator added (or one taken from a listening socket at setup). Reservations of the panel and its services cannot be removed.
v-delete-sys-quota
Delete system quota.
v-delete-sys-quota NONE
Example:
v-delete-sys-quota
This function disables filesystem quota on /home partition
v-delete-sys-sftp-jail
Delete system sftp jail.
v-delete-sys-sftp-jail NONE
Example:
v-delete-sys-sftp-jail
This function disables sftp jailed environment
v-delete-sys-smtp
Remove SMTP Account for logging, notification and internal mail.
v-delete-sys-smtp NONE
Example:
v-delete-sys-smtp
This function allows configuring a SMTP account for the server to use for logging, notification and warn emails etc.
v-delete-sys-smtp-relay
Disable system wide smtp relay support.
v-delete-sys-smtp-relay
Example:
v-delete-sys-smtp-relay
This function disables system wide smtp relay support.
v-delete-sys-snappymail
Delete SnappyMail webmail client.
v-delete-sys-snappymail None
This function removes the SnappyMail webmail client. ----------------------------------------------------------# Variables & Functions # ----------------------------------------------------------# Includes shellcheck source=/etc/arcpanel/arcpanel.conf
v-delete-sys-ssh-jail
Delete system ssh jail.
v-delete-sys-ssh-jail NONE
Example:
v-delete-sys-ssh-jail
This function disables ssh jailed environment
v-delete-sys-web-terminal
Delete web terminal.
v-delete-sys-web-terminal NONE
Example:
v-delete-sys-web-terminal
This function disables the web terminal.
v-export-rrd
Export rrd charts as json.
v-export-rrd [CHART] [TIMESPAN]
Example:
v-export-rrd chart format
v-get-sys-timezone
Get system timezone.
v-get-sys-timezone [FORMAT]
This function to get system timezone
v-get-sys-timezones
List system timezone.
v-get-sys-timezones [FORMAT]
Example:
v-get-sys-timezones json
This function checks system timezone settings
v-list-default-php
List default PHP version used by default.tpl.
v-list-default-php [FORMAT]
Example:
v-list-default-php
List the default version used by the default template
v-list-sys-arcpanel-autoupdate
List arcpanel autoupdate settings.
v-list-sys-arcpanel-autoupdate [FORMAT]
Example:
v-list-sys-arcpanel-autoupdate
This function for obtaining autoupdate settings.
v-list-sys-arcpanel-ssl
List arcpanel ssl certificate.
v-list-sys-arcpanel-ssl [FORMAT]
Example:
v-list-sys-arcpanel-ssl
This function of obtaining arcpanel ssl files.
v-list-sys-arcpanel-updates
List system updates.
v-list-sys-arcpanel-updates [FORMAT]
Example:
v-list-sys-arcpanel-updates
This function checks available updates for arcpanel packages.
v-list-sys-backups
List the backup archives of every user.
v-list-sys-backups [OWNER] [UPDATED_SINCE] [FORMAT]
Examples:
v-list-sys-backups '' '' json
v-list-sys-backups reseller1 1792231200 json
This function lists the backup archives of every user, or of OWNER and, when OWNER is a reseller, its customers, read in one process. The json format prints AS_OF (the Unix time the listing started), USERS (every user in scope), CHANGED_USERS and OBJECTS: the backup archives of each changed user as v-list-user-backups prints them. Without UPDATED_SINCE (a Unix time) every user is changed; with it, only the users whose backup.conf was modified at or after that time.
v-list-sys-clamd-config
List clamd config parameters.
v-list-sys-clamd-config [FORMAT]
Example:
v-list-sys-clamd-config
This function for obtaining the list of clamd config parameters.
v-list-sys-config
List system configuration.
v-list-sys-config [FORMAT]
Example:
v-list-sys-config json
This function for obtaining the list of system parameters.
v-list-sys-cpu-status
List system cpu info.
v-list-sys-cpu-status
Example:
v-list-sys-cpu-status
This function lists cpu information
v-list-sys-cron-jobs
List the cron jobs of every user.
v-list-sys-cron-jobs [OWNER] [UPDATED_SINCE] [FORMAT]
Examples:
v-list-sys-cron-jobs '' '' json
v-list-sys-cron-jobs reseller1 1792231200 json
This function lists the cron jobs of every user, or of OWNER and, when OWNER is a reseller, its customers, read in one process. The json format prints AS_OF (the Unix time the listing started), USERS (every user in scope), CHANGED_USERS and OBJECTS: the cron jobs of each changed user as v-list-cron-jobs prints them. Without UPDATED_SINCE (a Unix time) every user is changed; with it, only the users whose cron.conf was modified at or after that time.
v-list-sys-databases
List the databases of every user.
v-list-sys-databases [OWNER] [UPDATED_SINCE] [FORMAT]
Examples:
v-list-sys-databases '' '' json
v-list-sys-databases reseller1 1792231200 json
This function lists the databases of every user, or of OWNER and, when OWNER is a reseller, its customers, read in one process. The json format prints AS_OF (the Unix time the listing started), USERS (every user in scope), CHANGED_USERS and OBJECTS: the databases of each changed user as v-list-databases prints them. Without UPDATED_SINCE (a Unix time) every user is changed; with it, only the users whose db.conf was modified at or after that time.
v-list-sys-db-status
List db status.
v-list-sys-db-status
v-list-sys-db-status
This function lists db server status
v-list-sys-disk-status
List disk information.
v-list-sys-disk-status
Example:
v-list-sys-disk-status
This function lists disk information
v-list-sys-dns-status
List dns status.
v-list-sys-dns-status
Example:
v-list-sys-dns-status
This function lists dns server status
v-list-sys-docker
Show the state of the Docker engine of Docker apps.
v-list-sys-docker [FORMAT]
Example:
v-list-sys-docker json
This function prints whether the engine is installed (SYSTEM) and running, its versions, the data root with its used and free space in MB, the numbers of images, containers, apps and users with apps, and the last report of v-check-sys-docker (REPORT, JSON).
v-list-sys-docker-task
Show the Docker engine task.
v-list-sys-docker-task [OFFSET] [FORMAT]
Example:
v-list-sys-docker-task 0 json
This function prints the record of the engine task (ID, ACTION, STATUS, EXIT, START, END) and its output after byte OFFSET (default 0, at most 256 KB) with the next OFFSET. STATUS is running, done or failed; a running task whose process is gone is reported as failed. Without a task, STATUS is empty.
v-list-sys-dovecot-config
List dovecot config parameters.
v-list-sys-dovecot-config [FORMAT]
Example:
v-list-sys-dovecot-config
This function for obtaining the list of dovecot config parameters.
v-list-sys-info
List system os.
v-list-sys-info [FORMAT]
Example:
v-list-sys-info
This function checks available updates for arcpanel packages.
v-list-sys-interfaces
List system interfaces.
v-list-sys-interfaces [FORMAT]
Example:
v-list-sys-interfaces
This function for obtaining the list of network interfaces.
v-list-sys-ip
List system IP.
v-list-sys-ip IP [FORMAT]
Example:
v-list-sys-ip 203.0.113.1
This function for getting the list of system IP parameters.
v-list-sys-ips
List system IPs.
v-list-sys-ips [FORMAT]
Example:
v-list-sys-ips
This function for obtaining the list of system IP addresses.
v-list-sys-languages
List system languages.
v-list-sys-languages [FORMAT]
Example:
v-list-sys-languages json
This function for obtaining the available languages for ArcPanel Output is always in the ISO language code
v-list-sys-mail-dnsbl
List dnsbl config parameters.
v-list-sys-mail-dnsbl [FORMAT]
Example:
v-list-sys-mail-dnsbl
This function lists the active DNSBL servers used by Exim.
v-list-sys-mail-status
List mail status.
v-list-sys-mail-status
Example:
v-list-sys-mail-status
This function lists mail server status
v-list-sys-malware-summary
List the malware scan state of every user.
v-list-sys-malware-summary [FORMAT]
Example:
v-list-sys-malware-summary json
This function prints one row per user: USER, FINDINGS, CRITICAL, HIGH, MEDIUM (open findings), QUARANTINED, LAST_SCAN (start of the newest scan) and LAST_STATUS. Users that were never scanned have zeros and empty values. The panel narrows the list to the users a principal may see.
v-list-sys-memory-status
List virtual memory info.
v-list-sys-memory-status
Example:
v-list-sys-memory-status
This function lists virtual memory information
v-list-sys-mysql-config
List mysql config parameters.
v-list-sys-mysql-config [FORMAT]
Example:
v-list-sys-mysql-config
This function for obtaining the list of mysql config parameters.
v-list-sys-network-status
List system network status.
v-list-sys-network-status
Example:
v-list-sys-network-status
This function lists network status
v-list-sys-nginx-config
List nginx config parameters.
v-list-sys-nginx-config [FORMAT]
Example:
v-list-sys-nginx-config
This function for obtaining the list of nginx config parameters.
v-list-sys-node-apps
List the Node.js apps of every user.
v-list-sys-node-apps [OWNER] [UPDATED_SINCE] [FORMAT]
Examples:
v-list-sys-node-apps '' '' json
v-list-sys-node-apps reseller1 1792231200 json
This function lists the Node.js apps of every user, or of OWNER and, when OWNER is a reseller, its customers, read in one process from their records: the json format prints AS_OF (the Unix time the listing started), USERS (every user in scope), CHANGED_USERS and OBJECTS, the records of each changed user with the keys of nodeapps.conf. The live state of pm2 (STATUS, PID, CPU and the rest of v-list-node-apps) is not read. Without UPDATED_SINCE (a Unix time) every user is changed; with it, only the users whose nodeapps.conf, or user directory when the file is missing, was modified at or after that time.
v-list-sys-node-releases
List the Node.js majors that can be installed.
v-list-sys-node-releases [FORMAT]
Example:
v-list-sys-node-releases json
This function lists one row per Node.js major (18 and later) built for the server's architecture: MAJOR, LATEST (newest X.Y.Z), LTS (codename), STATUS (current, active, maintenance or eol), EOL (date) and CACHED (yes when LATEST is in the download cache). The index is downloaded when the cache has none yet.
v-list-sys-packages
List the system packages of the catalog.
v-list-sys-packages [FORMAT] [SCOPE]
Examples:
v-list-sys-packages
v-list-sys-packages json
v-list-sys-packages json installed
This function lists every entry of the system package catalog with its state on this server: the packages it installs on this release, whether it is available here, STATUS (installed, partial or missing), SOURCE (arcpanel when ArcPanel installed it, system when it was there before, "-" otherwise), the version, whether apt's local lists have an update (UPGRADABLE) and the web domains whose template needs a runtime it provides (DOMAINS, USED_BY). SCOPE "installed" lists only the installed and partial entries and skips the slow checks for the panel's runtime badges: UPGRADABLE is "no" and DOMAINS empty.
v-list-sys-pgsql-config
List postgresql config parameters.
v-list-sys-pgsql-config [FORMAT]
Example:
v-list-sys-pgsql-config
This function for obtaining the list of postgresql config parameters.
v-list-sys-php
Listing available PHP versions installed.
v-list-sys-php [FORMAT]
Example:
v-list-sys-php
List /etc/php/* version check if folder fpm is available
v-list-sys-php-config
List php config parameters.
v-list-sys-php-config [FORMAT]
Example:
v-list-sys-php-config
This function for obtaining the list of php config parameters of the default PHP version (REST API v1). The PHP Manager lists every version with v-list-sys-php-ini.
v-list-sys-php-extensions
List the PHP extensions of a version.
v-list-sys-php-extensions VERSION [FORMAT]
Example:
v-list-sys-php-extensions 8.4 json
This function lists the extension catalog entries (install/common/php/extensions.conf) that apply to an installed PHP version, with INSTALLED and AVAILABLE (yes or no), FPM and CLI (on or off, whether the module is enabled for that SAPI), BUILTIN ('yes' for a module compiled into the PHP binary, always on) and CATALOG='yes', followed by the modules enabled on the server that the catalog does not list (CATALOG='no', read only).
v-list-sys-php-ini
List the php.ini settings of a PHP version.
v-list-sys-php-ini VERSION SAPI [FORMAT]
Example:
v-list-sys-php-ini 8.4 fpm json
This function lists the directives of the php.ini form for the PHP-FPM (fpm) or command line (cli) php.ini of an installed version: VALUE, SOURCE (file, or default when the file does not set it) and LINE, with the file's path, SIZE and MTIME. The format raw prints the file itself.
v-list-sys-php-ini-backups
List the php.ini backups of a PHP version.
v-list-sys-php-ini-backups VERSION SAPI [FORMAT]
Example:
v-list-sys-php-ini-backups 8.4 fpm json
This function lists the backups that the php.ini commands keep of the PHP-FPM (fpm) or command line (cli) php.ini of a version (the ten newest), newest first, with their DATE and SIZE. The ID is what v-rollback-sys-php-ini takes.
v-list-sys-php-profile
List one PHP-FPM profile.
v-list-sys-php-profile NAME [FORMAT]
Example:
v-list-sys-php-profile medium json
This function lists a PHP-FPM profile with its pool settings, PHP limits, DOMAINS (the number of web domain pools that use it), PACKAGES (the packages that allow it) and BLOCK (the lines it writes into a pool).
v-list-sys-php-profiles
List the PHP-FPM profiles.
v-list-sys-php-profiles [FORMAT]
Example:
v-list-sys-php-profiles json
This function lists the PHP-FPM profiles with their pool settings and PHP limits, DOMAINS (the number of web domain pools that use the profile) and PACKAGES (the packages that allow it, comma-separated).
v-list-sys-php-versions
List the PHP versions the panel knows and their state.
v-list-sys-php-versions [FORMAT]
Example:
v-list-sys-php-versions json
This function lists every version of the PHP version catalog (install/common/php/versions.conf) and any installed version the catalog does not list, with INSTALLED (yes or no), DEFAULT (yes for the version of the system php binary), USED_BY (the USER/DOMAIN web domains whose backend template uses it, comma-separated), STATUS (active, security, eol or unknown), RELEASED, ACTIVE_UNTIL, EOL, INSTALLABLE (the catalog allows new installs), AVAILABLE (the PHP repository of the server provides it) and EXTENSIONS (the number of modules enabled for PHP-FPM).
v-list-sys-ports
List the port registry of the server.
v-list-sys-ports [FORMAT] [orphans]
Example:
v-list-sys-ports json
This function lists every allocated port with its owner, the reserved ports, the sockets listening in the server range with the account that runs them, a summary per user and the reconciliation findings (orphan sockets, missing or stale firewall rules, ...). With "orphans", only the findings are listed.
v-list-sys-proftpd-config
List proftpd config parameters.
v-list-sys-proftpd-config [FORMAT]
Example:
v-list-sys-proftpd-config
This function for obtaining the list of proftpd config parameters.
v-list-sys-rrd
List system rrd charts.
v-list-sys-rrd [FORMAT]
Example:
v-list-sys-rrd
List available rrd graphics, its titles and paths.
v-list-sys-service-log
List the last lines of a service's journal.
v-list-sys-service-log SERVICE [LINES] [FORMAT]
Example:
v-list-sys-service-log nginx 50 json
This function prints the last LINES lines (default 100, at most 500) of the systemd journal of a service that v-list-sys-services lists, for diagnosis. The service name is its unit, as for v-start-service, v-stop-service and v-restart-service, except the web terminal, whose unit is arcpanel-web-terminal. A firewall without a unit has no lines. The lines may contain addresses and paths.
v-list-sys-services
List system services.
v-list-sys-services [FORMAT]
Example:
v-list-sys-services json
This function for obtaining the list of configured system services.
v-list-sys-shells
List system shells.
v-list-sys-shells [FORMAT]
Example:
v-list-sys-shells
This function for obtaining the list of system shells.
v-list-sys-spamd-config
List spamassassin config parameters.
v-list-sys-spamd-config [FORMAT]
Example:
v-list-sys-spamd-config
This function for obtaining the list of spamassassin config parameters.
v-list-sys-sshd-port
List sshd port.
v-list-sys-sshd-port [FORMAT]
Example:
v-list-sys-sshd-port
This function for obtainings the port of sshd listens to
v-list-sys-task
Show the current or last system task.
v-list-sys-task [LINES] [FORMAT]
Example:
v-list-sys-task 100 json
This function prints the task record (ID, KIND, ARGS, STATUS, EXIT, START, END) and the last LINES lines of its output (default 100, at most 1000). STATUS is running, done or failed; a running task whose runner is gone is reported, and stored, as failed. Without a task, STATUS is empty.
v-list-sys-themes
List system themes.
v-list-sys-themes [FORMAT]
Example:
v-list-sys-themes
This function for obtaining the list of themes in the theme library and displaying them in the backend or user interface.
v-list-sys-users
List system users.
v-list-sys-users [FORMAT]
Example:
v-list-sys-users
This function for obtaining the list of system users without detailed information.
v-list-sys-vsftpd-config
List vsftpd config parameters.
v-list-sys-vsftpd-config [FORMAT]
Example:
v-list-sys-vsftpd-config
This function for obtaining the list of vsftpd config parameters.
v-list-sys-web-domains
List the web domains of every user.
v-list-sys-web-domains [OWNER] [UPDATED_SINCE] [FORMAT]
Examples:
v-list-sys-web-domains '' '' json
v-list-sys-web-domains reseller1 1792231200 json
This function lists the web domains of every user, or of OWNER and, when OWNER is a reseller, its customers, read in one process. The json format prints AS_OF (the Unix time the listing started), USERS (every user in scope), CHANGED_USERS and OBJECTS: the web domains of each changed user as v-list-web-domains prints them. Without UPDATED_SINCE (a Unix time) every user is changed; with it, only the users whose web.conf was modified at or after that time.
v-list-sys-web-status
List web status.
v-list-sys-web-status
Example:
v-list-sys-web-status
This function lists web server status
v-list-sys-webmail
Listing available webmail clients.
v-list-sys-webmail [FORMAT]
Example:
v-list-sys-webmail
labels: arcpanel mail
List available webmail clients
v-log-action
Adds action event to user or system log.
v-log-action LOG_TYPE USER
v-log-sys-login-failure
Log a failed panel login that names no valid user.
v-log-sys-login-failure IP [REASON]
Example:
v-log-sys-login-failure 203.0.113.7 'Invalid user name'
This function writes a failed login to the auth log for a user name that no other command accepts, so fail2ban counts it like any other failure.
v-quick-install-app
No description in the command header.
v-quick-install-app
v-rebuild-all
Rebuild all assets for a specified user.
v-rebuild-all USER [RESTART]
This function rebuilds all assets for a user account:
- Web domains - DNS zones - Mail domains - Databases - Cron Jobs - User account configuration
v-refresh-sys-theme
Change active system theme.
v-refresh-sys-theme NONE
Example:
v-refresh-sys-theme
This function for changing the currently active system theme.
v-repair-sys-config
Restore system configuration.
v-repair-sys-config [SYSTEM]
Example:
v-repair-sys-config
This function repairs or restores the system configuration file.
v-restart-ftp
Restart ftp service.
v-restart-ftp NONE
Example:
v-restart-ftp
This function tells ftp server to reread its configuration.
v-restart-service
Restart service.
v-restart-service SERVICE [RESTART]
Example:
v-restart-service apache2
This function restarts system service. The panel's own unit (arcpanel) is restarted two seconds later in the background, so the caller gets its answer.
v-restart-system
Restart operating system.
v-restart-system RESTART [DELAY]
Example:
v-restart-system yes
This function restarts operating system.
v-rollback-sys-php-ini
Restore a php.ini backup of a PHP version.
v-rollback-sys-php-ini VERSION SAPI ID
Example:
v-rollback-sys-php-ini 8.4 fpm 20261012-143000
This function restores a backup listed by v-list-sys-php-ini-backups. The backup is validated and applied as v-change-sys-php-ini does, so the current file is backed up first and the history only moves forward.
v-run-cli-cmd
Run cli command.
v-run-cli-cmd USER CMD [ARG...]
Example:
v-run-cli-cmd user composer require package
This function runs a limited list of cli commands with dropped privileges as the specific arcpanel user
v-run-queue-task
Run a queued command and record its result.
v-run-queue-task USER ID -- COMMAND [ARG…]
Example:
v-run-queue-task admin 17280000001234 -- /usr/local/arcpanel/bin/v-backup-user admin yes
This function runs one command that a v-schedule-* script queued. The record must exist and be queued. The command's output is appended to the task log and also written to standard output, so the redirection on the queue line (>> $ARCPANEL/log/backup.log and the others) still receives it.
When the command fails and its line is still in the pipe, the record is queued again (ERROR, ATTEMPTS) and the next pass of the queue retries it, as the queue did before the records. A line whose record is missing or finished is removed without running anything.
v-run-sys-docker-task
Run the Docker engine task started by v-start-sys-docker-task.
v-run-sys-docker-task ID [DATA_ROOT]
Example:
v-run-sys-docker-task 17286400001234
This function is the background part of v-start-sys-docker-task: it runs v-add-sys-docker and records the result. It refuses to run a task that v-start-sys-docker-task did not start.
v-run-sys-task
Run a system task started by v-start-sys-task.
v-run-sys-task ID
Example:
v-run-sys-task 17286400001234
This function is the background part of v-start-sys-task: it runs the steps of the task, prints "$ COMMAND" before each, stops at the first failure and records the result. It refuses to run a task that v-start-sys-task did not start.
v-scan-sys-web
Scan the web files of every user for malware.
v-scan-sys-web NONE
Example:
v-scan-sys-web
This function is the nightly run of the malware scan: an incremental scan (v-scan-user-web USER '' incremental nightly) of every user, one after the other. A user whose scan is already running is skipped. When the run finds new suspicious files, the administrator gets one e-mail with the number of new findings per user and domain (no file names, no contents). Prints one line per user.
v-search-command
Search for available commands.
v-search-command ARG1 [ARG...]
Example:
v-search-command web
This function searches for available ArcPanel Control Panel commands and returns results based on the specified criteria. Originally developed for VestaCP by Federico Krum <https://github.com/FastDigitalOceanDroplets/VestaCP/blob/master/files/v-search-command>
v-search-object
Search objects.
v-search-object OBJECT [FORMAT]
Example:
v-search-object example.com json
This function that allows to find system objects.
v-start-service
Start service.
v-start-service SERVICE
Example:
v-start-service mysql
This function starts system service.
v-start-sys-docker-task
Install the Docker engine in the background.
v-start-sys-docker-task [DATA_ROOT]
Example:
v-start-sys-docker-task
This function starts v-add-sys-docker detached from the caller, for the admin Docker page, and prints the task ID. The state and the output are read with v-list-sys-docker-task. One engine task runs at a time.
v-start-sys-task
Start a long server operation in the background.
v-start-sys-task KIND [ARG...]
Examples:
v-start-sys-task php 8.3,8.4 -
v-start-sys-task php-ext 8.4 redis,apcu -
v-start-sys-task plugin web-terminal on
v-start-sys-task arcpanel-update arcpanel
v-start-sys-task package python add
This function checks a system task and starts v-run-sys-task in a transient systemd unit (arcpanel-sys-task-ID), so the task outlives a restart of the panel, and prints the task ID. One task runs at a time. Kinds and arguments: php ADD DELETE PHP versions to install and to remove, comma lists or "-"; a version in use by a web domain or the system default is not removed php-ext VERSION ADD DELETE PHP extensions of one installed version to install and to remove, comma lists of catalog names or "-" plugin NAME on|off filemanager, web-terminal, quota, cgroups, firewall or malware-scan: v-add-sys-NAME or v-delete-sys-NAME arcpanel-update [PACKAGE] v-update-sys-arcpanel PACKAGE, or every package package SLUG add|delete v-add-sys-package or v-delete-sys-package of a system package of the catalog The state and the output are read with v-list-sys-task.
v-stop-service
Stop service.
v-stop-service SERVICE
Example:
v-stop-service apache2
This function stops system service.
v-update-host-certificate
Update host certificate for arcpanel.
v-update-host-certificate USER HOSTNAME
Example:
v-update-host-certificate admin example.com
This function updates the SSL certificate used for ArcPanel Control Panel.
v-update-sys-arcpanel
Update arcpanel package/configs.
v-update-sys-arcpanel PACKAGE [VERSION]
Examples:
v-update-sys-arcpanel arcpanel-php
v-update-sys-arcpanel arcpanel 2.2.2-1+ubuntu24.04
This function installs the newest version of an ArcPanel package from the ArcPanel APT repository, or VERSION when given. Valid packages: arcpanel, arcpanel-nginx, arcpanel-php and arcpanel-web-terminal. The output of apt-get is printed.
v-update-sys-arcpanel-all
Update all arcpanel packages.
v-update-sys-arcpanel-all [MODE]
Examples:
v-update-sys-arcpanel-all
v-update-sys-arcpanel-all auto
This function updates every ArcPanel package to its newest version. With the mode auto, which the automatic update cron line uses, it stays on the installed release line X.Y: it installs the newest patch release of that line, updates the engine packages only while no newer line is available, and announces a newer line to the administrator once per version (panel notification and, with UPGRADE_SEND_EMAIL, an e-mail). In auto mode the output goes to $ARCPANEL/log/autoupdate.log and only an error is printed.
v-update-sys-arcpanel-git
Install update from Git repository.
v-update-sys-arcpanel-git REPOSITORY BRANCH INSTALL
Example:
v-update-sys-arcpanel-git arc-panel-oss master install
# Will download from the arc-panel-oss/arcpanel repository # Pulls code from the master branch # install: installs package immediately # install-auto: installs package and schedules automatic updates from Git
Downloads and compiles/installs packages from GitHub repositories
v-update-sys-defaults
Update default key database.
v-update-sys-defaults [SYSTEM]
Examples:
v-update-sys-defaults
v-update-sys-defaults user
This function updates the known key/value pair database
v-update-sys-ip
Update system IP.
v-update-sys-ip NONE
Example:
v-update-sys-ip
# Intended for internal usage
This function scans configured IP in the system and register them with ArcPanel internal database. This call is intended for use on vps servers, where IP is set by hypervisor.
v-update-sys-ip-counters
Update IP usage counters.
v-update-sys-ip-counters IP
Example:
v-update-sys-ip-counters
Function updates usage U_WEB_ADOMAINS and U_SYS_USERS counters.
v-update-sys-node-releases
Refresh the Node.js release index.
v-update-sys-node-releases NONE
Example:
v-update-sys-node-releases
This function downloads index.json from the Node.js release server and the release schedule (LTS and end-of-life dates) into the cache. A failed download keeps the files of the last successful run.
v-update-sys-ports-reserved
Update the list of reserved ports.
v-update-sys-ports-reserved [listening]
Example:
v-update-sys-ports-reserved
This function rewrites the ports the registry never hands out from the panel configuration and the service configs: panel, web terminal, web, proxy, SSH, FTP and its passive range, mail, DNS and databases. Entries an administrator added are kept. With "listening", every socket that listens in the server range and has no owner in the registry is reserved too.
v-update-sys-queue
Update system queue.
v-update-sys-queue PIPE
Example:
v-update-sys-queue
This function is responsible queue processing. Restarts of services, scheduled backups, web log parsing and other heavy resource consuming operations are handled by this script. It helps to optimize system behaviour. In a nutshell Apache will be restarted only once even if 10 domains are added or deleted.
v-update-sys-rrd
Update system rrd charts.
v-update-sys-rrd NONE
Example:
v-update-sys-rrd
This function is wrapper for all rrd functions. It updates all v-update-sys-rrd_* at once.
v-update-sys-rrd-apache2
Update apache2 rrd.
v-update-sys-rrd-apache2 PERIOD
Example:
v-update-sys-rrd-apache2
This function is for updating apache rrd database and graphic.
v-update-sys-rrd-ftp
Update ftp rrd.
v-update-sys-rrd-ftp PERIOD
Example:
v-update-sys-rrd-ftp
This function is for updating ftpd rrd database and graphic.
v-update-sys-rrd-httpd
Update httpd rrd.
v-update-sys-rrd-httpd PERIOD
Example:
v-update-sys-rrd-httpd
This function is for updating apache rrd database and graphic.
v-update-sys-rrd-la
Update load average rrd.
v-update-sys-rrd-la PERIOD
Example:
v-update-sys-rrd-la
This function is for updating load average rrd database and graphic.
v-update-sys-rrd-mail
Update mail rrd.
v-update-sys-rrd-mail PERIOD
Example:
v-update-sys-rrd-mail
This function is for updating mail rrd database and graphic.
v-update-sys-rrd-mem
Update memory rrd.
v-update-sys-rrd-mem PERIOD
Example:
v-update-sys-rrd-mem
This function is for updating memory rrd database and graphic.
v-update-sys-rrd-mysql
Update MySQL rrd.
v-update-sys-rrd-mysql PERIOD
Example:
v-update-sys-rrd-mysql
This function is for updating mysql rrd database and graphic.
v-update-sys-rrd-net
Update network rrd.
v-update-sys-rrd-net PERIOD
Example:
v-update-sys-rrd-net
This function is for updating network usage rrd database and graphic.
v-update-sys-rrd-nginx
Update nginx rrd.
v-update-sys-rrd-nginx PERIOD
Example:
v-update-sys-rrd-nginx
This function is for updating nginx rrd database and graphic.
v-update-sys-rrd-pgsql
Update PostgreSQL rrd.
v-update-sys-rrd-pgsql PERIOD
Example:
v-update-sys-rrd-pgsql
This function is for updating postgresql rrd database and graphic.
v-update-sys-rrd-ssh
Update ssh rrd.
v-update-sys-rrd-ssh PERIOD
Example:
v-update-sys-rrd-ssh
This function is for updating ssh rrd database and graphic.
v-update-sys-server-id
Set the server identifier.
v-update-sys-server-id [FORMAT]
Example:
v-update-sys-server-id json
This function keeps SERVER_ID, a random UUID that API clients use to tell servers apart, in the configuration. It writes SERVER_ID and SERVER_ID_MACHINE, the SHA-256 of /etc/machine-id, when SERVER_ID is missing; when the machine identity changed (a cloned machine), it writes a new identifier and logs the change. It prints the identifier. It runs from the installers, the upgrade step, the daily queue and at boot.
v-update-sys-sudoers
Write the sudo rules of the panel user.
v-update-sys-sudoers NONE
Example:
v-update-sys-sudoers
This function writes /etc/sudoers.d/arcpanelweb: arcpanelweb may run every command of $ARCPANEL/bin through sudo, by its full path, except those of $ARCPANEL/install/common/sudo/root-only. The new file must pass visudo before it replaces the old one; otherwise the old file stays. It is run on every install and upgrade, so that the list follows the installed commands.
v-update-sys-tool-ports
Write the NGINX files of the tool ports.
v-update-sys-tool-ports [RELOAD]
Example:
v-update-sys-tool-ports yes
This function writes the NGINX files of the webmail port and the database tools port from WEBMAIL_PORT, DB_ADMIN_PORT and the installed tools, and reloads NGINX when a file changed. The commands that install a webmail client, change an alias or the panel certificate run it; RELOAD 'yes' reloads NGINX also when no file changed (a new certificate).
v-update-sys-user-homes
Bring user homes to the current layout.
v-update-sys-user-homes [USER]
Example:
v-update-sys-user-homes
This function removes from the homes of users what older versions left there for root to manage: the private key of the legacy file manager in ~/.ssh, its line in authorized_keys and the ACL that let arcpanelweb into ~/.ssh. It moves the data of Docker apps from ~/apps/<name>/data to $HOMEDIR/.arcpanel-apps/<user>/<name>/ (stopping a running app while its data moves). Every change in a home runs as the user. Without USER it works on every user. It is safe to run on every upgrade.
v-update-white-label-logo
Update white label logo's.
v-update-white-label-logo [DOWNLOAD]
Example:
v-update-white-label-logo
Replace ArcPanel logos with User created logo's