Cloudron makes it easy to run web apps like WordPress, Nextcloud, GitLab on your server. Find out more or install now.


Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Bookmarks
  • Search
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo

Cloudron Forum

Apps | Demo | Docs | Install
  1. Cloudron Forum
  2. App Wishlist
  3. SFTPGo

SFTPGo

Scheduled Pinned Locked Moved Solved App Wishlist
22 Posts 7 Posters 2.2k Views 7 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • P Offline
    P Offline
    PhilipInt
    wrote on last edited by joseph
    #1

    Hello !

    I would like to request a new app : https://github.com/drakkan/sftpgo
    It should be pretty easy to package since it already provides dockerfiles.

    I don't understand how a simple sftp server app is not available on cloudron yet ? We have much more complex things or we have twisted workarounds by usings ftps setup by other apps like wordpress or lamp.

    I just want a place where I can set up a ftp server, add users and permissions on folders, that's it !

    Thanks !

    PS: Category select is broken, I only had the choice between Comentario and AzuraCast for some reason)

    J BrutalBirdieB 2 Replies Last reply
    6
    • nebulonN nebulon moved this topic from Comentario on
    • P PhilipInt

      Hello !

      I would like to request a new app : https://github.com/drakkan/sftpgo
      It should be pretty easy to package since it already provides dockerfiles.

      I don't understand how a simple sftp server app is not available on cloudron yet ? We have much more complex things or we have twisted workarounds by usings ftps setup by other apps like wordpress or lamp.

      I just want a place where I can set up a ftp server, add users and permissions on folders, that's it !

      Thanks !

      PS: Category select is broken, I only had the choice between Comentario and AzuraCast for some reason)

      J Offline
      J Offline
      joseph
      Staff
      wrote on last edited by
      #2

      @PhilipInt said in SFTP solution:

      I don't understand how a simple sftp server app is not available on cloudron yet ?

      Cloudron is designed for hosting web applications i.e apps that have a frontend that can be accessed using a browser. Running server programs (daemons) has not been the focus and currently out of scope.

      sftpgo does seems to be more than a simple daemon, it's a web application . It fits in Cloudron.

      I just want a place where I can set up a ftp server, add users and permissions on folders, that's it !

      If you are not attached to the ftp server aspect, we have various apps like Nextcloud, Cubby, maybe even Surfer which does exactly this.

      C 1 Reply Last reply
      1
      • P PhilipInt

        Hello !

        I would like to request a new app : https://github.com/drakkan/sftpgo
        It should be pretty easy to package since it already provides dockerfiles.

        I don't understand how a simple sftp server app is not available on cloudron yet ? We have much more complex things or we have twisted workarounds by usings ftps setup by other apps like wordpress or lamp.

        I just want a place where I can set up a ftp server, add users and permissions on folders, that's it !

        Thanks !

        PS: Category select is broken, I only had the choice between Comentario and AzuraCast for some reason)

        BrutalBirdieB Offline
        BrutalBirdieB Offline
        BrutalBirdie
        Partner
        wrote on last edited by
        #3

        @PhilipInt I could give it a shot.
        I already have an SFTPgo server running via. Ansible, so I know the details of hosting one and might be able to package it rather quickly.

        BUT when I have the time 😄 currently projects bind me for 2-3 weeks.

        Like my work? Consider donating a drink. Cheers!

        1 Reply Last reply
        4
        • J joseph

          @PhilipInt said in SFTP solution:

          I don't understand how a simple sftp server app is not available on cloudron yet ?

          Cloudron is designed for hosting web applications i.e apps that have a frontend that can be accessed using a browser. Running server programs (daemons) has not been the focus and currently out of scope.

          sftpgo does seems to be more than a simple daemon, it's a web application . It fits in Cloudron.

          I just want a place where I can set up a ftp server, add users and permissions on folders, that's it !

          If you are not attached to the ftp server aspect, we have various apps like Nextcloud, Cubby, maybe even Surfer which does exactly this.

          C Offline
          C Offline
          ctrl
          wrote on last edited by ctrl
          #4

          @joseph said in SFTPGo:

          If you are not attached to the ftp server aspect, we have various apps like Nextcloud, Cubby, maybe even Surfer which does exactly this.

          Where Nextcloud is just too heavy and Cubby a tad too minimalistic SFTPGO could fill a gap (+exended other features both of the available solutions are lacking) as well as Filestash.

          Also referencing @nebulon's post: https://forum.cloudron.io/topic/7019/sftpgo

          1 Reply Last reply
          1
          • C ctrl referenced this topic on
          • C ctrl referenced this topic on
          • BrutalBirdieB Offline
            BrutalBirdieB Offline
            BrutalBirdie
            Partner
            wrote on last edited by BrutalBirdie
            #5

            Started working on it.
            First working state here: https://git.cloudron.io/BrutalBirdie/sftpgo-cloudron-app/-/tree/0.0.8?ref_type=tags

            Definition of working:

            • SFTP working - tested with FileZilla
            • FTP working
            • WebUI Working with features
            • TODO | OIDC not configured correctly, want to help?
              https://docs.sftpgo.com/latest/oidc/?h=redirect

            Quick test for "techy" users:

            wget https://git.cloudron.io/BrutalBirdie/sftpgo-cloudron-app/-/raw/0.0.8/CloudronManifest.json
            cloudron install --location sftpgo --image brutalbirdie/sftpgo.cloudron.app:0.0.8
            

            Like my work? Consider donating a drink. Cheers!

            1 Reply Last reply
            3
            • BrutalBirdieB Offline
              BrutalBirdieB Offline
              BrutalBirdie
              Partner
              wrote on last edited by BrutalBirdie
              #6

              While on the topic.
              FTP is somewhat working because it needs the passive_port_range and yes I could add the Manifest - tcpports - portCount to do this, but I dislike it.

              I would be fine with SFTP only and no FTP.
              But need input from the community.

              Like my work? Consider donating a drink. Cheers!

              1 Reply Last reply
              2
              • BrutalBirdieB Offline
                BrutalBirdieB Offline
                BrutalBirdie
                Partner
                wrote on last edited by BrutalBirdie
                #7

                Update: FTP and ftpes now working.
                Use Version 0.0.9

                Like my work? Consider donating a drink. Cheers!

                1 Reply Last reply
                2
                • BrutalBirdieB Offline
                  BrutalBirdieB Offline
                  BrutalBirdie
                  Partner
                  wrote on last edited by BrutalBirdie
                  #8

                  WebDav also working.
                  Tested with curl.
                  e.g:

                  wget https://git.cloudron.io/BrutalBirdie/sftpgo-cloudron-app/-/raw/0.0.8/CloudronManifest.json
                  curl -T CloudronManifest.json -u REDACTED:REDACTED https://sftpgo.cloudron.dev:8888
                  Created
                  

                  Buuuuuut this 8888 is rather ugly imho.
                  I would opt for an extra subdomain via. https://docs.cloudron.io/packaging/manifest/#httpports so you don't need the 8888 🤔
                  Will test it.

                  Like my work? Consider donating a drink. Cheers!

                  1 Reply Last reply
                  5
                  • girishG Offline
                    girishG Offline
                    girish
                    Staff
                    wrote on last edited by
                    #9

                    @BrutalBirdie great progress. What's pending in the app? Do you think we should consider publishing it?

                    1 Reply Last reply
                    1
                    • BrutalBirdieB Offline
                      BrutalBirdieB Offline
                      BrutalBirdie
                      Partner
                      wrote on last edited by
                      #10

                      OIDC stills needs work and I struggle to figure out what is wrong.
                      Testing all features including all the support for gcs, azure blob and S3 support for users I did not do yet.
                      Tests also missing for the app and needs to be done.

                      Imo, could be published as unstable (when OIDC is working 😬), so people can start testing to give feedback. 👍

                      Like my work? Consider donating a drink. Cheers!

                      1 Reply Last reply
                      3
                      • BrutalBirdieB Offline
                        BrutalBirdieB Offline
                        BrutalBirdie
                        Partner
                        wrote on last edited by BrutalBirdie
                        #11

                        WIP - Docker Image 0.0.10

                        Okay so after some tinkering and reading SFTPGo Code a bit I figures out this seems the correct redirect uris for the manifest.

                            "oidc": {
                                "loginRedirectUri": "/web/oidc/redirect, /web/admin/oidclogin, /web/client/oidclogin",
                                "logoutRedirectUri": "/",
                                "tokenSignatureAlgorithm": "RS256"
                            }
                        

                        But now I see this:

                        image.png

                        Hmmmmmm yea.... create a user? Please? Pretty please?

                        Ugh.....
                        https://docs.sftpgo.com/2.6/dynamic-user-mod/

                        Did I understand this doc right? I need to write a small script which I then need to package with Cloudron?

                        UUUGGGGHHHHHHHHH OKKKKAAAAYYYY FINE!

                        Like my work? Consider donating a drink. Cheers!

                        1 Reply Last reply
                        0
                        • BrutalBirdieB Offline
                          BrutalBirdieB Offline
                          BrutalBirdie
                          Partner
                          wrote on last edited by BrutalBirdie
                          #12

                          I've done it. . . . OIDC is now working.
                          Use Version 0.0.11 but now the login via FileZilla with the Cloudron password is not working
                          . . .


                          Hmmm this happend now with a FileZilla sftp:// connection:

                          Jan 26 01:51:04 {"level":"debug","time":"2025-01-26T00:56:30.125","sender":"dataprovider_postgresql","message":"pre-login hook completed, elapsed: 47.318602ms"}
                          Jan 26 01:51:04 {"level":"debug","time":"2025-01-26T00:56:30.132","sender":"dataprovider_postgresql","message":"user \"elias.hackradt\" added/updated from pre-login hook response, id: 1"}
                          Jan 26 01:51:04 {"level":"debug","time":"2025-01-26T00:56:30.157","sender":"connection_failed","client_ip":"2a02:8109:ab82:c600:200b:7676:a14b:4ae1","username":"elias.hackradt","login_type":"keyboard-interactive","protocol":"SSH","error":"credentials cannot be null or empty"}
                          Jan 26 01:51:04 {"level":"debug","time":"2025-01-26T00:56:30.162","sender":"defender","client_ip":"2a02:8109:ab82:c600:200b:7676:a14b:4ae1","protocol":"SSH","event":"LoginFailed","increase_score_by":1,"score":9}
                          Jan 26 01:51:04 {"level":"debug","time":"2025-01-26T00:56:31.223","sender":"dataprovider_postgresql","message":"pre-login hook completed, elapsed: 35.230284ms"}
                          Jan 26 01:51:04 {"level":"debug","time":"2025-01-26T00:56:31.226","sender":"dataprovider_postgresql","message":"user \"elias.hackradt\" added/updated from pre-login hook response, id: 1"}
                          Jan 26 01:51:04 {"level":"debug","time":"2025-01-26T00:56:31.250","sender":"connection_failed","client_ip":"2a02:8109:ab82:c600:200b:7676:a14b:4ae1","username":"elias.hackradt","login_type":"keyboard-interactive","protocol":"SSH","error":"read tcp [fd00:c107:d509::23]:2022->[2a02:8109:ab82:c600:200b:7676:a14b:4ae1]:4271: read: connection reset by peer"}
                          Jan 26 01:51:04 {"level":"debug","time":"2025-01-26T00:56:31.253","sender":"defender","client_ip":"2a02:8109:ab82:c600:200b:7676:a14b:4ae1","protocol":"SSH","event":"LoginFailed","increase_score_by":1,"score":10}
                          

                          I mean leaking the password via. maybe even an unsecured ftp connection is bad.
                          sftp is a secure connection so the password could be transmitted for the OIDC login? I mean the log states

                          Jan 26 01:51:04 {"level":"debug","time":"2025-01-26T00:56:30.132","sender":"dataprovider_postgresql","message":"user "elias.hackradt" added/updated from pre-login hook response, id: 1"}

                          soooo login was OK I guess but the forward back to the sftp client is somehow faulty.

                          What IS working, adding a ssh-pub key to my profile:
                          239d8fa4-f8b7-4b02-8924-dbfd5d1ee8ca-image.png

                          and using that key in filezilla to connect:
                          66799cde-6168-4a9b-958c-f7d2afd871df-image.png
                          6d0e663b-60c9-4944-8164-29a6ccde141f-image.png

                          This could be a way to use OIDC with SFTPGo.

                          Scraping my head how it would be best.

                          Like my work? Consider donating a drink. Cheers!

                          1 Reply Last reply
                          0
                          • BrutalBirdieB Offline
                            BrutalBirdieB Offline
                            BrutalBirdie
                            Partner
                            wrote on last edited by BrutalBirdie
                            #13

                            HAH even worse! With my current solution, you can send a random username. via. ftp and it will be created 🤣

                            image.png

                            image.png


                            Writing a hotfix 😄
                            Fixed with 0.0.12:

                            • user spam via ftp clients or other clients is no longer possible.

                            Time for sleep 💤

                            Like my work? Consider donating a drink. Cheers!

                            1 Reply Last reply
                            2
                            • BrutalBirdieB Offline
                              BrutalBirdieB Offline
                              BrutalBirdie
                              Partner
                              wrote on last edited by
                              #14

                              Image 0.0.13
                              Changelog:

                              • Added /app/data/oidc.ini which allows some control of the /app/code/oidc.py getting called on pre_login_hook
                              [OIDC]
                              # Enable / Disable OIDC dynamic user Creating output to /app/data/oidc.log
                              DEBUG=False
                              # Should Users that login via OIDC be created
                              CREATE_USER=True
                              # Should the User be enabled - 1 Enabled 0 Disabled
                              USER_ENABLE=1
                              # The default dir where user homes will be created with his username - NO TRAILING BACKSHLASH AND NO SINGLE OR DOUBLE QUOTES
                              HOME_DIR=/app/data/userdata
                              

                              Like my work? Consider donating a drink. Cheers!

                              1 Reply Last reply
                              3
                              • BrutalBirdieB Offline
                                BrutalBirdieB Offline
                                BrutalBirdie
                                Partner
                                wrote on last edited by
                                #15

                                Image 0.0.14

                                Changelog:

                                • Added SMTP Config

                                Like my work? Consider donating a drink. Cheers!

                                1 Reply Last reply
                                2
                                • necrevistonnezrN Offline
                                  necrevistonnezrN Offline
                                  necrevistonnezr
                                  wrote on last edited by
                                  #16

                                  Is this ready for an "unstable" release?

                                  1 Reply Last reply
                                  2
                                  • BrutalBirdieB Offline
                                    BrutalBirdieB Offline
                                    BrutalBirdie
                                    Partner
                                    wrote on last edited by
                                    #17

                                    I'd say yes. @girish 🙂

                                    Like my work? Consider donating a drink. Cheers!

                                    1 Reply Last reply
                                    3
                                    • C Offline
                                      C Offline
                                      ctrl
                                      wrote on last edited by
                                      #18

                                      Tyvm @BrutalBirdie. Is there anything we can help to get this pushed into the official App Store? ^^

                                      1 Reply Last reply
                                      1
                                      • J Offline
                                        J Offline
                                        jkammerer
                                        wrote on last edited by
                                        #19

                                        i managed to install sftpgo from the @BrutalBirdie repository. while the server kept on working the webinterface is banned - restarting doesn't resolve this.

                                        {"level":"debug","time":"2025-02-24T12:24:20.019","sender":"dataprovider_postgresql","message":"ban time updated for ip \"172.18.0.1\", increment (minutes): 15"}
                                        

                                        and to be honest i don't get how to update to the mentioned versions above 0.0.9 as they don't seem to be available?

                                        BrutalBirdieB 1 Reply Last reply
                                        0
                                        • J jkammerer

                                          i managed to install sftpgo from the @BrutalBirdie repository. while the server kept on working the webinterface is banned - restarting doesn't resolve this.

                                          {"level":"debug","time":"2025-02-24T12:24:20.019","sender":"dataprovider_postgresql","message":"ban time updated for ip \"172.18.0.1\", increment (minutes): 15"}
                                          

                                          and to be honest i don't get how to update to the mentioned versions above 0.0.9 as they don't seem to be available?

                                          BrutalBirdieB Offline
                                          BrutalBirdieB Offline
                                          BrutalBirdie
                                          Partner
                                          wrote on last edited by
                                          #20

                                          @jkammerer Hmmm this means the build in defender banned you for some reason.
                                          Did you try to log in in the normal dashboard with the admin credentials or vice versa?

                                          i don't get how to update to the mentioned versions above 0.0.9 as they don't seem to be available?

                                          There is no other version yet. 0.0.9 is latest.
                                          How to update? Simply get the newest CloudronManifest.json and run the update command.
                                          Example:

                                          cloudron update --app $LOCATION --image brutalbirdie/$IMAGENAME:$IMAGETAG
                                          

                                          Like my work? Consider donating a drink. Cheers!

                                          1 Reply Last reply
                                          1
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • Bookmarks
                                          • Search