Panellicense

Pull a live WordPress site into Softaculous with Remote Import

Use Softaculous Remote Import with SFTP to pull a live WordPress install from another host into managed Softaculous in minutes.

5 min readUpdated 2026-05-16remote-import · wordpress · migration · sftp
schema: HowToschema: FAQPage

Remote Import is the quickest way to bring a WordPress site onto a cPanel server you already manage with Softaculous, without exporting archives by hand or running All-in-One WP Migration over HTTP. It opens an SSH tunnel to the source host, rsyncs the docroot, and pipes a mysqldump over the same connection — so a 4 GB site usually lands in under twenty minutes on a 1 Gbps link.

This guide covers the cPanel flow, the SSH credentials Softaculous actually needs, and the three failure modes you will hit if you skip the source-host preparation.

Run the import from cPanel

Open cPanel → Softaculous Apps Installer → WordPress → Remote Import. The form is short:

  • Source SFTP host — IP or hostname of the old server.
  • Port — usually 22, sometimes 2222 on cPanel boxes hardened by the previous provider.
  • Username — a shell user that can read the docroot and the wp-config.php file. The cPanel account user is fine; root works but is overkill.
  • Authentication — paste an OpenSSH private key (preferred) or a password. Putty .ppk keys do not work; convert with puttygen -O private-openssh -o id_rsa key.ppk first.
  • Source path — the absolute path containing wp-config.php, e.g. /home/oldcust/public_html.
  • Target domain — must already exist on the destination server as an addon or primary domain.
  • Target database — leave blank to have Softaculous create cpuser_wpNN automatically.

Click Import. Softaculous reads wp-config.php from the source over SFTP, extracts the source DB credentials, dumps the database via mysqldump over the SSH tunnel, rsyncs the filesystem to the target docroot, rewrites wp-config.php with the new credentials, and registers the install in its own database so backups, clones, and one-click upgrades work the same as a native install.

Prepare the source host first

Three things stop most imports. Fix them on the source before you start the form, not after the import errors out forty seconds in.

1. The SSH key must be in OpenSSH format

Generate a fresh key pair on the destination and add the public half to ~/.ssh/authorized_keys on the source for the user you will connect as:

ssh-keygen -t ed25519 -f /root/.ssh/sftp_import -N ''
ssh-copy-id -i /root/.ssh/sftp_import.pub -p 22 olduser@source.example.com

Paste the contents of /root/.ssh/sftp_import (the private key, including the -----BEGIN and -----END lines) into the Softaculous form. PEM works, RFC 4716 does not.

2. The source path must contain wp-config.php

Softaculous parses wp-config.php to discover DB_HOST, DB_USER, DB_PASSWORD, and DB_NAME. If the source uses a non-standard layout — say, a Bedrock install with config in /srv/app/config/application.php — Remote Import will not detect it. Move or copy wp-config.php into the docroot temporarily, or fall back to a manual SFTP migration and use import-existing-installation once the files land.

3. The source DB must accept connections from the destination IP

DB_HOST in wp-config.php is read literally and used from the destination server. If it is localhost or 127.0.0.1 and the database lives on the source, Softaculous tunnels through SSH and it just works. If it is a remote DB host with an IP allowlist (managed MySQL, RDS, a separate database VPS), add the destination server's outbound IP before you start:

curl ifconfig.me   # run on the destination server, whitelist this on the DB

Verify after the import

Softaculous reports success once mysqldump and rsync exit cleanly. That does not mean the site is healthy. Two checks:

cd /home/cpuser/public_html
wp core verify-checksums --allow-root
wp option get siteurl --allow-root

verify-checksums flags any altered core files — usually nothing on a clean WordPress site, sometimes a long list if the source was running a security plugin that patched core. siteurl should already be rewritten to the new domain; if it still shows the old one, run wp search-replace 'https://old.tld' 'https://new.tld' --all-tables --allow-root.

Then point DNS or test via /etc/hosts before cutover.

Does Softaculous Remote Import support WordPress Multisite?+
Yes, but only when the source is a subdirectory install. Subdomain Multisite needs DNS in place on the destination before the import, otherwise the wp_blogs table rewrite breaks.
Why does Softaculous Remote Import fail with 'Could not connect to SFTP'?+
Almost always the SSH key format. Softaculous wants OpenSSH PEM, not a Putty .ppk. Convert with puttygen -O private-openssh, or generate a fresh ed25519 key on the destination.
Can I import without giving Softaculous root SSH access?+
Yes. Any shell user that can read the docroot and wp-config.php works. The cPanel account user on the source is the safest choice.
How long does a Remote Import take?+
Roughly 1 GB per minute on a gigabit link, mostly bounded by mysqldump speed. A 4 GB WordPress site with a 200 MB database typically lands in 10-15 minutes.
Does Remote Import overwrite the target domain's files?+
Yes — rsync runs with --delete against the target docroot. Empty the destination or pick a fresh addon domain before importing.

Next steps

Switch in an afternoon

Switch from your current reseller — free.

We migrate active cPanel, Plesk, LiteSpeed and CloudLinux licenses from any reseller. We prorate the first month so you never pay twice, and your customers see zero downtime during the swap.