chk_url_ips V1R1 · 2026
chk_url_ips — Guide d'utilisationUser Guide
Analyse TLS/SSL sur URL distantes, hostnames et plages IP — résolution DNS, RDAP, rapports HTML/JSONTLS/SSL analysis on remote URLs, hostnames and IP ranges — DNS resolution, RDAP, HTML/JSON reports
SommaireTable of Contents
syntaxe généralegeneral syntax
python chk_url_ips_V1R1.py --hosts HOST [HOST ...] [--ports PORT [PORT ...]] [OPTIONS]
optionsoptions
--hosts HOST [HOST ...]
Hostnames, IPs ou plages IP à analyser (obligatoire)Hostnames, IPs or IP ranges to analyse (mandatory)
--ports PORT [PORT ...]
Ports à analyser (défaut : 443)Ports to analyse (default: 443)
--customer CUSTOMER
Nom client — utilisé dans l'arborescence de sortieCustomer name — used in the output directory tree
--level {0,1,2}
Profondeur de résolution DNS (défaut : 1)DNS resolution depth (default: 1)
--no-html
Désactiver le rapport HTMLDisable HTML report
--json
Activer la sortie JSON (activé par défaut)Enable JSON output (enabled by default)
--save_cert
Sauvegarder les certificats PEM sur disqueSave PEM certificates to disk
--no-console
Désactiver la sortie consoleDisable console output
--domain_expired
Vérifier la date d'expiration du domaine (RDAP)Check domain expiry date (RDAP)
--date_system DATE
Simuler une date système (ISO : 2026-07-04T11:53:29)Override system date (ISO: 2026-07-04T11:53:29)
--internal
Environnement interne — adapte le comportement réseauInternal environment flag — adapts network behaviour
--chkcert_V1R1M1_examples
Afficher des exemples d'utilisationDisplay usage chkcert_V1R1M1_examples
formats d'hôtes supportéssupported host formats
| FormatFormat | ExempleExample | DescriptionDescription |
|---|---|---|
| hostname | paypal.fr | Résolution DNS automatique, multi-IPAutomatic DNS resolution, multi-IP |
| IP | 151.101.3.1 | Connexion directe, SNI depuis reverse DNSDirect connection, SNI from reverse DNS |
| Plage IP | 80.94.184.67-80.94.184.98 | Analyse séquentielle de toute la plageSequential analysis of the entire range |
| CIDR | 192.168.1.0/24 | Expansion automatique du bloc réseauAutomatic network block expansion |
| Multi | bcv.ch paypal.fr 1.2.3.4 | Plusieurs hôtes en un seul appelMultiple hosts in a single call |
résolution DNS — --levelDNS resolution — --level
| Level | ComportementBehaviour | Sortie HTMLHTML output |
|---|---|---|
| 0 | Aucune résolution DNS — certificat TLS brut uniquementNo DNS resolution — raw TLS certificate only | Pas de table DNSNo DNS table |
| 1 | Résolution A/AAAA de chaque DNSName du certificat (défaut)A/AAAA resolution of each certificate DNSName (default) | Table DNS → IPv4DNS → IPv4 table |
| 2 | Level 1 + résolution PTR inverse sur chaque IP → résolution A des hostnames PTRLevel 1 + PTR reverse lookup on each IP → A resolution of PTR hostnames | Table DNS→IP + table IP→noms (cert/PTR)DNS→IP table + IP→names table (cert/PTR) |
Le level 2 interroge le DNS inverse pour chaque IP résolue. Sur de grandes plages IP, cela peut être long. Préférer
--level 1 pour les scans de plages.
Level 2 queries reverse DNS for each resolved IP. On large IP ranges this can be slow. Prefer --level 1 for range scans.
exemples d'usageusage chkcert_V1R1M1_examples
Analyse d'un hostnameHostname analysis
python chk_url_ips_V1R1.py --hosts paypal.fr --ports 443
Analyse multi-hosts, multi-portsMulti-host, multi-port analysis
python chk_url_ips_V1R1.py --hosts bcv.ch paypal.fr cnrs.fr --ports 443 8443
Analyse avec résolution DNS complète (level 2)Analysis with full DNS resolution (level 2)
python chk_url_ips_V1R1.py --hosts paypal.fr --ports 443 --level 2
Analyse d'une IP directeDirect IP analysis
python chk_url_ips_V1R1.py --hosts 151.101.3.1 --ports 443 --customer FASTLY
Analyse d'une plage IPIP range analysis
python chk_url_ips_V1R1.py --hosts 80.94.184.67-80.94.184.98 --customer DEMO --level 1
Sans rapport HTML (JSON seulement)Without HTML report (JSON only)
python chk_url_ips_V1R1.py --hosts bcv.ch --no-html --json
Simulation de dateDate simulation
python chk_url_ips_V1R1.py --hosts paypal.fr --date_system 2027-01-01T00:00:00
Vérification expiration domaineDomain expiry check
python chk_url_ips_V1R1.py --hosts paypal.fr bcv.ch --domain_expired
sorties généréesgenerated outputs
Arborescence de sortieOutput directory tree
chk_url_ips_V1R1/ ← répertoire racine = nom du script (dans le CWD)
html/<CUSTOMER>/<YYYYMMDD>/ — rapports HTML par host/IP
json/<CUSTOMER>/<YYYYMMDD>/ — JSON certificat + RDAP par host/IP
csv/<CUSTOMER>/<YYYYMMDD>/ — export CSV
certificate/ — PEM si --save_cert
tmp/ — fichiers temporaires openssl
log/ — logs d'exécution
html/<CUSTOMER>/<YYYYMMDD>/ — rapports HTML par host/IP
json/<CUSTOMER>/<YYYYMMDD>/ — JSON certificat + RDAP par host/IP
csv/<CUSTOMER>/<YYYYMMDD>/ — export CSV
certificate/ — PEM si --save_cert
tmp/ — fichiers temporaires openssl
log/ — logs d'exécution
| FichierFile | ContenuContent |
|---|---|
*_cert_*.json | Métadonnées certificat + analysis_summary + dns_resolution_tableCertificate metadata + analysis_summary + dns_resolution_table |
*_rdap_*.json | Informations réseau ARIN RDAP (organisation, CIDR, ASN)ARIN RDAP network information (organisation, CIDR, ASN) |
*.html | Rapport autonome dark theme : certificats, résumé, Network Info, table DNSStandalone dark-theme report: certificates, summary, Network Info, DNS table |
*.csv | Export tabulaire pour intégration inventaireTabular export for inventory integration |
network info RDAPnetwork info RDAP
Pour chaque IP analysée,
chk_url_ips interroge le registre ARIN RDAP et enrichit le rapport HTML avec une section Network Info affichant : organisation, handle réseau, type d'allocation, pays, plage CIDR, adresses start/end et version IP.
For each analysed IP, chk_url_ips queries the ARIN RDAP registry and enriches the HTML report with a Network Info section showing: organisation, network handle, allocation type, country, CIDR range, start/end addresses and IP version.
Le JSON RDAP brut (
*_rdap_*.json) est sauvegardé séparément pour intégration dans d'autres outils.
The raw RDAP JSON (*_rdap_*.json) is saved separately for integration into other tools.
prérequisprerequisites
| ComposantComponent | Version | Usage |
|---|---|---|
| Python | 3.8+ | Exécution du scriptScript execution |
cryptography | 40+ | Parsing certificats X.509X.509 certificate parsing |
openssl | 1.1+ | Connexion TLS et récupération chaîneTLS connection and chain retrieval |
requests | 2.28+ | ARIN RDAP |
ipwhois | 1.2+ | Résolution ASN/réseauASN/network resolution |
tldextract | 3+ | Extraction domaine racineRoot domain extraction |
paramiko | 3+ | Mode SSH distant (optionnel)Remote SSH mode (optional) |
# Installation des dépendances
pip install cryptography requests ipwhois tldextract paramiko --break-system-packages
pip install cryptography requests ipwhois tldextract paramiko --break-system-packages