miércoles, 24 de noviembre de 2021

AWS cli: descargar archivos de S3



Cómo descargar archivos de un bucket S3 mediante el cli de AWS en Linux.



Veamos cómo descargar ficheros de un bucket S3 de AWS.

En este ejemplo, el bucket se llama "blai-1".

Imaginemos que tenemos 2 archivos en local:

[ec2-user@ip-10-5-0-143 ~]$ ls 2021-11-24 11:52:21 30318 file1.txt 2021-11-24 11:52:22 43784 file2.txt

Por otro lado, tenemos 3 ficheros en el bucket S3 "blai-1":

[ec2-user@ip-10-5-0-143 ~]$ aws s3 ls s3://s3-blai-1/files/ 2021-11-24 11:52:51 30318 file1.txt 2021-11-24 11:52:52 43784 file2.txt 2021-11-24 11:52:52 96675 file3.txt

Queremos descargar el archivo file3.txt. Para descargar un fichero, usamos get-object:

[ec2-user@ip-10-5-0-143 ~]$ sudo aws s3api get-object --bucket s3-blai-1 --key files/file3.txt files/file3.txt

Tras descargar el fichero, listamos en local:

[ec2-user@ip-10-5-0-143 ~]$ ls 2021-11-24 11:52:21 30318 file1.txt 2021-11-24 11:52:22 43784 file2.txt 2021-11-24 11:52:52 96675 file3.txt

Ya tenemos file3.txt en local.

El último parámetro de la instrucción es la ruta y nombre de archivo que tendrá en local el archivo que descargamos - seleccionándolo con --key - lo cual puede ser modificado según nuestras necesidades.
0

miércoles, 17 de noviembre de 2021

Ver fecha de caducidad de un certificado .pfx



Comprobar fecha de expiración de un certificado en formato .pfx.



Para ver la fecha de expiración de un certificado en formato .pfx que hayamos exportado de un servidor Windows, podemos usar la utilidad openssl en Windows/Linux:

HOST# openssl pkcs12 -in archivo.pfx -nokeys | openssl x509 -noout -enddate

Donde archivo.pfx es el nombre del certificado en formato pfx.

Para incluir el password del certificado en la línea de comandos, podemos incluir:

-passin pass:"${pass}"

HOST# openssl pkcs12 -in archivo.pfx -nokeys | openssl x509 -noout -enddate -passin pass:”${pass}”

$pass es la variable que contiene el password.
0

miércoles, 10 de noviembre de 2021

curl: (35) error:1408F10B:SSL routines:ssl3



curl: (35) error:1408F10B:SSL routines:ssl3_get_record:wrong version number.



Tras apuntar un dominio a un servidor corriendo nginx en modo reverse proxy y acceder al dominio vía línea de comandos mediante curl, me encontré con este error:

curl: (35) error:1408F10B:SSL routines:ssl3_get_record:wrong version number

Tras investigar un poco, vi que me había dejado la directiva ssl en la configuración de nginx.

Antes:

server { listen 443; ... }

Después (arreglado):

server { listen 443 ssl; ... }

Una vez añadido "ssl", la web ya fue accesible vía HTTPS sin problemas.

Recordemos que al usar el parámetro "ssl" se indica a los navegadores que todas las conexiones aceptadas en el puerto especificado deben funcionar con SSL/TLS.


Fuentes:

http://nginx.org/en/docs/http/ngx_http_core_module.html#listen
0

miércoles, 3 de noviembre de 2021

Guardar archivos como root en vim



Cómo guardar archivos como root en vim.



A veces me he encontrado con que edito un archivo con vim sin haber usado sudo, y luego no puedo guardarlo, con un error en pantalla al ejecutar :wq! que dice algo similar a "advertencia: cambiando un archivo de solo lectura".

Si hemos podido leer el fichero significa que podemos guardarlo con otro nombre; no hace falta salir y editar el fichero con sudo. Vim permite hacer esto usando el comando:

:w otro_nombre

No obstante, esta no es la mejor opción, dado que tendríamos que ejecutar una instrucción adicional para reemplazar el archivo que estamos editando:

!sudo mv otro_nombre %

% equivale a poner la ruta del archivo que estamos editando.
! al principio indica a vim que ejecute una instrucción usando el intérprete del sistema.

Para evitar tener que escribir dos instrucciones, podemos ejecutar la siguiente instrucción, todo en uno:

:w!sudo dd of=%

:w ! lo que sigue a ! se ejecuta tomando el búfer (es decir, el archivo) como entrada estándar.
sudo nos permite ejecutar la instrucción con permisos de root.
dd of=% toma la entrada estándar y escribe su contenido en el archivo que estamos editando.

Como usamos sudo, deberemos introducir nuestra contraseña. Luego pulsamos O y despúes Enter.

Como vim permite guardar comandos personalizados, podemos crear el siguiente comando:

cmap w!! w !sudo dd of=%

Así, la próxima vez que editemos un archivo sin haber usado sudo, bastará con ejecutar:

:w!!

Esto nos permitirá guardarlo sin problemas.
0