Infisical

Install and maintain Infisical on Ubuntu

Infisical Core 0.162.14 is installed as its pinned native Debian package on Ubuntu 24.04 x86-64, reconfigured with infisical-ctl, and proxied by Nginx.

How this guide was prepared: This is the command-line equivalent of the current Sive AppStore installation playbook. It covers the application installation and the parts you maintain after deployment. Platform provisioning, billing integration, and one-time orchestration are intentionally omitted.

Before you start

  • Use a clean, supported Ubuntu server with root or sudo access.
  • Point app.example.com to the server before requesting a public TLS certificate.
  • Replace every value written as CHANGE_ME and store the generated credentials in a password manager.
  • Take a snapshot before changing an existing installation.
  • Ubuntu 24.04 or newer on x86-64.
  • A dedicated domain because SITE_URL is set to the public endpoint.
Important: Infisical protects other systems’ secrets. Secure its backups, configuration, encryption keys, and first-account registration more strictly than ordinary application data.

What the AppStore installation creates

  • Pinned infisical-core Debian package version 0.162.14-1
  • Configuration under /etc/infisical
  • Infisical runit/systemd service and local API on port 8080
  • Nginx reverse proxy and optional Let’s Encrypt TLS

1. Install package prerequisites

sudo apt update
sudo apt install -y --no-install-recommends ca-certificates curl nginx openssl \
  postgresql postgresql-contrib qemu-guest-agent redis-server \
  certbot python3-certbot-nginx ufw
sudo systemctl enable --now postgresql redis-server nginx qemu-guest-agent

2. Create the database, secrets, and install the verified package

The image creates a PostgreSQL database, generates separate encryption/authentication secrets, writes a mode-0600 configuration, and verifies the exact package checksum before installation.

sudo -u postgres psql
CREATE ROLE infisical WITH LOGIN PASSWORD 'CHANGE_ME_DB_PASSWORD';
CREATE DATABASE infisical OWNER infisical;
GRANT ALL PRIVILEGES ON DATABASE infisical TO infisical;
\q

sudo install -d -o root -g root -m 0700 /etc/infisical
openssl rand -hex 16
openssl rand -base64 32
sudo nano /etc/infisical/infisical.rb
# Set ENCRYPTION_KEY, AUTH_SECRET, DB_CONNECTION_URI, REDIS_URL, SITE_URL, PORT=8080, and TELEMETRY_ENABLED=false.
sudo chmod 0600 /etc/infisical/infisical.rb

curl -fL 'https://artifacts-infisical-core.infisical.com/deb/pool/stable/i/in/infisical-core_0.162.14-1_amd64.deb' -o /tmp/infisical-core.deb
printf '%s  %s\n' 'ffd8fe2ebaa329744bbaa0ef83a2812ae2ca3075133480ebf22faac4cbb8f63c' '/tmp/infisical-core.deb' | sha256sum --check -
sudo apt install -y /tmp/infisical-core.deb
sudo infisical-ctl version
sudo infisical-ctl reconfigure
sudo apt-mark hold infisical-core

3. Set SITE_URL and configure Nginx

Set the public URL in /etc/infisical/infisical.rb, reconfigure, and proxy Nginx to the local service on port 8080.

sudo nano /etc/infisical/infisical.rb
# infisical_core['SITE_URL'] = 'https://app.example.com'
sudo infisical-ctl reconfigure
sudo nginx -t
sudo systemctl reload nginx
sudo certbot --nginx -d app.example.com -m admin@example.com --agree-tos --redirect

4. Create the first account

Verify both the local and proxied status endpoints, then create the first account immediately in the web interface.

curl -f http://127.0.0.1:8080/api/status
curl -f https://app.example.com/api/status

Important files and data

  • Infisical configuration: /etc/infisical/infisical.rb
  • Infisical logs: /var/log/infisical-core/
  • Nginx site: /etc/nginx/sites-available/infisical
  • Package state: inspect with dpkg -l infisical-core

Health checks and logs

Run these checks after installation and after each upgrade:

sudo infisical-ctl status
curl -f http://127.0.0.1:8080/api/status
sudo systemctl status infisical-runsvdir nginx --no-pager
sudo tail -n 100 /var/log/infisical-core/infisical-core/current

Routine maintenance

Review release notes and take a backup or snapshot before upgrading. Use the following playbook-aligned commands as the starting point:

sudo infisical-ctl status
# Back up and test a release before removing the hold.
sudo apt-mark unhold infisical-core
sudo apt install ./SELECTED_infisical-core_amd64.deb
sudo infisical-ctl reconfigure
sudo apt-mark hold infisical-core

Backup scope

  • Infisical’s database and application data using the vendor-supported backup method
  • /etc/infisical and every encryption/signing key required to decrypt the backup
  • Nginx and TLS configuration

A usable backup needs both application files and application data. Test restoration on a separate server; an untested backup is not a recovery plan.

Troubleshooting

  • Confirm DNS with dig +short app.example.com before retrying Certbot.
  • Test the web-server configuration before reloading it: sudo nginx -t or sudo apache2ctl configtest.
  • Check free space with df -h and listening ports with sudo ss -ltnup.
  • If a service fails, inspect its systemd journal before changing configuration.
  • If the local API works but the public URL fails, inspect the Nginx server name and proxy configuration.
  • If login redirects to the wrong URL, correct SITE_URL and rerun sudo infisical-ctl reconfigure.

Security notes

  • Do not paste passwords, API keys, repository credentials, private keys, or access tokens into tickets or public logs.
  • Expose only the documented public ports. Keep database and application backend ports bound to localhost or a private network.
  • Keep SSH access working before enabling UFW, then allow only the ports this guide lists.
  • Renewal can be tested safely with sudo certbot renew --dry-run where Certbot manages TLS.
  • 0 Els usuaris han Trobat Això Útil
Ha estat útil la resposta?

Articles Relacionats

ERPNext v15

Install and maintain ERPNext v15 on Ubuntu ERPNext v15 is installed with Frappe Bench, Node.js...

Open-EMR v7.0.3

Install and maintain Open-EMR v7.0.3 on Ubuntu OpenEMR 7.0.3 is built from the rel-7.0.3 source...

ERPNext v14

Last Updated: 31 August 2025Applies to: Ubuntu 24.04 LTS (fresh server recommended)Skill Level:...

WordPress

Install and maintain WordPress on Ubuntu WordPress is installed below a domain-specific Apache...

Joomla

Install and maintain Joomla on Ubuntu Joomla is installed from the latest selected release under...