Setting up hashing on SFTP Hetzner Storage Box

What is the problem you are having with rclone?

I am trying to set up the md5sum_command and sha1sum_command options for my SFTP mount to a Hetzner Storage Box.

Hetzner Storage Boxes do have these commands available in their limited SSH environment, so I thought I'd give it a try.

Run the command 'rclone version' and share the full output of the command.

❯ rclone --version
rclone v1.74.3
- os/version: arch 26.1.0-pre (64 bit)
- os/kernel: 6.6.143-1-MANJARO (x86_64)
- os/type: linux
- os/arch: amd64
- go/version: go1.26.4-X:nodwarf5
- go/linking: dynamic
- go/tags: none

Which cloud storage system are you using?

SFTP, to a Hetzner Storage Box

The command you were trying to run

I usually use this one to mount:

rclone mount HetznerStorageBox-u123456: "/home/technicjelle/Drives/HetznerBackup/" --vfs-cache-mode writes

After setting the md5sum_command and sha1sum_command in the rclone config to:

md5sum_command = md5sum
sha1sum_command = sha1sum

I started getting errors in my console:

2026/07/07 21:25:41 ERROR : TechnicJelle.png: ReadFileHandle.Flush error: failed to calculate md5 hash: failed to run "md5sum /TechnicJelle.png": : ssh: command md5sum /TechnicJelle.png failed
2026/07/07 21:25:41 ERROR : IO error: failed to calculate md5 hash: failed to run "md5sum /TechnicJelle.png": : ssh: command md5sum /TechnicJelle.png failed
2026/07/07 21:25:41 ERROR : TechnicJelle.png: ReadFileHandle.Release error: failed to calculate md5 hash: failed to run "md5sum /TechnicJelle.png": : ssh: command md5sum /TechnicJelle.png failed
2026/07/07 21:25:41 ERROR : IO error: failed to calculate md5 hash: failed to run "md5sum /TechnicJelle.png": : ssh: command md5sum /TechnicJelle.png failed
2026/07/07 21:25:42 ERROR : .hsh_history: ReadFileHandle.Flush error: failed to calculate md5 hash: failed to run "md5sum /.hsh_history": : ssh: command md5sum /.hsh_history failed
2026/07/07 21:25:42 ERROR : IO error: failed to calculate md5 hash: failed to run "md5sum /.hsh_history": : ssh: command md5sum /.hsh_history failed
2026/07/07 21:25:42 ERROR : .hsh_history: ReadFileHandle.Release error: failed to calculate md5 hash: failed to run "md5sum /.hsh_history": : ssh: command md5sum /.hsh_history failed
2026/07/07 21:25:42 ERROR : IO error: failed to calculate md5 hash: failed to run "md5sum /.hsh_history": : ssh: command md5sum /.hsh_history failed
2026/07/07 21:25:42 ERROR : .hsh_history: ReadFileHandle.Flush error: failed to calculate md5 hash: failed to run "md5sum /.hsh_history": : ssh: command md5sum /.hsh_history failed
2026/07/07 21:25:42 ERROR : IO error: failed to calculate md5 hash: failed to run "md5sum /.hsh_history": : ssh: command md5sum /.hsh_history failed
2026/07/07 21:25:42 ERROR : .hsh_history: ReadFileHandle.Flush error: failed to calculate md5 hash: failed to run "md5sum /.hsh_history": : ssh: command md5sum /.hsh_history failed
2026/07/07 21:25:42 ERROR : IO error: failed to calculate md5 hash: failed to run "md5sum /.hsh_history": : ssh: command md5sum /.hsh_history failed
2026/07/07 21:25:42 ERROR : .hsh_history: ReadFileHandle.Release error: failed to calculate md5 hash: failed to run "md5sum /.hsh_history": : ssh: command md5sum /.hsh_history failed
2026/07/07 21:25:42 ERROR : IO error: failed to calculate md5 hash: failed to run "md5sum /.hsh_history": : ssh: command md5sum /.hsh_history failed
2026/07/07 21:25:42 ERROR : TechnicJelle.png: ReadFileHandle.Flush error: failed to calculate md5 hash: failed to run "md5sum /TechnicJelle.png": : ssh: command md5sum /TechnicJelle.png failed
2026/07/07 21:25:42 ERROR : IO error: failed to calculate md5 hash: failed to run "md5sum /TechnicJelle.png": : ssh: command md5sum /TechnicJelle.png failed
2026/07/07 21:25:42 ERROR : TechnicJelle.png: ReadFileHandle.Release error: failed to calculate md5 hash: failed to run "md5sum /TechnicJelle.png": : ssh: command md5sum /TechnicJelle.png failed
2026/07/07 21:25:42 ERROR : IO error: failed to calculate md5 hash: failed to run "md5sum /TechnicJelle.png": : ssh: command md5sum /TechnicJelle.png failed
^C2026/07/07 21:26:10 NOTICE: /home/technicjelle/Drives/HetznerBackup/: Unmounted rclone mount

