Migración de clusteres de DreamObjects
DreamHost en este momento está en el proceso de migrar todas la cuentas de DreamObjects a una nueva plataforma de hardware.
Por favor revisa este artículo para identificar el cluster en el que está tu cuenta de DreamObjects y las herramientas que este soporta.
Cómo cifrar tus datos
S3cmd puede cifrar tus datos mientras los carga en DreamObjects. Para utilizar esta funcionalidad, primero debes configurar tu archivo .s3cfg como se muestra en este artículo:
Configurar tu archivo .s3cfg
Abre el archivo en el directorio de tu usuario.
[server]$ nano ~/.s3cfg
Agrega las siguientes líneas para que puedas usar el cifrado. Asegúrate de crear tu propia contraseña para gpg_passphrase:
check_ssl_certificate = True
check_ssl_hostname = True
gpg_command = /usr/bin/gpg
gpg_decrypt = %(gpg_command)s -d --verbose --no-use-agent --batch --yes --passphrase-fd %(passphrase_fd)s -o %(output_file)s %(input_file)s
gpg_encrypt = %(gpg_command)s -c --verbose --no-use-agent --batch --yes --passphrase-fd %(passphrase_fd)s -o %(output_file)s %(input_file)s
gpg_passphrase = yourpassword
Tu configuración ahora está configurada para encriptar datos.
Cifrar datos mientras se cargan
Para cifrar tus datos durante la carga, usa la marca -e. En el siguiente ejemplo, bucket-name es el nombre del bucket al que estás cargando contenido. textfile.txt es el nombre del único archivo que estás cargando:
[server]$ s3cmd -e put testfile.txt s3://bucket-name upload: '/tmp/tmpfile-zFGwbLHMVEINdHh3615n' -> 's3://bucket-name/testfile.txt' [1 of 1] 63 of 63 100% in 0s 129.96 B/s done
Para confirmar que está encriptado, navega a la página DreamObjects. Haz clic en el botón Ver objetos debajo de tu nombre de usuario. Se abre un mensaje para que puedas ver los objetos en tu bucket.
Haz clic en el objeto, copia la URL y luego pégalo en un navegador. Verás que los datos del archivo están cifrados.
Descifrar un archivo
Cuando usas s3cmd para descargar un archivo cifrado, se descifra automáticamente:
[server]$ s3cmd get s3://bucket-name/encrypted-file.txt download: 's3://bucket-name/encrypted-file.txt' -> './encrypted-file.txt' [1 of 1] 70 of 70 100% in 0s 323.19 B/s done
Si lees el contenido del archivo, verás que ya no está encriptado:
[server]$ cat encrypted-file.txt Testing a file
Firmar una URL de S3 para proporcionar acceso público limitado
Puedes establecer manualmente una fecha de vencimiento para acceder a un archivo. Para hacer esto, primero debes convertir la fecha en una marca de tiempo de Unix Epoch.
- Decide la fecha límite en la que deseas permitir que se firme/acceda a la URL.
- Visita Epoch Converter para convertir tu fecha en una marca de tiempo de la época. Se verá como una cadena de números. Por ejemplo: 1540232086
- Corre el siguiente comando para firmar la URL hasta esta marca de tiempo. (Asegúrate de cambiar el nombre del bucket y el nombre del archivo por tu información real).
[server]$ s3cmd signurl s3://my_bucket/my_file.png 1540232086 http://my-bucket.objects-us-east-1.dream.io/my_file.png?AWSAccessKeyId=DHDPTCQ3WFGHPSS5FAXG&Expires=1540232086&Signature=9nf8f9kG%2FqDa76rmET4R%2FpbtaGM%3D
- Esto genera la URL firmada.
Alternativamente, puedes firmarla por 1 semana usando este formato:
[server]$ s3cmd signurl s3://my_bucket/my_file.png $(echo "`date +%s` + 3600 * 24 * 7" | bc)
- Comparte esta URL para que cualquiera pueda accesar ese archivo hasta la fecha que hayas especificado.