Gratuit · un serveur · sans compte
Repérez les piles logicielles à surveiller
Exécutez une commande ou collez un JSON anonymisé pour obtenir une note, un verdict et un résumé des risques par pile logicielle.
Vérification en cours
- Ubuntu
- Debian
- Alpine
- RHEL
- Rocky Linux
- AlmaLinux
- openSUSE / SUSE
- Docker
- Kubernetes
- PHP
- Composer
- Python
- Node.js
- nginx
- Apache
- MySQL
- MariaDB
- PostgreSQL
- Redis
Bientôt disponible
- Windows Server
- Java / Maven
- Go
- Ruby
- .NET
- Rust
À exécuter sur votre serveur
curl -fsSL https://patchfirst.dev/check.sh | shPython est facultatif. Il vous faut curl et sh ; avec Python 3.8+ et cryptography, l’agent utilise le zipapp, sinon un binaire sur Linux x86_64. Son SHA-256 est vérifié auprès du même service HTTPS : c’est un contrôle d’intégrité, pas une signature indépendante. Aucun accès root requis.
Examiner les données avant l’envoi
La commande ci-dessus lance une vérification normale. Quelle que soit la méthode de lancement, --json affiche le JSON anonymisé sans l’envoyer :
curl -fsSL https://patchfirst.dev/check.sh | sh -s -- --jsonVous pouvez aussi télécharger le zipapp et l’exécuter manuellement avec Python 3.8+. Installez python3-cryptography pour chiffrer les noms. Le même paramètre permet de prévisualiser les données :
curl -fsSLo psr-agent.pyz https://patchfirst.dev/agent/psr-agent.pyz &&
python3 psr-agent.pyz check --jsonAprès avoir examiné le JSON, envoyez les données pour obtenir un lien de rapport :
python3 psr-agent.pyz check --api https://patchfirst.devVérifier un autre serveur via SSH
Les binaires prêts à l’emploi sont disponibles uniquement pour Linux x86_64 (variante musl pour Alpine). Téléchargez la variante adaptée en suivant les instructions « Binaire sans Python ». Le serveur Linux cible n’a besoin que de sh ; l’anonymisation et le chiffrement s’effectuent sur votre machine.
TMPDIR="$HOME" ./psr-agent check --ssh user@host --ssh-opt StrictHostKeyChecking=accept-new --api https://patchfirst.devSur macOS et les autres systèmes, utilisez le .pyz : il vous faut Python 3.8+, cryptography pour chiffrer les noms et un client SSH. Téléchargez l’agent et lancez la vérification :
curl --retry 3 -fsSLo psr-agent.pyz https://patchfirst.dev/agent/psr-agent.pyz &&
python3 psr-agent.pyz check --ssh user@host --ssh-opt StrictHostKeyChecking=accept-new --api https://patchfirst.devStrictHostKeyChecking=accept-new enregistre la clé à la première connexion et refuse les clés modifiées. Vérifiez séparément l’empreinte du serveur avant la première connexion.
Examinez le JSON, puis envoyez-le vous-même
Téléchargez le zipapp et affichez le JSON avec Python 3.8+. Sans Python, utilisez le binaire présenté ci-dessous.
curl -fsSLo psr-agent.pyz https://patchfirst.dev/agent/psr-agent.pyzpython3 psr-agent.pyz check --jsonBinaire sans Python
Linux x86_64 : téléchargez le binaire et vérifiez son SHA-256 avant de l’exécuter. La somme de contrôle provient du même service HTTPS et ne remplace pas une signature indépendante. Pour Alpine, remplacez psr-agent-linux-x86_64 par psr-agent-linux-x86_64-musl dans chaque commande. Pour aarch64, utilisez Python 3.8+ ou lancez l’agent depuis une autre machine avec --ssh.
curl -fsSLo psr-agent https://patchfirst.dev/agent/psr-agent-linux-x86_64
curl -fsSLo SHA256SUMS https://patchfirst.dev/agent/SHA256SUMS
expected=$(awk '$2 == "psr-agent-linux-x86_64" {print $1}' SHA256SUMS)
printf '%s psr-agent\n' "$expected" | sha256sum -c - &&
chmod 700 psr-agent && TMPDIR="$HOME" ./psr-agent check --jsonCopiez uniquement le JSON de la sortie standard. L’agent affiche une clé des noms séparée sur stderr. Collez-la ci-dessous pour afficher les noms lisibles ; elle reste dans votre navigateur.
Gardez un œil sur la sécurité de votre serveur
Tous les constats, les versions corrigées et les recommandations. À partir de 3 $ par mois et par serveur.
Les rapports restent disponibles 7 jours. Le lien contient les clés : toute personne qui le possède peut ouvrir le rapport.