I then went to check the rclone documentation, and it linked to the Hetzner Storage Box documentation.
There, I saw the recommendation to "add the flag --checkers=<count lower 8> for sftp connections`:

rclone mount HetznerStorageBox-u123456: "/home/technicjelle/Drives/HetznerBackup/" --vfs-cache-mode writes --checkers=8

But it had no effect.

I then noticed that the path of the files it was trying to hash was incorrect, because Hetzner Storage Boxes's "user file root" isn't at /, but at /home/ instead:

❯ ssh -p 23 u123456@u123456.your-storagebox.de
u123456@u123456.your-storagebox.de's password: 
Last login: Tue Jul  7 19:29:08 2026 from my ip :)
+------------------------------------------------------------------+
| Welcome to your Storage Box.                                     |
|                                                                  |
| Please note that this is only a restricted shell environment and |
| therefore some shell features like pipes and redirects are not   |
| supported.                                                       |
+------------------------------------------------------------------+
u123456 /home > pwd
/home
u123456 /home > md5sum /home/.hsh_history
bd5322dff50289aa10344763cd9e492d  /home/.hsh_history

After consulting the documentation some more, I found the flag --sftp-path-override /home and added that:

rclone mount HetznerStorageBox-u123456: "/home/technicjelle/Drives/HetznerBackup/" --vfs-cache-mode writes --checkers=8 --sftp-path-override /home

But this has led to the following (kind of amusing) warnings in my log:

❯ ./mount_HetznerBackup
2026/07/07 21:37:05 ERROR : .hsh_history: ReadFileHandle.Flush error: failed to calculate md5 hash: failed to run "md5sum /home/.hsh_history": : ssh: command md5sum /home/.hsh_history failed
2026/07/07 21:37:05 ERROR : IO error: failed to calculate md5 hash: failed to run "md5sum /home/.hsh_history": : ssh: command md5sum /home/.hsh_history failed
2026/07/07 21:37:06 ERROR : TechnicJelle.png: ReadFileHandle.Flush error: failed to calculate md5 hash: failed to run "md5sum /home/TechnicJelle.png": : ssh: command md5sum /home/TechnicJelle.png failed
2026/07/07 21:37:06 ERROR : IO error: failed to calculate md5 hash: failed to run "md5sum /home/TechnicJelle.png": : ssh: command md5sum /home/TechnicJelle.png failed
2026/07/07 21:37:06 ERROR : TechnicJelle.png: ReadFileHandle.Release error: failed to calculate md5 hash: failed to run "md5sum /home/TechnicJelle.png": : ssh: command md5sum /home/TechnicJelle.png failed
2026/07/07 21:37:06 ERROR : IO error: failed to calculate md5 hash: failed to run "md5sum /home/TechnicJelle.png": : ssh: command md5sum /home/TechnicJelle.png failed
2026/07/07 21:37:06 ERROR : .hsh_history: ReadFileHandle.Release error: failed to calculate md5 hash: failed to run "md5sum /home/.hsh_history": : ssh: command md5sum /home/.hsh_history failed
2026/07/07 21:37:06 ERROR : IO error: failed to calculate md5 hash: failed to run "md5sum /home/.hsh_history": : ssh: command md5sum /home/.hsh_history failed
2026/07/07 21:37:06 ERROR : .hsh_history: ReadFileHandle.Flush error: failed to calculate md5 hash: failed to run "md5sum /home/.hsh_history": : ssh: command md5sum /home/.hsh_history failed
2026/07/07 21:37:06 ERROR : IO error: failed to calculate md5 hash: failed to run "md5sum /home/.hsh_history": : ssh: command md5sum /home/.hsh_history failed
2026/07/07 21:37:06 ERROR : .hsh_history: ReadFileHandle.Release error: failed to calculate md5 hash: failed to run "md5sum /home/.hsh_history": : ssh: command md5sum /home/.hsh_history failed
2026/07/07 21:37:06 ERROR : IO error: failed to calculate md5 hash: failed to run "md5sum /home/.hsh_history": : ssh: command md5sum /home/.hsh_history failed
2026/07/07 21:37:06 ERROR : TechnicJelle.png: ReadFileHandle.Flush error: failed to calculate md5 hash: failed to run "md5sum /home/TechnicJelle.png": : ssh: command md5sum /home/TechnicJelle.png failed
2026/07/07 21:37:06 ERROR : IO error: failed to calculate md5 hash: failed to run "md5sum /home/TechnicJelle.png": : ssh: command md5sum /home/TechnicJelle.png failed
2026/07/07 21:37:06 ERROR : TechnicJelle.png: ReadFileHandle.Release error: failed to calculate md5 hash: failed to run "md5sum /home/TechnicJelle.png": : ssh: command md5sum /home/TechnicJelle.png failed
2026/07/07 21:37:06 ERROR : IO error: failed to calculate md5 hash: failed to run "md5sum /home/TechnicJelle.png": : ssh: command md5sum /home/TechnicJelle.png failed
^C2026/07/07 21:37:15 NOTICE: /home/technicjelle/Drives/HetznerBackup/: Unmounted rclone mount
❯ ssh -p 23 u123456@u123456.your-storagebox.de
u123456@u123456.your-storagebox.de's password: 
Last login: Tue Jul  7 19:29:08 2026 from my ip :)
+------------------------------------------------------------------+
| Welcome to your Storage Box.                                     |
|                                                                  |
| Please note that this is only a restricted shell environment and |
| therefore some shell features like pipes and redirects are not   |
| supported.                                                       |
+------------------------------------------------------------------+
u123456 /home > pwd
/home
u123456 /home > md5sum /home/.hsh_history
bd5322dff50289aa10344763cd9e492d  /home/.hsh_history

