1. Crear el bucket
1. Entra a https://console.aws.amazon.com i a dalt a la dreta tria la regió. Per a dades europees, eu-west-1 (Irlanda) o eu-south-2 (Espanya). Apunta-la, la faràs servir després.
2. Cerca S3 i prem Create bucket.
3. Bucket type: General purpose.
4. Bucket name: el nom que hagis triat.
5. Object Ownership: ACLs disabled (és el valor per defecte).
6. Block Public Access settings for this bucket: deixa marcat Block all public access. És el valor per defecte.
7. Bucket Versioning: Disable. Restic ja guarda els seus snapshots, i amb versionat els fitxers esborrats pel prune continuarien ocupant espai i cobrant.
8. Default encryption: es queda en SSE-S3, no cal tocar res. El contingut ja va xifrat per restic.
9. Prem Create bucket.
Opcional, però útil: a la pestanya Management del bucket, afegeix una regla de lifecycle que esborri les pujades multipart incompletes després de 7 dies (Delete expired object delete markers or incomplete multipart uploads). Evita restes si una còpia es talla a mig pujar.
2. Crear la política
1. Cerca IAM, menú Policies i Create policy.
2. Pestanya JSON i enganxa això:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ListBucket",
"Effect": "Allow",
"Action": [
"s3:ListBucket",
"s3:GetBucketLocation"
],
"Resource": "arn:aws:s3:::NOM-DEL-BUCKET"
},
{
"Sid": "ReadWriteObjects",
"Effect": "Allow",
"Action": [
"s3:GetObject",
"s3:PutObject",
"s3:DeleteObject"
],
"Resource": "arn:aws:s3:::NOM-DEL-BUCKET/*"
}
]
}
3. Next, nom talaia-backup-NOM-DEL-BUCKET i Create policy.
Els dos blocs són separats a propòsit: ListBucket va sobre el bucket i els permisos d’objecte sobre /*. Si els uneixes en un sol Resource, restic dóna Access Denied.
3. Crear l’usuari i la clau
1. IAM, Users, Create user. Nom talaia-backup. No marquis l’accés a la consola.
2. Set permissions: Attach policies directly, cerca la política que has creat i marca-la.
3. Create user.
4. Obre l’usuari, pestanya Security credentials, Create access key.
5. Use case: Application running outside AWS. Continua.
6. Es mostren l’Access key ID i la Secret access key. La secreta només es veu ara. Copia-les o descarrega el CSV, i no el deixis en cap carpeta del repositori.
4. Posar-ho a Talaia
A la consola de Talaia, Credencials: crea el secret backup amb tres camps.
– access_key_id: el de l’usuari.
– secret_access_key: la secreta.
– password: una contrasenya llarga i aleatòria per a restic. No es pot canviar després, i sense ella no recuperes res. Guarda-la fora del servidor, juntament amb /etc/talaia/master.key.
Després, Configuració › Serveis › Còpies de seguretat:
– Endpoint: s3.REGIO.amazonaws.com, per exemple s3.eu-west-1.amazonaws.com.
– Bucket: el nom.
– Prefix: talaia.
– Region: la que has triat.
– Secret: backup.
– Daily 14 i monthly 6.
– Activa-ho.
5. Comprovar
Al VPS, abans d’activar el timer:
sudo apt install restic export RESTIC_REPOSITORY=s3:https://s3.eu-west-1.amazonaws.com/NOM-DEL-BUCKET/talaia export AWS_ACCESS_KEY_ID=... AWS_SECRET_ACCESS_KEY=... RESTIC_PASSWORD=... restic snapshots
Abans de la primera còpia dirà que el repositori no existeix, i això és normal. Si dóna Access Denied, el problema és la política o el nom del bucket. Si dóna un error de regió, l’endpoint no coincideix amb la regió del bucket.
Després, a la consola, Fes una còpia ara i segueix-la a Feines. La primera crea el repositori. Quan acabi, fes restic snapshots un altre cop i hauries de veure’n un. Llavors:
sudo systemctl enable --now talaia-backup.timer

