Version 1.661

Released: 2024-03-20

Tools to fix database definer issues evolution new

The Manage Database page (Databases -> Manage Database) is extended to detect and report if there are any missing definer problems in the selected database.

It will show a message with explanation of the issue and offer a button to automatically fix it.

Single database overview

New command for main server certificate issue with ACME custombuild new

Script letsencrypt.sh is updated to have a dedicated sub-command server_cert for issuing main server certificate (for server hostname).

Usage example:

/usr/local/directadmin/scripts/letsencrypt.sh server_cert

It is no longer needed to pass server hostname, it will be collected from directadmin.conf.

This command has an advanced mode for issuing certificates with multiple alternative domain names or non standard certificate key types. Example:

/usr/local/directadmin/scripts/letsencrypt.sh server_cert `hostname -f`,additional.example.com ec384

A separate command for host certificate issuance avoids ambiguity between main server hostname and user owned domains.

DirectAdmin web server process manager new

The way internal DirectAdmin web server handles requests and manages directadmin processes is greatly improved in this release.

Older versions used only one configuration parameter numservers (default 10). It used to configure how many sub-process for request handling is started. Process manager did not make a clear distinction between process that are waiting for request to arrive and processes that are actually processing a request. Using a single number made it hard to consume high concurrent request rates. To handle more requests concurrently this number had to be increased, but if it is increased during times when server is not actively used it used to keep many processes started.

New process manager knows how many processes are waiting for requests to arrive and how many processes are actually already processing a request. It uses two configuration parameters:

  • numservers (default 50) sets maximum number of directadmin processes that can be started for requests processing. It includes both types of processes the ones already processing a request and the ones waiting for new requests.
  • numservers_waiting (default 10) sets maximum number of directadmin processes that can be started to wait for new requests to arrive.

This means using default configuration on an idle server there will be only 10 directadmin processes started and waiting for new requests to arrive. Once server gets busy it will keep starting more processes reaching up to 50.

In other words it means it can now be processing up to 50 requests concurrently (before new requests starts to be rate-limited) but if the server is idle there will be only 10 processes waiting for new requests. It allows easily absorbing higher request spikes without keeping to many processes idling when server is not busy.

For anyone who used custom numservers configuration values we recommend reverting back to the new defauls. New defaults are suitable for much wider range of server usage patterns.

Further mailing list validation evolution improved

In the mailing list management page (E-mail Manager -> Mailing Lists -> click any mailing list name) the input field only displayed validation errors if it was completely empty. Now it also validates whether input is in correct format and already exists within given mailing list.

User package limits validation evolution improved

When working with user packages, most limits will now display validation error if input value is less than 0.

Database widgets upgrade evolution improved

Database widgets for Refreshed and other layouts were upgraded to use the new database API endpoints.

Software version changes custombuild improved

  • phalcon5 updated from 5.6.1 to 5.6.2
  • composer updated from 2.7.1 to 2.7.2
  • MySQL 8.0 updated from 8.0.35 to 8.0.36
  • PHP 8.3 updated from 8.3.3 to 8.3.4
  • PHP 8.2 updated from 8.2.16 to 8.2.17

ClamAV integration with ProFTPD and Pure-FTPd custombuild improved

An integration between ClamAV and both ProFTPD and Pure-FTPd is upgraded. Virus scanning module is reconfigured to use streaming mode of operations. This allows scanning files that would not be reachable for the main ClamAV daemon due to restricted permissions.

Server IPv6 address detection script improved

Script scripts/get_main_ip6.sh is updated to avoid relying on external services. Instead of performing ping and HTTP request default server IPv6 address will be detected from system configuration only.

Missing domain names in Safari browser evolution fixed

The Domain Setup widget styling was improved, resolving the issue where domain names were not being displayed in the Safari browser.

Don't allow deletion of reserved skins evolution fixed

In the skin management page (Admin Tools -> Skin Manager) it is no longer possible to attempt deletion of skins reserved by the system.

Don't show disabled admin and reseller level menu entries evolution fixed

If an admin or reseller user is logged in using a login key, almost all admin/reseller level menu entries are shown regardless of whether they're allowed by that login key or not. With this change, only pages that are accessible will be shown.

Removed support self daemonize after start, CLI flag --daemonize removed

When starting DirectAdmin server via CLI, optional flag --daemonize will be ignored and server will always start in foreground.

This flag was need for supporting legacy systems that does not use systemd.

Removed login-as feature from CMD_LOGIN removed

CMD_LOGIN will no longer create login-as session. For backwards compatability, deprecation notice is shown and eventually correct login-as request gets sent.

Legacy skins should switch to POST /api/session/login-as/switch and POST /api/session/login-as/return.

Example could be found in ./data/skins/enhanced/reseller/show_user.html

Last Updated: