S3 with Linode gives SignatureDoesNotMatch and Http Status Code Forbidden

I’m trying to finally get my stuff backed up correctly.
So the idea was to upload the backups to Linode object storage.

I set it up, and everytime I try to back up, I get SignatureDoesNotMatch and Http Status Code Forbidden.
Strangely enough, if I change the bucket name, it does create that bucket, so the credentials are correct.
I also tried to upload something with Python and boto3, that worked also fine.

On the internet people suggest to check the credentials for special symbols, but I have only alphanumeric characters.
Some suggest to set the s3-ext-signatureversion to 3, others to 4.
Tried with s3-ext-signaturemethod HmacSHA1 and HmacSHA256.
Tried with and without SSL.

Most links on the internet refer to client libraries, but here in duplicati I don’t have much control.

Any suggestions?

Welcome to the forum @jtommi

Please see where you can get with the control on your Destination screen. Maybe Minio will work:

image

EDIT:

Narrow down the failing operation so you can at least say what you were doing if you seek Linode help.

See server log About → Show log → Retry. Backup to typically see a list and a series of put uploads. Towards end of backup you will typically see more list and get downloads, but failure might be earlier.

Thanks for the reply

In the logs I can see that the list works fine, it’s the PUTs that fail.

{"ClassName":"Amazon.S3.AmazonS3Exception","Message":"Error making request with Error Code SignatureDoesNotMatch and Http Status Code Forbidden. No further error information was returned by the service.","Data":null,"InnerException":{"ClassName":"Amazon.Runtime.Internal.HttpErrorResponseException","Message":"The remote server returned an error: (403) Forbidden.","Data":null,"InnerException":{"ClassName":"System.Net.WebException","Message":"The remote server returned an error: (403) Forbidden.","Data":null,"InnerException":null,"HelpURL":null,"StackTraceString":"  at System.Net.HttpWebRequest.GetResponseFromData ...

With Minio I get an error already when clicking “Test connection” in the config screen.

Oh, what I meant with “refer to client libraries” is that the people are having issues connecting to S3 compatible storage using a client library in Python or Javfa, etc and the solutions involve writing code.

Nevermind, found the issue.

I put a path of “/”, expecting it to work like linux and thus referring to the root of the bucket.
I rempoved it and now it works.

1 Like