来自 centos 的 duplicity s3 备份

来自 centos 的 duplicity s3 备份

我正在尝试将服务器数据备份到 S3,但没有成功。下面是我运行以在 S3 上开始备份的脚本。

我已经使用 IAM 创建了一个用户,并已向该用户授予所有权限。

 #!/bin/bash

 export AWS_ACCESS_KEY_ID="access key goes here"
 export AWS_SECRET_ACCESS_KEY="secrete key goes here"
 export PASSPHRASE="passphrase goes here"
 duplicity --no-encryption demo/* s3+http://s3.amazonaws.com/[backet-name] &>>       backups.log
 AWS_ACCESS_KEY_ID=""
 AWS_SECRET_ACCESS_KEY=""
 PASSPHRASE=""

以下是日志的输出:

Import of duplicity.backends.dpbxbackend Failed: No module named dropbox
Local and Remote metadata are synchronized, no sync needed.
Last full backup date: none
No signatures found, switching to full backup.
Failed to create bucket (attempt #1) 's3.amazonaws.com' failed (reason: S3ResponseError: S3ResponseError: 403 Forbidden)

答案1

您需要调整用户权限:

选项1

为您的 S3 用户添加 S3 完全访问权限。

  • IAM / 用户 / 权限和附加策略
  • 添加策略“AmazonS3FullAccess”

选项 2

为您的用户添加自定义策略。

转到你的存储桶特性并在权限选项卡,选择添加存储桶策略然后复制这个:

{
  "Statement": [
    {
      "Principal": {
          "AWS": "*"
      },
      "Effect": "Allow",
      "Action": "s3:*",
      "Resource": ["arn:aws:s3:::my-bucket-name/*", "arn:aws:s3:::my-bucket-name"]
    }
  ]
}

代替我的存储桶名称与您的备份进行验证,然后重试。您应该能够顺利上传 duplicity 备份。

相关内容