Si tengo el archivo real y un shell Bash en Mac o Linux, ¿cómo puedo consultar el archivo cert cuando caducará? No es un sitio web, sino el archivo de certificado en sí mismo, suponiendo que tenga los archivos csr, key, pem y chain.
327
-startdate
y-enddate
incorporadas en lax509
utilidad. Te salvarán elgrep
.Si solo desea saber si el certificado ha expirado (o lo hará dentro de los próximos N segundos), la
-checkend <seconds>
opciónopenssl x509
le indicará:Esto ahorra tener que hacer comparaciones de fecha / hora usted mismo.
openssl
devolverá un código de salida de0
(cero) si el certificado no ha expirado y no lo hará durante los siguientes 86400 segundos, en el ejemplo anterior. Si el certificado habrá expirado o ya lo ha hecho, o algún otro error como un archivo no válido / inexistente, el código de retorno es1
.(Por supuesto, supone que la hora / fecha está configurada correctamente)
fuente
-noout
opción de ver un mensaje útil utilizando un solo comando sin lógica adicional. Por ejemplo,openssl x509 -checkend 0 -in file.pem
dará el resultado "El certificado caducará" o "El certificado no caducará", indicando si el certificado caducará en cero segundos.Aquí está mi línea de comando bash para enumerar varios certificados en orden de vencimiento, el último que expiró primero.
Salida de muestra:
fuente
0 7 * * 1 /path/to/cert.sh | mail -s "certbot" [email protected]
Aquí hay una función bash que verifica todos sus servidores, suponiendo que esté usando DNS round-robin. Tenga en cuenta que esto requiere una fecha GNU y no funcionará en Mac OS
Ejemplo de salida:
fuente
expiry_date
valor deberá tener el nombre de la zona horaria eliminado del final. Agregue un adicionalcut
al final de la tubería para hacer esto:| cut -d ' ' -f 1-4
Una línea verificando verdadero / falso si el certificado de dominio expirará en algún momento más tarde (por ejemplo, 15 días)
fuente
Para MAC OSX (El Capitan) Esta modificación del ejemplo de Nicholas me funcionó.
Salida de muestra:
A macOS no le gustaban las banderas
--date=
o--iso-8601
en mi sistema.fuente
.cer
tuvieras certificados que acabas de hacer y descargar del sitio Apple Dev?Igual que la respuesta aceptada, pero tenga en cuenta que funciona incluso con el
.crt
archivo y no solo con el.pem
archivo, por si acaso no puede encontrar.pem
la ubicación del archivo.Resultado:
fuente
Si (por alguna razón) desea usar una aplicación GUI en Linux, use
gcr-viewer
(en la mayoría de las distribuciones, el paquetegcr
lo instala (de lo contrario, en el paquetegcr-viewer
))fuente