Duplicity и S3 Frankfurt bucket error: используйте AWS4-HMAC-SHA256

888
Messa

Я пытаюсь сделать резервную копию своих файлов через Duplicity на Amazon S3 - ведро во Франкфурте (eu-central-1).

Моя команда:

/usr/bin/duplicity \ --exclude-if-present do-not-backup \ --s3-use-new-style \ --s3-use-ia \ --sign-key 9CCF...585 \ --encrypt-key 9CCF...585 \ --encrypt-key 9D43...725 \ --use-agent \ / \ s3+http://my-example-frankfurt-bucket/backups/ 

Но AWS возвращается 400 Bad Requestсо следующим <Message>:

Предоставленный вами механизм авторизации не поддерживается. Пожалуйста, используйте AWS4-HMAC-SHA256.

Полный возврат:

Traceback (most recent call last): File "/usr/bin/duplicity", line 1553, in <module> with_tempdir(main) File "/usr/bin/duplicity", line 1547, in with_tempdir fn() File "/usr/bin/duplicity", line 1382, in main action = commandline.ProcessCommandLine(sys.argv[1:]) File "/usr/lib/python2.7/dist-packages/duplicity/commandline.py", line 1126, in ProcessCommandLine backup, local_pathname = set_backend(args[0], args[1]) File "/usr/lib/python2.7/dist-packages/duplicity/commandline.py", line 1015, in set_backend globals.backend = backend.get_backend(bend) File "/usr/lib/python2.7/dist-packages/duplicity/backend.py", line 223, in get_backend obj = get_backend_object(url_string) File "/usr/lib/python2.7/dist-packages/duplicity/backend.py", line 209, in get_backend_object return factory(pu) File "/usr/lib/python2.7/dist-packages/duplicity/backends/_boto_single.py", line 166, in __init__ self.resetConnection() File "/usr/lib/python2.7/dist-packages/duplicity/backends/_boto_single.py", line 191, in resetConnection location=self.my_location) File "/usr/lib/python2.7/dist-packages/boto/s3/connection.py", line 625, in create_bucket response.status, response.reason, body) S3ResponseError: S3ResponseError: 400 Bad Request <?xml version="1.0" encoding="UTF-8"?> <Error><Code>InvalidRequest</Code><Message>The authorization mechanism you have provided is not supported. Please use AWS4-HMAC-SHA256.</Message><RequestId>3F4...7DF7</RequestId><HostId>9nXs0JD...UeaU2WyRiw=</HostId></Error> 

Используемые версии: Duplicity 0.7.11, boto 2.44.0

0

1 ответ на вопрос

4
Messa

Я исправил, указав имя хоста S3 напрямую - хотя я не уверен, как именно это исправляет :)

/usr/bin/duplicity \ --exclude-if-present do-not-backup \ --s3-use-new-style \ --s3-use-ia \ --sign-key 9CCF...585 \ --encrypt-key 9CCF...585 \ --encrypt-key 9D43...725 \ --use-agent \ / \ s3://s3.eu-central-1.amazonaws.com/my-example-frankfurt-bucket/backups/ 

КСТАТИ. список конечных точек AWS находится здесь: http://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region

Похожие вопросы