{"id":16368110,"url":"https://github.com/bfren/docker-ftps","last_synced_at":"2026-04-23T12:01:43.477Z","repository":{"id":37041692,"uuid":"337091264","full_name":"bfren/docker-ftps","owner":"bfren","description":"Docker FTPS image.","archived":false,"fork":false,"pushed_at":"2026-01-28T22:51:22.000Z","size":171,"stargazers_count":18,"open_issues_count":0,"forks_count":8,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-01-29T13:50:22.584Z","etag":null,"topics":["docker","docker-ftps","docker-vsftpd","ftps","vsftpd"],"latest_commit_sha":null,"homepage":"","language":"Nushell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bfren.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":"bfren","patreon":"bfren"}},"created_at":"2021-02-08T13:50:08.000Z","updated_at":"2026-01-28T22:50:52.000Z","dependencies_parsed_at":"2023-12-22T21:26:19.779Z","dependency_job_id":"ffbf5b9b-a983-42e0-8d2b-db85249c542f","html_url":"https://github.com/bfren/docker-ftps","commit_stats":null,"previous_names":[],"tags_count":150,"template":false,"template_full_name":null,"purl":"pkg:github/bfren/docker-ftps","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bfren%2Fdocker-ftps","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bfren%2Fdocker-ftps/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bfren%2Fdocker-ftps/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bfren%2Fdocker-ftps/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bfren","download_url":"https://codeload.github.com/bfren/docker-ftps/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bfren%2Fdocker-ftps/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32179387,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-23T11:42:27.955Z","status":"ssl_error","status_checked_at":"2026-04-23T11:42:18.877Z","response_time":53,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["docker","docker-ftps","docker-vsftpd","ftps","vsftpd"],"created_at":"2024-10-11T02:51:40.839Z","updated_at":"2026-04-23T12:01:43.471Z","avatar_url":"https://github.com/bfren.png","language":"Nushell","funding_links":["https://github.com/sponsors/bfren","https://patreon.com/bfren"],"categories":[],"sub_categories":[],"readme":"# Docker FTPS\n\n![GitHub release (latest by date)](https://img.shields.io/github/v/release/bfren/docker-ftps) ![Docker Pulls](https://img.shields.io/endpoint?url=https%3A%2F%2Fbfren.dev%2Fdocker%2Fpulls%2Fftps) ![Docker Image Size](https://img.shields.io/endpoint?url=https%3A%2F%2Fbfren.dev%2Fdocker%2Fsize%2Fftps) ![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/bfren/docker-ftps/dev.yml?branch=main)\n\n[Docker Repository](https://hub.docker.com/r/bfren/ftps) - [bfren ecosystem](https://github.com/bfren/docker)\n\nComes with vsftpd installed and running in passive mode, with TLS support (self-signed certificates).\n\nWinSCP config (for example):\n\n```c\n// do not choose SFTP, this is a completely different protocol\nProtocol: FTP\n\n// i.e. not 'plain' or 'implicit'\nEncryption: TLS/SSL Explicit encryption\n\n// choose either the IP or URI defined in docker-compose.yml\nHost: BF_FTPS_EXTERNAL_IP or BF_FTPS_EXTERNAL_URI\n\n// you need to open ports 990 and 18700-18710 as well - the\n// connection begins on port 21 and is escalated to the others\nPort: 21\n\n// defined in docker-compose.yml\nUser name: BF_FTPS_VSFTPD_USER\n\n// defined in docker-compose.yml\nPassword: BF_FTPS_VSFTPD_PASS\n```\n\n## Contents\n\n* [Ports](#ports)\n* [Volumes](#volumes)\n* [Environment Variables](#environment-variables)\n* [Licence / Copyright](#licence)\n\n## Ports\n\n* 21\n* 990\n* 18700-18710\n\n## Volumes\n\n| Volume   | Purpose                                                                                                                                                |\n| -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |\n| `/files` | Contains the files that can be accessed / written.                                                                                                     |\n| `/ssl`   | Stores (self-signed) SSL certificates - if you symlink a PEM file called `server.pem` here with a valid SSL certificate, `vsftpd` will use it instead. |\n\n## Environment Variables\n\n| Variable                                  | Values | Description                                                                                                                        | Default                                                    |\n| ----------------------------------------- | ------ | ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------- |\n| `BF_FTPS_EXTERNAL_IP`                     | string | The external IP of the server - required for passive mode (unless `BF_FTPS_EXTERNAL_URI` is set).                                  | *None* - **required** unless `BF_FTPS_EXTERNAL_URI` is set |\n| `BF_FTPS_EXTERNAL_URI`                    | string | The URI of the server - required for passive mode (unless `BF_FTPS_EXTERNAL_IP` is set).\u003cbr\u003eIf both are set this takes precedence. | *None* - **required** unless `BF_FTPS_EXTERNAL_IP` is set  |\n| `BF_FTPS_SSL_BITS`                        | string | The number of bits to use for the self-signed SSL certificate.                                                                     | 4096                                                       |\n| `BF_FTPS_VSFTPD_MIN_PORT`                 | number | The minimum port number to use for data transfer for VSFTPD.                                                                       | 18700                                                      |\n| `BF_FTPS_VSFTPD_MAX_PORT`                 | number | The maximum port number to use for data transfer for VSFTPD.                                                                       | 18710                                                      |\n| `BF_FTPS_VSFTPD_USER`                     | string | A user account will be created for connecting to the server.                                                                       | *None* - **required**                                      |\n| `BF_FTPS_VSFTPD_PASS`                     | string | The password to use for connecting to the server.                                                                                  | *None* - **required**                                      |\n| `BF_FTPS_VSFTPD_UID`                      | string | User ID with access rights to the `/files` directory.                                                                              | 1000                                                       |\n| `BF_FTPS_VSFTPD_ENABLE_DEBUG_LOG`         | 0 or 1 | Whether or not to enable all FTP commands and responses for vsftpd.                                                                | 0                                                          |\n| `BF_FTPS_VSFTPD_ENABLE_PASV_PROMISCUOUS`  | 0 or 1 | If set to '1' then `pasv_promiscuous` will be set to 'yes' for vsftpd - be sure you know what you're doing.                        | 0                                                          |\n| `BF_FTPS_VSFTPD_WELCOME`                  | string | Welcome message when people sign in to the server.                                                                                 | \"Welcome to the FTPS server.\"                              |\n\n## Licence\n\n\u003e [MIT](https://mit.bfren.dev/2021)\n\n## Copyright\n\n\u003e Copyright (c) 2021-2026 [bfren](https://bfren.dev) (unless otherwise stated)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbfren%2Fdocker-ftps","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbfren%2Fdocker-ftps","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbfren%2Fdocker-ftps/lists"}