Home / Install
Install Howdah
Choose your system and get the exact commands to install, verify and roll back — one build per PHP minor version. Start in detect mode; the critical limits still block.
Your commands
Showing the default: Debian/Ubuntu + Surý + PHP 8.1 + PHP-FPM. With JavaScript, the commands below update as you change the choices above. Without it, follow the full per-platform guide in the docs.
The package ships with howdah.mode = detect. When you want to change limits or turn a layer on, the config editor builds a validated howdah.toml and the matching ini lines, with a curl command to fetch it.
-
Add the signed apt repository
The key is pinned to this repository only.
sudo install -d -m 0755 /etc/apt/keyrings curl -fsSL https://howdah.org/key.asc | sudo tee /etc/apt/keyrings/howdah.asc >/dev/null echo "deb [signed-by=/etc/apt/keyrings/howdah.asc] https://pkg.howdah.org/apt stable main" \ | sudo tee /etc/apt/sources.list.d/howdah.list -
Install the package for your PHP
sudo apt-get update sudo apt-get install php8.1-howdahThe package installs only against a PHP with the matching ABI, and enables the module for PHP 8.1.
-
Verify it is loaded, then reload your server
php -m | grep -i howdah php --ri howdah # Howdah => enabled, Mode => detect sudo systemctl reload php8.1-fpm -
Roll back at any time
sudo phpdismod -v 8.1 howdah # stop loading, keep the package sudo apt-get purge php8.1-howdah # or remove everything sudo systemctl reload php8.1-fpm
Your PHP comes from the distribution, not Surý. The package targets the Surý/Debian module layout and the matching ABI (phpapi-N). If apt reports no installation candidate for your version, your distribution's PHP has no matching build — switch to Other / stock PHP above and use the signed tarball.
A note for php-cgi / FastCGI
Howdah protects the request-parsing path the same way under CGI. It cannot cover CVE-2012-1823 (php-cgi argument injection): that query string is consumed by php-cgi during its own startup, before any PHP extension loads, so no in-PHP firewall can act on it. Use a web-server or front-proxy rule, or a patched php-cgi, for that one. See the coverage page.
The signing key is at https://howdah.org/key.asc — the same key that signs the release SHA256SUMS. Check its primary fingerprint, 1152 1035 C600 F638 31F8 2551 2087 B872 0997 807B, before trusting it. Package and metadata signatures are both enforced.