rclone seems to be trying to run the command md5sum /home/.hsh_history and failing to do so.
But when I run it manually in an SSH session, it works just fine!
So now here I am, a little confused.

I would really appreciate any hints about how to get this to work!
Thanks in advance : )
(my smiley is getting turned into an emoji without that space in-between... can't even \escape it either)

Please run 'rclone config redacted' and share the full output. If you get command not found, please make sure to update rclone.

[HetznerStorageBox-u123456]
type = sftp
host = u123456.your-storagebox.de
user = u123456
pass = XXX
shell_type = unix
known_hosts_file = ~/.ssh/known_hosts
md5sum_command = md5sum
sha1sum_command = sha1sum

A log from the command that you were trying to run with the -vv flag

I hope you don't mind if I share only the first and last parts; I don't think there's anything relevant in the stuff before this:
(please let me know if there is, and I'll send it as soon as I can after all!)

❯ ./mount_HetznerBackup
2026/07/07 22:07:55 DEBUG : rclone: Version "v1.74.3" starting with parameters ["rclone" "mount" "HetznerStorageBox-u123456:" "/home/technicjelle/Drives/HetznerBackup/" "--vfs-cache-mode" "writes" "--checkers=8" "--sftp-path-override" "/home" "-vv"]
2026/07/07 22:07:55 DEBUG : Creating backend with remote "HetznerStorageBox-u123456:"
2026/07/07 22:07:55 DEBUG : Using config file from "/home/technicjelle/.config/rclone/rclone.conf"
2026/07/07 22:07:55 DEBUG : HetznerStorageBox-u123456: detected overridden config - adding "{PHVts}" suffix to name
2026/07/07 22:07:55 DEBUG : sftp://u123456@u123456.your-storagebox.de:22/: New connection [an ip]:port->[ip]:22 to "SSH-2.0-mod_sftp"
2026/07/07 22:07:55 DEBUG : sftp://u123456@u123456.your-storagebox.de:22/: Shell type "unix" from config
2026/07/07 22:07:55 DEBUG : sftp://u123456@u123456.your-storagebox.de:22/: Relative path resolved to "/"
2026/07/07 22:07:55 DEBUG : sftp://u123456@u123456.your-storagebox.de:22/: Using root directory "/"
2026/07/07 22:07:55 DEBUG : fs cache: renaming cache item "HetznerStorageBox-u123456:" to be canonical "HetznerStorageBox-u123456{PHVts}:"
2026/07/07 22:07:55 INFO  : sftp://u123456@u123456.your-storagebox.de:22/: poll-interval is not supported by this remote
2026/07/07 22:07:55 DEBUG : sftp://u123456@u123456.your-storagebox.de:22/: vfs cache: root is "/home/technicjelle/.cache/rclone"
2026/07/07 22:07:55 DEBUG : sftp://u123456@u123456.your-storagebox.de:22/: vfs cache: data root is "/home/technicjelle/.cache/rclone/vfs/HetznerStorageBox-u123456{PHVts}"
2026/07/07 22:07:55 DEBUG : sftp://u123456@u123456.your-storagebox.de:22/: vfs cache: metadata root is "/home/technicjelle/.cache/rclone/vfsMeta/HetznerStorageBox-u123456{PHVts}"
2026/07/07 22:07:55 DEBUG : Creating backend with remote ":local,encoding='Slash,Dot',links=false:/home/technicjelle/.cache/rclone/vfs/HetznerStorageBox-u123456{PHVts}"
2026/07/07 22:07:55 DEBUG : :local: detected overridden config - adding "{8un-i}" suffix to name
2026/07/07 22:07:55 DEBUG : fs cache: renaming cache item ":local,encoding='Slash,Dot',links=false:/home/technicjelle/.cache/rclone/vfs/HetznerStorageBox-u123456{PHVts}" to be canonical ":local{8un-i}:/home/technicjelle/.cache/rclone/vfs/HetznerStorageBox-u123456{PHVts}"
2026/07/07 22:07:55 DEBUG : Creating backend with remote ":local,encoding='Slash,Dot',links=false:/home/technicjelle/.cache/rclone/vfsMeta/HetznerStorageBox-u123456{PHVts}"
2026/07/07 22:07:55 DEBUG : :local: detected overridden config - adding "{8un-i}" suffix to name
2026/07/07 22:07:55 DEBUG : fs cache: renaming cache item ":local,encoding='Slash,Dot',links=false:/home/technicjelle/.cache/rclone/vfsMeta/HetznerStorageBox-u123456{PHVts}" to be canonical ":local{8un-i}:/home/technicjelle/.cache/rclone/vfsMeta/HetznerStorageBox-u123456{PHVts}"
2026/07/07 22:07:55 INFO  : sftp://u123456@u123456.your-storagebox.de:22/: vfs cache: cleaned: objects 0 (was 0) in use 0, to upload 0, uploading 0, total size 0 (was 0)
2026/07/07 22:07:55 DEBUG : sftp://u123456@u123456.your-storagebox.de:22/: Mounting on "/home/technicjelle/Drives/HetznerBackup/"
2026/07/07 22:07:55 DEBUG : Root: 
2026/07/07 22:07:55 DEBUG : >Root: node=/, err=<nil>
2026/07/07 22:08:01 DEBUG : .hsh_history: Open: flags=OpenReadOnly+0x40000
2026/07/07 22:08:01 DEBUG : .hsh_history: Open: flags=O_RDONLY|0x40000
2026/07/07 22:08:01 DEBUG : .hsh_history: >Open: fd=.hsh_history (r), err=<nil>
2026/07/07 22:08:01 DEBUG : .hsh_history: >Open: fh=&{.hsh_history (r)}, err=<nil>
2026/07/07 22:08:01 DEBUG : &{Handle:.hsh_history (r)}: Read: len=4096, offset=0
2026/07/07 22:08:01 DEBUG : .hsh_history: ChunkedReader.openRange at 0 length 134217728
2026/07/07 22:08:01 DEBUG : sftp://u123456@u123456.your-storagebox.de:22/: Shell path redirected to "/home/.hsh_history" with option path_override
2026/07/07 22:08:01 DEBUG : .hsh_history: ChunkedReader.Read at 0 length 4096 chunkOffset 0 chunkSize 134217728
2026/07/07 22:08:01 DEBUG : sftp://u123456@u123456.your-storagebox.de:22/: Running remote command: md5sum /home/.hsh_history
2026/07/07 22:08:01 ERROR : .hsh_history: ReadFileHandle.Release error: failed to calculate md5 hash: failed to run "md5sum /home/.hsh_history": : ssh: command md5sum /home/.hsh_history failed
2026/07/07 22:08:01 ERROR : IO error: failed to calculate md5 hash: failed to run "md5sum /home/.hsh_history": : ssh: command md5sum /home/.hsh_history failed
2026/07/07 22:08:01 DEBUG : &{Handle:.hsh_history (r)}: >Release: err=failed to calculate md5 hash: failed to run "md5sum /home/.hsh_history": : ssh: command md5sum /home/.hsh_history failed
2026/07/07 22:08:01 DEBUG : &{Handle:.hsh_history (r)}: >Read: read=471, err=<nil>
2026/07/07 22:08:01 DEBUG : &{Handle:.hsh_history (r)}: Flush: 
2026/07/07 22:08:01 DEBUG : sftp://u123456@u123456.your-storagebox.de:22/: Shell path redirected to "/home/.hsh_history" with option path_override
2026/07/07 22:08:01 DEBUG : sftp://u123456@u123456.your-storagebox.de:22/: Running remote command: md5sum /home/.hsh_history
2026/07/07 22:08:01 ERROR : .hsh_history: ReadFileHandle.Flush error: failed to calculate md5 hash: failed to run "md5sum /home/.hsh_history": : ssh: command md5sum /home/.hsh_history failed
2026/07/07 22:08:01 ERROR : IO error: failed to calculate md5 hash: failed to run "md5sum /home/.hsh_history": : ssh: command md5sum /home/.hsh_history failed
2026/07/07 22:08:01 DEBUG : &{Handle:.hsh_history (r)}: >Flush: err=failed to calculate md5 hash: failed to run "md5sum /home/.hsh_history": : ssh: command md5sum /home/.hsh_history failed
2026/07/07 22:08:01 DEBUG : &{Handle:.hsh_history (r)}: Release: 
2026/07/07 22:08:01 DEBUG : .hsh_history: ReadFileHandle.Release closing
2026/07/07 22:08:01 DEBUG : .hsh_history: Attr: 
2026/07/07 22:08:01 DEBUG : .hsh_history: >Attr: a=valid=1s ino=0 size=471 mode=-rw-r--r--, err=<nil>
2026/07/07 22:08:01 DEBUG : Statfs: 
2026/07/07 22:08:01 DEBUG : >Statfs: stat={Blocks:1342001920 Bfree:981311968 Bavail:981311968 Files:1000000000 Ffree:1000000000 Bsize:4096 Namelen:255 Frsize:4096}, err=<nil>
2026/07/07 22:08:01 DEBUG : sftp://u123456@u123456.your-storagebox.de:22/: Shell path redirected to "/home/.hsh_history" with option path_override
2026/07/07 22:08:01 DEBUG : sftp://u123456@u123456.your-storagebox.de:22/: Running remote command: md5sum /home/.hsh_history
2026/07/07 22:08:01 ERROR : .hsh_history: ReadFileHandle.Release error: failed to calculate md5 hash: failed to run "md5sum /home/.hsh_history": : ssh: command md5sum /home/.hsh_history failed
2026/07/07 22:08:01 ERROR : IO error: failed to calculate md5 hash: failed to run "md5sum /home/.hsh_history": : ssh: command md5sum /home/.hsh_history failed
2026/07/07 22:08:01 DEBUG : &{Handle:.hsh_history (r)}: >Release: err=failed to calculate md5 hash: failed to run "md5sum /home/.hsh_history": : ssh: command md5sum /home/.hsh_history failed
^C2026/07/07 22:08:20 INFO  : Signal received: interrupt
2026/07/07 22:08:20 DEBUG : sftp://u123456@u123456.your-storagebox.de:22/: vfs cache: cleaner exiting
2026/07/07 22:08:20 NOTICE: /home/technicjelle/Drives/HetznerBackup/: Unmounted rclone mount
2026/07/07 22:08:20 INFO  : Exiting...

welcome to the forum,

for testing, use simple command such as rclone ls and rclone copy,
not complex rclone mount

for hashing, need port = 23

so, i suggest the following.

  1. edit your remote to
[HetznerStorageBox-u123456]
type = sftp
host = u123456.your-storagebox.de
port = 23
user = u123456
pass = XXX
known_hosts_file = ~/.ssh/known_hosts
  1. rclone copy a test file to HetznerStorageBox-u123456:
  2. post the redacted output of rclone config show HetznerStorageBox-u123456:

here is my remote

[sbox01_sftp]
type = sftp
host = redacted.your-storagebox.de
port = 23
key_file = d:\data\c\combined\hetzner\keys\id_ed25519
user = redacted
shell_type = unix
md5sum_command = md5 -r
sha1sum_command = sha1 -r

Hi, thanks for the quick response!

I've tried adding port 23, but the connection seems to fail after that:

❯ rclone ls HetznerStorageBox-u123456:/Fruits/
    18766 apple.png
   352919 banana.png
   169125 lemon.png
   106984 orange.png
    64217 pineapple.png
    66848 watermelon.png
❯ edit ~/.config/rclone/rclone.conf
❯ rclone ls HetznerStorageBox-u123456:/Fruits/
2026/07/07 22:57:32 CRITICAL: Failed to create file system for "HetznerStorageBox-u123456:/Fruits/": NewFs: couldn't connect SSH: ssh: handshake failed: knownhosts: key mismatch

Seems like it doesn't like the key that is in ~/.ssh/known_hosts. Which is weird, because when I use normal ssh, it is perfectly happy with this.

I tried removing all my Hetzner keys from the known_hosts file, using normal ssh again to add it back, and then tried rclone ls again, but still no cigar...

❯ ssh -p 23 u123456@u123456.your-storagebox.de
The authenticity of host '[u123456.your-storagebox.de]:23 ([an ipv6 address]:23)' can't be established.
ED25519 key fingerprint is: SHA256:some random-looking characters
This key is not known by any other names.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '[u123456.your-storagebox.de]:23' (ED25519) to the list of known hosts.
u123456@u123456.your-storagebox.de's password: 

❯ rclone ls HetznerStorageBox-u123456:/Fruits/
2026/07/07 23:03:45 CRITICAL: Failed to create file system for "HetznerStorageBox-u123456:/Fruits/": NewFs: couldn't connect SSH: ssh: handshake failed: knownhosts: key mismatch

The config is now:

❯ rclone config show HetznerStorageBox-u123456:
[HetznerStorageBox-u123456]
type = sftp
host = u123456.your-storagebox.de
port = 23
user = u123456
pass = *** ENCRYPTED ***
shell_type = unix
known_hosts_file = ~/.ssh/known_hosts
md5sum_command = none
sha1sum_command = none

How very strange..!

welcome


not an expert at ssh, but my remote uses a key_file as shown
key_file = d:\data\c\combined\hetzner\keys\id_ed25519


this time, remove the keys from known_hosts files, do not try normal ssh, run rclone ls


try removing the following from your remote and run rclone ls again

shell_type = unix
known_hosts_file = ~/.ssh/known_hosts
md5sum_command = none
sha1sum_command = none

Thanks!

When I try that, the command I was previously using to list the files in my test folder ("Fruits") didn't work anymore:

❯ rclone ls HetznerStorageBox-u123456:/Fruits/
2026/07/07 23:13:15 NOTICE: HetznerStorageBox-u123456: No host key validation is being performed. Set known_hosts_file to enable it. See: https://rclone.org/sftp/#host-key-validation
2026/07/07 23:13:15 ERROR : error listing: directory not found
2026/07/07 23:13:15 NOTICE: Failed to ls with 2 errors: last error was: directory not found

I had to remove the / from in front of the /Fruits/..?

❯ rclone ls HetznerStorageBox-u123456:Fruits
2026/07/07 23:13:25 NOTICE: HetznerStorageBox-u123456: No host key validation is being performed. Set known_hosts_file to enable it. See: https://rclone.org/sftp/#host-key-validation
    18766 apple.png
   352919 banana.png
   169125 lemon.png
   106984 orange.png
    64217 pineapple.png
    66848 watermelon.pn

But I suppose this does work, now..
For some reason.

I would like to have host key validation, though, as it makes me feel safer.

good, well, i had you chance your remote to look like mine...


the / issue and the port = 23 are both explained in the rclone docs for sftp
perhaps, take a few minutes to re-read that.

Will do! Be back in a little while : )

I found the explanation for the / thing:

Note that some SFTP servers will need the leading / - Synology is a good example of this. rsync.net and Hetzner, on the other hand, requires users to OMIT the leading /.

I did find it strange that it was working, even though I am using a Hetzner Storage Box.
Though I suppose there's a difference between going over port 22 and port 23...
But what exactly that difference is, I am not sure yet.
I can't really find much information about that on the docs...


* Did some more reading *


I have found the solution to all the issues!

Up till now, I hadn't made a proper ssh key for the connection, yet.
I was just pasting the password every time.

Now that I've followed the Hetzner docs on making a proper ssh key, it all works!

In my ~/.ssh/, I now have a hetzner and hetzner.pub, and in the ~/.ssh/config file, I have the following:

Host hetzner-backup u123456.your-storagebox.de
    HostName u123456.your-storagebox.de
    Port 23
    IdentityFile ~/.ssh/hetzner
    User u123456

I can now ssh into the storage box with just $ ssh hetzner-backup, which is nice : )

