Setting up RCLONE and WASABI

Create account in Wasabi Create a Bucket in Wasabi Create an Access Key in Wasabi

Install RCLONE Configure WASABI in RCLONE

Test Connection

Setup IAM Policy for IP Restriction

Create script to perform automatic sync

Setting up RCLONE for WASABI

RCLONE to Wasabi Cloud

This is a quick guide for setting up rclone on a *nix server to perform incremental backups to the Wasabi cloud service.

What is RCLONE?

rclone is a script (written in GO) that can copy or synchronize data between a remote device and a cloud storage location.

What is Wasabi Cloud?

Wasabi is a low-cost cloud storage solution that models itself after the Amazon S3 storage solution.

Why would you use RCLONE and Wasabi Cloud

With 1TB of storage costing $5.99 per month, Wasabi provides a relatively inexpensive storage solution for offsite backups. In our case we have nightly backups stored locally and copied to Wasabi for our 7-day rotation.

Setting up RCLONE and WASABI

Create account in Wasabi Create a Bucket in Wasabi Create an Access Key in Wasabi

Install RCLONE Configure WASABI in RCLONE

Test Connection

Setup IAM Policy for IP Restriction

Create script to perform automatic sync

rclone sync mysql-rotating/Monday wasabi:apolloweb01.holodyn.net/mysql-rotating/Monday

{
 "Id": "AllowIp",
 "Version": "2012-10-17",
 "Statement": [
   {
     "Sid": "IPAllow",
     "Effect": "Allow",
     "Principal": {
       "AWS": "*"
     },
     "Action": "s3:*",
     "Resource": "arn:aws:s3:::apolloweb01.holodyn.net/*",
     "Condition": {
       "IpAddress": {
         "aws:SourceIp": "67.225.146.162/32"
       }
     }
   }
 ]
}

{
 "Id": "AllowIP",
 "Version": "2012-10-17",
 "Statement": [
   {
     "Sid": "IPDeny",
     "Effect": "Deny",
     "Principal": {
       "AWS": "*"
     },
     "Action": "s3:*",
     "Resource": "arn:aws:s3:::apolloweb01.holodyn.net/*",
     "Condition": {
       "NotIpAddress": {
         "aws:SourceIp": "67.225.146.162/32"
       }
     }
   }
 ]
}
{
 "Id": "S3PolicyId1",
 "Version": "2012-10-17",
 "Statement": [
   {
     "Sid": "IPAllow",
     "Effect": "Allow",
     "Principal": {
       "AWS": "*"
     },
     "Action": "s3:*",
     "Resource": "arn:aws:s3:::apolloweb01.holodyn.net/*"
   }
 ]
}

{
 "Id": "AllowIp",
 "Version": "2012-10-17",
 "Statement": [
   {
     "Sid": "IPAllow",
     "Effect": "Allow",
     "Principal": {
       "AWS": "*"
     },
     "Action": "s3:*",
     "Resource": "arn:aws:s3:::apolloweb01.holodyn.net/*",
     "Condition": {
       "IpAddress": {
         "aws:SourceIp": "67.225.146.162/32"
       }
     }
   }
 ]
}

{
 "Id": "AllowIP",
 "Version": "2012-10-17",
 "Statement": [
   {
     "Sid": "IPDeny",
     "Effect": "Deny",
     "Principal": {
       "AWS": "*"
     },
     "Action": "s3:*",
     "Resource": "arn:aws:s3:::apolloweb01.holodyn.net/*",
     "Condition": {
       "NotIpAddress": {
         "aws:SourceIp": "67.225.146.162/32"
       }
     }
   }
 ]
}


{
 "Version": "2012-10-17",
 "Statement": [
   {
     "Sid": "AllowPublicRead",
     "Effect": "Allow",
     "Principal": {
       "AWS": "*"
     },
     "Action": "s3:GetObject",
     "Resource": [
       "arn:aws:s3:::apolloweb01.holodyn.net/*"
     ]
   }
 ]
}

rclone sync mysql-rotating/Monday wasabi:apolloweb01.holodyn.net/mysql-rotating/Monday