Restricting compiler access to accounts that require it

Compiler Access can limit which unprivileged accounts use the server’s managed C and C++ compilers. Apply it according to actual build requirements while keeping the broader application security model intact.

01 What you need before you begin

Inventory accounts that compile legitimate software or native dependencies. Schedule tests for those workflows and record the current compiler-access policy and allowed-user list.

02 Restrict compiler access to accounts that require it

  1. Open Compiler Access as an authorised server administrator.
  2. If the policy is to restrict unprivileged users, use the supported disable control, then open Allow specific users to use the compilers.
  3. Add only the approved accounts to the compiler group through the interface. Avoid changing compiler ownership and permissions manually without a supported reason.
  4. Test each permitted build under the actual account identity and confirm an unapproved account lacks the intended access.
  5. Review the allowed list periodically and remove access after temporary build work finishes. Check it again after account retirement or ownership changes.

03 Confirm the expected result

Necessary builds should work for approved users, and the allowed list should match the documented need. Server maintenance tasks must still operate through their authorised privileged context.

04 Troubleshoot unexpected results

If a dependency installation fails, determine whether it needs a compiler or an unavailable library before expanding access. The control does not prevent every way code can execute, and users may still run interpreted programs or already built binaries.

05 Example: permit a legitimate build without opening access for everyone

A customer application may need a compiler to install a native dependency. Confirm the dependency and build process first, because an installation error can also indicate a missing library or an unsupported runtime.

Test under the intended account identity and record the exact failure. If compiler access is genuinely required and approved, grant it to the specific account through WHM's supported control. Do not change compiler ownership or permissions broadly as a quick fix.

Should temporary build access remain enabled?

Review whether future deployments need the compiler and document the decision. Remove access that is no longer required, but avoid breaking a customer's agreed deployment process without notice. Recheck the account list during staff, ownership and service changes.

Compiler restrictions are not a replacement for application patching, isolation and careful secret management. Interpreted code and pre-built executables remain separate concerns. If you are our shared-hosting customer, contact us with the required dependency and redacted error rather than attempting to bypass the server's restrictions. We will help you assess a supported build or deployment route.

Does restricting compilers make an outdated application safe?

No. Vulnerable applications still need updates and correct permissions. Compiler restrictions are one administrative control and do not replace patching, isolation or credential management.

06 Sources and further reading

  • 0 Users Found This Useful
  • cpanel-whm, servers
Was this answer helpful?

Related Articles

Setting the default nameservers in WHM

The WHM default nameservers provide nameserver values for account provisioning on the server....

Changing the server root password in WHM

The root password controls a highly privileged server account. Change it only when you...

Using WHM disabled features for server-wide restrictions

The special disabled feature list is a server-wide restriction mechanism. It overrides ordinary...

Setting the server time and timezone in WHM

Accurate server time matters for logs, scheduled jobs, authentication and licensing. A timezone...

Setting up private nameservers for a WHM reseller

Private nameservers such as ns1.example.com and ns2.example.com let customers use nameservers...