How It Works
SSH access in Infisical PAM uses a Gateway deployed in your network to establish secure connections to your servers. The Gateway acts as a bridge between Infisical and your private infrastructure.Authentication Methods
Infisical PAM supports three authentication methods for SSH:| Method | Description | Use Case |
|---|---|---|
| Password | Traditional username/password authentication | Legacy systems, simple setups |
| SSH Key | Public key authentication with a private key | Standard secure access |
| Certificate | SSH certificates signed by a CA | Zero-trust, ephemeral credentials |
Certificate-Based Authentication
Certificate-based authentication allows for the use of ephemeral credentials. Infisical generates short-lived SSH certificates on-demand for each session. Benefits:- Ephemeral access: Certificates are generated per-session and expire automatically
- Centralized trust: Servers trust the Infisical CA to authorize connections
- Simplified management: Infisical handles the certificate lifecycle for each connection
- Audit trail: Each certificate is tied to a specific user and session
Prerequisites
Before configuring SSH access in Infisical PAM, ensure you have:- An Infisical Gateway deployed with network reachability to your SSH servers
- Network connectivity from the Gateway to your SSH servers on port 22 (or custom SSH port)
- SSH server credentials (password, private key, or CA setup for certificate auth)
Create the PAM Resource
The PAM Resource represents the SSH server you want to protect.Configure Connection Details
Fill in the connection details:
A friendly name for this resource (e.g.,
production-server, bastion-host)Select the Gateway that has network access to this SSH server
The hostname or IP address of the SSH server (e.g.,
192.168.1.100 or server.internal.example.com)The SSH port (default:
22)Create PAM Accounts
A PAM Account represents a specific user account on the SSH server. You can create multiple accounts per resource with different authentication methods.Password Authentication
SSH Key Authentication
Certificate Authentication
Certificate authentication requires additional setup on your SSH server to trust the Infisical CA.Configure the SSH Server
Before creating the account, you need to configure your SSH server to trust certificates signed by Infisical.Run the following command on your SSH server (requires root/sudo):This script will:
- Download the CA public key for your SSH resource
- Save it to
/etc/ssh/infisical_ca.pub - Add
TrustedUserCAKeys /etc/ssh/infisical_ca.pubto/etc/ssh/sshd_config - Validate and restart the SSH service
First-time setup: The CA key pair is generated automatically when you first call the setup endpoint. Subsequent calls will return the same CA public key.
Add Account in Infisical
A friendly name for this account
Select Certificate
The SSH username that the certificate will be issued for. This user must exist on the SSH server.
Unlike password or key authentication, you don’t need to provide any credentials. Infisical will generate a new key pair and certificate for each session.