{"id":13413833,"url":"https://github.com/drakkan/sftpgo","last_synced_at":"2026-10-18T22:07:06.545Z","repository":{"id":38305787,"uuid":"197914161","full_name":"drakkan/sftpgo","owner":"drakkan","description":"Full-featured and highly configurable SFTP, HTTP/S, FTP/S and WebDAV server - S3, Google Cloud Storage, Azure Blob","archived":false,"fork":false,"pushed_at":"2026-10-03T14:22:23.000Z","size":42486,"stargazers_count":12668,"open_issues_count":181,"forks_count":981,"subscribers_count":111,"default_branch":"main","last_synced_at":"2026-10-17T16:04:48.620Z","etag":null,"topics":["azure-blob","cloud-storage","data-at-rest-encryption","docker","ftp","ftp-server","go","google-cloud-storage","multi-factor-authentication","portable","prometheus","proxy-protocol","s3","scp","sftp","sftp-server","webdav","webdav-server"],"latest_commit_sha":null,"homepage":"https://sftpgo.com","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/drakkan.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":"CODEOWNERS","security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":"NOTICE","maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":["drakkan"],"patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"custom":null}},"created_at":"2019-07-20T10:18:31.000Z","updated_at":"2026-10-17T12:20:27.000Z","dependencies_parsed_at":"2023-10-04T23:50:42.067Z","dependency_job_id":"2d8e0305-a014-4dd9-b8b1-3f175813523d","html_url":"https://github.com/drakkan/sftpgo","commit_stats":{"total_commits":1928,"total_committers":76,"mean_commits":25.36842105263158,"dds":0.08298755186721996,"last_synced_commit":"00155eaaf6f5bcea6a7f257d135962506896eff8"},"previous_names":[],"tags_count":57,"template":false,"template_full_name":null,"purl":"pkg:github/drakkan/sftpgo","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/drakkan%2Fsftpgo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/drakkan%2Fsftpgo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/drakkan%2Fsftpgo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/drakkan%2Fsftpgo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/drakkan","download_url":"https://codeload.github.com/drakkan/sftpgo/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/drakkan%2Fsftpgo/sbom","scorecard":{"id":355139,"data":{"date":"2025-08-11","repo":{"name":"github.com/drakkan/sftpgo","commit":"0dec86474e48c5715ed90dd99763310afbceca81"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.2,"checks":[{"name":"Code-Review","score":0,"reason":"Found 1/28 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Security-Policy","score":9,"reason":"security policy file detected","details":["Info: security policy file detected: SECURITY.md:1","Info: Found linked content: SECURITY.md:1","Warn: One or no descriptive hints of disclosure, vulnerability, and/or timelines in security policy","Info: Found text in security policy: SECURITY.md:1"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Maintained","score":10,"reason":"30 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/codeql.yml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/development.yml:10","Warn: no topLevel permission defined: .github/workflows/docker.yml:1","Warn: topLevel 'contents' permission set to 'write': .github/workflows/release.yml:9","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: GNU Affero General Public License v3.0: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"CII-Best-Practices","score":2,"reason":"badge detected: InProgress","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Signed-Releases","score":0,"reason":"Project has not signed or included provenance with any releases.","details":["Warn: release artifact v2.6.6 not signed: https://api.github.com/repos/drakkan/sftpgo/releases/202118944","Warn: release artifact v2.6.5 not signed: https://api.github.com/repos/drakkan/sftpgo/releases/199110264","Warn: release artifact v2.6.4 not signed: https://api.github.com/repos/drakkan/sftpgo/releases/187958479","Warn: release artifact v2.6.3 not signed: https://api.github.com/repos/drakkan/sftpgo/releases/185675214","Warn: release artifact v2.6.2 not signed: https://api.github.com/repos/drakkan/sftpgo/releases/161717365","Warn: release artifact v2.6.6 does not have provenance: https://api.github.com/repos/drakkan/sftpgo/releases/202118944","Warn: release artifact v2.6.5 does not have provenance: https://api.github.com/repos/drakkan/sftpgo/releases/199110264","Warn: release artifact v2.6.4 does not have provenance: https://api.github.com/repos/drakkan/sftpgo/releases/187958479","Warn: release artifact v2.6.3 does not have provenance: https://api.github.com/repos/drakkan/sftpgo/releases/185675214","Warn: release artifact v2.6.2 does not have provenance: https://api.github.com/repos/drakkan/sftpgo/releases/161717365"],"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/codeql.yml:18: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/codeql.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/codeql.yml:23: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/codeql.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/codeql.yml:28: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/codeql.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/codeql.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/codeql.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/codeql.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/codeql.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/development.yml:487: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/development.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/development.yml:532: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/development.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/development.yml:581: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/development.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/development.yml:596: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/development.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/development.yml:602: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/development.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/development.yml:612: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/development.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/development.yml:615: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/development.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/development.yml:617: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/development.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/development.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/development.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/development.yml:27: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/development.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/development.yml:51: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/development.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/development.yml:96: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/development.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/development.yml:107: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/development.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/development.yml:113: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/development.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/development.yml:120: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/development.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/development.yml:157: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/development.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/development.yml:251: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/development.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/development.yml:276: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/development.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/development.yml:283: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/development.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/development.yml:290: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/development.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/development.yml:314: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/development.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/development.yml:324: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/development.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/development.yml:327: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/development.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/development.yml:388: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/development.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/development.yml:391: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/development.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/docker.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/docker.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docker.yml:144: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/docker.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docker.yml:147: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/docker.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docker.yml:151: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/docker.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docker.yml:158: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/docker.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docker.yml:166: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/docker.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:475: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:480: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:485: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:490: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:513: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:525: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:536: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:541: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:546: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:551: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:556: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:561: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:566: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:571: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:576: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:581: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:586: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:591: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:596: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:601: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:606: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:611: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:616: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:621: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:626: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:631: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:21: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:39: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:51: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:53: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/release.yml:58: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/release.yml:94: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/release.yml:156: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:201: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:208: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:215: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:222: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:233: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:235: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:284: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:291: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:329: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/release.yml:382: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:431: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:449: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:456: update your workflow using https://app.stepsecurity.io/secureworkflow/drakkan/sftpgo/release.yml/main?enable=pin","Warn: containerImage not pinned by hash: Dockerfile:1","Warn: containerImage not pinned by hash: Dockerfile:33: pin your Docker image by updating debian:bookworm-slim to debian:bookworm-slim@sha256:b1a741487078b369e78119849663d7f1a5341ef2768798f7b7406c4240f86aef","Warn: containerImage not pinned by hash: Dockerfile.alpine:1","Warn: containerImage not pinned by hash: Dockerfile.alpine:28: pin your Docker image by updating alpine:3.22 to alpine:3.22@sha256:4bcff63911fcb4448bd4fdacec207030997caf25e9bea4045fa6c8c44de311d1","Warn: containerImage not pinned by hash: Dockerfile.distroless:1","Warn: containerImage not pinned by hash: Dockerfile.distroless:35: pin your Docker image by updating gcr.io/distroless/static-debian12 to gcr.io/distroless/static-debian12@sha256:2e114d20aa6371fd271f854aa3d6b2b7d2e70e797bb3ea44fb677afec60db22c","Info:   0 out of  68 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of  15 third-party GitHubAction dependencies pinned","Info:   0 out of   6 containerImage dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/docker.yml:14"],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"SAST","score":7,"reason":"SAST tool detected but not run on all commits","details":["Info: SAST configuration detected: CodeQL","Warn: 1 commits out of 3 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-18T09:21:04.425Z","repository_id":38305787,"created_at":"2025-08-18T09:21:04.425Z","updated_at":"2025-08-18T09:21:04.425Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":344872684,"owners_count":38335131,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-10-03T21:59:58.778Z","status":"online","status_checked_at":"2026-10-17T02:00:06.547Z","response_time":57,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["azure-blob","cloud-storage","data-at-rest-encryption","docker","ftp","ftp-server","go","google-cloud-storage","multi-factor-authentication","portable","prometheus","proxy-protocol","s3","scp","sftp","sftp-server","webdav","webdav-server"],"created_at":"2024-07-30T20:01:50.693Z","updated_at":"2026-10-18T22:07:06.539Z","avatar_url":"https://github.com/drakkan.png","language":"Go","funding_links":["https://github.com/sponsors/drakkan"],"categories":["Go","Server Applications","开源类库","Servers","Programming","Software","服务器应用程序","HarmonyOS","go","Relational Databases","Repositories","prometheus","服务端应用","Table of Contents","User Interface"],"sub_categories":["HTTP Clients","网络","Standalone","Storage","File Transfer - Object Storage \u0026 File Servers","HTTP客户端","Windows Manager","查询语","File Sharing","Applications and End User Tools"],"readme":"# SFTPGo\n\n[![CI Status](https://github.com/drakkan/sftpgo/workflows/CI/badge.svg)](https://github.com/drakkan/sftpgo/workflows/CI/badge.svg)\n[![License: AGPL-3.0-only](https://img.shields.io/badge/License-AGPLv3-blue.svg)](https://www.gnu.org/licenses/agpl-3.0)\n[![Mentioned in Awesome Go](https://awesome.re/mentioned-badge.svg)](https://github.com/avelino/awesome-go)\n\nFull-featured and highly configurable event-driven file transfer solution. Server protocols: SFTP, HTTP/S, FTP/S, WebDAV. Storage backends: local filesystem, encrypted local filesystem, S3 (compatible) Object Storage, Google Cloud Storage, Azure Blob Storage, other SFTP servers.\n\nWith SFTPGo you can leverage local and cloud storage backends for exchanging and storing files internally or with business partners using the same tools and processes you are already familiar with.\n\n## Project Status \u0026 Editions\n\nSFTPGo is an open-source project with a sustainable business model. We offer two editions to suit different requirements, ensuring the project remains healthy and maintained for everyone.\n\n### Open Source (Community)\n\nFree, Copyleft (AGPLv3), Community Supported. The Community edition is a fully functional, production-ready solution widely adopted worldwide. It includes all the core protocols, storage backends, and the WebAdmin/WebClient UIs. It is ideal for:\n\n- Standard file transfer needs.\n- Integrating storage backends (S3, GCS, Azure Blob) with legacy protocols.\n- Projects that are comfortable with AGPLv3 licensing.\n\n### SFTPGo Enterprise\n\nCommercial License, Professional Support, ISO 27001 Vendor. The Enterprise edition is built on the same core but extends it for mission-critical environments, compliance-heavy industries, and advanced workflows. It is a drop-in replacement (seamless upgrade).\n\n| Feature | Open Source (Community) | Enterprise Edition |\n| :--- | :--- | :--- |\n| **License Type** | AGPLv3 (Copyleft) | **Commercial License**\u003cbr/\u003eProprietary/No Copyleft |\n| **Vendor Compliance** | Not Applicable\u003cbr/\u003eCommunity Project | **Certified Vendor**\u003cbr/\u003eISO 27001 \u0026 Supply Chain Validation |\n| **Support** | Community (GitHub) | **Direct from Authors** |\n| **Cloud Storage Engine** | Standard | **High Performance \u0026 Scalable**\u003cbr/\u003eIn-memory streaming (no local temp files) and up to 70% faster |\n| **High Availability (HA)** | Standard\u003cbr/\u003eShared DB \u0026 Storage | **Advanced**\u003cbr/\u003eEnhanced event handling and optimized instance coordination |\n| **Automation Logic** | Simple Placeholders | **Dynamic Logic \u0026 Virtual Folders**\u003cbr/\u003eConditions, loops, route data across storage backends |\n| **Data Lifecycle** | Delete / Retain | **Smart Archiving**\u003cbr/\u003eMove data to external Cloud/SFTP storage via Virtual Folders |\n| **Email Data Ingestion** | - | **Native IMAP Integration**\u003cbr/\u003eAuto-extract attachments from email to storage |\n| **Public Sharing** | Standard Links | **Advanced \u0026 Collaborative**\u003cbr/\u003eEmail Authentication \u0026 Group Delegation |\n| **Data Protection** | - | **Encryption \u0026 Scanning**\u003cbr/\u003eAutomated PGP, Antivirus \u0026 DLP via ICAP |\n| **Advanced Identity (SSO)** | Standard | **Extended Controls**\u003cbr/\u003eAdvanced Single Sign-On parameters |\n| **Document Editing** | - | **Included**\u003cbr/\u003eView, edit, and co-author in browser |\n\n**Note**: We are committed to keeping the Open Source edition powerful and maintained. The Enterprise edition helps fund the development of the entire SFTPGo ecosystem.\n\n## Sponsors\n\nIf you rely on SFTPGo in your projects, consider becoming a [sponsor](https://github.com/sponsors/drakkan).\n\nYour sponsorship helps cover maintenance, security updates and ongoing development of the open-source edition.\n\n### Thank you to our sponsors\n\n#### Platinum sponsors\n\n[\u003cimg src=\"./img/Aledade_logo.png\" alt=\"Aledade logo\" width=\"202\" height=\"70\"\u003e](https://www.aledade.com/)\n\u003c/br\u003e\u003c/br\u003e\n[\u003cimg src=\"./img/jumptrading.png\" alt=\"Jump Trading logo\" width=\"198\" height=\"85\"\u003e](https://www.jumptrading.com/)\n\u003c/br\u003e\u003c/br\u003e\n[\u003cimg src=\"./img/wpengine.png\" alt=\"WP Engine logo\" width=\"331\" height=\"63\"\u003e](https://wpengine.com/)\n\n#### Silver sponsors\n\n[\u003cimg src=\"./img/IDCS.png\" alt=\"IDCS logo\" width=\"212\" height=\"51\"\u003e](https://idcs.ip-paris.fr/)\n\n#### Bronze sponsors\n\n[\u003cimg src=\"./img/servinga.png\" alt=\"servinga logo\" width=\"258\" height=\"56\"\u003e](https://servinga.com/)\n\u003c/br\u003e\u003c/br\u003e\n[\u003cimg src=\"./img/reui.png\" alt=\"ReUI logo\" width=\"151\" height=\"56\"\u003e](https://www.reui.io/)\n\n## Documentation\n\nYou can explore all supported features and configuration options at [docs.sftpgo.com](https://docs.sftpgo.com/latest/).\n\n**Note:** The link above refers to the **Community Edition**.\nFor details on **Enterprise Edition**, please refer to the [Enterprise Documentation](https://docs.sftpgo.com/enterprise/).\n\n## Support\n\n- **Community Support**: use [GitHub Discussions](https://github.com/drakkan/sftpgo/discussions) to ask questions, share feedback, and engage with other users.\n- **Commercial Support**: If you require guaranteed SLAs, expert guidance, or the advanced features listed above, check out [SFTPGo Enterprise](https://sftpgo.com).\n\nSFTPGo Enterprise is available as:\n\n- On-premises: Full control on your infrastructure. More details: [sftpgo.com/on-premises](https://sftpgo.com/on-premises)\n- Fully managed SaaS: We handle the infrastructure. More details: [sftpgo.com/saas](https://sftpgo.com/saas)\n\n## Internationalization\n\nThe translations are available via [Crowdin](https://crowdin.com/project/sftpgo), who have granted us an open source license.\n\nBefore translating please take a look at our contribution [guidelines](https://docs.sftpgo.com/latest/web-interfaces/#internationalization).\n\n## Release Cadence\n\nSFTPGo follows a feature-driven release cycle.\n\n- Enterprise Edition: Receives major new features first and follows a faster [release cadence](https://docs.sftpgo.com/enterprise/changelog/).\n- Community Edition: Remains maintained, receiving bug fixes, security updates, and updates to core features.\n\n## Acknowledgements\n\nSFTPGo makes use of the third party libraries listed inside [go.mod](./go.mod).\n\nWe are very grateful to all the people who contributed with ideas and/or pull requests.\n\nThank you to [ysura](https://www.ysura.com/) for granting us stable access to a test AWS S3 account.\n\nThank you to [KeenThemes](https://keenthemes.com/) for granting us a custom license to use their amazing [themes](https://keenthemes.com/bootstrap-templates) for the SFTPGo WebAdmin and WebClient user interfaces, across both the Open Source and Open Core versions.\n\nThank you to [Crowdin](https://crowdin.com/) for granting us an Open Source License.\n\nThank you to [Incode](https://www.incode.it/) for helping us to improve the UI/UX.\n\n## License\n\nSFTPGo source code is licensed under the GNU AGPL-3.0-only with [additional terms](./NOTICE).\n\nThe [theme](https://keenthemes.com/bootstrap-templates) used in WebAdmin and WebClient user interfaces is proprietary, this means:\n\n- KeenThemes HTML/CSS/JS components are allowed for use only within the SFTPGo product and restricted to be used in a resealable HTML template that can compete with KeenThemes products anyhow.\n- The SFTPGo WebAdmin and WebClient user interfaces (HTML, CSS and JS components) based on this theme are allowed for use only within the SFTPGo product and therefore cannot be used in derivative works/products without an explicit grant from the [SFTPGo Team](mailto:support@sftpgo.com).\n\nMore information about [compliance](https://sftpgo.com/compliance.html).\n\n**Note:** We do not provide legal advice. If you have questions about license compliance or whether your use case is permitted under the license terms, please consult your legal team.\n\n## Copyright\n\nCopyright (C) 2019 - 2026 Nicola Murino\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdrakkan%2Fsftpgo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdrakkan%2Fsftpgo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdrakkan%2Fsftpgo/lists"}