{"id":190,"date":"2026-05-31T23:08:36","date_gmt":"2026-06-01T06:08:36","guid":{"rendered":"https:\/\/hostandtech.com\/kb\/whm\/how-to-set-up-ftp-server-whm-pure-ftpd\/"},"modified":"2026-05-31T23:08:36","modified_gmt":"2026-06-01T06:08:36","slug":"how-to-set-up-ftp-server-whm-pure-ftpd","status":"publish","type":"post","link":"https:\/\/hostandtech.com\/kb\/whm\/how-to-set-up-ftp-server-whm-pure-ftpd\/","title":{"rendered":"How to Set Up an FTP Server in WHM (Pure-FTPd Configuration Guide)"},"content":{"rendered":"<h2>Overview<\/h2>\n<p>WHM uses <strong>Pure-FTPd<\/strong> as its built-in FTP daemon. On a fresh cPanel\/WHM server, Pure-FTPd is typically installed automatically, but it may not be running, may be misconfigured for your firewall rules, or may have been disabled after a security hardening pass. This article covers how to enable, configure, and verify Pure-FTPd from within WHM.<\/p>\n<p>The most common scenario where you&#8217;ll need this: you&#8217;ve spun up a new VPS or dedicated server running cPanel\/WHM, your client is trying to connect via FileZilla, and the connection just times out. Nine times out of ten it&#8217;s either the service isn&#8217;t running or passive mode ports aren&#8217;t open in your firewall. Both are fixable in under ten minutes.<\/p>\n<p>If you&#8217;re running a <a href=\"https:\/\/www.hostandtech.com\/reseller-hosting\/\">Reseller Hosting<\/a> account and need to manage FTP access for your clients&#8217; cPanel accounts, most of this still applies \u2014 though your access to the WHM FTP settings depends on what your parent host has delegated to you.<\/p>\n<h2>Prerequisites<\/h2>\n<ul>\n<li>Root or reseller access to WHM<\/li>\n<li>cPanel\/WHM version 106 or later (steps are consistent across recent versions)<\/li>\n<li>SSH root access recommended for firewall configuration<\/li>\n<li>If using CSF (ConfigServer Security &amp; Firewall) or another firewall, you&#8217;ll need access to open TCP port ranges<\/li>\n<li>An FTP client for testing \u2014 <a href=\"https:\/\/filezilla-project.org\/\" target=\"_blank\" rel=\"noopener\">FileZilla<\/a> is free and works well<\/li>\n<\/ul>\n<h2>Step-by-Step: Configuring Pure-FTPd in WHM<\/h2>\n<h3>Step 1: Verify Pure-FTPd Is Installed<\/h3>\n<p>Before touching any settings, confirm the daemon is actually installed on the server.<\/p>\n<div class=\"ht-code-snippet\"><button class=\"ht-code-snippet__copy\" type=\"button\" aria-label=\"Copy code\"><\/button><span class=\"ht-code-snippet__feedback\">Copied to clipboard<\/span><\/p>\n<pre class=\"ht-code-snippet__code\" id=\"code-block-1\"><code class=\"\" data-line=\"\">rpm -qa | grep pure-ftpd\n# Expected output example:\n# pure-ftpd-1.0.49-1.cp11202.x86_64<\/code><\/pre>\n<\/div>\n<p>If nothing comes back, install it via WHM&#8217;s package manager or reinstall via cPanel&#8217;s built-in script:<\/p>\n<div class=\"ht-code-snippet\"><button class=\"ht-code-snippet__copy\" type=\"button\" aria-label=\"Copy code\"><\/button><span class=\"ht-code-snippet__feedback\">Copied to clipboard<\/span><\/p>\n<pre class=\"ht-code-snippet__code\" id=\"code-block-2\"><code class=\"\" data-line=\"\">\/scripts\/installpureftp<\/code><\/pre>\n<\/div>\n<p>\ud83d\udcdd Note: On cPanel servers, Pure-FTPd is managed through the cPanel packaging system, not the OS package manager directly. Always use <code class=\"\" data-line=\"\">\/scripts\/<\/code> utilities when available rather than <code class=\"\" data-line=\"\">yum<\/code> or <code class=\"\" data-line=\"\">dnf<\/code> alone.<\/p>\n<h3>Step 2: Enable FTP in WHM&#8217;s Service Manager<\/h3>\n<ol>\n<li>Log in to WHM at <code class=\"\" data-line=\"\">https:\/\/your-server-ip:2087<\/code><\/li>\n<li>In the left sidebar search box, type <strong>Service Manager<\/strong> and click it<\/li>\n<li>Scroll to <strong>Pure-FTPd<\/strong> in the service list<\/li>\n<li>Make sure both <strong>Enabled<\/strong> and <strong>Monitor<\/strong> checkboxes are ticked<\/li>\n<li>Click <strong>Save<\/strong> at the bottom of the page<\/li>\n<\/ol>\n<p>With <em>Monitor<\/em> enabled, cPHulk and the cPanel service watchdog will automatically restart Pure-FTPd if it crashes. I&#8217;d always leave that on.<\/p>\n<h3>Step 3: Configure FTP Settings in WHM<\/h3>\n<ol>\n<li>Go to <strong>WHM &gt; Service Configuration &gt; FTP Server Configuration<\/strong><\/li>\n<li>Review these key settings:<\/li>\n<\/ol>\n<ul>\n<li><strong>FTP Port:<\/strong> Default is <code class=\"\" data-line=\"\">21<\/code>. Leave this unless you have a specific reason to change it.<\/li>\n<li><strong>Allow Anonymous Logins:<\/strong> Set to <strong>No<\/strong> unless you&#8217;re intentionally running a public FTP drop \u2014 which you almost certainly aren&#8217;t.<\/li>\n<li><strong>Passive IP Address:<\/strong> If your server sits behind NAT (common on cloud VPS setups), you need to enter the server&#8217;s <em>public<\/em> IP here, not the internal one. This is the single most common reason passive mode connections fail.<\/li>\n<li><strong>Passive Port Range:<\/strong> Set a defined range, e.g. <code class=\"\" data-line=\"\">49152<\/code> to <code class=\"\" data-line=\"\">65534<\/code>. You&#8217;ll open these same ports in your firewall in the next step.<\/li>\n<li><strong>TLS\/SSL Encryption:<\/strong> Set to <strong>Required<\/strong> or at minimum <strong>Enabled<\/strong>. Plain FTP sends credentials in cleartext \u2014 don&#8217;t leave this off on a production server.<\/li>\n<\/ul>\n<p>Click <strong>Save<\/strong> when done. WHM will write the configuration and restart Pure-FTPd automatically.<\/p>\n<h3>Step 4: Open Firewall Ports for Passive FTP<\/h3>\n<p>\u26a0 Warning: Skipping this step is the reason most FTP setups appear to work on active mode but fail for clients behind NAT (basically everyone using a home router or corporate network). Passive mode is what modern FTP clients use by default.<\/p>\n<p>If you&#8217;re using <strong>CSF\/LFD<\/strong> (the most common firewall on cPanel servers), open the passive port range like this:<\/p>\n<div class=\"ht-code-snippet\"><button class=\"ht-code-snippet__copy\" type=\"button\" aria-label=\"Copy code\"><\/button><span class=\"ht-code-snippet__feedback\">Copied to clipboard<\/span><\/p>\n<pre class=\"ht-code-snippet__code\" id=\"code-block-3\"><code class=\"\" data-line=\"\"># Edit the CSF config\nnano \/etc\/csf\/csf.conf\n\n# Find TCP_IN and add your passive port range:\n# TCP_IN = &quot;20,21,22,25,53,80,110,143,443,465,587,993,995,2082,2083,2086,2087,2095,2096,49152:65534&quot;\n\n# Save the file, then restart CSF:\ncsf -r<\/code><\/pre>\n<\/div>\n<p>Also make sure port <code class=\"\" data-line=\"\">21<\/code> (FTP control) is open if it isn&#8217;t already. After restarting CSF, test a passive connection from your FTP client before declaring it done.<\/p>\n<p>\ud83d\udcdd Note: If you&#8217;re using a cloud provider firewall (AWS Security Groups, DigitalOcean Firewall, Hetzner Cloud Firewall, etc.) <em>in addition to<\/em> CSF, you need to open the passive port range there too. The OS-level firewall and the cloud-level firewall are independent.<\/p>\n<h3>Step 5: Restart and Verify the Pure-FTPd Service<\/h3>\n<div class=\"ht-code-snippet\"><button class=\"ht-code-snippet__copy\" type=\"button\" aria-label=\"Copy code\"><\/button><span class=\"ht-code-snippet__feedback\">Copied to clipboard<\/span><\/p>\n<pre class=\"ht-code-snippet__code\" id=\"code-block-4\"><code class=\"\" data-line=\"\"># Restart the service\n\/scripts\/restartsrv_ftpd\n\n# Check it&#039;s running and listening on port 21\nss -tlnp | grep :21\n\n# Expected output:\n# LISTEN 0 128 0.0.0.0:21 0.0.0.0:* users:(&quot;pure-ftpd&quot;,pid=XXXXX,fd=4))<\/code><\/pre>\n<\/div>\n<p>If the port isn&#8217;t showing as LISTEN, check <code class=\"\" data-line=\"\">\/var\/log\/messages<\/code> or <code class=\"\" data-line=\"\">journalctl -u pure-ftpd<\/code> for startup errors.<\/p>\n<h3>Step 6: Create an FTP Account in cPanel<\/h3>\n<p>FTP accounts are created per cPanel account, not at the WHM level. Have your client (or you, if it&#8217;s your own account) do the following:<\/p>\n<ol>\n<li>Log in to cPanel<\/li>\n<li>Go to <strong>Files &gt; FTP Accounts<\/strong><\/li>\n<li>Fill in the username, set a strong password, and define the directory (e.g. <code class=\"\" data-line=\"\">\/public_html<\/code> for full site access)<\/li>\n<li>Click <strong>Create FTP Account<\/strong><\/li>\n<\/ol>\n<p>The full FTP username will be in the format <code class=\"\" data-line=\"\">username@domain.com<\/code>. Make sure your client uses that full format when connecting, not just the short username.<\/p>\n<h2>Common Issues &amp; Troubleshooting<\/h2>\n<h3>Connection Times Out in Passive Mode<\/h3>\n<p><strong>Cause:<\/strong> Passive port range is not open in the firewall, or the passive IP in Pure-FTPd config points to the internal\/private IP instead of the public IP.<\/p>\n<p><strong>Fix:<\/strong> Double-check the <em>Passive IP Address<\/em> field in WHM&#8217;s FTP Server Configuration \u2014 it must match what a client sees when they connect externally. Then confirm the passive port range is open in both CSF and any upstream cloud firewall. This is the most common FTP issue on VPS environments.<\/p>\n<h3>530 Login Authentication Failed<\/h3>\n<p><strong>Cause:<\/strong> Usually one of three things: wrong username format (missing the <code class=\"\" data-line=\"\">@domain.com<\/code> suffix), incorrect password, or the account&#8217;s home directory doesn&#8217;t exist on disk.<\/p>\n<p><strong>Fix:<\/strong> Verify the FTP account exists in cPanel under FTP Accounts. Check that the home directory path exists. Also check <code class=\"\" data-line=\"\">\/var\/log\/messages<\/code> for auth errors from Pure-FTPd \u2014 it logs failed logins with more detail than the client displays.<\/p>\n<h3>Pure-FTPd Not Starting After a Reboot<\/h3>\n<p><strong>Cause:<\/strong> The service isn&#8217;t enabled in WHM&#8217;s Service Manager, or a config file has a syntax error that prevents startup.<\/p>\n<p><strong>Fix:<\/strong> Run <code class=\"\" data-line=\"\">\/scripts\/restartsrv_ftpd<\/code> and watch the output. If it fails, check the Pure-FTPd config at <code class=\"\" data-line=\"\">\/etc\/pure-ftpd.conf<\/code> for obvious errors. You can also run:<\/p>\n<div class=\"ht-code-snippet\"><button class=\"ht-code-snippet__copy\" type=\"button\" aria-label=\"Copy code\"><\/button><span class=\"ht-code-snippet__feedback\">Copied to clipboard<\/span><\/p>\n<pre class=\"ht-code-snippet__code\" id=\"code-block-5\"><code class=\"\" data-line=\"\">pure-ftpd --help 2&gt;&amp;1 | head -20\njournalctl -xe | grep pure-ftpd<\/code><\/pre>\n<\/div>\n<h3>TLS Certificate Errors in FTP Client<\/h3>\n<p><strong>Cause:<\/strong> Pure-FTPd is configured to require TLS but the certificate it&#8217;s using is self-signed or expired. This happens after a server rebuild or if AutoSSL hasn&#8217;t run yet.<\/p>\n<p><strong>Fix:<\/strong> In WHM, go to <strong>Service Configuration &gt; Manage Service SSL Certificates<\/strong> and install a valid certificate for the FTP service. If you&#8217;ve already got an AutoSSL certificate for the hostname, you can install it there. Alternatively, temporarily set TLS to <em>Enabled<\/em> (not <em>Required<\/em>) while you sort the cert \u2014 but don&#8217;t leave it that way long-term.<\/p>\n<h3>FTP Works for One Account but Not Another<\/h3>\n<p><strong>Cause:<\/strong> The broken account&#8217;s home directory permissions are wrong, or the account has been suspended.<\/p>\n<p><strong>Fix:<\/strong> Check account suspension status in WHM under <strong>Account Information &gt; List Suspended Accounts<\/strong>. If not suspended, verify directory permissions:<\/p>\n<div class=\"ht-code-snippet\"><button class=\"ht-code-snippet__copy\" type=\"button\" aria-label=\"Copy code\"><\/button><span class=\"ht-code-snippet__feedback\">Copied to clipboard<\/span><\/p>\n<pre class=\"ht-code-snippet__code\" id=\"code-block-6\"><code class=\"\" data-line=\"\">ls -la \/home\/cpanelusername\/<\/code><\/pre>\n<\/div>\n<p>The home directory should be owned by the cPanel username with permissions <code class=\"\" data-line=\"\">711<\/code>. If it&#8217;s set to something like <code class=\"\" data-line=\"\">000<\/code>, Pure-FTPd will silently reject the connection.<\/p>\n<h2>FAQ<\/h2>\n<div class=\"ht-faq-section\">\n<h2>Frequently Asked Questions<\/h2>\n<div class=\"ht-faq-item\">\n<h3 class=\"ht-faq-question\">How do I find my FTP hostname for a cPanel account?<\/h3>\n<div class=\"ht-faq-answer\">\n<p>Use your domain name or your server&#8217;s hostname as the FTP host \u2014 for example, ftp.yourdomain.com or the server&#8217;s main IP address. Both will work as long as DNS is resolving. Port is 21 by default. You&#8217;ll find the exact details in cPanel under Files &gt; FTP Accounts, where a &#8216;Configure FTP Client&#8217; link shows the connection settings for each account.<\/p>\n<\/div>\n<\/div>\n<div class=\"ht-faq-item\">\n<h3 class=\"ht-faq-question\">Is Pure-FTPd the only FTP server option in WHM?<\/h3>\n<div class=\"ht-faq-answer\">\n<p>On modern cPanel\/WHM installations (v96 and later), Pure-FTPd is the only supported FTP daemon. ProFTPd support was deprecated and removed. If you have a legacy server still running ProFTPd, a cPanel update will likely switch it to Pure-FTPd automatically.<\/p>\n<\/div>\n<\/div>\n<div class=\"ht-faq-item\">\n<h3 class=\"ht-faq-question\">Should I use FTP or SFTP for file transfers?<\/h3>\n<div class=\"ht-faq-answer\">\n<p>SFTP (SSH File Transfer Protocol) is the better choice for security \u2014 it encrypts both credentials and data over SSH, runs on port 22, and doesn&#8217;t require separate firewall rules for passive mode. FTP with TLS (FTPS) is acceptable if SFTP isn&#8217;t an option for a specific client. Plain FTP with no encryption should be avoided on any production server.<\/p>\n<\/div>\n<\/div>\n<div class=\"ht-faq-item\">\n<h3 class=\"ht-faq-question\">Why does FileZilla connect fine on my office network but fail from home?<\/h3>\n<div class=\"ht-faq-answer\">\n<p>This is almost always a passive mode issue. Home routers and many ISPs block or interfere with FTP passive port ranges. Make sure passive mode is enabled in FileZilla (it&#8217;s the default), your server&#8217;s passive port range is open in the firewall, and the Passive IP in WHM&#8217;s FTP configuration is set to the server&#8217;s public IP address \u2014 not an internal one.<\/p>\n<\/div>\n<\/div>\n<div class=\"ht-faq-item\">\n<h3 class=\"ht-faq-question\">Can I disable FTP entirely and just use SFTP on a cPanel server?<\/h3>\n<div class=\"ht-faq-answer\">\n<p>Yes. Go to WHM &gt; Service Manager, uncheck Enabled next to Pure-FTPd, and save. SFTP will still work through the SSH daemon independently. I&#8217;d recommend this on any server where you control all the accounts and don&#8217;t have clients who specifically need FTP \u2014 it reduces your attack surface without losing any real functionality.<\/p>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>WHM uses Pure-FTPd as its default FTP daemon, and while it works out of the box on most setups, getting it properly configured \u2014 especially passive mode and firewall port ranges \u2014 trips up a lot of people. This guide walks you through the full setup from the WHM interface and the command line.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[88],"tags":[439,438,441,440,437,436,443,442],"class_list":["post-190","post","type-post","status-publish","format-standard","hentry","category-whm","tag-cpanel-ftp-configuration","tag-ftp-server-setup","tag-ftp-troubleshooting","tag-passive-ftp","tag-pure-ftpd","tag-whm-ftp","tag-whm-ftp-pure-ftpd","tag-whm-server-management"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.6 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>How to Set Up an FTP Server in WHM (Pure-FTPd Configuration Guide)<\/title>\n<meta name=\"description\" content=\"Learn how to set up and configure a WHM FTP server using Pure-FTPd. Step-by-step guide covering installation, passive mode, port ranges, and troubleshooting.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/hostandtech.com\/kb\/whm\/how-to-set-up-ftp-server-whm-pure-ftpd\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to Set Up an FTP Server in WHM (Pure-FTPd Configuration Guide)\" \/>\n<meta property=\"og:description\" content=\"Learn how to set up and configure a WHM FTP server using Pure-FTPd. Step-by-step guide covering installation, passive mode, port ranges, and troubleshooting.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/hostandtech.com\/kb\/whm\/how-to-set-up-ftp-server-whm-pure-ftpd\/\" \/>\n<meta property=\"og:site_name\" content=\"Host And Tech knowledge base\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/stshostandtech\" \/>\n<meta property=\"article:published_time\" content=\"2026-06-01T06:08:36+00:00\" \/>\n<meta name=\"author\" content=\"admin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@stshostandtech\" \/>\n<meta name=\"twitter:site\" content=\"@stshostandtech\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"8 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/hostandtech.com\\\/kb\\\/whm\\\/how-to-set-up-ftp-server-whm-pure-ftpd\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/hostandtech.com\\\/kb\\\/whm\\\/how-to-set-up-ftp-server-whm-pure-ftpd\\\/\"},\"author\":{\"name\":\"admin\",\"@id\":\"https:\\\/\\\/hostandtech.com\\\/kb\\\/#\\\/schema\\\/person\\\/b6fa79c48ddaba71af32e395c5b017ee\"},\"headline\":\"How to Set Up an FTP Server in WHM (Pure-FTPd Configuration Guide)\",\"datePublished\":\"2026-06-01T06:08:36+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/hostandtech.com\\\/kb\\\/whm\\\/how-to-set-up-ftp-server-whm-pure-ftpd\\\/\"},\"wordCount\":1498,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/hostandtech.com\\\/kb\\\/#organization\"},\"keywords\":[\"cPanel FTP configuration\",\"FTP server setup\",\"FTP troubleshooting\",\"passive FTP\",\"pure-ftpd\",\"WHM FTP\",\"WHM FTP pure-ftpd\",\"WHM server management\"],\"articleSection\":[\"WHM Guides\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/hostandtech.com\\\/kb\\\/whm\\\/how-to-set-up-ftp-server-whm-pure-ftpd\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/hostandtech.com\\\/kb\\\/whm\\\/how-to-set-up-ftp-server-whm-pure-ftpd\\\/\",\"url\":\"https:\\\/\\\/hostandtech.com\\\/kb\\\/whm\\\/how-to-set-up-ftp-server-whm-pure-ftpd\\\/\",\"name\":\"How to Set Up an FTP Server in WHM (Pure-FTPd Configuration Guide)\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/hostandtech.com\\\/kb\\\/#website\"},\"datePublished\":\"2026-06-01T06:08:36+00:00\",\"description\":\"Learn how to set up and configure a WHM FTP server using Pure-FTPd. Step-by-step guide covering installation, passive mode, port ranges, and troubleshooting.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/hostandtech.com\\\/kb\\\/whm\\\/how-to-set-up-ftp-server-whm-pure-ftpd\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/hostandtech.com\\\/kb\\\/whm\\\/how-to-set-up-ftp-server-whm-pure-ftpd\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/hostandtech.com\\\/kb\\\/whm\\\/how-to-set-up-ftp-server-whm-pure-ftpd\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/hostandtech.com\\\/kb\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How to Set Up an FTP Server in WHM (Pure-FTPd Configuration Guide)\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/hostandtech.com\\\/kb\\\/#website\",\"url\":\"https:\\\/\\\/hostandtech.com\\\/kb\\\/\",\"name\":\"Host And Tech knowledge base\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/hostandtech.com\\\/kb\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/hostandtech.com\\\/kb\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/hostandtech.com\\\/kb\\\/#organization\",\"name\":\"Host And Tech knowledge base\",\"url\":\"https:\\\/\\\/hostandtech.com\\\/kb\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/hostandtech.com\\\/kb\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/hostandtech.com\\\/kb\\\/wp-content\\\/uploads\\\/2026\\\/05\\\/logo-dark.png\",\"contentUrl\":\"https:\\\/\\\/hostandtech.com\\\/kb\\\/wp-content\\\/uploads\\\/2026\\\/05\\\/logo-dark.png\",\"width\":1134,\"height\":395,\"caption\":\"Host And Tech knowledge base\"},\"image\":{\"@id\":\"https:\\\/\\\/hostandtech.com\\\/kb\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/stshostandtech\",\"https:\\\/\\\/x.com\\\/stshostandtech\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/hostandtech.com\\\/kb\\\/#\\\/schema\\\/person\\\/b6fa79c48ddaba71af32e395c5b017ee\",\"name\":\"admin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/aa1edac8bbadb442e059a5b65ad45a3b2e3ce689202373b96e3e567517ae4b39?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/aa1edac8bbadb442e059a5b65ad45a3b2e3ce689202373b96e3e567517ae4b39?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/aa1edac8bbadb442e059a5b65ad45a3b2e3ce689202373b96e3e567517ae4b39?s=96&d=mm&r=g\",\"caption\":\"admin\"},\"sameAs\":[\"https:\\\/\\\/hostandtech.com\\\/kb\"],\"url\":\"https:\\\/\\\/hostandtech.com\\\/kb\\\/author\\\/admin_fjj7qydm\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"How to Set Up an FTP Server in WHM (Pure-FTPd Configuration Guide)","description":"Learn how to set up and configure a WHM FTP server using Pure-FTPd. Step-by-step guide covering installation, passive mode, port ranges, and troubleshooting.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/hostandtech.com\/kb\/whm\/how-to-set-up-ftp-server-whm-pure-ftpd\/","og_locale":"en_US","og_type":"article","og_title":"How to Set Up an FTP Server in WHM (Pure-FTPd Configuration Guide)","og_description":"Learn how to set up and configure a WHM FTP server using Pure-FTPd. Step-by-step guide covering installation, passive mode, port ranges, and troubleshooting.","og_url":"https:\/\/hostandtech.com\/kb\/whm\/how-to-set-up-ftp-server-whm-pure-ftpd\/","og_site_name":"Host And Tech knowledge base","article_publisher":"https:\/\/www.facebook.com\/stshostandtech","article_published_time":"2026-06-01T06:08:36+00:00","author":"admin","twitter_card":"summary_large_image","twitter_creator":"@stshostandtech","twitter_site":"@stshostandtech","twitter_misc":{"Written by":"admin","Est. reading time":"8 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/hostandtech.com\/kb\/whm\/how-to-set-up-ftp-server-whm-pure-ftpd\/#article","isPartOf":{"@id":"https:\/\/hostandtech.com\/kb\/whm\/how-to-set-up-ftp-server-whm-pure-ftpd\/"},"author":{"name":"admin","@id":"https:\/\/hostandtech.com\/kb\/#\/schema\/person\/b6fa79c48ddaba71af32e395c5b017ee"},"headline":"How to Set Up an FTP Server in WHM (Pure-FTPd Configuration Guide)","datePublished":"2026-06-01T06:08:36+00:00","mainEntityOfPage":{"@id":"https:\/\/hostandtech.com\/kb\/whm\/how-to-set-up-ftp-server-whm-pure-ftpd\/"},"wordCount":1498,"commentCount":0,"publisher":{"@id":"https:\/\/hostandtech.com\/kb\/#organization"},"keywords":["cPanel FTP configuration","FTP server setup","FTP troubleshooting","passive FTP","pure-ftpd","WHM FTP","WHM FTP pure-ftpd","WHM server management"],"articleSection":["WHM Guides"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/hostandtech.com\/kb\/whm\/how-to-set-up-ftp-server-whm-pure-ftpd\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/hostandtech.com\/kb\/whm\/how-to-set-up-ftp-server-whm-pure-ftpd\/","url":"https:\/\/hostandtech.com\/kb\/whm\/how-to-set-up-ftp-server-whm-pure-ftpd\/","name":"How to Set Up an FTP Server in WHM (Pure-FTPd Configuration Guide)","isPartOf":{"@id":"https:\/\/hostandtech.com\/kb\/#website"},"datePublished":"2026-06-01T06:08:36+00:00","description":"Learn how to set up and configure a WHM FTP server using Pure-FTPd. Step-by-step guide covering installation, passive mode, port ranges, and troubleshooting.","breadcrumb":{"@id":"https:\/\/hostandtech.com\/kb\/whm\/how-to-set-up-ftp-server-whm-pure-ftpd\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/hostandtech.com\/kb\/whm\/how-to-set-up-ftp-server-whm-pure-ftpd\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/hostandtech.com\/kb\/whm\/how-to-set-up-ftp-server-whm-pure-ftpd\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/hostandtech.com\/kb\/"},{"@type":"ListItem","position":2,"name":"How to Set Up an FTP Server in WHM (Pure-FTPd Configuration Guide)"}]},{"@type":"WebSite","@id":"https:\/\/hostandtech.com\/kb\/#website","url":"https:\/\/hostandtech.com\/kb\/","name":"Host And Tech knowledge base","description":"","publisher":{"@id":"https:\/\/hostandtech.com\/kb\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/hostandtech.com\/kb\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/hostandtech.com\/kb\/#organization","name":"Host And Tech knowledge base","url":"https:\/\/hostandtech.com\/kb\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/hostandtech.com\/kb\/#\/schema\/logo\/image\/","url":"https:\/\/hostandtech.com\/kb\/wp-content\/uploads\/2026\/05\/logo-dark.png","contentUrl":"https:\/\/hostandtech.com\/kb\/wp-content\/uploads\/2026\/05\/logo-dark.png","width":1134,"height":395,"caption":"Host And Tech knowledge base"},"image":{"@id":"https:\/\/hostandtech.com\/kb\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/stshostandtech","https:\/\/x.com\/stshostandtech"]},{"@type":"Person","@id":"https:\/\/hostandtech.com\/kb\/#\/schema\/person\/b6fa79c48ddaba71af32e395c5b017ee","name":"admin","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/aa1edac8bbadb442e059a5b65ad45a3b2e3ce689202373b96e3e567517ae4b39?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/aa1edac8bbadb442e059a5b65ad45a3b2e3ce689202373b96e3e567517ae4b39?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/aa1edac8bbadb442e059a5b65ad45a3b2e3ce689202373b96e3e567517ae4b39?s=96&d=mm&r=g","caption":"admin"},"sameAs":["https:\/\/hostandtech.com\/kb"],"url":"https:\/\/hostandtech.com\/kb\/author\/admin_fjj7qydm\/"}]}},"_links":{"self":[{"href":"https:\/\/hostandtech.com\/kb\/wp-json\/wp\/v2\/posts\/190","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/hostandtech.com\/kb\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/hostandtech.com\/kb\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/hostandtech.com\/kb\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/hostandtech.com\/kb\/wp-json\/wp\/v2\/comments?post=190"}],"version-history":[{"count":0,"href":"https:\/\/hostandtech.com\/kb\/wp-json\/wp\/v2\/posts\/190\/revisions"}],"wp:attachment":[{"href":"https:\/\/hostandtech.com\/kb\/wp-json\/wp\/v2\/media?parent=190"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/hostandtech.com\/kb\/wp-json\/wp\/v2\/categories?post=190"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/hostandtech.com\/kb\/wp-json\/wp\/v2\/tags?post=190"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}