Avamar: Los respaldos de clientes de SQL fallan aleatoriamente con el error sslcontext::loadCert con la seguridad de sesión habilitada
Summary: En las versiones de Avamar anteriores a 19.8, clientes SQL implementados en Microsoft Azure mediante Data Domain Virtual Edition (DDVE), los respaldos pueden fallar aleatoriamente con la seguridad de sesión habilitada. Las fallas se producen debido a errores de validación de clave privada y certificado SSL causados por una selección incorrecta de la dirección IP cuando el cliente decide elegir la dirección de loopback de IPv6 en lugar de IPv4. ...
Symptoms
Cuando se habilita la seguridad de sesión, los respaldos de clientes de SQL fallan de forma intermitente con errores relacionados con SSL. Dentro del mismo trabajo de respaldo, algunos subprocesos se completan correctamente, mientras que otros fallan.
- La variable
avsqlEn los registros, se muestran los siguientes errores:
2023-01-11 12:02:10.99399 [avsql] uflags::parsefile Printing flags from C:\Program Files\avs\var\avsql.cmd: .cmd flag [1]: --debug=true .cmd flag [2]: --verbose=1 .cmd flag [3]: --x14=32768 2023-01-11 12:02:10.99399 [avsql] sock::libinit(enc="tls", encrypt_strength="high", verify=0) socktype="sock_ssl" 2023-01-11 12:02:10.99399 [avsql] sockimpl::libinit(usessl=1, verify=0, encrypt_strength="high", pemdir="C:\Program Files\avs\etc") 2023-01-11 12:02:10.99399 [avsql] sslcontext::libinit 2023-01-11 12:02:10.99399 [avsql] sslcontext::libinit verifypeer=0, encrypt_strength="high", global_sslctx=0000000001950D90, global_sslctx->ctx=000000000119B630 2023-01-11 12:02:10.99399 [avsql] sslcontext::libinit load cert: C:\Program Files\avs\etc\cert.pem 2023-01-11 12:02:10.99399 [avsql] sslcontext::libinit load key: C:\Program Files\avs\etc\key.pem 2023-01-11 12:02:10.99399 [avsql] ERROR: <0001> sslcontext::loadCert certificate/key not found or invalid cert=C:\Program Files\avs\etc\cert.pem key=C:\Program Files\avs\etc\key.pem 2023-01-11 12:02:10 avsql Error <5664>: SSL certificate/key not found or invalid. 2023-01-11 12:02:10 avsql Error <16154>: Unable to initialize socket library
- En la misma orden de trabajo, algunos
avtarLos subprocesos se completan correctamente, mientras que otros fallan con errores de certificado.
Exitoso avtar Ejemplo de hilo:
2023-01-11 12:02:11 avtar Info <5008>: Logging to C:\Program Files\avs\var\SCH-60-G-TLOG-SQL-60-1673449200555#2-3006-SQL.avtar.log 2023-01-11 12:02:11 avtar Info <5174>: - Reading C:\Program Files\avs\var\avtar.cmd 2023-01-11 12:02:11 avtar Info <5551>: Command Line: avtar --ddr-auth-enabled=false --ddr-encrypt-strength=none --ddr-auth-mode=3 --case_sensitive=false --max-streams=1 --backup-type=incremental --cacheprefix=avsql_t1 --ctlcallport=64502 --ctlinterface=3006-SCH-60-G-TLOG-SQL-60-1673449200555#2 --check-stdin-path=false --logfile="C:\Program Files\avs\var\SCH-60-G-TLOG-SQL-60-1673449200555#2-3006-SQL.avtar.log" --vardir="C:\Program Files\avs\var" --bindir="C:\Program Files\avs\bin" --sysdir="C:\Program Files\avs\etc" --account=/Azure/AZ-Prod/cldsrv1088.arcorgroup.com --id=backuponly --password=**************** --server=cldlnx0063.arcorgroup.com --ctlusessl=true 2023-01-11 12:02:11 avtar Info <7977>: Starting at 2023-01-11 12:02:11 Argentina Standard Time [avtar Oct 16 2020 15:51:11 19.4.100-116 Windows Server 2019 Datacenter Server Edition (No Service Pack) 64-bit-AMD64] 2023/01/11-15:02:11.03500 [avtar] <1291> FIPS mode enabled 2023-01-11 12:02:11 avtar Info <10684>: Setting ctl message version to 3 (from 1) 2023-01-11 12:02:11 avtar Info <16136>: Setting ctl max message size to 268435456 2023-01-11 12:02:11 avtar Info <6767>: Successfully connected to 127.0.0.1:64502
avtar Ejemplo de hilo:
2023-01-11 12:02:30 avtar Info <5008>: Logging to C:\Program Files\avs\var\SCH-60-G-TLOG-SQL-60-1673449200555#0-3006-SQL.avtar.log 2023-01-11 12:02:30 avtar Info <5174>: - Reading C:\Program Files\avs\var\avtar.cmd 2023-01-11 12:02:30 avtar Info <5551>: Command Line: avtar --ddr-auth-enabled=false --ddr-encrypt-strength=none --ddr-auth-mode=3 --case_sensitive=false --max-streams=1 --backup-type=incremental_full --ctlcallport=64502 --ctlinterface=3006-SCH-60-G-TLOG-SQL-60-1673449200555 --check-stdin-path=false --logfile="C:\Program Files\avs\var\SCH-60-G-TLOG-SQL-60-1673449200555#0-3006-SQL.avtar.log" --vardir="C:\Program Files\avs\var" --bindir="C:\Program Files\avs\bin" --sysdir="C:\Program Files\avs\etc" --account=/Azure/AZ-Prod/cldsrv1088.arcorgroup.com --id=backuponly --password=**************** --server=cldlnx0063.arcorgroup.com --ctlusessl=true 2023-01-11 12:02:30 avtar Info <7977>: Starting at 2023-01-11 12:02:30 Argentina Standard Time [avtar Oct 16 2020 15:51:11 19.4.100-116 Windows Server 2019 Datacenter Server Edition (No Service Pack) 64-bit-AMD64] 2023/01/11-15:02:30.86500 [avtar] <1291> FIPS mode enabled 2023/01/11-15:02:30.86500 [avtar] ERROR: <0001> sslcontext::loadCert certificate/key not found or invalid cert=C:\Program Files\avs\etc\cert.pem key=C:\Program Files\avs\etc\key.pem 2023-01-11 12:02:30 avtar Error <5664>: SSL certificate/key not found or invalid. 2023-01-11 12:02:30 avtar FATAL <19035>: Unable to initialize socket library for CTL.
El comportamiento es incoherente y las fallas ocurren aleatoriamente en todos los subprocesos de respaldo.
Cause
Durante escenarios de falla, la clave privada recibida del servidor Avamar no es válida. Como resultado, la función OpenSSL SSL_CTX_use_PrivateKey_file() falla.
El agente de cliente Avamar selecciona la primera dirección de host a la que se puede acceder, que puede ser la dirección de loopback de IPv6 (::1) porque se incluye en la lista de nombres de host. Aunque el cliente envía una dirección IPv6 a la consola de administración (MC), la MC almacena solo la dirección IPv4. Esta falta de coincidencia de direcciones provoca fallas en la validación del certificado SSL.
Resolution
Agregue las siguientes marcas en avagent.cmd en el cliente afectado y reinicie avagent Para evitar este problema:
--ipupdateinterval=43200 (Number of minutes between IP address update) --addr-family=4 (Force to use IPv4) --netbind=10.x.x.x (Force association with this network address rather than OS autoselection)
Descripciones de parámetros:
--ipupdateintervalEspecifica el intervalo (en minutos) para actualizar la dirección IP del cliente.--addr-family=4obliga al cliente a usar IPv4.--netbindvincula el agente a una dirección IPv4 específica en lugar de la selección automática del sistema operativo.
Después de aplicar los cambios, reinicie el agente Avamar y vuelva a ejecutar el respaldo.
Corrección
permanenteEste problema se solucionó en V19.8. Se realizaron cambios en el código para ignorar la dirección de paginación del host local.