[root@serverprod01 opc]# docker login container-registry.oracle.com Username: rvargasq@grupoimprosa.com Password: xxxxxxxxxxxxxxxxxxxxxxxxxxxxx Error response from daemon: Get "https://container-registry.oracle.com/v2/": unauthorized: Auth failed.
Cuando ejecutas el comando anterior, lo que deseas es autenticarse contra el registro oficial de contenedores de Oracle: Oracle Container Registry
Este registro contiene imágenes oficiales Docker/OCI de productos Oracle como:
- Oracle Database 19c
- Oracle AI Database 26ai
- Oracle Linux
- WebLogic Server
- GraalVM
- Java/OpenJDK
- ORDS
- APEX
- etc.
Internamente lo que sucede es
- Solicita usuario y contraseña.
- Envía las credenciales al Oracle Container Registry.
- Si son válidas:
- genera un token de autenticación
- almacena credenciales localmente en Linux en ~/.docker/config.json
Esto permite ejecutar posteriormente otros comandos.
A diferencia de Docker Hub público, Oracle exige autenticación porque:
- Debe aceptar términos de licencia específicos.
- Algunas imágenes requieren permisos comerciales.
- Oracle controla métricas de descarga y acceso.
Sin embargo, cuando ejecutas este comando que te solicita el usuario y la contraseña, genera un error de validación, aún cuando ambos estén correctos.
La causa de esto se observa a la hora de ingresar por el navegador en el sitio web:
Hay un mensaje que nos dice, que el acceso a DOCKER/PODMAN ya no va a permitir utilizar contraseñas de tipo SSO y que debe utilizar "Auth Token" asociado a tu cuenta de usuario.
Cuando ingresas al sitio web, al dar click sobre el nombre de tu cuenta, se va a desplegar un menú en donde podrás ir a una opción, que te permite generar el token requerido para hacer login.
Una vez que haces click sobre la opción, puedes darle al botón de generar un nuevo token. En caso de que la pierdas, puedes borrarla y volverla a crear.
Con el token en tu poder, a la hora de hacer login en el repositorio, te pide tu cuenta (generalmente tu correo electrónico) y luego cuando te solicita la contraseña, debes ingresar el token generado.
[root@serverprod01 ~]# docker login container-registry.oracle.com
Username: ronald.vargas.quesada@gmail.com
Password:
WARNING! Your credentials are stored unencrypted in '/root/.docker/config.json'.
Configure a credential helper to remove this warning. See
https://docs.docker.com/go/credential-store/
Login Succeeded
Ahora puedes observar que el acceso ha sido satisfactorio, pero tienes un mensaje de "Advertencia", que te indica que la credencial otorgada ha sido almacenada en un archivo de formato JSON en una ruta específica de tu $HOME, pero la misma no esta encriptada, lo que representa una exposición de seguridad.
Si ingresas a la ruta indicada en el mensaje, podrás validar efectivamente lo que te indica el mismo.
También puedes validar el formato del archivo con el comando "jq",
[root@serverprod01 .docker]# jq . config.json
{
"auths": {
"container-registry.oracle.com": {
"auth": "cm********************tZG94azYydHNs"
}
}
}
Ahora vamos con el paquete en si.
Verificamos nuestra ruta de binarios en las variables de ambiente.
Creamos un link al ejecutable en un directorio de ruta.
Y ahora verificamos que si se encuentra el paquete y que es posible ser ejecutado.
Vamos a generar ahora el conjunto de llaves.
[root@serverprod01 .docker]# jq . config.json
{
"auths": {
"container-registry.oracle.com": {
"auth": "cm********************tZG94azYydHNs"
}
}
}
Nuestro objectivo ahora es ver como hacemos que esto se convierta en algo seguro.
Para poder utilizar un método de encriptación de estas llaves de acceso al respositorio, vamos a necesitar algunos paquetes adicionales.
Primero que todo, validar, si el paquete docker-credential-pass esta instalado:
[root@serverprod01 .docker]# which docker-credential-pass
/usr/bin/which: no docker-credential-pass in (/opt/sqlcl/bin:/root/.local/bin:/root/bin:/usr/share/Modules/bin:/sbin:/bin:/usr/sbin:/usr/bin)
Si no aparece instalado y lo quieres instalar desde los repositorios actuales, vas a obtener el siguiente mensaje de error, ya que el mismo no forma de facto parte de los repositorios.
[root@serverprod01 .docker]# dnf install -y docker-credential-helpers
Last metadata expiration check: 1:16:41 ago on Sun 17 May 2026 02:47:35 AM GMT.
No match for argument: docker-credential-helpers
Error: Unable to find a match: docker-credential-helpers
Primero vamos a necesitar algunas dependencias si queremos hacer la instalación desde un git directo del paquete.
[root@serverprod01 .docker]# dnf install golang-github-docker-credential-helpers-devel
Last metadata expiration check: 0:01:25 ago on Sun 17 May 2026 04:05:58 AM GMT.
Dependencies resolved.
=====================================================================
Package Arch Version Repository Size
=====================================================================
Installing:
golang-github-docker-credential-helpers-devel noarch 0.6.3-13.el10_0 ol10_u1_developer_EPEL 52 k
Installing dependencies:
glib2-devel x86_64 2.80.4-10.el10_1.13 ol10_appstream 1.8 M
gnutls-c++ x86_64 3.8.10-3.el10_1 ol10_appstream 31 k
gnutls-dane x86_64 3.8.10-3.el10_1 ol10_appstream 42 k
gnutls-devel x86_64 3.8.10-3.el10_1 ol10_appstream 3.4 M
go-filesystem x86_64 3.6.0-8.el10_1 ol10_appstream 11 k
libblkid-devel x86_64 2.40.2-16.el10_1 ol10_appstream 106 k
libffi-devel x86_64 3.4.4-10.el10 ol10_appstream 46 k
libidn2-devel x86_64 2.3.7-3.el10 ol10_appstream 109 k
libmount-devel x86_64 2.40.2-16.el10_1 ol10_appstream 102 k
libsecret-devel x86_64 0.21.2-8.el10 ol10_appstream 492 k
libselinux-devel x86_64 3.9-1.el10 ol10_appstream 342 k
libsepol-devel x86_64 3.9-1.el10 ol10_appstream 89 k
libtasn1-devel x86_64 4.20.0-1.el10 ol10_appstream 131 k
libtasn1-tools x86_64 4.20.0-1.el10 ol10_appstream 43 k
p11-kit-devel x86_64 0.25.5-7.el10 ol10_appstream 129 k
pcre2-devel x86_64 10.44-1.0.1.el10.3 ol10_appstream 693 k
pcre2-utf16 x86_64 10.44-1.0.1.el10.3 ol10_appstream 226 k
pcre2-utf32 x86_64 10.44-1.0.1.el10.3 ol10_appstream 214 k
sysprof-capture-devel x86_64 47.2-1.el10 ol10_appstream 71 k
unbound-libs x86_64 1.20.0-18.el10_1 ol10_appstream 588 k
Installing weak dependencies:
unbound-anchor x86_64 1.20.0-18.el10_1 ol10_appstream 74 k
Transaction Summary
=====================================================================
Install 22 Packages
Total download size: 8.8 M
Installed size: 31 M
Is this ok [y/N]: y
Downloading Packages:
(1/22): golang-github-docker-credential-helpers-devel-0.6.3-13.el10_0.noarch.rpm 402 kB/s | 52 kB 00:00
(2/22): gnutls-c++-3.8.10-3.el10_1.x86_64.rpm 139 kB/s | 31 kB 00:00
(3/22): glib2-devel-2.80.4-10.el10_1.13.x86_64.rpm 7.3 MB/s | 1.8 MB 00:00
(4/22): gnutls-dane-3.8.10-3.el10_1.x86_64.rpm 258 kB/s | 42 kB 00:00
(5/22): go-filesystem-3.6.0-8.el10_1.x86_64.rpm 87 kB/s | 11 kB 00:00
(6/22): gnutls-devel-3.8.10-3.el10_1.x86_64.rpm 13 MB/s | 3.4 MB 00:00
(7/22): libblkid-devel-2.40.2-16.el10_1.x86_64.rpm 539 kB/s | 106 kB 00:00
(8/22): libffi-devel-3.4.4-10.el10.x86_64.rpm 335 kB/s | 46 kB 00:00
(9/22): libidn2-devel-2.3.7-3.el10.x86_64.rpm 1.2 MB/s | 109 kB 00:00
(10/22): libmount-devel-2.40.2-16.el10_1.x86_64.rpm 901 kB/s | 102 kB 00:00
(11/22): libsepol-devel-3.9-1.el10.x86_64.rpm 810 kB/s | 89 kB 00:00
(12/22): libsecret-devel-0.21.2-8.el10.x86_64.rpm 2.3 MB/s | 492 kB 00:00
(13/22): libselinux-devel-3.9-1.el10.x86_64.rpm 1.2 MB/s | 342 kB 00:00
(14/22): p11-kit-devel-0.25.5-7.el10.x86_64.rpm 1.1 MB/s | 129 kB 00:00
(15/22): libtasn1-tools-4.20.0-1.el10.x86_64.rpm 166 kB/s | 43 kB 00:00
(16/22): libtasn1-devel-4.20.0-1.el10.x86_64.rpm 405 kB/s | 131 kB 00:00
(17/22): pcre2-utf16-10.44-1.0.1.el10.3.x86_64.rpm 1.7 MB/s | 226 kB 00:00
(18/22): sysprof-capture-devel-47.2-1.el10.x86_64.rpm 675 kB/s | 71 kB 00:00
(19/22): pcre2-devel-10.44-1.0.1.el10.3.x86_64.rpm 2.4 MB/s | 693 kB 00:00
(20/22): pcre2-utf32-10.44-1.0.1.el10.3.x86_64.rpm 911 kB/s | 214 kB 00:00
(21/22): unbound-libs-1.20.0-18.el10_1.x86_64.rpm 5.6 MB/s | 588 kB 00:00
(22/22): unbound-anchor-1.20.0-18.el10_1.x86_64.rpm 420 kB/s | 74 kB 00:00
----------------------------------------------------------------------------------------------
Total 6.2 MB/s | 8.8 MB 00:01
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
Preparing : 1/1
Running scriptlet: unbound-libs-1.20.0-18.el10_1.x86_64 1/22
Installing : unbound-libs-1.20.0-18.el10_1.x86_64 1/22
Installing : unbound-anchor-1.20.0-18.el10_1.x86_64 2/22
Running scriptlet: unbound-anchor-1.20.0-18.el10_1.x86_64 2/22
Created symlink '/etc/systemd/system/timers.target.wants/unbound-anchor.timer' → '/usr/lib/systemd/system/unbound-anchor.timer'.
Installing : gnutls-dane-3.8.10-3.el10_1.x86_64 3/22
Installing : sysprof-capture-devel-47.2-1.el10.x86_64 4/22
Installing : pcre2-utf32-10.44-1.0.1.el10.3.x86_64 5/22
Installing : pcre2-utf16-10.44-1.0.1.el10.3.x86_64 6/22
Installing : pcre2-devel-10.44-1.0.1.el10.3.x86_64 7/22
Installing : p11-kit-devel-0.25.5-7.el10.x86_64 8/22
Installing : libtasn1-tools-4.20.0-1.el10.x86_64 9/22
Installing : libtasn1-devel-4.20.0-1.el10.x86_64 10/22
Installing : libsepol-devel-3.9-1.el10.x86_64 11/22
Installing : libselinux-devel-3.9-1.el10.x86_64 12/22
Installing : libidn2-devel-2.3.7-3.el10.x86_64 13/22
Installing : libffi-devel-3.4.4-10.el10.x86_64 14/22
Installing : libblkid-devel-2.40.2-16.el10_1.x86_64 15/22
Installing : libmount-devel-2.40.2-16.el10_1.x86_64 16/22
Installing : glib2-devel-2.80.4-10.el10_1.13.x86_64 17/22
Installing : go-filesystem-3.6.0-8.el10_1.x86_64 18/22
Installing : gnutls-c++-3.8.10-3.el10_1.x86_64 19/22
Installing : gnutls-devel-3.8.10-3.el10_1.x86_64 20/22
Installing : libsecret-devel-0.21.2-8.el10.x86_64 21/22
Installing : golang-github-docker-credential-helpers-devel-0.6.3-13.el10_0.noarch 22/22
Running scriptlet: golang-github-docker-credential-helpers-devel-0.6.3-13.el10_0.noarch 22/22
Installed:
glib2-devel-2.80.4-10.el10_1.13.x86_64 gnutls-c++-3.8.10-3.el10_1.x86_64
gnutls-dane-3.8.10-3.el10_1.x86_64 gnutls-devel-3.8.10-3.el10_1.x86_64
go-filesystem-3.6.0-8.el10_1.x86_64 golang-github-docker-credential-helpers-devel-0.6.3-13.el10_0.noarch
libblkid-devel-2.40.2-16.el10_1.x86_64 libffi-devel-3.4.4-10.el10.x86_64
libidn2-devel-2.3.7-3.el10.x86_64 libmount-devel-2.40.2-16.el10_1.x86_64
libsecret-devel-0.21.2-8.el10.x86_64 libselinux-devel-3.9-1.el10.x86_64
libsepol-devel-3.9-1.el10.x86_64 libtasn1-devel-4.20.0-1.el10.x86_64
libtasn1-tools-4.20.0-1.el10.x86_64 p11-kit-devel-0.25.5-7.el10.x86_64
pcre2-devel-10.44-1.0.1.el10.3.x86_64 pcre2-utf16-10.44-1.0.1.el10.3.x86_64
pcre2-utf32-10.44-1.0.1.el10.3.x86_64 sysprof-capture-devel-47.2-1.el10.x86_64
unbound-anchor-1.20.0-18.el10_1.x86_64 unbound-libs-1.20.0-18.el10_1.x86_64
Complete!
[root@serverprod01 .docker]# cd /tmp
[root@serverprod01 tmp]# curl -LO https://github.com/docker/docker-credential-helpers/releases/download/v0.9.3/docker-credential-pass-v0.9.3.linux-amd64
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
100 2068k 100 2068k 0 0 13.5M 0 --:--:-- --:--:-- --:--:-- 13.5M
[root@serverprod01 tmp]# ls -lat
total 320436
-rw-r--r--. 1 root root 2117784 May 17 04:14 docker-credential-pass-v0.9.3.linux-amd64
drwxrwxrwt. 15 root root 4096 May 17 04:14 .
drwxr-xr-x. 2 root root 19 May 17 00:28 hsperfdata_root
drwxr-xr-x. 2 root root 64 May 17 00:07 META-INF
....
agent
drwxr-xr-x. 6 root root 4096 May 7 12:18 apex
Agregamos permisos al paquete descargado y lo movemos a nuestra ruta de binarios ejecutables.
[root@serverprod01 tmp]# chmod +x docker-credential-pass-v0.9.3.linux-amd64
[root@serverprod01 tmp]# mv docker-credential-pass-v0.9.3.linux-amd64 /usr/local/bin/docker-credential-pass
[root@serverprod01 tmp]# uname -a
Linux serverprod01 6.12.0-202.76.4.2.el10uek.x86_64 #1 SMP PREEMPT_DYNAMIC Wed May 13 01:27:49 PDT 2026 x86_64 GNU/Linux
[root@serverprod01 tmp]# uname -m
x86_64
[root@serverprod01 tmp]# echo $PATH
/opt/sqlcl/bin:/root/.local/bin:/root/bin:/usr/share/Modules/bin:/sbin:/bin:/usr/sbin:/usr/bin
[root@serverprod01 tmp]# ln -s /usr/local/bin/docker-credential-pass /usr/bin/docker-credential-pass
[root@serverprod01 tmp]# which docker-credential-pass
/bin/docker-credential-pass
[root@serverprod01 tmp]# docker-credential-pass version
docker-credential-pass (github.com/docker/docker-credential-helpers) v0.9.3
Debes escoger como opciones:
- RSA and RSA
- 4096 para los bits de largo
- Que la llave no expire
RSA cryptosystem es uno de los algoritmos de criptografía asimétrica más importantes y utilizados desde 1977, que fue creada. La idea fundamental con RSA es que:
- cualquiera puede tener tu llave pública,
- pero solo vos poseés la llave privada.
Entonces:
- Public Key → cifra
- Private Key → descifra
El tamaño estandar de las llaves es 2048 y el valor de facto que te propone la configuración es 3072, pero nosotros estamos utilizando 4096 para que sea más seguro.
[root@serverprod01 tmp]# gpg --full-generate-key
Ahora nos volvemos a logear.
Ahora estamos recibiendo el mensaje de logeo satisfactorio y no tenemos el mensaje de "Advertencia" inicial.gpg (GnuPG) 2.4.5; Copyright (C) 2024 g10 Code GmbH
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Please select what kind of key you want:
(1) RSA and RSA (default)
(2) DSA and Elgamal
(3) DSA (sign only)
(4) RSA (sign only)
(14) Existing key from card
Your selection? 1
RSA keys may be between 1024 and 4096 bits long.
What keysize do you want? (3072) 4096
Requested keysize is 4096 bits
Please specify how long the key should be valid.
0 = key does not expire
<n> = key expires in n days
<n>w = key expires in n weeks
<n>m = key expires in n months
<n>y = key expires in n years
Key is valid for? (0)
Key does not expire at all
Is this correct? (y/N) y
Cuando indiques que la información es correcta, te va a aparecer una ventana en donde debes ingresar una contraseña para proteger la boveda de claves.
Listo ahora te brinda la información de lo que contiene la boveda de claves creada.
GnuPG needs to construct a user ID to identify your key.
Real name: Docker Registry Credentials
Email address: ronald.vargas.quesada@gmail.com
Comment: Administrador
You selected this USER-ID:
"Docker Registry Credentials (Administrador) <ronald.vargas.quesada@gmail.com>"
Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? O
We need to generate a lot of random bytes. It is a good idea to perform
some other action (type on the keyboard, move the mouse, utilize the
disks) during the prime generation; this gives the random number
generator a better chance to gain enough entropy.
We need to generate a lot of random bytes. It is a good idea to perform
some other action (type on the keyboard, move the mouse, utilize the
disks) during the prime generation; this gives the random number
generator a better chance to gain enough entropy.
gpg: revocation certificate stored as '/root/.gnupg/openpgp-revocs.d/0569B431B2BDE499CA5F8D4B957AA628DEC7383D.rev'
public and secret key created and signed.
pub rsa4096 2026-05-17 [SC]
0569B431B2BDE499CA5F8D4B957AA628DEC7383D
uid Docker Registry Credentials (Administrador) <ronald.vargas.quesada@gmail.com>
sub rsa4096 2026-05-17 [E]
En la última línea debe existir esa "E" entre los paréntesis cuadrados, esto indica que las llaves que se almacenen en la bodega estarán encriptadas.
Ahora podemos validar la boveda creada, listando las llaves disponibles.
[root@serverprod01 tmp]# gpg --list-secret-keys --keyid-format LONG
gpg: checking the trustdb
gpg: marginals needed: 3 completes needed: 1 trust model: pgp
gpg: depth: 0 valid: 2 signed: 0 trust: 0-, 0q, 0n, 0m, 0f, 2u
/root/.gnupg/pubring.kbx
------------------------
sec rsa4096/957AA628DEC7383D 2026-05-17 [SC]
0569B431B2BDE499CA5F8D4B957AA628DEC7383D
uid [ultimate] Docker Registry Credentials (Administrador) <ronald.vargas.quesada@gmail.com>
ssb rsa4096/0B4F776423A261D3 2026-05-17 [E]
En la información anterior en la sección de "sec" el valor que esta despues de rsa4096
[root@serverprod01 tmp]# pass init 957AA628DEC7383D
mkdir: created directory '/root/.password-store/'
Password store initialized for 957AA628DEC7383D
Hacemos una prueba de encriptación.
[root@serverprod01 tmp]# echo "test" | gpg --encrypt --armor -r 957AA628DEC7383D
-----BEGIN PGP MESSAGE-----
hQIMAwtPd2QjomHTARAAl7u47hWj4GvGMKrt0uAFRQK6yILRfXjNN+usbwmkHBTg
d2g7AmT+tItZI6I/i/4mZ5EGyebHZ36ErgpNAFbZRuPihFeKLrxFzbsKg3Qmk2f3
lVlPrQGEuYiaagu+wY8M7jBBWeEd/HWOKPmHwzlVSTiFXv+gygRWa8jrkp1r8egG
pnmzSJYcPIufHmeIDO7VrI2RGdf3a1KQbhX9MwG8kcWOrpAkmXVNVzTtXB8X5IZ2
9qhgo595YbaAlDltYDQgDKgc2rQv06Ya5OakqBeeMGcE9KOGpPAVm5nbmqw9g4IS
JIhbrrxfXhNBDYj1IpkiGp+i7Urmz9FuvOdiLd5vJdaCwStgL3cgr5K0f0InaxCh
pPUVFMS163ctoUslkOLbSt8eYyrMAbACgnYNjypdmDWq3MpZIliKoscoosZi7aGq
S2Vl1brFQT9eywEwnrNjcZy/7MZBltShBeZoDo+zlKgfbDbFu1dT/AB7juk1sc8B
ttSvMQcxuQitVF1GDBPyt7jvQ7WncKDMYrqhHlw1LOUwcRWvmXqxDesAaxZiFn9x
maeLlTTJ2lzCza/W0U9LNvnD2r+69ED7ieEe/9MFCnyk4dmYe8pVgWiHHxWoYTg6
D8MnjgycDvkTQ1TP8TX92jbpmq/6ZiAo4MyZHGx/QJaJdGFe22/FWrsDu/gSr6nU
SgEJAhDCTUX7hd9KyvVOrfcTob2bilsv3u37d1eu5uSG5/vNDIIWuiDenJ5f9Hbu
4E5rpq19xBj+RwrkgRjaXGhioYB2j7e4pwVI
=+/2N
-----END PGP MESSAGE-----
Ahora necesitamos hacer unos ajustes en el archivo en donde guardabamos inicialmente las claves del Oracle Container Registry, para que utilice el nuevo repositorio y no guarde ahí la Token en texto plano.
[root@serverprod01 tmp]# cd
[root@serverprod01 ~]# cd .docker/
[root@serverprod01 .docker]# cat config.json
{
"credsStore": "pass"
}
Procedemos a deslogearnos del repositorio.
[root@serverprod01 .docker]# docker logout container-registry.oracle.com
Removing login credentials for container-registry.oracle.com
[root@serverprod01 .docker]# docker login container-registry.oracle.com
Username: ronald.vargas.quesada@gmail.com
Password:
Login Succeeded
Puedes validar ahora el archivo en donde se encuentraba el texto plano del token y verás que se mantiene el cambio que realizamos.
[root@serverprod01 .docker]# ls -lat
total 8
drwx------. 2 root root 25 May 17 17:04 .
-rw-------. 1 root root 79 May 17 17:04 config.json
dr-xr-x---. 11 root root 4096 May 17 17:02 ..
[root@serverprod01 .docker]# cat config.json
{
"auths": {
"container-registry.oracle.com": {}
},
"credsStore": "pass"
}
Veamos que guarda en la ruta de creación de la boveda de seguridad encriptada.
[root@serverprod01 .docker]# ls -lat /root/.password-store
total 8
drwx------. 3 root root 54 May 17 17:04 .
drwx------. 3 root root 54 May 17 17:04 docker-credential-helpers
dr-xr-x---. 11 root root 4096 May 17 17:02 ..
-rw-------. 1 root root 17 May 17 17:02 .gpg-id
[root@serverprod01 .docker]# ls -lat /root/.password-store/docker-credential-helpers
total 0
drwx------. 2 root root 49 May 17 17:04 'Y29udGFpbmVyLXJlZ2lzdHJ5Lm9yYWNsZS5jb20='
drwx------. 3 root root 54 May 17 17:04 .
drwx------. 3 root root 54 May 17 17:04 ..
[root@serverprod01 docker-credential-helpers]# ls -lat
total 0
drwx------. 2 root root 49 May 17 17:04 'Y29udGFpbmVyLXJlZ2lzdHJ5Lm9yYWNsZS5jb20='
drwx------. 3 root root 54 May 17 17:04 .
drwx------. 3 root root 54 May 17 17:04 ..
[root@serverprod01 docker-credential-helpers]# cd *Y*
[root@serverprod01 Y29udGFpbmVyLXJlZ2lzdHJ5Lm9yYWNsZS5jb20=]# pwd
/root/.password-store/docker-credential-helpers/Y29udGFpbmVyLXJlZ2lzdHJ5Lm9yYWNsZS5jb20=
[root@serverprod01 Y29udGFpbmVyLXJlZ2lzdHJ5Lm9yYWNsZS5jb20=]# ls -lat
total 4
drwx------. 2 root root 49 May 17 17:04 .
-rw-------. 1 root root 610 May 17 17:04 ronald.vargas.quesada@gmail.com.gpg
drwx------. 3 root root 54 May 17 17:04 ..
[root@serverprod01 Y29udGFpbmVyLXJlZ2lzdHJ5Lm9yYWNsZS5jb20=]# cat ronald.vargas.quesada@gmail.com.gpg
▒
Owd#▒a▒▒`▒".|▒լf'▒▒▒2▒▒▒1▒▒o▒▒▒▒
▒▒$0▒▒▒▒N[▒O▒6 {Dؾ▒▒▒5▒N▒▒.▒▒▒1▒▒B)▒▒▒▒▒\▒4▒▒▒▒▒▒*)؉I▒▒▒▒7▒▒lj▒▒▒▒i"▒qLj▒▒r▒k▒j▒/5▒UC▒▒x▒▒e▒ ▒Q▒▒▒K▒y▒rÓ▒▒H?
▒▒▒(▒▒▒▒J▒▒'▒▒▒EVh▒▒ ▒▒▒G▒z▒%▒I▒HW"▒▒`&▒▒E▒
▒P!/Mh▒w▒8(I=߀▒g▒2?1f▒▒F.a▒▒▒▒▒P7▒`▒▒▒k▒X▒'▒y▒▒▒v▒▒f▒L7n▒▒l7▒▒▒▒▒^▒▒▒Zc▒EhG▒H▒TO▒ȏO▒▒▒ej
x▒▒an▒j▒▒w▒d-▒▒▒▒ g ▒t*5▒>▒▒▒▒▒u%▒4▒▒t▒-y▒A$▒▒▒/#v▒▒▒▒▒s
▒▒=lM▒I\▒▒g&;▒▒▒K|hi▒▒▒*▒=▒▒+▒▒▒i▒▒
▒▒k▒▒▒:▒▒~FW▒▒▒▒&▒▒T▒
▒▒▒▒hd▒▒▒▒qm▒▒'▒▒▒E▒▒Bv}ꄽ▒~▒U▒▒,▒▒Q 8\~ ▒▒5▒▒▒▒i&MÕ▒mv▒▒~B>▒▒▒5▒▒▒▒b[!I▒3▒h▒N6▒▒O▒▒+▒,▒▒xV▒\L
{d[root@serverprod01 Y29udGFpbmVyLXJlZ2lzdHJ5Lm9yYWNsZS5jb20=]# PuTTYPuTTY
Como pueden observar, ya tenemos protegida esta información y la exposición de seguridad, ha sido resuelta.
Recuerden que siempre es de vital importancia cuando implementan cualquier funcionalidad, validar que no se creen brechas se seguridad, por el mal empleo o configuración de algún paquete o funcionalidad.
No hay comentarios:
Publicar un comentario
Te agradezco tus comentarios. Te esperamos de vuelta.