« FAQ:Crypt FichiersMotDePasse » : différence entre les versions
| Ligne 26 : | Ligne 26 : | ||
Visualisation du contenu du fichier stocké en clair : | Visualisation du contenu du fichier stocké en clair : | ||
<pre> | <pre> | ||
mssql@srvdbsqware04:/home/mssql ( | mssql@srvdbsqware04:/home/mssql (NoSID) $ | ||
# cat .passwd_mssql | # cat .passwd_mssql | ||
DEFAULT;dba_dbs;def@ult_passworde | DEFAULT;dba_dbs;def@ult_passworde | ||
| Ligne 37 : | Ligne 37 : | ||
Vérification que la connexion se fait bien, si la connexion ne fonctionne pas avec le fichiers de mot de passe en clair cela ne fonctionnera pas avec les fichiers chiffrés. | Vérification que la connexion se fait bien, si la connexion ne fonctionne pas avec le fichiers de mot de passe en clair cela ne fonctionnera pas avec les fichiers chiffrés. | ||
<pre> | <pre> | ||
mssql@srvdbsqware04:/home/mssql (NoSID) $ | |||
# e SRVDBMSQL01 | |||
Sourcing .profile for SRVDBMSQL01 ... | |||
mssql@srvdbsqware04:/home/mssql (SRVDBMSQL01) $ | mssql@srvdbsqware04:/home/mssql (SRVDBMSQL01) $ | ||
# tis | # tis | ||
| Ligne 51 : | Ligne 56 : | ||
On commence par renommer le fichier avant de le sauvegarder et, ou de laisser le nom libre pour le fichier chiffré. | On commence par renommer le fichier avant de le sauvegarder et, ou de laisser le nom libre pour le fichier chiffré. | ||
<pre> | <pre> | ||
mssql@srvdbsqware04:/home/mssql ( | mssql@srvdbsqware04:/home/mssql (SRVDBMSQL01) $ | ||
# mv .passwd_mssql /backups/archives/.passwd_mssql_vmsqwarebox_20251007 | # mv .passwd_mssql /backups/archives/.passwd_mssql_vmsqwarebox_20251007 | ||
</pre> | </pre> | ||
<br> | <br> | ||
Ensuite il faut recréer le fichier .passwd_mssql mais cette fois si chiffré : | |||
<pre> | <pre> | ||
sqwmsq_Crypt.ksh | mssql@srvdbsqware04:/home/mssql (SRVDBMSQL01) $ | ||
# too | |||
total 68 | |||
drwxr-x--- 2 dbsqware dba 4096 Nov 9 19:53 . | |||
drwxr-x--- 15 dbsqware dba 187 Nov 9 19:53 .. | |||
-rwxr-x--- 1 dbsqware dba 6136 Nov 9 19:52 sqwmsq_AlterDatabaseModifyLogGrowth.ksh | |||
-rwxr-x--- 1 dbsqware dba 5871 Nov 9 19:52 sqwmsq_AlterDatabaseRecoverySimple.ksh | |||
-rwxr-x--- 1 dbsqware dba 6025 Nov 9 19:52 sqwmsq_AlterDatabaseShrinkLogs.ksh | |||
-rwxr-x--- 1 dbsqware dba 6017 Nov 9 19:52 sqwmsq_CreateAuditLogon.ksh | |||
lrwxrwxrwx 1 dbsqware dba 36 Jul 10 13:27 sqwmsq_Crypt.ksh -> ../../generic/tools/sqwgen_Crypt.ksh | |||
-rwxr-x--- 1 dbsqware dba 4895 Nov 9 19:52 sqwmsq_GenerateCreateInstance.ksh | |||
lrwxrwxrwx 1 dbsqware dba 44 Jul 10 13:27 sqwmsq_KillAllChilds.ksh -> ../../generic/tools/sqwgen_KillAllChilds.ksh | |||
lrwxrwxrwx 1 dbsqware dba 51 Jul 10 13:27 sqwmsq_ListAsyncFilesGlobal.ksh -> ../../generic/tools/sqwgen_ListAsyncFilesGlobal.ksh | |||
lrwxrwxrwx 1 dbsqware dba 45 Jul 10 13:27 sqwmsq_ListAsyncFiles.ksh -> ../../generic/tools/sqwgen_ListAsyncFiles.ksh | |||
lrwxrwxrwx 1 dbsqware dba 39 Jul 10 13:27 sqwmsq_MvToBash.ksh -> ../../generic/tools/sqwgen_MvToBash.ksh | |||
-rwxr-x--- 1 dbsqware dba 5589 Nov 9 19:52 sqwmsq_SetEnv.ksh | |||
-rwxr-x--- 1 dbsqware dba 1129 Nov 9 19:52 sqwmsq_Sqlcmd.ksh | |||
-rwxr-x--- 1 dbsqware dba 5289 Nov 9 19:52 sqwmsq_TestInstConnection.ksh | |||
lrwxrwxrwx 1 dbsqware dba 40 Jul 10 13:27 sqwmsq_TestMySQL.ksh -> ../../generic/tools/sqwgen_TestMySQL.ksh | |||
lrwxrwxrwx 1 dbsqware dba 43 Jul 10 13:27 sqwmsq_TestSendmail.ksh -> ../../generic/tools/sqwgen_TestSendmail.ksh | |||
-rwxr-x--- 1 dbsqware dba 1506 Nov 9 19:52 sqwmsq_Tis.ksh | |||
lrwxrwxrwx 1 dbsqware dba 38 Jul 10 13:27 sqwmsq_Uncrypt.ksh -> ../../generic/tools/sqwgen_Uncrypt.ksh | |||
mssql@srvdbsqware04:/home/mssql/SQWareProduction/mssql/tools (SRVDBMSQL01) $ | |||
# ./sqwmsq_Crypt.ksh -h | |||
Sourcing sqwmsq_Global.lib v2025.10.04 SQWareProduction for MsSql (dbSQWare) ... | |||
Usage: sqwmsq_Crypt.ksh -ClearFile ClearFileName -EncryptedFile EncryptedFileName [-h] [+ options] | |||
DESCRIPTION | |||
sqwmsq_Crypt.ksh crypt file with openssl | |||
SUPPORT | |||
All rdbms type and version | |||
PARAMETERS | |||
-ClearFile file: File that contain clear datas. | |||
-EncryptedFile file: Dest file for encryted datas. | |||
OPTIONS | |||
-h : Display the full usage. | |||
-s : Display samples of usage. | |||
mssql@srvdbsqware04:/home/mssql/SQWareProduction/mssql/tools (SRVDBMSQL01) $ | |||
# ./sqwmsq_Crypt.ksh -ClearFile /backups/archives/.passwd_mssql_vmsqwarebox_20251007 -EncryptedFile ~/.passwd_mssql | |||
Sourcing sqwmsq_Global.lib v2025.10.04 SQWareProduction for MsSql (dbSQWare) ... | |||
openssl enc -e -aes-256-cbc -pbkdf2 -iter 100000 -salt -in /backups/archives/.passwd_mssql_vmsqwarebox_20251007 -out /home/mssql/.passwd_mssql -pass file:/home/mssql/sqwConfig/.ssl | |||
mssql@srvdbsqware04:/home/mssql/SQWareProduction/mssql/tools (SRVDBMSQL01) $ | |||
</pre> | </pre> | ||
Tentative de visualisation du contenu du nouveau fichier chiffré : | Tentative de visualisation du contenu du nouveau fichier chiffré : | ||
<pre> | <pre> | ||
mssql@srvdbsqware04:/home/mssql ( | mssql@srvdbsqware04:/home/mssql (SRVDBMSQL01) $ | ||
# cat .passwd_mssql | # cat .passwd_mssql | ||
▒▒w▒▒7J▒▒▒e)▒▒▒▒~/ZF▒}▒▒▒:▒Y▒▒h3/▒▒▒[▒L7▒Q1ؙXQ%)ÿQ▒_▒#=¤Գ▒▒▒▒▒A▒;<▒▒R▒شRR▒▒bط▒G▒▒▒?▒'▒8h▒U,▒▒▒!r5 | ▒▒w▒▒7J▒▒▒e)▒▒▒▒~/ZF▒}▒▒▒:▒Y▒▒h3/▒▒▒[▒L7▒Q1ؙXQ%)ÿQ▒_▒#=¤Գ▒▒▒▒▒A▒;<▒▒R▒شRR▒▒bط▒G▒▒▒?▒'▒8h▒U,▒▒▒!r5 | ||
Version du 10 novembre 2025 à 09:41
Généralités
Limites de cette section
Cette section vous propose un chiffrement pour les fichiers de mots de passe qui peuvent être nécessaires au foncitonnement de certains scripts de dbSQWare.
Cette section est réservée à des DBA et Admin qui maîtrisent bien la partie authentification au SGBD.
Cette section se base sur une installation du point central sous Rocky Linux 9.x 64bits sur une VM (2 vCPU et 4 Go de RAM) avec 100 Go de disque (Permet de tenir 2 ans d'historique pour une centaine d'instances). Vous pouvez l'avoir installer sur un autre type de Linux/Unix, Il peut arriver que vous ayez besoin de paquets ou commandes différentes liées à ce choix.
Principes de fonctionnement
Technologies utilisées
AES-256 avec OpenSSL et du "salage"
Mise en place
Ici, nous prendrons en exemple le fichier dédié aux connexions MS SQL, .passwd_mssql, se trouvant à la racine du home de l'utilisateur mssql sur la machine vmsqwarebox.
Ce mode opératoire peut être reproduit pour tous les utilisateurs de la vmsqwarebox ou vos utilisateurs portant les instances sur les serveurs de base de données, oracle, postgres, mysql, ...
Visualisation du contenu du fichier stocké en clair :
mssql@srvdbsqware04:/home/mssql (NoSID) $ # cat .passwd_mssql DEFAULT;dba_dbs;def@ult_passworde SRVDBMSQL01;msq_dba;def@ult_passworde SRVDBMSQ02;DBSQWARE\UserFreeTds;def@ult_passworde SRVDBMSQ03;DBSQWARE\UserFreeTds;def@ult_passworde SRVDBMSQ06;DEV-ENV\svc-mssql;def@ult_passworde
Vérification que la connexion se fait bien, si la connexion ne fonctionne pas avec le fichiers de mot de passe en clair cela ne fonctionnera pas avec les fichiers chiffrés.
mssql@srvdbsqware04:/home/mssql (NoSID) $ # e SRVDBMSQL01 Sourcing .profile for SRVDBMSQL01 ... mssql@srvdbsqware04:/home/mssql (SRVDBMSQL01) $ # tis Sourcing .profile for SRVDBMSQL01 ... Connection to instance SRVDBMSQL01 : login msq_dba ... locale is "en_US.UTF-8" locale charset is "UTF-8" using default charset "UTF-8" 1>
On commence par renommer le fichier avant de le sauvegarder et, ou de laisser le nom libre pour le fichier chiffré.
mssql@srvdbsqware04:/home/mssql (SRVDBMSQL01) $ # mv .passwd_mssql /backups/archives/.passwd_mssql_vmsqwarebox_20251007
Ensuite il faut recréer le fichier .passwd_mssql mais cette fois si chiffré :
mssql@srvdbsqware04:/home/mssql (SRVDBMSQL01) $
# too
total 68
drwxr-x--- 2 dbsqware dba 4096 Nov 9 19:53 .
drwxr-x--- 15 dbsqware dba 187 Nov 9 19:53 ..
-rwxr-x--- 1 dbsqware dba 6136 Nov 9 19:52 sqwmsq_AlterDatabaseModifyLogGrowth.ksh
-rwxr-x--- 1 dbsqware dba 5871 Nov 9 19:52 sqwmsq_AlterDatabaseRecoverySimple.ksh
-rwxr-x--- 1 dbsqware dba 6025 Nov 9 19:52 sqwmsq_AlterDatabaseShrinkLogs.ksh
-rwxr-x--- 1 dbsqware dba 6017 Nov 9 19:52 sqwmsq_CreateAuditLogon.ksh
lrwxrwxrwx 1 dbsqware dba 36 Jul 10 13:27 sqwmsq_Crypt.ksh -> ../../generic/tools/sqwgen_Crypt.ksh
-rwxr-x--- 1 dbsqware dba 4895 Nov 9 19:52 sqwmsq_GenerateCreateInstance.ksh
lrwxrwxrwx 1 dbsqware dba 44 Jul 10 13:27 sqwmsq_KillAllChilds.ksh -> ../../generic/tools/sqwgen_KillAllChilds.ksh
lrwxrwxrwx 1 dbsqware dba 51 Jul 10 13:27 sqwmsq_ListAsyncFilesGlobal.ksh -> ../../generic/tools/sqwgen_ListAsyncFilesGlobal.ksh
lrwxrwxrwx 1 dbsqware dba 45 Jul 10 13:27 sqwmsq_ListAsyncFiles.ksh -> ../../generic/tools/sqwgen_ListAsyncFiles.ksh
lrwxrwxrwx 1 dbsqware dba 39 Jul 10 13:27 sqwmsq_MvToBash.ksh -> ../../generic/tools/sqwgen_MvToBash.ksh
-rwxr-x--- 1 dbsqware dba 5589 Nov 9 19:52 sqwmsq_SetEnv.ksh
-rwxr-x--- 1 dbsqware dba 1129 Nov 9 19:52 sqwmsq_Sqlcmd.ksh
-rwxr-x--- 1 dbsqware dba 5289 Nov 9 19:52 sqwmsq_TestInstConnection.ksh
lrwxrwxrwx 1 dbsqware dba 40 Jul 10 13:27 sqwmsq_TestMySQL.ksh -> ../../generic/tools/sqwgen_TestMySQL.ksh
lrwxrwxrwx 1 dbsqware dba 43 Jul 10 13:27 sqwmsq_TestSendmail.ksh -> ../../generic/tools/sqwgen_TestSendmail.ksh
-rwxr-x--- 1 dbsqware dba 1506 Nov 9 19:52 sqwmsq_Tis.ksh
lrwxrwxrwx 1 dbsqware dba 38 Jul 10 13:27 sqwmsq_Uncrypt.ksh -> ../../generic/tools/sqwgen_Uncrypt.ksh
mssql@srvdbsqware04:/home/mssql/SQWareProduction/mssql/tools (SRVDBMSQL01) $
# ./sqwmsq_Crypt.ksh -h
Sourcing sqwmsq_Global.lib v2025.10.04 SQWareProduction for MsSql (dbSQWare) ...
Usage: sqwmsq_Crypt.ksh -ClearFile ClearFileName -EncryptedFile EncryptedFileName [-h] [+ options]
DESCRIPTION
sqwmsq_Crypt.ksh crypt file with openssl
SUPPORT
All rdbms type and version
PARAMETERS
-ClearFile file: File that contain clear datas.
-EncryptedFile file: Dest file for encryted datas.
OPTIONS
-h : Display the full usage.
-s : Display samples of usage.
mssql@srvdbsqware04:/home/mssql/SQWareProduction/mssql/tools (SRVDBMSQL01) $
# ./sqwmsq_Crypt.ksh -ClearFile /backups/archives/.passwd_mssql_vmsqwarebox_20251007 -EncryptedFile ~/.passwd_mssql
Sourcing sqwmsq_Global.lib v2025.10.04 SQWareProduction for MsSql (dbSQWare) ...
openssl enc -e -aes-256-cbc -pbkdf2 -iter 100000 -salt -in /backups/archives/.passwd_mssql_vmsqwarebox_20251007 -out /home/mssql/.passwd_mssql -pass file:/home/mssql/sqwConfig/.ssl
mssql@srvdbsqware04:/home/mssql/SQWareProduction/mssql/tools (SRVDBMSQL01) $
Tentative de visualisation du contenu du nouveau fichier chiffré :
mssql@srvdbsqware04:/home/mssql (SRVDBMSQL01) $ # cat .passwd_mssql ▒▒w▒▒7J▒▒▒e)▒▒▒▒~/ZF▒}▒▒▒:▒Y▒▒h3/▒▒▒[▒L7▒Q1ؙXQ%)ÿQ▒_▒#=¤Գ▒▒▒▒▒A▒;<▒▒R▒شRR▒▒bط▒G▒▒▒?▒'▒8h▒U,▒▒▒!r5 mssql@srvdbsqware04:/home/mssql (NoSID) $ #
Vérification que la connexion se fait bien avec le fichier chiffré.
mssql@srvdbsqware04:/home/mssql/SQWareProduction/mssql/tools (SRVDBMSQL01) $ # tis Sourcing .profile for SRVDBMSQL01 ... Case of encrypted file (tools/sqwmsq_SetEnv.ksh) ... Connection to instance SRVDBMSQL01 : login msq_dba ... locale is "en_US.UTF-8" locale charset is "UTF-8" using default charset "UTF-8" 1>
