This guide provides step-by-step instructions on how to transfer emails from cPanel to FastPanel using Semaphore. Follow these steps carefully to ensure a smooth and successful email migration.
Step 1: Log in to Semaphore #
- Go to the Semaphore dashboard.
- Log in using your credentials.

Step 2: Edit the Environment Tab #
- On the left sidebar, click on Environment.
- Locate the “Emails Transfer – cPanel to Fastpanel” Environment file on the right side.
- Click Edit to modify the file.

Edit the Following Variables: #
- Domain:
your-domain.com
(Replace with your actual domain name.) - Cpanel_user:
your-cpanel-username
(Replace with your cPanel username.) - Common_Password:
your-password
(Replace with the common password for the emails.)

Important Note: #
- Your password MUST NOT contain a semi-colon (
;
). This is because FastPanel expects a list of emails to be imported, separated by semi-colons. Including a semi-colon in your password will cause the import process to fail.
Example of FastPanel’s Expected Input: #
host.hostname.cloud;[email protected];fnb35HAG7ar;[email protected] host.hostname.cloud;[email protected];fnb35HAG7ar;[email protected]
- host.hostname.cloud: The source server hostname.
- [email protected]: The email address to be transferred.
- fnb35HAG7ar: The password for the email.
After editing, click Save.
Step 3: Edit the Inventory Tab #
- On the left sidebar, click on Inventory.
- Locate the “Emails Transfer – cPanel to Fastpanel” Inventory file on the right side.
- Click Edit to modify the file.
#

Edit the Following Variables: #
Source Server: #
[source_server] server.hostname.cloud:22
- Replace
server.hostname.cloud
with the hostname of your cPanel server. :22
refers to the SSH port (default is 22).
Target Server: #
[target_server] server.hostname.com:22
- Replace
server.hostname.com
with the hostname of your FastPanel server. :22
refers to the SSH port (default is 22).
Target Server Variables: #
[target_server:vars] ansible_ssh_user=user ansible_ssh_pass=password ansible_ssh_private_key_file=null
- Replace
user
andpassword
with your FastPanel server’s SSH credentials. - If using an SSH key, replace
null
with the path to your private key file.
After editing, click Save.

Step 4: Run the Task Template #
- Click on the Task Templates tab.
- Filter the templates by selecting Transfers.
- Locate and click on the “Emails Transfer – cPanel to Fastpanel” template.
- Click Run to initiate the
fastpanel.yml
Ansible playbook.
What Happens Next: #
- The script will begin transferring emails from cPanel to FastPanel.
- The time taken depends on the number of emails and their sizes.
- Once completed, you will see a success message.

Click Run

Transfer in Progress.

Transfer complete and successful.

Step 5: Confirm Email Transfer #
- Log in to your FastPanel server.
- Navigate to the site where you transferred the emails.
- Click on Mail > Mailboxes.
- Verify that all your emails are listed.

Mailboxes.

Email boxes available.

Conclusion #
You have successfully transferred your emails from cPanel to FastPanel using Semaphore. If you encounter any issues, double-check the variables and ensure your password does not contain a semi-colon (;
).