{"id":21829748,"url":"https://github.com/0xtlt/easyftp","last_synced_at":"2026-05-03T10:39:16.815Z","repository":{"id":226791724,"uuid":"769642361","full_name":"0xtlt/easyftp","owner":"0xtlt","description":null,"archived":false,"fork":false,"pushed_at":"2024-03-09T18:52:28.000Z","size":3,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-01-26T17:53:04.613Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/0xtlt.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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}},"created_at":"2024-03-09T16:44:06.000Z","updated_at":"2024-03-09T17:37:40.000Z","dependencies_parsed_at":"2024-11-27T18:40:40.110Z","dependency_job_id":null,"html_url":"https://github.com/0xtlt/easyftp","commit_stats":null,"previous_names":["0xtlt/ftplinux"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/0xtlt/easyftp","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/0xtlt%2Feasyftp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/0xtlt%2Feasyftp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/0xtlt%2Feasyftp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/0xtlt%2Feasyftp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/0xtlt","download_url":"https://codeload.github.com/0xtlt/easyftp/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/0xtlt%2Feasyftp/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32566444,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-03T06:36:36.687Z","status":"ssl_error","status_checked_at":"2026-05-03T06:36:09.306Z","response_time":103,"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":[],"created_at":"2024-11-27T18:29:06.461Z","updated_at":"2026-05-03T10:39:16.799Z","avatar_url":"https://github.com/0xtlt.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# EasyFTP\n\nEasyFTP is a streamlined solution designed for managing FTP users on Linux systems. It leverages `yq` for handling YAML configurations, offering a straightforward way to manage user accounts and settings.\n\n## Prerequisites\n\nBefore you begin, ensure you have the following installed on your system:\n\n- `yq` version 4 or higher\n- Bash environment\n\n## Getting Started\n\n**Note:** The instructions below are tailored for a general Linux environment. If you're using Docker for testing, ensure you're familiar with Docker commands and environments.\n\n1. **Install yq**\n\nEnsure that you have `yq` version 4 or higher installed. You can check your version with:\n\n```sh\nyq --version\n```\n\nIf you need to install or upgrade `yq`, follow the instructions on the [official yq GitHub page](https://github.com/mikefarah/yq).\n\nOR\n\n```sh\nsnap install yq\n```\n\nOR\n\n```sh\nwget https://github.com/mikefarah/yq/releases/download/v4.42.1/yq_linux_amd64 -O /usr/bin/yq \u0026\u0026 chmod +x /usr/bin/yq\n```\n\n2. **Clone the Repository**\n\nIf applicable, clone the repository where `EasyFTP` is hosted to access the configuration files and scripts.\n\n```sh\ngit clone https://github.com/0xtlt/easyftp.git\ncd easyftp\n```\n\n3. **Configure FTP Users**\n\nEdit the `users.yaml` file to define the FTP users and their settings. Here's an example configuration:\n\n```yaml\nusers:\n  ftp_user1:\n    password: \"password1\"\n    directory: \"/home/user1\"\n  ftp_user2:\n    password: \"password2\"\n    directory: \"/home/user2\"\n```\n\n4. **Run the Setup Script**\n\nExecute the `apply.bash` script to apply the configurations specified in `users.yaml`.\n\n```sh\n./apply.bash\n```\n\n## Configuration Details\n\n- **`users.yaml`**: This YAML file contains the configuration for each FTP user. Adjust this file to manage FTP user settings.\n\n## If your server doesn't support authentication with a password\n\nGo to `/etc/ssh/sshd_config`\nAdd the following lines at the end of the file:\n\n```sh\nMatch User ftp_*\n  ForceCommand internal-sftp\n  PasswordAuthentication yes\n  ChrootDirectory %h\n  PermitTunnel no\n  AllowAgentForwarding no\n  AllowTcpForwarding no\n  X11Forwarding no\n```\n\n## Contribution\n\nYour contributions are welcome! If you'd like to improve EasyFTP or suggest features, please feel free to fork the repository, make your changes, and submit a pull request.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F0xtlt%2Feasyftp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2F0xtlt%2Feasyftp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F0xtlt%2Feasyftp/lists"}