Upload and manage files using FTP for compatibility with existing software and workflows
Bunny Storage supports FTP access for easy file management using familiar FTP clients and workflows. This provides compatibility with most software and programming languages.
The FTP protocol is outdated and not as secure as newer protocols like HTTP. It may be vulnerable to Man-In-The-Middle attacks. We recommend using FTP only when other upload options are not available. Use the HTTP API for better security and performance.
ECONNREFUSED - Connection refused by serverThis error occurs when using an invalid port. Verify you are connecting via port 21.331 Username ok, need passwordYour connection password is incorrect. Check your password in the FTP & API Access tab of your storage zone.Connection timeoutEnsure you are using Passive mode in your FTP client settings. Some networks block active FTP connections.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"bunny.net Documentation","colors":{"primary":"#EF6126","light":"#EF6126","dark":"#EF6126"},"logo":{"light":"https://mintcdn.com/bunnynet-cb9733c2/54-4KCQKoNVNuoyW/logo/bunny-logo-dark.svg?fit=max\u0026auto=format\u0026n=54-4KCQKoNVNuoyW\u0026q=85\u0026s=62c091ea1aaea93d0a981902b7783e37","dark":"https://mintcdn.com/bunnynet-cb9733c2/54-4KCQKoNVNuoyW/logo/bunny-logo-light.svg?fit=max\u0026auto=format\u0026n=54-4KCQKoNVNuoyW\u0026q=85\u0026s=3610e32d68a9fa458b0116ac58ca812a"},"favicon":"https://mintcdn.com/bunnynet-cb9733c2/1bTPx1eyQm8EK8W3/favicon.png?fit=max\u0026auto=format\u0026n=1bTPx1eyQm8EK8W3\u0026q=85\u0026s=85267b63e804fac7a4dd94599bb8c6e8","navbar":{"links":[{"href":"https://bunny.net/docs/api-reference","label":"API Reference"},{"href":"https://github.com/BunnyWay","label":"GitHub"}],"primary":{"type":"button","label":"Get Started","href":"https://dash.bunny.net/auth/register"}},"footer":{"socials":{"discord":"https://discord.gg/bunnynet","github":"https://github.com/BunnyWay","x":"https://x.com/BunnyCDN","bluesky":"https://bsky.app/profile/bunny.net","linkedin":"https://www.linkedin.com/company/bunnynet","facebook":"https://www.facebook.com/bunnycdn"}},"icons":{"library":"lucide"},"contextual":{"options":["copy","claude","chatgpt","cursor","view","vscode"],"display":"header"},"interaction":{"drilldown":false},"metadata":{"timestamp":true},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"bunnynet-cb9733c2","hasAudioNarration":false,"actualSubdomain":"bunnynet-cb9733c2","customDomains":["bunny.net"],"gitSource":{"type":"github","owner":"bunnyway","repo":"documentation","deployBranch":"main","contentDirectory":"","isPrivate":false,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ae49f2d21d44d6b52dcfe35","collectionId":"5e262b87-ade9-45d8-9b63-06888c8d59a3","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ae49f2d21d44d6b52dcfe35"},"feedback":{"thumbs":true,"contextualFeedback":{"allowEmail":true},"agentFeedback":true,"edits":true,"issues":false},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6ae534f2b9a26f131eb41834","clientVersion":"0.0.4043","searchFilterCounts":[{"language":"default","tag":"Documentation","count":752},{"language":"default","tag":"API Reference","count":318},{"language":"default","tag":"Core Platform API","count":109},{"language":"default","tag":"CDN","count":82},{"language":"default","tag":"Shield API","count":66},{"language":"default","tag":"Stream","count":66},{"language":"default","tag":"Magic Containers API","count":56},{"language":"default","tag":"Storage","count":54},{"language":"default","tag":"Guides","count":54},{"language":"default","tag":"Reference","count":52}],"searchSettings":{"isFiltersEnabled":true}},"assistantConfig":{"enableStarterQuestions":false,"deflection":{"enabled":true,"type":"link","email":"support@bunny.net","url":"https://bunny.net/contact","showHelpButton":true}},"basePath":"/docs","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"privacy":{"consentBanner":{"enabled":true}},"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":".dark img[src*=\"/logo/frameworks/angular.svg\"],.dark img[src*=\"/logo/frameworks/eleventy.svg\"],.dark img[src*=\"/logo/frameworks/express.svg\"],.dark img[src*=\"/logo/frameworks/mariadb.svg\"],.dark img[src*=\"/logo/frameworks/nextjs.svg\"],.dark img[src*=\"/logo/frameworks/sphinx.svg\"]{filter:invert(1)}html:not(.dark) img[src*=\"/logo/frameworks/zola.svg\"]{filter:invert(1)}"}],"page":{"pagePath":"storage/ftp","slug":"/storage/ftp","pageMetadata":{"title":"FTP Access","description":"Upload and manage files using FTP for compatibility with existing software and workflows","href":"/storage/ftp"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Upload and manage files using FTP for compatibility with existing software and workflows\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,li:`li`,ol:`ol`,p:`p`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,..._provideComponents(),...props.components},{Heading,Table,Warning}=_components;if(!Heading)_missingMdxReference(`Heading`,true);if(!Table)_missingMdxReference(`Table`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`Bunny Storage supports FTP access for easy file management using familiar FTP clients and workflows. This provides compatibility with most software and programming languages.`}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[`The FTP protocol is outdated and not as secure as newer protocols like HTTP. It may be vulnerable to Man-In-The-Middle attacks. We recommend using FTP only when other upload options are not available. Use the `,_jsx(_components.a,{href:`/storage/http`,children:`HTTP API`}),` for better security and performance.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`connection-settings`,children:`Connection settings`}),`\n`,_jsxs(_components.p,{children:[`Find your exact connection details in the `,_jsx(_components.strong,{children:`Access`}),` tab of your storage zone and select `,_jsx(_components.strong,{children:`FTP`}),`. Standard settings:`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Setting`}),_jsx(_components.th,{children:`Value`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Hostname`}),_jsx(_components.td,{children:`storage.bunnycdn.com`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Port`}),_jsx(_components.td,{\"data-numeric\":`true`,children:`21`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Username`}),_jsx(_components.td,{children:`Your storage zone name`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Password`}),_jsx(_components.td,{children:`Auto-generated (found in FTP \u0026 API Access tab)`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Connection Type`}),_jsx(_components.td,{children:`Passive`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Encryption`}),_jsx(_components.td,{children:`Not supported`})]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`regional-endpoints`,children:`Regional endpoints`}),`\n`,_jsx(_components.p,{children:`Use the appropriate endpoint based on your storage zone’s primary region:`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Region`}),_jsx(_components.th,{children:`FTP Endpoint`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Frankfurt, DE`}),_jsx(_components.td,{children:`storage.bunnycdn.com`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`London, UK`}),_jsx(_components.td,{children:`uk.storage.bunnycdn.com`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`New York, US`}),_jsx(_components.td,{children:`ny.storage.bunnycdn.com`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Los Angeles, US`}),_jsx(_components.td,{children:`la.storage.bunnycdn.com`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Singapore, SG`}),_jsx(_components.td,{children:`sg.storage.bunnycdn.com`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Stockholm, SE`}),_jsx(_components.td,{children:`se.storage.bunnycdn.com`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`São Paulo, BR`}),_jsx(_components.td,{children:`br.storage.bunnycdn.com`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Johannesburg, SA`}),_jsx(_components.td,{children:`jh.storage.bunnycdn.com`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Sydney, SYD`}),_jsx(_components.td,{children:`syd.storage.bunnycdn.com`})]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`using-filezilla`,children:`Using FileZilla`}),`\n`,_jsxs(_components.ol,{children:[`\n`,_jsx(_components.li,{children:`Open FileZilla (or your preferred FTP client)`}),`\n`,_jsxs(_components.li,{children:[`Enter your connection settings:`,`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Host: storage.bunnycdn.com`}),`\n`,_jsx(_components.li,{children:`Username: your-zone-name`}),`\n`,_jsx(_components.li,{children:`Password: your-storage-password`}),`\n`,_jsx(_components.li,{children:`Port: 21`}),`\n`]}),`\n`]}),`\n`,_jsxs(_components.li,{children:[`Click `,_jsx(_components.strong,{children:`Quickconnect`})]}),`\n`,_jsx(_components.li,{children:`Upload files by dragging them to the remote site panel`}),`\n`]}),`\n`,_jsx(Heading,{level:`2`,id:`common-errors`,children:`Common errors`}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`ECONNREFUSED - Connection refused by server`})}),`\n`,_jsx(_components.p,{children:`This error occurs when using an invalid port. Verify you are connecting via port 21.`}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`331 Username ok, need password`})}),`\n`,_jsxs(_components.p,{children:[`Your connection password is incorrect. Check your password in the `,_jsx(_components.strong,{children:`FTP \u0026 API Access`}),` tab of your storage zone.`]}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`Connection timeout`})}),`\n`,_jsxs(_components.p,{children:[`Ensure you are using `,_jsx(_components.strong,{children:`Passive mode`}),` in your FTP client settings. Some networks block active FTP connections.`]}),`\n`,_jsx(Heading,{level:`2`,id:`rate-limits`,children:`Rate limits`}),`\n`,_jsx(_components.p,{children:`FTP connections are subject to the same limits as HTTP API uploads:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Maximum 25 concurrent FTP connections per IP`}),`\n`,_jsx(_components.li,{children:`Maximum 50 concurrent uploads per storage zone`}),`\n`,_jsx(_components.li,{children:`Maximum 100 concurrent connections per IP (across all protocols)`}),`\n`]}),`\n`,_jsxs(_components.p,{children:[`See the `,_jsx(_components.a,{href:`/storage/limits`,children:`Limits`}),` page for more details.`]}),`\n`,_jsx(Heading,{level:`2`,id:`alternative-methods`,children:`Alternative methods`}),`\n`,_jsx(_components.p,{children:`For better performance and security, consider using:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.a,{href:`/storage/http`,children:`HTTP API`}),` - Recommended for programmatic uploads`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.a,{href:`/storage/dashboard`,children:`Dashboard`}),` - Visual file management`]}),`\n`]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"FTP Access","description":"Upload and manage files using FTP for compatibility with existing software and workflows","href":"/storage/ftp"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Connection settings","slug":"connection-settings","depth":2,"children":[]},{"title":"Regional endpoints","slug":"regional-endpoints","depth":2,"children":[]},{"title":"Using FileZilla","slug":"using-filezilla","depth":2,"children":[]},{"title":"Common errors","slug":"common-errors","depth":2,"children":[]},{"title":"Rate limits","slug":"rate-limits","depth":2,"children":[]},{"title":"Alternative methods","slug":"alternative-methods","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"bunnynet-cb9733c2","siteName":"bunny.net Documentation","title":"FTP Access - bunny.net Documentation","relatedPagesConfig":{"enabled":false,"limit":5,"mode":"automatic"},"navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-04-23T12:48:53.795Z","gitLastModified":"2026-04-23T12:48:14.000Z","originalFileLocation":"storage/ftp.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Upload and manage files using FTP for compatibility with existing software and workflows\">\u003cmeta data-mint-head name=\"application-name\" content=\"bunny.net Documentation\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/docs/mintlify-assets/_mintlify/favicons/bunnynet-cb9733c2/Zv4NOenQlgPS3TXm/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/docs/mintlify-assets/_mintlify/favicons/bunnynet-cb9733c2/Zv4NOenQlgPS3TXm/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/docs/mintlify-assets/_mintlify/favicons/bunnynet-cb9733c2/Zv4NOenQlgPS3TXm/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/docs/mintlify-assets/_mintlify/favicons/bunnynet-cb9733c2/Zv4NOenQlgPS3TXm/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/docs/mintlify-assets/_mintlify/favicons/bunnynet-cb9733c2/Zv4NOenQlgPS3TXm/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/docs/mintlify-assets/_mintlify/favicons/bunnynet-cb9733c2/Zv4NOenQlgPS3TXm/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/docs/mintlify-assets/_mintlify/favicons/bunnynet-cb9733c2/Zv4NOenQlgPS3TXm/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/docs/mintlify-assets/_mintlify/favicons/bunnynet-cb9733c2/Zv4NOenQlgPS3TXm/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/docs/mintlify-assets/_mintlify/favicons/bunnynet-cb9733c2/Zv4NOenQlgPS3TXm/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"FTP Access - bunny.net Documentation\">\u003cmeta data-mint-head property=\"og:description\" content=\"Upload and manage files using FTP for compatibility with existing software and workflows\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"bunny.net Documentation\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://bunny.net/docs/storage/ftp\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://bunnynet-cb9733c2.mintlify.app/_mintlify/api/og/v2?division=Manage+Files+%26+Objects\u0026amp;title=FTP+Access\u0026amp;description=Upload+and+manage+files+using+FTP+for+compatibility+with+existing+software+and+workflows\u0026amp;theme=3e3fa11ba94222b95e7f52d5\u0026amp;signature=4562c26ccf89a6846599a9bf452239f194e3f67db601c041885f8301fc315128\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"FTP Access - bunny.net Documentation\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Upload and manage files using FTP for compatibility with existing software and workflows\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://bunnynet-cb9733c2.mintlify.app/_mintlify/api/og/v2?division=Manage+Files+%26+Objects\u0026amp;title=FTP+Access\u0026amp;description=Upload+and+manage+files+using+FTP+for+compatibility+with+existing+software+and+workflows\u0026amp;theme=3e3fa11ba94222b95e7f52d5\u0026amp;signature=4562c26ccf89a6846599a9bf452239f194e3f67db601c041885f8301fc315128\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/docs/mintlify-assets/_mintlify/favicons/bunnynet-cb9733c2/Zv4NOenQlgPS3TXm/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"bunny.net Documentation\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#EF6126\">\u003clink data-mint-head rel=\"canonical\" href=\"https://bunny.net/docs/storage/ftp\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/docs/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/docs/storage/ftp.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://bunny.net/#organization\",\"name\":\"bunny.net Documentation\",\"url\":\"https://bunny.net\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/bunnynet-cb9733c2/54-4KCQKoNVNuoyW/logo/bunny-logo-dark.svg?fit=max\u0026auto=format\u0026n=54-4KCQKoNVNuoyW\u0026q=85\u0026s=62c091ea1aaea93d0a981902b7783e37\"}},{\"@type\":\"WebSite\",\"@id\":\"https://bunny.net/docs#website\",\"name\":\"bunny.net Documentation\",\"url\":\"https://bunny.net/docs\",\"publisher\":{\"@id\":\"https://bunny.net/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://bunny.net/docs/storage/ftp#webpage\",\"url\":\"https://bunny.net/docs/storage/ftp\",\"name\":\"FTP Access\",\"description\":\"Upload and manage files using FTP for compatibility with existing software and workflows\",\"dateModified\":\"2026-04-23T12:48:14.000Z\",\"isPartOf\":{\"@id\":\"https://bunny.net/docs#website\"},\"breadcrumb\":{\"@id\":\"https://bunny.net/docs/storage/ftp#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://bunny.net/docs/storage/ftp#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Manage Files \u0026 Objects\",\"item\":\"https://bunny.net/docs/storage/dashboard\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"FTP Access\",\"item\":\"https://bunny.net/docs/storage/ftp\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://bunny.net/docs/storage/ftp#article\",\"headline\":\"FTP Access\",\"name\":\"FTP Access\",\"description\":\"Upload and manage files using FTP for compatibility with existing software and workflows\",\"url\":\"https://bunny.net/docs/storage/ftp\",\"mainEntityOfPage\":{\"@id\":\"https://bunny.net/docs/storage/ftp#webpage\"},\"dateModified\":\"2026-04-23T12:48:14.000Z\",\"publisher\":{\"@id\":\"https://bunny.net/#organization\"},\"isPartOf\":{\"@id\":\"https://bunny.net/docs#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"bunny.net Documentation\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"bunny.net Documentation","nav":{"global":null,"products":[{"product":"Home","icon":"book-open","pages":[{"title":"Home","href":""}]},{"product":"CDN","icon":"zap","description":"Accelerate and protect your content globally","pages":[{"title":"CDN","href":"/cdn"}]},{"product":"Magic Containers","icon":"box","description":"Deploy any app anywhere with Docker","pages":[{"title":"Magic Containers","href":"/magic-containers"}]},{"product":"Edge Scripting","icon":"code","description":"Deploy serverless code at the edge","pages":[{"title":"Edge Scripting","href":"/scripting"}]},{"product":"Stream","icon":"video","description":"Video streaming and delivery platform","pages":[{"title":"Stream","href":"/stream"}]},{"product":"Storage","icon":"hard-drive","description":"Global object storage","tabs":[{"tab":"Documentation","groups":[{"group":"Documentation","pages":[{"title":"Bunny Storage","sidebarTitle":"Introduction","mode":"wide","href":"/storage"},{"title":"Quickstart","href":"/storage/quickstart"},{"title":"Pricing","href":"/storage/pricing"},{"title":"Bunny Storage Changelog","sidebarTitle":"Changelog","url":"/changelog?tags=Storage","href":"/storage/changelog"}]},{"group":"Features","pages":[{"title":"Storage Tiers","href":"/storage/storage-tiers"},{"title":"Replication","href":"/storage/replication"}]},{"group":"Manage Files \u0026 Objects","pages":[{"title":"Dashboard","href":"/storage/dashboard"},{"title":"HTTP","href":"/storage/http"},{"title":"S3","tag":"Public preview","description":null,"href":"/storage/s3"},{"title":"FTP Access","href":"/storage/ftp"},{"group":"SDKs","pages":[{"title":"TypeScript SDK","sidebarTitle":"TypeScript","description":"Official TypeScript/JavaScript SDK for Bunny Storage","href":"/storage/typescript-sdk"},{"title":"PHP SDK","sidebarTitle":"PHP","href":"/storage/php-sdk"},{"title":".NET SDK","sidebarTitle":".NET","href":"/storage/dotnet-sdk"},{"title":"Java SDK","sidebarTitle":"Java","href":"/storage/java-sdk"}]}]},{"group":"Guides","pages":[{"group":"Static Site Hosting","pages":[{"title":"Host a static site on Bunny Storage","sidebarTitle":"Overview","href":"/storage/static-site-hosting/index"},{"group":"JavaScript Frameworks","pages":[{"title":"Deploy Analog to Bunny Storage","sidebarTitle":"Analog","href":"/storage/static-site-hosting/analog"},{"title":"Deploy Angular to Bunny Storage","sidebarTitle":"Angular","href":"/storage/static-site-hosting/angular"},{"title":"Deploy Astro to Bunny Storage","sidebarTitle":"Astro","href":"/storage/static-site-hosting/astro"},{"title":"Deploy Brunch to Bunny Storage","sidebarTitle":"Brunch","href":"/storage/static-site-hosting/brunch"},{"title":"Deploy Ember to Bunny Storage","sidebarTitle":"Ember","href":"/storage/static-site-hosting/ember"},{"title":"Deploy Next.js to Bunny Storage","sidebarTitle":"Next.js","href":"/storage/static-site-hosting/nextjs"},{"title":"Deploy Nuxt to Bunny Storage","sidebarTitle":"Nuxt","href":"/storage/static-site-hosting/nuxt"},{"title":"Deploy Preact to Bunny Storage","sidebarTitle":"Preact","href":"/storage/static-site-hosting/preact"},{"title":"Deploy Qwik to Bunny Storage","sidebarTitle":"Qwik","href":"/storage/static-site-hosting/qwik"},{"title":"Deploy React to Bunny Storage","sidebarTitle":"React","href":"/storage/static-site-hosting/react"},{"title":"Deploy React Router to Bunny Storage","sidebarTitle":"React Router","href":"/storage/static-site-hosting/react-router"},{"title":"Deploy SolidStart to Bunny Storage","sidebarTitle":"SolidStart","href":"/storage/static-site-hosting/solidstart"},{"title":"Deploy SvelteKit to Bunny Storage","sidebarTitle":"SvelteKit","href":"/storage/static-site-hosting/sveltekit"},{"title":"Deploy Vite to Bunny Storage","sidebarTitle":"Vite","href":"/storage/static-site-hosting/vite"},{"title":"Deploy Vue to Bunny Storage","sidebarTitle":"Vue","href":"/storage/static-site-hosting/vue"}]},{"group":"Static Site Generators","pages":[{"title":"Deploy Elder.js to Bunny Storage","sidebarTitle":"Elder.js","href":"/storage/static-site-hosting/elderjs"},{"title":"Deploy Eleventy to Bunny Storage","sidebarTitle":"Eleventy","href":"/storage/static-site-hosting/eleventy"},{"title":"Deploy Gatsby to Bunny Storage","sidebarTitle":"Gatsby","href":"/storage/static-site-hosting/gatsby"},{"title":"Deploy Gridsome to Bunny Storage","sidebarTitle":"Gridsome","href":"/storage/static-site-hosting/gridsome"},{"title":"Deploy Hexo to Bunny Storage","sidebarTitle":"Hexo","href":"/storage/static-site-hosting/hexo"},{"title":"Deploy Hugo to Bunny Storage","sidebarTitle":"Hugo","href":"/storage/static-site-hosting/hugo"},{"title":"Deploy Jekyll to Bunny Storage","sidebarTitle":"Jekyll","href":"/storage/static-site-hosting/jekyll"},{"title":"Deploy Pelican to Bunny Storage","sidebarTitle":"Pelican","href":"/storage/static-site-hosting/pelican"},{"title":"Deploy Zola to Bunny Storage","sidebarTitle":"Zola","href":"/storage/static-site-hosting/zola"}]},{"group":"Documentation","pages":[{"title":"Deploy Docusaurus to Bunny Storage","sidebarTitle":"Docusaurus","href":"/storage/static-site-hosting/docusaurus"},{"title":"Deploy MkDocs to Bunny Storage","sidebarTitle":"MkDocs","href":"/storage/static-site-hosting/mkdocs"},{"title":"Deploy Sphinx to Bunny Storage","sidebarTitle":"Sphinx","href":"/storage/static-site-hosting/sphinx"},{"title":"Deploy VitePress to Bunny Storage","sidebarTitle":"VitePress","href":"/storage/static-site-hosting/vitepress"}]},{"group":"Other","pages":[{"title":"Deploy Blazor WebAssembly to Bunny Storage","sidebarTitle":"Blazor WebAssembly","href":"/storage/static-site-hosting/blazor"},{"title":"Deploy a static HTML site to Bunny Storage","sidebarTitle":"Static HTML","href":"/storage/static-site-hosting/static-html"}]}]}]},{"group":"Reference","pages":[{"title":"Settings","href":"/storage/settings"},{"title":"Limits","href":"/storage/limits"},{"title":"Durability","href":"/storage/durability"},{"title":"API Reference","url":"/api-reference/storage","href":"/storage/api-reference"}]}]}]},{"product":"Shield","icon":"shield","description":"Stay protected and online no matter what","pages":[{"title":"Shield","href":"/shield"}]},{"product":"Optimizer","icon":"sparkles","description":"Automatic image and web optimization.","pages":[{"title":"Optimizer","href":"/optimizer"}]},{"product":"DNS","icon":"globe","description":"Unlock the true power of DNS with an ultra-fast scriptable platform","pages":[{"title":"DNS","href":"/dns"}]},{"product":"Database","icon":"database","description":"Serverless SQLite over HTTP","pages":[{"title":"Database","href":"/database"}]},{"product":"Integrations","icon":"puzzle","description":"Official and third-party plugins and integrations","pages":[{"title":"Integrations","href":"/integrations/wordpress"}]},{"product":"CLI","icon":"terminal","description":"Manage bunny.net from your terminal","pages":[{"title":"CLI","href":"/cli"}]},{"product":"API Reference","icon":"square-terminal","description":"Build \u0026 Integrate with the Platform API","pages":[{"title":"API Reference","href":"/api-reference"}]},{"product":"Partners","icon":"handshake","description":"Manage customers, pricing, and billing as a bunny.net partner","pages":[{"title":"Partners","href":"/partners"}]}]},"basePath":"","title":"FTP Access - bunny.net Documentation","buildId":"dpl_4RHMRqtvdHvKgaEfTTjFqjzja3B6","deploymentId":"dpl_4RHMRqtvdHvKgaEfTTjFqjzja3B6","dynamics":[],"chunks":[]}