{"id":13593802,"url":"https://github.com/andrewchambers/sftpplease","last_synced_at":"2025-04-13T11:52:18.810Z","repository":{"id":57657594,"uuid":"171230098","full_name":"andrewchambers/sftpplease","owner":"andrewchambers","description":"SFTP \u003c-\u003e Cloud service bridge.","archived":false,"fork":false,"pushed_at":"2023-02-25T02:08:42.000Z","size":207,"stargazers_count":69,"open_issues_count":5,"forks_count":3,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-04-06T13:52:38.818Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://acha.ninja","language":"Go","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/andrewchambers.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"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}},"created_at":"2019-02-18T06:48:47.000Z","updated_at":"2024-06-19T12:52:01.000Z","dependencies_parsed_at":"2024-06-20T00:40:35.196Z","dependency_job_id":"2977edbd-44ab-41bc-b5f6-ccd2c68fe083","html_url":"https://github.com/andrewchambers/sftpplease","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andrewchambers%2Fsftpplease","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andrewchambers%2Fsftpplease/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andrewchambers%2Fsftpplease/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andrewchambers%2Fsftpplease/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/andrewchambers","download_url":"https://codeload.github.com/andrewchambers/sftpplease/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248710438,"owners_count":21149188,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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-08-01T16:01:24.741Z","updated_at":"2025-04-13T11:52:18.792Z","avatar_url":"https://github.com/andrewchambers.png","language":"Go","funding_links":["https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick\u0026hosted_button_id=FLUPKG253245L\u0026source=url"],"categories":["Go"],"sub_categories":[],"readme":"# sftpplease\n\nThis program acts as a secure bridge between an ssh server and supported cloud providers.\nThis lets you use sftp and scp client to access cloud providers like dropbox without\ninstalling any closed source software on your devices :).\n\nAny sftp or scp client should work, I have tested with filezilla and openssh sftp/scp.\n\nSshfs will work in the future for simple transfers and directory listing, but will never work for random\nfile access such as running complex applications.\n\n# Project Status\n\nAlpha, read only mode should be safe, but there are definitely bugs, the code hasn't been battle tested at all, and there\nisn't much free time to work on it.\n\nCurrently only dropbox is supported.\n\n# Screenshots\n\nUsing filezilla to upload to dropbox:\n\n![filezilla_dropbox](./screenshots/filezilla_dropbox.png)\n\n# How to use:\n\nFirst, compile sftpplease:\n```\n$ git clone https://github.com/andrewchambers/sftpplease\n$ cd sftpplease/cmd/sftpplease\n$ go build\n$ ./sftpplease -help\n```\n\nInstall the sftpplease binary on your desired server.\n\nNext create a dedicated user account on your server, (for example a dropbox user).\n\nNext create an authorized keys file with a forced command for this user:\n\n```\nrestrict,command=\"/path/to/sftpplease -read-only -vfs dropbox:YOUR_API_TOKEN\", ssh-rsa YOURSSHKEY...\n```\n\nNow you can use sftp and scp to access your dropbox account :):\n\n```\n$ sftp dropbox@your.server.com\nls\n...\n$ scp ./file.txt dropbox@your.server.com:/\n```\n\n# Currently supported providers\n\n## Dropbox\n\n### Creating a dropbox api token\n\n- Visit https://www.dropbox.com/developers\n- Go to 'My apps' (https://www.dropbox.com/developers/apps)\n- Go to create app (https://www.dropbox.com/developers/apps/create)\n- Follow the guides.\n- Visit your app page.\n- Click the 'Generate' button to generate an api access token, Use this token under -the 'vfs dropbox:YOUR_API_TOKEN' argument.\n\n# Donating\n\nIf you are able to give a donation, it would help progress greatly.\n\n- bitcoin: 34FrF1vr59Cg5Sz1Hnd17GPcqztCgpui48\n- [paypal](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick\u0026hosted_button_id=FLUPKG253245L\u0026source=url)\n\n# Credits and thanks\n\n- Vasily Kolobkov for writing the original scp implementation.\n- Authors of https://github.com/pkg/sftp for providing the sftp packet parsing code.\n- Authors of https://github.com/anmitsu/go-shlex for providing shell parsing.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fandrewchambers%2Fsftpplease","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fandrewchambers%2Fsftpplease","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fandrewchambers%2Fsftpplease/lists"}