Nouvelle Extension pour Plesk. Protection Antivirus pour améliorer la sécurité de votre serveur. Pourquoi choisir Flex Antivirus?

API — Programmation Web

Bloquer IP sur Cloudflare

Intègre Cloudflare pour bloquer une IP. Compatible avec ASP classique et PHP via l'objet COM de l'extension.

ASP Classique PHP XML / JSON

En ajoutant 2 lignes de code supplémentaires, vous pourrez vous connecter à Cloudflare. CloudFlareLogin et CloudflareDomain

Fonction BlockIp(IP,Rulename)

Depuis votre page web — dans votre index.asp, index.php ou toute section de votre application — vous pouvez appeler cette fonction pour bloquer une adresse IP via le Firewall Manager. Nécessite des identifiants d'un domaine valide dans Plesk.

1 Paramètres requis


Paramètre Type Requis Description
Username String Requis Utilisateur du domaine Plesk avec accès à l'extension.
Password String Requis Mot de passe de l'utilisateur du domaine Plesk.
FormatOutput String Optionnel Format de réponse : xml (défaut) ou json.
IP String Requis Adresse IPv4 ou IPv6 à bloquer.
CloudFlareLogin String Requis Email et clé token Cloudflare
CloudflareDomain String Requis Domaine intégré dans Cloudflare
Valeurs de retour json/xml
result
(true ou false) État de la demande de blocage.
app
Site où l'IP était bloquée : Windows, MailEnable, Cloudflare
desc
Si le résultat est négatif, affiche des informations sur la raison.

Important : Utilisez cette fonction sur des pages protégées par votre propre authentification. Exposer cet appel sans protection permet à n'importe quel utilisateur de bloquer des IP arbitraires.

2 Exemple en ASP Classique


Instanciez l'objet COM FlexFirewallManager.Admin, définissez les identifiants et appelez UnlockIP(). La réponse est analysée en tant que XML.

' Créer l'instance de l'objet COM Set App = CreateObject("FlexFirewallManager.Admin") App.FormatOutput = "xml" App.Username = "Utilisateur Domaine Plesk" App.Password = "Mot de passe Domaine Plesk" App.CloudFlareLogin("Email Cloudflare" , "Token Cloudflare") App.CloudflareDomain = "Nom du Domaine" ' IP à bloquer Dim strIP : strIP = "123.123.123.123" Dim returnstring : returnstring = App.BlockIp(strIP)

Vous pouvez utiliser FormatOutput = "json" si vous préférez analyser la réponse avec JSON.parse plutôt qu'en XML. Le format JSON est recommandé pour les applications modernes.

3 Exemple en PHP


En PHP, instanciez l'objet COM avec new COM(). Utilisez le format json pour analyser la réponse directement avec json_decode().

// Créer l'instance de l'objet COM $app = new COM("FlexFirewallManager.Admin"); $app->FormatOutput = "json"; $app->Username = "Utilisateur Domaine Plesk"; $app->Password = "Mot de passe Domaine Plesk"; // IP à débloquer $strIP = "123.123.123.123"; $app->CloudFlareLogin("Email Cloudflare","Token Cloudflare"); $app->CloudflareDomain = "Nom du Domaine"; // Méthode 2 $returnstring = $app->BlockIp($strIP); // Analyser la réponse JSON $appjson = json_decode($returnstring); if ($appjson->result) { echo "IP Bloquée " . $strIP; }

Astuce : Vous pouvez combiner cette fonction avec un formulaire d'administration interne afin que vos utilisateurs gèrent eux-mêmes le blocage de leur propre IP sans avoir à accéder au panneau Plesk.

4 Notes d'implémentation


Tenez compte des aspects suivants lors de l'intégration de cette fonction dans votre application :

Authentification préalable Protégez toujours la page qui appelle BlockIp() par une session utilisateur authentifiée.
Uniquement sur Windows Server L'objet COM FlexFirewallManager.Admin nécessite Windows Server avec l'extension installée.
Identifiants sécurisés N'incluez jamais l'utilisateur et le mot de passe dans un code source accessible publiquement. Utilisez des variables d'environnement ou des fichiers de configuration externes.
Synchronisation avec Cloudflare Avec les paramètres d'intégration Cloudflare activés, le blocage ne sera effectué que sur les règles du domaine sélectionné.