Linode Cloud Manager
The Linode Cloud Manager in PMTAcore lets you manage your Linode (Akamai) cloud servers without leaving the application. Connect multiple Linode accounts, launch and control instances, access servers via the built-in SSH terminal, and install PowerMTA with a single click. This guide covers everything you need to get started and make the most of the Linode integration.
Overview
PMTAcore integrates directly with the Linode API v4 to provide full cloud server management from your desktop. Instead of switching between the Linode dashboard and your local tools, you can handle instance provisioning, power management, SSH access, and PowerMTA deployment all from one interface.
Key capabilities include:
- Multi-account token management with real-time instance counts
- Launch new Linode instances with custom region, plan, image, and root password
- Full instance lifecycle control: start, stop, reboot, and delete
- Built-in SSH terminal for direct server access
- One-click PowerMTA installation on supported operating systems
- Secure local storage of API tokens and instance passwords
- Automatic server sync to your PMTAcore account for admin visibility
Getting Started
Step 1: Generate a Linode API Token
Before connecting PMTAcore to your Linode account, you need a Personal Access Token from the Linode Cloud Manager:
- Log in to cloud.linode.com/profile/tokens
- Click "Create a Personal Access Token"
- Give it a descriptive label (e.g., "PMTAcore Access")
- Set the expiry as needed (no expiry recommended for uninterrupted access)
- Grant the following permissions:
- Linodes: Read/Write
- Domains: Read/Write (if you plan to manage DNS)
- Images: Read Only
- Account: Read Only
- Click "Create Token" and copy the token immediately — it will only be shown once
Step 2: Add Your Token in PMTAcore
Open PMTAcore and navigate to the ☁ Linode Cloud page from the sidebar menu. If this is your first time, you will see the token setup screen:
- Paste your Linode API token into the input field
- Click ✓ Validate & Save
- PMTAcore will verify the token against the Linode API
- Once validated, enter a friendly name for this account (e.g., "Production Account")
- The token is saved locally in your encrypted SQLite database
You can add multiple tokens for different Linode accounts. Each token is stored with a unique name, and duplicate tokens or names are automatically detected and rejected.
Step 3: Select an Account
If you have multiple saved tokens, PMTAcore shows a token selection screen where each account card displays:
- The account name you assigned
- A masked preview of the API token
- A live instance count (polled every 30 seconds)
- Access button to enter the account
- Delete button to remove the saved token
Click Access on any account to load its instances. You can switch accounts at any time using the ↔ Switch Account button in the management view header.
Managing Instances
Viewing Your Instances
After selecting an account, PMTAcore loads all your Linode instances and displays them as expandable cards. Each card shows:
- Instance name and status badge (RUNNING, OFFLINE, PROVISIONING, etc.)
- Primary IPv4 address
- Region and plan type
- PowerMTA installation status (if the OS is supported)
- Operating system badge for supported images
Click on any instance card to expand it and reveal detailed information including the instance ID, SSH command, saved password, and action buttons for SSH and PowerMTA.
Launching a New Instance
Click the 🚀 Launch Instance button in the page header to open the creation dialog. Configure:
- Label — A name for your new server
- Region — The data center location (loaded from Linode API)
- Plan — The instance type/size (Nanode, Linode, Dedicated, etc.)
- Image — The operating system (AlmaLinux 8/9 or Rocky Linux 8/9 recommended for PowerMTA)
- Root Password — The root password for SSH access
After creation, the root password is automatically saved to your local database, and the instance appears in your list. PMTAcore also triggers a server sync to your account backend.
Instance Power Controls
Each instance card includes quick-action buttons for lifecycle management:
- ▶ Start — Boot a powered-off instance
- ■ Stop — Gracefully shut down a running instance
- ↻ Reboot — Restart a running instance
- 🗑 Delete — Permanently delete the instance (with confirmation prompt)
All actions require confirmation before execution. When deleting an instance, the saved password is also removed from your local database.
SSH Terminal Access
PMTAcore includes a built-in SSH terminal so you can access your servers without switching to an external application. From any expanded instance card:
- 🖥 SSH Terminal — Opens a full terminal session directly in PMTAcore using the saved root credentials
- 💾 Save to SSH Manager — Saves the connection details to the SSH Manager for quick access later
The SSH terminal supports full terminal emulation, so you can run any command just as you would in a standard terminal. The connection uses the instance's primary IPv4 address on port 22 with the saved root password.
If no password is saved for an instance, the SSH buttons are disabled. You can enter and save a password directly from the instance's expanded details panel.
Password Management
PMTAcore securely stores root passwords for your Linode instances in a local SQLite database. Password management features include:
- Auto-save on creation — When you launch a new instance, the root password is saved automatically
- Manual entry — For existing instances without a saved password, enter one directly from the instance card
- Show/Hide toggle — View the saved password with the 👁 button, hide it again with 🔒
- Copy to clipboard — One-click copy with the 📋 button
- Edit password — Update a saved password with the ✏ button if you change it on the server
- Auto-delete — Passwords are removed when you delete an instance
All passwords are stored locally on your machine and are never transmitted to external servers except during encrypted server sync to your PMTAcore account.
PowerMTA Integration
One of the most powerful features of the Linode Manager is the ability to install PowerMTA directly on your cloud instances. PMTAcore supports automated PowerMTA deployment on:
- AlmaLinux 8
- AlmaLinux 9
- Rocky Linux 8
- Rocky Linux 9
Installation Requirements
For one-click PowerMTA installation, your instance must meet these conditions:
- Running status (instance must be powered on)
- Supported operating system image
- Saved root password
- Valid IPv4 address
- Active PMTAcore license with PowerMTA access
Installing PowerMTA
When all requirements are met, a 🚀 Install PowerMTA button appears on the instance card. Clicking it navigates you to the PowerMTA installation page pre-configured with the instance details (ID, label, IP address, and all associated IPs).
The installation process runs over SSH and includes:
- OS detection and compatibility verification
- PowerMTA package download and installation
- Firewall rule configuration
- Initial PowerMTA configuration setup
- DKIM key generation
- DNS record generation (SPF, DKIM, DMARC, MX)
After installation, the instance card shows a ✓ PMTA Installed badge. You can then access 📋 View Config to review the configuration or 🔄 Reinstall if needed.
Post-Installation DNS Setup
After a successful PowerMTA installation, PMTAcore displays all the DNS records you need to configure for your domain:
- SPF Record — TXT record authorizing your server to send email
- DKIM Record — TXT record with your generated DKIM public key
- DMARC Record — TXT record for email authentication policy
- MX Record — Mail exchanger record pointing to your server
All DNS records can be copied to your clipboard with one click for easy configuration in your domain registrar or DNS provider.
Multi-Account Workflow
PMTAcore supports managing multiple Linode accounts simultaneously. This is useful if you maintain separate accounts for different clients, projects, or environments. The typical workflow is:
- Add API tokens for each Linode account with descriptive names
- From the token selection screen, view instance counts across all accounts at a glance
- Select an account to manage its instances
- Use ↔ Switch Account to move between accounts without re-entering tokens
- Add or remove tokens as your infrastructure evolves
Instance counts are refreshed automatically every 30 seconds on the token selection screen, giving you a real-time overview of your infrastructure across all accounts.
Data Storage and Security
All Linode-related data is stored locally on your machine in an encrypted SQLite database:
- API Tokens — Stored in the
linode_tokenstable with name, token value, and creation timestamp - Instance Passwords — Stored in the
linode_instance_passwordstable keyed by instance ID - Database Location — Windows:
%LOCALAPPDATA%\pmtacore\, macOS:~/Library/Application Support/pmtacore/, Linux:~/.local/share/pmtacore/
When server sync is enabled, your Linode API key labels (not the full tokens) and server connection details are encrypted and synced to your PMTAcore account. This allows the support team to assist with troubleshooting if needed. Full API tokens are never transmitted to external servers.
Supported Linode API Operations
PMTAcore uses the following Linode API v4 endpoints:
GET /v4/profile— Token validationGET /v4/linode/instances— List all instancesPOST /v4/linode/instances— Create a new instancePOST /v4/linode/instances/{id}/boot— Boot an instancePOST /v4/linode/instances/{id}/shutdown— Shut down an instancePOST /v4/linode/instances/{id}/reboot— Reboot an instanceDELETE /v4/linode/instances/{id}— Delete an instanceGET /v4/regions— List available regionsGET /v4/linode/types— List instance plan typesGET /v4/images— List available OS imagesGET /v4/domains— List DNS domainsGET /v4/vpcs— List Virtual Private Clouds
Troubleshooting
Token Validation Fails
- Verify the token has not expired in the Linode Cloud Manager
- Ensure the token has the required permissions (Linodes: Read/Write at minimum)
- Check your internet connection — PMTAcore needs to reach
api.linode.com - If you recently regenerated the token, make sure you are using the new value
Instances Not Loading
- Click 🔄 Refresh to reload the instance list
- Switch accounts and switch back to force a fresh API call
- Check the Linode status page for any ongoing API issues
SSH Connection Issues
- Ensure the instance is in Running status
- Verify the saved password is correct (use the 👁 button to check)
- Confirm port 22 is open on the instance's firewall
- For newly created instances, wait 1-2 minutes for the server to fully boot
PowerMTA Install Button Disabled
- The instance must be running (not offline or provisioning)
- A root password must be saved for the instance
- The instance must use a supported OS (AlmaLinux 8/9 or Rocky Linux 8/9)
- An active PMTAcore license with PowerMTA access is required
Frequently Asked Questions
Is the Linode Manager free to use?
Yes, the Linode Cloud Manager feature is included free with PMTAcore. However, PowerMTA installation on Linode instances requires an active PMTAcore license. You will also need a Linode account with billing set up for creating cloud instances.
How many Linode accounts can I connect?
There is no limit. You can add as many Linode API tokens as you need, each representing a different account or project.
Are my API tokens safe?
API tokens are stored locally in your machine's SQLite database. They are never sent to PMTAcore servers. Only the token label (the name you assign) is synced for admin support purposes.
Can I manage instances created outside PMTAcore?
Yes. PMTAcore reads all instances from your Linode account via the API. Any instance visible in your Linode dashboard will appear in PMTAcore, regardless of how it was created.
What happens if I delete a token?
Deleting a token from PMTAcore only removes it from your local database. It does not revoke the token on Linode. Your Linode instances and account remain unaffected. To revoke the token entirely, do so from the Linode Cloud Manager.