
You installed Pterodactyl. Users create accounts. They click "Forgot Password" and nothing arrives. No welcome emails. No server creation confirmations. The panel works perfectly, but it is completely silent on email.
This is one of the most common Pterodactyl setup issues. The panel needs an external email service to send messages. It does not include a built-in mail server. Postmark is one of the cleanest options because it gives you 100 free emails per month on the developer tier and has near-instant delivery.
Step 1: Create a Postmark Account
Go to postmarkapp.com and sign up. After confirming your email, you land on the dashboard.
- Click "Servers" in the top navigation
- Click "Create Server"
- Give it a name like "Panel Notifications"
- Open the server and go to "API Tokens"
- Copy the "Server API Token". You need this for the panel configuration
Step 2: Verify Your Sending Domain
Postmark requires domain verification so your emails do not land in spam.
- In Postmark, go to "Sender Signatures"
- Click "Add Domain"
- Enter your domain (e.g. panel.space-node.net)
- Postmark gives you DNS records to add
Add these DNS records to your domain registrar:
| Type | Host | Value | |---|---|---| | TXT | _dmarc.yourdomain.com | v=DMARC1; p=none | | CNAME | pm-bounces.yourdomain.com | pm.mtasv.net | | TXT | yourdomain.com | (Postmark SPF verification string) | | CNAME | (DKIM selector).yourdomain.com | (Postmark DKIM value) |
Postmark shows you the exact values to copy. After adding the records, click "Verify" in the Postmark dashboard. DNS propagation takes 5 to 60 minutes.
Step 3: Configure Pterodactyl
SSH into your panel server and navigate to the Pterodactyl installation directory:
cd /var/www/pterodactyl
Run the mail environment setup command:
php artisan p:environment:mail
The command asks a series of questions:
Mail Driver: smtp
SMTP Host: smtp.postmarkapp.com
SMTP Port: 587
Encryption: tls
Username: (paste your Postmark Server API Token here)
Password: (paste the same Postmark Server API Token here)
Mail From Address: noreply@yourdomain.com
Mail From Name: Your Panel Name
Postmark uses the API token as both the SMTP username and password. This is not a mistake. That is how their SMTP authentication works.
After answering all questions, the command updates your .env file automatically. You can verify by checking:
cat .env | grep MAIL
You should see:
MAIL_DRIVER=smtp
MAIL_HOST=smtp.postmarkapp.com
MAIL_PORT=587
MAIL_USERNAME=your-api-token
MAIL_PASSWORD=your-api-token
MAIL_FROM=noreply@yourdomain.com
MAIL_FROM_NAME=Your Panel Name
MAIL_ENCRYPTION=tls
Step 4: Clear Config Cache and Test
Clear the cached configuration so the panel picks up the new settings:
php artisan config:clear
php artisan queue:restart
Now test by triggering a password reset from the panel login page. You should receive the email within seconds.
Troubleshooting
Emails still not sending:
Check the queue worker. Pterodactyl sends emails through a background queue. If the queue worker is not running, emails pile up and never send.
php artisan queue:work --queue=high,standard,low
For production, this should be managed by a process supervisor like systemd or supervisord. Check if the pteroq service is running:
systemctl status pteroq
If it is inactive, start and enable it:
systemctl start pteroq
systemctl enable pteroq
Emails going to spam:
Your DNS verification is incomplete. Go back to Postmark and confirm that all four DNS records (SPF, DKIM, DMARC, bounce) show green checkmarks. Incomplete verification causes email providers to flag your messages as suspicious.
"Connection could not be established" error:
Your server's firewall is blocking outbound connections to port 587. Open it:
sudo ufw allow out 587/tcp
Why Postmark Over Other Services
| Service | Free Tier | Delivery Speed | Setup Complexity | |---|---|---|---| | Postmark | 100 emails/month | Near instant | Low | | Mailgun | 100 emails/day for 3 months | Fast | Medium | | SendGrid | 100 emails/day | Fast | Medium | | SMTP2GO | 1000 emails/month | Fast | Low | | Self-hosted (Postfix) | Unlimited | Varies | Very High (and emails often land in spam) |
For a game server panel, you send a small number of emails (password resets, server notifications). Postmark's free tier covers this easily and their delivery reputation is excellent.
On Space-Node, the panel comes pre-configured with email notifications. You do not need to set up any of this yourself. Check the plans here.
