Client Registration Overview
Manage target agent registration and approval for secure deployments.
What is Client Registration?
Section titled “What is Client Registration?”Client registration is the process by which Tarsus agents (targets) establish trust with Mantis:
Registration Workflow
Section titled “Registration Workflow”1. Agent Generates Certificate
Section titled “1. Agent Generates Certificate”When a Tarsus agent starts, it automatically generates a self-signed certificate if one is not configured:
# Tarsus generates certificate on first run and startstarsus run
# Output:# Generated certificate with thumbprint:# AB:CD:EF:12:34:56:78:90:AB:CD:EF:12:34:56:78:90:...# Waiting for registration approval...2. Agent Requests Registration
Section titled “2. Agent Requests Registration”The agent connects to Mantis and submits its certificate:
┌─────────────────────────────────────────────────────────────┐│ Registration Request │├─────────────────────────────────────────────────────────────┤│ ││ Client Name: web-prod-01 ││ Hostname: web-prod-01.example.com ││ IP Address: 192.168.1.100 ││ Machine ID: abc123def456 ││ ││ Certificate Thumbprint: ││ AB:CD:EF:12:34:56:78:90:AB:CD:EF:12:34:56:78:90:... ││ ││ Status: Pending ││ │└─────────────────────────────────────────────────────────────┘3. Administrator Reviews
Section titled “3. Administrator Reviews”Administrators see pending registrations in Lens:
┌─────────────────────────────────────────────────────────────┐│ Pending Registrations (3) │├─────────────────────────────────────────────────────────────┤│ ││ ┌────────────────┬────────────────┬──────────────────────┐││ │ Client │ Hostname │ Registered │││ ├────────────────┼────────────────┼──────────────────────┤││ │ web-prod-01 │ 192.168.1.100 │ 5 minutes ago │││ │ web-prod-02 │ 192.168.1.101 │ 3 minutes ago │││ │ api-prod-01 │ 192.168.1.110 │ 1 minute ago │││ └────────────────┴────────────────┴──────────────────────┘││ │└─────────────────────────────────────────────────────────────┘4. Approve or Reject
Section titled “4. Approve or Reject”After verifying the agent is legitimate:
| Action | Result |
|---|---|
| Approve | Agent can receive deployments |
| Reject | Registration marked as Revoked, agent cannot connect until re-registered |
| Ignore | Remains pending |
Registration Status
Section titled “Registration Status”| Status | Description | Can Deploy? |
|---|---|---|
| Pending | Awaiting administrator approval | No |
| Approved | Authorized to receive deployments | Yes |
| Revoked | Access denied (rejected while pending, or revoked after approval) | No |
Registration Methods
Section titled “Registration Methods”Manual Registration (Default)
Section titled “Manual Registration (Default)”Most secure method - requires administrator approval:
- Agent generates certificate and registers
- Administrator verifies agent identity
- Administrator approves registration
- Agent begins receiving deployments
Token-Based Registration
Section titled “Token-Based Registration”Registration using pre-shared tokens:
- Administrator creates registration token
- Token is configured on agent
- Agent registers with token
- Automatically approved (if token allows)
See Registration Tokens for details.
Pre-Registration
Section titled “Pre-Registration”Register a thumbprint before the agent connects:
- Administrator adds thumbprint manually
- Agent generates certificate with that thumbprint
- Agent connects and is automatically recognized
- Registration is immediately approved
See Certificate Thumbprints for details.
Viewing Registrations
Section titled “Viewing Registrations”Registration List
Section titled “Registration List”┌─────────────────────────────────────────────────────────────┐│ Client Registrations │├─────────────────────────────────────────────────────────────┤│ ││ Filter: [All ▼] Search: [_______________] ││ ││ ┌────────────────┬────────────┬────────────┬────────────┐ ││ │ Client │ Status │ Hostname │ Last Seen │ ││ ├────────────────┼────────────┼────────────┼────────────┤ ││ │ web-prod-01 │ ● Approved │ 192.168... │ 2 min ago │ ││ │ web-prod-02 │ ● Approved │ 192.168... │ 5 min ago │ ││ │ api-prod-01 │ ○ Pending │ 192.168... │ 1 min ago │ ││ │ old-server │ ✗ Revoked │ 192.168... │ 30 days │ ││ └────────────────┴────────────┴────────────┴────────────┘ ││ ││ Showing 4 of 4 registrations ││ │└─────────────────────────────────────────────────────────────┘Registration Detail
Section titled “Registration Detail”┌─────────────────────────────────────────────────────────────┐│ Registration: web-prod-01 │├─────────────────────────────────────────────────────────────┤│ ││ Status: ● Approved ││ ││ ───────────────────────────────────────────────────────── ││ ││ Client Information: ││ ┌───────────────────────────────────────────────────────┐ ││ │ Client Name: web-prod-01 │ ││ │ Hostname: web-prod-01.example.com │ ││ │ IP Address: 192.168.1.100 │ ││ │ Machine ID: abc123def456789 │ ││ └───────────────────────────────────────────────────────┘ ││ ││ Certificate: ││ ┌───────────────────────────────────────────────────────┐ ││ │ Thumbprint: AB:CD:EF:12:34:56:78:90:AB:CD:EF:12:... │ ││ │ [View Full Certificate] │ ││ └───────────────────────────────────────────────────────┘ ││ ││ Timeline: ││ ┌───────────────────────────────────────────────────────┐ ││ │ Registered: January 15, 2024 10:30 AM │ ││ │ Approved: January 15, 2024 10:35 AM by admin │ ││ │ Last Seen: January 20, 2024 2:15 PM │ ││ └───────────────────────────────────────────────────────┘ ││ ││ [Revoke] ││ │└─────────────────────────────────────────────────────────────┘Via CLI
Section titled “Via CLI”List Registrations
Section titled “List Registrations”Client certificate registrations are managed with mantisctl cert.
# List all registrationsmantisctl cert list
# Filter by statusmantisctl cert list --status pendingmantisctl cert list --status approvedmantisctl cert list --status revokedView Registration Details
Section titled “View Registration Details”# Show a registration by ID or thumbprint prefixmantisctl cert show <registration-id>
# Output:# ID: 550e8400-e29b-41d4-a716-446655440000# Client: web-prod-01# Status: approved# Hostname: web-prod-01.example.com# IP Address: 192.168.1.100# Thumbprint: ABCDEF1234567890...# Registered: 2024-01-15 10:30:00# Approved: 2024-01-15 10:35:00 by admin# Last Seen: 2024-01-20 14:15:00Approve Registration
Section titled “Approve Registration”# Approve a pending registration (by ID or thumbprint prefix)mantisctl cert approve <registration-id>
# Approve with notesmantisctl cert approve <registration-id> \ --notes "Verified via hostname and IP"Revoke Registration
Section titled “Revoke Registration”# Revoke an approved registrationmantisctl cert revoke <registration-id> \ --reason "Server decommissioned"Security Considerations
Section titled “Security Considerations”Verify Before Approving
Section titled “Verify Before Approving”Always verify the agent’s identity:
| Verification | Method |
|---|---|
| Hostname | Matches expected server name |
| IP Address | From expected network range |
| Thumbprint | Matches pre-shared value (if pre-registered) |
| Timing | Registration matches expected deployment |
Thumbprint Exchange
Section titled “Thumbprint Exchange”For high-security environments, exchange thumbprints out-of-band:
- Generate certificate on target server
- Record thumbprint securely
- Pre-register thumbprint in Mantis
- Start Tarsus agent
- Registration auto-approves
Revocation
Section titled “Revocation”Revoke registrations when:
- Server is being decommissioned
- Security incident detected
- Certificate compromise suspected
- Agent misbehavior observed
Best Practices
Section titled “Best Practices”1. Review Pending Registrations Promptly
Section titled “1. Review Pending Registrations Promptly”Don’t let registrations sit pending:
| Practice | Benefit |
|---|---|
| Regular review schedule | Catch rogue agents quickly |
| Alert on new registrations | Immediate awareness |
| Auto-reject after timeout | Prevent stale entries |
2. Use Registration Tokens for Automation
Section titled “2. Use Registration Tokens for Automation”For large-scale deployments:
# Create token for automated registration (~365 days)mantisctl registration create --name "CI/CD Deployments" \ --max-uses 100 \ --expires-hours 8760 \ --auto-approve true3. Document Approval Decisions
Section titled “3. Document Approval Decisions”Add notes when approving:
mantisctl cert approve <id> \ --notes "Ticket: OPS-1234, verified by infrastructure team"4. Audit Registrations Regularly
Section titled “4. Audit Registrations Regularly”Review approved registrations periodically:
- Remove revoked entries
- Verify active agents are still needed
- Check for unusual registration patterns
Troubleshooting
Section titled “Troubleshooting”Registration Not Appearing
Section titled “Registration Not Appearing”Cause: Network connectivity issue
Solution:
- Verify Tarsus can reach Mantis server
- Check firewall rules
- Confirm TLS certificate is valid
Cannot Approve Registration
Section titled “Cannot Approve Registration”Cause: Insufficient permissions
Solution:
- Verify user has registration management role
- Check RBAC configuration
- Contact administrator
Agent Shows “Pending” After Approval
Section titled “Agent Shows “Pending” After Approval”Cause: Agent hasn’t reconnected
Solution:
- Restart Tarsus agent
- Check agent logs for errors
- Verify network connectivity
Next Steps
Section titled “Next Steps”- Approving Registrations - Detailed approval workflow
- Registration Tokens - Automated registration
- Certificate Thumbprints - Pre-registration workflow
