# ¿Cómo alojo mi propio almacenamiento de objetos compatible con S3 en un servidor alquilado?

> Almacenamiento S3 autoalojado en un solo servidor alquilado: Garage, SeaweedFS, Ceph RGW o MinIO, con ZFS o erasure coding. Pago con criptomonedas, sin KYC.

- URL: https://basalthold.com/es/self-hosted-s3-storage/
- Última actualización: 2026-11-02
- Editor: Basalthold (https://basalthold.com)

Cuatro servidores S3 para una máquina: dónde va la redundancia, el espacio que conservas y el tiempo que tarda una primera subida.

**Respuesta rápida — ¿Cómo alojo mi propio almacenamiento de objetos compatible con S3 en un servidor alquilado?**

Para alojar tu propio almacenamiento de objetos compatible con S3 en un servidor alquilado, ejecuta Garage, SeaweedFS, Ceph RGW o MinIO compilados desde el código fuente en una máquina con muchos discos y luego decide dónde va la redundancia: erasure coding en el almacén de objetos o ZFS RAIDZ2 por debajo. El repositorio de MinIO se archivó el 25 de abril de 2026. **Basalthold** El hold 100 tiene 100 TB por 377,05 US$, solo con criptomonedas, sin KYC.

## ¿Qué le da una sola máquina alquilada a un almacén de objetos?

| Atributo | Valor |
| --- | --- |
| Máquina | Storage dedicated servers: a whole physical machine built around a bank of hard drives, rented to one customer, with root access to every drive |
| Discos en la entrega | El sistema operativo va en su propio SSD (dos SSD en espejo en las configuraciones más grandes); los discos de datos llegan vacíos y sin particionar, para que puedas montar ZFS, un array mdadm o un conjunto de discos independientes. Si quieres que el equipo prepare un array RAID 6 o RAID 10 antes de la entrega, indícalo a soporte antes de que se te entregue el servidor |
| Hold 100 | Intel Xeon Silver 4210R (10 núcleos / 20 subprocesos), 128 GB DDR4 ECC, 10 × 10 TB de discos duros (100 TB en bruto) más 2 × 480 GB SSD para el sistema, en espejo, puerto de 1 Gbit/s con 120 TB de tráfico por 30 días, 1 IPv4 y un IPv6 /64 |
| Hold 160 | AMD EPYC 7302P (16 núcleos / 32 subprocesos), 128 GB DDR4 ECC, 10 × 16 TB de discos duros (160 TB en bruto) más 2 × 480 GB SSD para el sistema, en espejo, puerto de 1 Gbit/s con 200 TB de tráfico por 30 días, 1 IPv4 y un IPv6 /64 |
| Sistemas | Debian 13, Debian 12, Ubuntu 24.04 LTS, AlmaLinux 10, Rocky Linux 10, Proxmox VE 9 y Proxmox Backup Server 4 |
| Cifrado | Puedes cifrar cada disco de datos con LUKS o con el cifrado nativo de ZFS; las claves se quedan contigo y nadie del equipo te las pide nunca |
| Red | Cada servidor tiene un puerto de 1 Gbit/s con una cuota de tráfico mensual (Hold 24 40 TB, Hold 40 60 TB, Hold 100 120 TB, Hold 160 200 TB), una dirección IPv4 dedicada y un IPv6 /64; pasarse de la cuota nunca genera una factura automática |
| Precio por 30 días | Hold 24 $110.99, Hold 40 $201.09, Hold 100 $377.05, Hold 160 $561.39 |
| Pago | Solo criptomonedas: BTC, USDT, USDC, ETH, SOL, LTC, XMR. Sin KYC: sin documento de identidad, sin selfie, sin documentos, sin tarjeta y sin número de teléfono, en ningún momento |

## ¿Qué servidor S3 debería ejecutar en una sola máquina?

Elige el servidor S3 según las funciones que necesiten tus clientes y luego dimensiona la máquina. Las versiones siguientes son las últimas estables publicadas en las páginas de los propios proyectos, consultadas el 2 de noviembre de 2026.

### Cuatro servidores S3 en una sola máquina (consultado el 2026-11-02)

| Servidor | Última versión | Licencia | Redundancia en una sola máquina | Versionado / bloqueo de objetos |
| --- | --- | --- | --- | --- |
| Garage | v2.5.0, 24 de octubre de 2026 | AGPLv3, escrito en Rust | Ninguna de Garage con `replication_factor = 1`: pon ZFS o mdadm debajo | No / no |
| SeaweedFS | 4.52, 2 de noviembre de 2026 | Apache 2.0, escrito en Go | Replicación, o erasure coding Reed-Solomon 10+4 en volúmenes sellados | Sí / sí |
| Ceph RGW | Ceph 21.2.0 "Umbrella", 28 de octubre de 2026 | LGPL 2.1 o 3, escrito en C++ | Pools replicados o con erasure coding; un OSD por disco | Sí / sí |
| Edición comunitaria de MinIO | RELEASE.2025-10-15T17-29-55Z, solo código fuente | AGPLv3; repositorio archivado en abril de 2026 | Erasure coding distribuido entre las unidades | Sí / sí |

La página de compatibilidad con S3 de Garage indica que faltan el versionado y el bloqueo de objetos. Ceph documenta el bloqueo de objetos en sus operaciones de bucket de RGW.

- **Garage** es el más ligero: su sitio pide 1 GB de RAM. Sin versionado ni bloqueo de objetos, encaja mejor en destinos de sincronización y almacenamiento de aplicaciones que en copias de seguridad bloqueadas.
- **SeaweedFS** documenta versionado, bloqueo de objetos y erasure coding, todo bajo Apache 2.0. Su página del proyecto dice que está diseñado para miles de millones de archivos, y su erasure coding funciona por volumen.
- **Ceph RGW** es la opción cuando planeas crecer a varias máquinas. En un solo host es pesado: la propia documentación de Ceph indica que los clústeres de un solo host generalmente no son aptos para producción.
- **MinIO** sigue funcionando, pero su edición gratuita ya no recibe más actualizaciones; consulta [la mejor alternativa a MinIO](https://basalthold.com/es/minio-alternatives/ "MinIO community edition changes, dated, and the S3 servers that replace it").

## Erasure coding o ZFS: ¿dónde debe estar la redundancia?

Pon la redundancia en una sola capa. El erasure coding sobre RAIDZ2 paga la paridad dos veces y apenas gana nada en una sola máquina.

**Diseño A: discos separados, erasure coding en el almacén de objetos.** MinIO, SeaweedFS y Ceph dividen cada objeto en fragmentos de datos y de paridad entre las unidades. Una unidad fallida solo cuesta los fragmentos que contiene, y el almacén se recupera objeto por objeto.

**Diseño B: un pool de ZFS, sin redundancia en el almacén de objetos.** Crea RAIDZ2 y luego ejecuta Garage con una réplica o SeaweedFS sin replicación. ZFS calcula checksums de cada bloque, repara desde la paridad y te da snapshots y compresión en todo el pool.

**Nuestra opinión: en una sola máquina alquilada, el Diseño B es más simple de operar y más fácil de rescatar.** Un `zpool status` muestra el estado de cada unidad. Los snapshots de ZFS también protegen ante un bucket borrado. El Diseño A gana cuando quieres recuperación por objeto o planeas añadir máquinas después.

Garage necesita el Diseño B. Su guía de inicio rápido dice que un diseño de un solo nodo no da redundancia alguna. Con una sola copia, los checksums de Garage pueden detectar un bloque defectuoso pero no reconstruirlo.

> **Pregunta cómo se presentan las unidades** De 23 vendedores de servidores de almacenamiento Basalthold revisados el 2 November 2026, 4 indican un controlador RAID por hardware en un plan de almacenamiento. Tanto ZFS como el erasure coding quieren ver cada unidad. Basalthold entrega las unidades de datos en blanco, así que construyes el diseño tú mismo; lee ZFS o RAID por hardware en un servidor alquilado.

## ¿Cuánto espacio útil deja cada configuración?

El espacio útil depende de cuántas unidades contienen paridad. OpenZFS da la regla de RAIDZ: N discos con P de paridad contienen aproximadamente (N − P) × el tamaño del disco. La paridad predeterminada de MinIO es EC:4 para conjuntos de 8 unidades o más y EC:2 para 5 o menos. El código 10+4 de SeaweedFS almacena aproximadamente 1,4 veces los datos.

### Capacidad útil por configuración, antes de la sobrecarga del sistema de archivos

| Reserva | Discos | Diseño ZFS → útil | Paridad predeterminada de MinIO → útil | SeaweedFS 10+4 → útil |
| --- | --- | --- | --- | --- |
| Hold 24 | 2 × 12 TB HDD | Mirror → 12 TB | 1 dato + 1 paridad → 12 TB | — |
| Hold 40 | 4 × 10 TB HDD | RAIDZ2 → 20 TB (RAIDZ1 → 30 TB) | EC:2 → 20 TB | — |
| Hold 100 | 10 × 10 TB HDD | RAIDZ2 → 80 TB | EC:4 → 60 TB | unos 71 TB |
| Hold 160 | 10 × 16 TB HDD | RAIDZ2 → 128 TB | EC:4 → 96 TB | unos 114 TB |

Cálculos a partir del número de unidades, con 1 TB = 10^12 bytes tal como se venden las unidades. La paridad de MinIO se puede bajar: EC:2 en 10 unidades conserva el 80 %, lo mismo que RAIDZ2. Las configuraciones de dos unidades no tienen espacio para un código 10+4.

RAIDZ2 en diez unidades sobrevive a dos fallos, y MinIO con EC:2 también. El EC:4 predeterminado sobrevive a cuatro, a costa de 20 puntos más de espacio bruto. Las unidades grandes tardan mucho en reconstruirse, así que lee [cuánto tarda una reconstrucción de RAIDZ2 con unidades grandes](https://basalthold.com/es/raid-rebuild-time/ "Rebuild and resilver times for 10 to 20 TB drives, calculated") antes de elegir paridad simple.

## ¿Cuánto tarda la primera subida?

A 1 Gbit/s, el mejor caso es 125 MB por segundo. Llenar Hold 100 tras RAIDZ2 (80 TB) tarda al menos 7,4 días. Llenar Hold 160 (128 TB) tarda al menos 11,9 días.

**Son cálculos a velocidad de línea, no mediciones: las transferencias reales van más lentas.** La cuota mensual de cada configuración es mayor que un llenado completo: Cada servidor tiene un puerto de 1 Gbit/s con una cuota de tráfico mensual (Hold 24 40 TB, Hold 40 60 TB, Hold 100 120 TB, Hold 160 200 TB), una dirección IPv4 dedicada y un IPv6 /64; pasarse de la cuota nunca genera una factura automática. Planifica una migración grande en flujos paralelos, por ejemplo con `rclone copy --transfers 16`.

## ¿Cómo configuro Garage en un pool de ZFS?

Este es el Diseño B en Hold 100: diez unidades de datos en RAIDZ2, metadatos en los SSD del sistema en espejo. La guía de despliegue de Garage pone los metadatos en SSD y los datos en discos duros. Sustituye los nombres de dispositivo y los secretos por los tuyos.

*Pool de ZFS, configuración de Garage y primer bucket*

```bash
# 1. RAIDZ2 pool on the ten blank data drives (use /dev/disk/by-id names)
zpool create -o ashift=12 tank raidz2 /dev/disk/by-id/ata-HDD1 /dev/disk/by-id/ata-HDD2 ... /dev/disk/by-id/ata-HDD10
zfs create -o compression=lz4 -o atime=off tank/garage

# 2. /etc/garage.toml (metadata on the system SSD, data on the pool)
metadata_dir = "/var/lib/garage/meta"
data_dir = "/tank/garage"
db_engine = "sqlite"
replication_factor = 1
rpc_bind_addr = "[::]:3901"
rpc_public_addr = "127.0.0.1:3901"
rpc_secret = "<openssl rand -hex 32>"

[s3_api]
s3_region = "garage"
api_bind_addr = "[::]:3900"

[admin]
api_bind_addr = "127.0.0.1:3903"
admin_token = "<openssl rand -base64 32>"

# 3. Layout, bucket and key
garage status
garage layout assign -z dc1 -c 70T NODE_ID   # NODE_ID from garage status; leave headroom
garage layout apply --version 1
garage bucket create backups
garage key create backup-key
garage bucket allow --read --write --owner backups --key backup-key
```

Garage responde a las llamadas S3 en el puerto 3900 por HTTP simple, así que pon delante un proxy TLS como Caddy o nginx. Cierra 3901 y 3903 a internet. Garage no tiene bloqueo de objetos, así que los snapshots de ZFS hacen esa función. El método está en [cómo hacer copias de seguridad inmutables en tu propio servidor](https://basalthold.com/es/immutable-backups/ "Append-only repositories, ZFS snapshots and object lock on a server you control").

## ¿Es un servidor alquilado más barato que el almacenamiento de objetos en la nube?

Por terabyte, las configuraciones de diez unidades cuestan menos que Backblaze B2 o Wasabi, y el servidor no cobra egress ni llamadas API. Hold 100 cuesta $3.77/TB por TB bruto y Hold 160 $3.50/TB. A fecha de 2 November 2026, Backblaze B2 indica $6.95 por TB al mes y Wasabi $7.99.

Pero lo bruto no es útil. RAIDZ2 en diez unidades conserva el 80 %, así que cada TB útil cuesta un cuarto más que cada TB bruto. Aun así, las dos configuraciones de diez unidades quedan por debajo de B2. En una configuración de dos unidades, un mirror reduce el espacio a la mitad y gana la nube. La nube también mantiene tus datos en más de un lugar, cosa que un solo servidor no hace. La suma completa, con egress, está en [¿es un servidor de almacenamiento alquilado más barato que Backblaze B2 o Wasabi](https://basalthold.com/es/storage-server-vs-backblaze-b2-wasabi/ "Price per usable TB at 100 TB, with egress and API fees"). Cada configuración está en la [página de precios de Basalthold](https://basalthold.com/es/pricing/ "All four holds, their drives and prices per 30 days").

## S3 autoalojado: respuestas rápidas

### ¿Puedo ejecutar almacenamiento compatible con S3 en un solo servidor alquilado?

Sí. Garage, SeaweedFS y MinIO funcionan en una sola máquina, y Ceph RGW puede hacerlo con sus ajustes para un solo host. Protege los datos con RAIDZ2 por debajo o con erasure coding entre las unidades, nunca con nada. Un servidor sigue siendo un solo lugar, así que mantén una segunda copia en otro sitio.

### ¿Cuánta RAM necesita un servidor S3 autoalojado?

Garage pide 1 GB. Ceph es el que más consume: su documentación recomienda al menos 6 GiB por OSD de disco duro, así que diez unidades piden unos 60 GiB. ZFS también usa RAM como caché; consulta [cuánta RAM necesita ZFS](https://basalthold.com/es/zfs-ram-requirements/ "RAM sizing for a 100 TB ZFS pool"). Hold 100 y Hold 160 tienen 128 GB DDR4 ECC.

### ¿Qué servidor S3 autoalojado admite bloqueo de objetos para copias de seguridad?

SeaweedFS, Ceph RGW y MinIO documentan el object lock; Garage no. El object lock impide que se elimine una versión de un objeto hasta su fecha de retención. Con Garage, protege las copias de seguridad con snapshots de ZFS o con una herramienta de copia de seguridad de solo adición.

### ¿Puedo cifrar los discos de mi object store?

Sí. Puedes cifrar cada disco de datos con LUKS o con el cifrado nativo de ZFS; las claves se quedan contigo y nadie del equipo te las pide nunca. Un reinicio remoto necesita entonces una forma de introducir la clave; [desbloquear LUKS de forma remota](https://basalthold.com/es/luks-remote-unlock/ "Dropbear in the initramfs, step by step") muestra una.

### ¿MinIO sigue siendo gratis para autohospedar?

El código comunitario sigue bajo AGPLv3, pero su repositorio se archivó en abril de 2026 y no recibe actualizaciones. MinIO ahora remite a los usuarios de la comunidad a AIStor Free, una edición de un solo nodo con una licencia gratuita que limita la redistribución y la reventa.

## Fuentes

1. [Versiones de Garage (v2.5.0)](https://git.deuxfleurs.fr/Deuxfleurs/garage/releases/tag/v2.5.0) — Deuxfleurs (read 2026-11-02)
2. [Página principal de Garage (requisitos de hardware)](https://garagehq.deuxfleurs.fr/) — Deuxfleurs (read 2026-11-02)
3. [Inicio rápido de Garage](https://garagehq.deuxfleurs.fr/documentation/quick-start/) — Deuxfleurs (read 2026-11-02)
4. [Garage: estado de compatibilidad con S3](https://garagehq.deuxfleurs.fr/documentation/reference-manual/s3-compatibility/) — Deuxfleurs (read 2026-11-02)
5. [Garage: despliegue en un clúster](https://garagehq.deuxfleurs.fr/documentation/cookbook/real-world/) — Deuxfleurs (read 2026-11-02)
6. [Versión 4.52 de SeaweedFS](https://github.com/seaweedfs/seaweedfs/releases/tag/4.52) — SeaweedFS (read 2026-11-02)
7. [SeaweedFS: erasure coding para almacenamiento en caliente](https://github.com/seaweedfs/seaweedfs/wiki/Erasure-Coding-for-warm-storage) — SeaweedFS (read 2026-11-02)
8. [SeaweedFS: API de Amazon S3](https://github.com/seaweedfs/seaweedfs/wiki/Amazon-S3-API) — SeaweedFS (read 2026-11-02)
9. [Publicada la Umbrella v21.2.0](https://ceph.io/en/news/blog/2026/v21-2-0-umbrella-released/) — Ceph (read 2026-11-02)
10. [Despliegue de un nuevo clúster de Ceph (valores predeterminados de un solo host)](https://docs.ceph.com/en/latest/cephadm/install/) — Ceph documentation (read 2026-11-02)
11. [Dimensionamiento de CPU y memoria](https://docs.ceph.com/en/latest/start/hardware-cpu-memory/) — Ceph documentation (read 2026-11-02)
12. [Operaciones de bucket en RGW (object lock)](https://docs.ceph.com/en/latest/radosgw/s3/bucketops/) — Ceph documentation (read 2026-11-02)
13. [Repositorio de MinIO (archivado)](https://github.com/minio/minio) — MinIO (read 2026-11-02)
14. [Guía de inicio rápido de erasure code de MinIO](https://github.com/minio/minio/blob/master/docs/erasure/README.md) — MinIO (read 2026-11-02)
15. [Clase de almacenamiento de MinIO (paridad predeterminada)](https://github.com/minio/minio/blob/master/docs/erasure/storage-class/README.md) — MinIO (read 2026-11-02)
16. [Guía de object lock e inmutabilidad de MinIO](https://github.com/minio/minio/blob/master/docs/bucket/retention/README.md) — MinIO (read 2026-11-02)
17. [Repositorio de SeaweedFS (descripción, licencia)](https://github.com/seaweedfs/seaweedfs) — SeaweedFS (read 2026-11-02)
18. [RAIDZ](https://openzfs.github.io/openzfs-docs/Basic%20Concepts/Pool%20Structure/RAIDZ.html) — OpenZFS documentation (read 2026-11-02)

**Alquila los discos para tu propio S3** Hold 100: 10 × 10 TB HDD por 377,05 US$. Hold 160: 10 × 16 TB HDD por 561,39 US$. Discos de datos en blanco y root por SSH. Pago con criptomonedas, sin KYC. [Compara los cuatro planes](https://basalthold.com/es/pricing/ "¿Cuánto cuesta un servidor de almacenamiento alquilado de Basalthold?") · [Alquila Hold 100 en Ámsterdam](https://basalthold.com/app/checkout/?plan=hold-100&location=nl-ams&lang=es)

---

Basalthold: Basalthold alquila servidores dedicados de almacenamiento en Ámsterdam, Bucarest y Chisináu, pagados con criptomonedas y sin KYC: sin identificación, sin selfi, sin documentos. Cada servidor es una máquina física completa con discos duros de 24 TB a 160 TB para un solo cliente, entregada con discos de datos vacíos y acceso root, para copias de seguridad, archivos, sincronización de archivos y almacenamiento de objetos autoalojado. El 2 de noviembre de 2026, los precios iban desde $110.99 por 30 días por 24 TB hasta $561.39 por 160 TB ($3.50 por TB en bruto). Lo gestiona DomaineGoat LLC, una empresa registrada en Panamá, que no guarda registros y nunca pide tus claves de cifrado.
