> For the complete documentation index, see [llms.txt](https://docs.couchdrop.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.couchdrop.io/managed-file-transfer/ftp-and-ftps/inbound-ftp-ftps.md).

# Inbound FTP/FTPS

Learn about Inbound FTP and FTPs with Couchdrop

Inbound FTP/FTPS allows external users to connect to your Couchdrop environment using the FTP/S protocol. For inbound connections, Couchdrop acts as an alternative to traditional FTP servers.&#x20;

{% hint style="info" %}
Inbound FTP is supported by default in Couchdrop accounts, but you will need to [configure FTP users](/managed-file-transfer/ftp-and-ftps/create-ftp-ftps-users.md) for access.​
{% endhint %}

## Setting up inbound FTP/FTPS

Configuring inbound FTP/FTPS requires these steps:&#x20;

{% stepper %}
{% step %}

### Configure storage

Inbound FTP connections require a storage endpoint. For Couchdrop, this endpoint can be Couchdrop [hosted storage](/storage/hosted-storage.md), but most users choose to use a directory in any compatible [storage integration](/storage/integrations.md).

See [How storage integrations work](/storage/overview.md) for the setup process.&#x20;
{% endstep %}

{% step %}

### Create FTP/S users

In order to interact with your storage via FTP, you must create FTP/S users.  Users will be limited to the home directory that you set during FTP user creation.&#x20;

These users can then [use an FTP client](/managed-file-transfer/ftp-and-ftps/how-to-connect-via-ftp-ftps.md) to log in to your Couchdrop environment, or you can provide them with permission to use the Couchdrop web portal that can take the place of a traditional client. &#x20;

See [Creating FTP/S users](/managed-file-transfer/ftp-and-ftps/create-ftp-ftps-users.md) for the setup process.&#x20;
{% endstep %}

{% step %}

### Configure automated FTP transfers (Optional)

You can automate FTP file transfers and file processing with automations. These automations can be triggered on a schedule or when a specific event happens, such as when a file is uploaded or downloaded from the FTP endpoint.&#x20;

See [Automations Overview](/automations/overview.md) for more information about automated file transfers.&#x20;
{% endstep %}
{% endstepper %}

## How to connect via FTP/FTPS

Once you create an endpoint for inbound FTP, connecting to Couchdrop via an FTP client is simple and supported by all major FTP clients.&#x20;

{% hint style="warning" %}

#### Before you start

To connect via FTP/FTPs, you will need:&#x20;

* A username & password *OR* A username & key
* The hostname for your Couchdrop POP.
* An FTP client or platform/software that supports FTP.&#x20;
  {% endhint %}

These details will need to be entered into the FTP client in the appropriate fields.&#x20;

{% hint style="info" %}
Your hostname will look like **\<my domain>.couchdrop.io** and can be found at the top of the dashboard in the Couchdrop web app.
{% endhint %}

## Recommended connection settings for FTP clients

FTP has a few options around networking and security. Couchdrop attempts to support as many clients as feasible, but these are the recommendations.&#x20;

| Option               | Recommended Value          | Description                                                                                                                                                                                                                           |
| -------------------- | -------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| TLS auto negotiation | ON                         | <p>FTP by default is insecure. It is unencrypted and very easy to break. FTPs use an auto negotiation process that occurs during authentication that uses encrypted channels. <br><br>We recommended always enabling this option.</p> |
| Port                 | 20                         | Couchdrop uses the default port for FTP access                                                                                                                                                                                        |
| Passive Mode         | ON                         | Passive FTP mode forces the client to negotiate data channels with the server. This alleviates most of the issues with NAT and firewalls that do not support active channel negotiation.                                              |
| Hostname             | \<yourdomain>.couchdrop.io | Couchdrop provides a domain name for each tenant. You can find this under at the top of the dashboard in the Couchdrop web app.                                                                                                       |


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.couchdrop.io/managed-file-transfer/ftp-and-ftps/inbound-ftp-ftps.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