And with that, I was able to add back these options to the rsync.conf:

known_hosts_file = ~/.ssh/known_hosts
shell_type = unix
md5sum_command = md5sum
sha1sum_command = sha1sum

And when running the mount with -vv, I can indeed see that the md5 hashes are being retrieved successfully!:

2026/07/08 01:48:03 DEBUG : sftp://u123456@u123456.your-storagebox.de:23/: Shell path "/home/.hsh_history"
2026/07/08 01:48:03 DEBUG : &{Handle:.hsh_history (r)}: Read: len=4096, offset=0
2026/07/08 01:48:03 DEBUG : .hsh_history: ChunkedReader.openRange at 0 length 134217728
2026/07/08 01:48:03 DEBUG : sftp://u123456@u123456.your-storagebox.de:23/: Running remote command: md5sum /home/.hsh_history
2026/07/08 01:48:03 DEBUG : sftp://u123456@u123456.your-storagebox.de:23/: Remote command result: 70d941c93757a76f9d61e48e7a7bcab4  /home/.hsh_history
2026/07/08 01:48:03 DEBUG : .hsh_history: Parsed hash: 70d941c93757a76f9d61e48e7a7bcab4
2026/07/08 01:48:03 DEBUG : &{Handle:.hsh_history (r)}: >Flush: err=<nil>
2026/07/08 01:48:03 DEBUG : &{Handle:.hsh_history (r)}: Release: 
2026/07/08 01:48:03 DEBUG : .hsh_history: ReadFileHandle.Release closing
2026/07/08 01:48:03 DEBUG : TechnicJelle.png: Open: flags=OpenReadOnly+0x40000
2026/07/08 01:48:03 DEBUG : TechnicJelle.png: Open: flags=O_RDONLY|0x40000
2026/07/08 01:48:03 DEBUG : TechnicJelle.png: >Open: fd=TechnicJelle.png (r), err=<nil>
2026/07/08 01:48:03 DEBUG : TechnicJelle.png: >Open: fh=&{TechnicJelle.png (r)}, err=<nil>
2026/07/08 01:48:03 DEBUG : &{Handle:TechnicJelle.png (r)}: Read: len=4096, offset=0
2026/07/08 01:48:03 DEBUG : TechnicJelle.png: ChunkedReader.openRange at 0 length 134217728
2026/07/08 01:48:03 DEBUG : TechnicJelle.png: ChunkedReader.Read at 0 length 4096 chunkOffset 0 chunkSize 134217728
2026/07/08 01:48:03 DEBUG : &{Handle:.hsh_history (r)}: >Release: err=<nil>
2026/07/08 01:48:03 DEBUG : &{Handle:TechnicJelle.png (r)}: >Read: read=1794, err=<nil>
2026/07/08 01:48:03 DEBUG : &{Handle:TechnicJelle.png (r)}: Flush: 
2026/07/08 01:48:03 DEBUG : sftp://u123456@u123456.your-storagebox.de:23/: Shell path "/home/TechnicJelle.png"
2026/07/08 01:48:03 DEBUG : sftp://u123456@u123456.your-storagebox.de:23/: Running remote command: md5sum /home/TechnicJelle.png
2026/07/08 01:48:03 DEBUG : sftp://u123456@u123456.your-storagebox.de:23/: Remote command result: 035857ae3fb27b2f0aa10fa7f1fd891a  /home/TechnicJelle.png
2026/07/08 01:48:03 DEBUG : TechnicJelle.png: Parsed hash: 035857ae3fb27b2f0aa10fa7f1fd891a
2026/07/08 01:48:03 DEBUG : &{Handle:TechnicJelle.png (r)}: >Flush: err=<nil

Thank you very much for your guidance, @asdffdsa! It is much appreciated!

yeah, it is one of the quirks about hetzner storagebox.
https://docs.hetzner.com/storage/storage-box/access/access-ssh-rsync-borg