Catégories
Consultant, Formateur

Commandes AppCmd IIS prêtes à l’emploi

Pour administrer IIS (Internet Information Server), il existe des outils comme l’interface graphique du Gestionnaire IIS, les scripts WMI (rootWebAdministration), PowerShell, le code managé de l’API Microsoft.Web.Administration et aussi l’outil en ligne de commande AppCmd IIS.

Afin d’automatiser l’audit de IIS, j’ai développé une série de petits scripts basés sur AppCmd IIS. Ces scripts ont été rédigés après la lecture de l’article Appcmd.exe (IIS 7) de Microsoft.

Par ailleurs, certains des scripts peuvent s’utiliser sans personnalisation. Toutefois, de nombreux scripts nécessitent une adaptation des variables pour fonctionner correctement dans votre environnement.

AppCmd IIS
AppCmd IIS

Outils AppCmd IIS (Lettre A)

  • AUTHAnonymous- désactive l’authentification anonyme.
  • AUTHBase+ active l’authentification de base.
  • AUTHClaims+ active l’emprunt d’identité ASP.NET.
  • AUTHClaimsUser impose que IIS emprunte l’identité d’un compte précis.
  • AUTHDigest+ active l’authentification Digest avec un domaine précis.
  • AUTHFBA+ active l’authentification par formulaire.
  • AUTHWindows+ active l’authentification Windows.

Outils AppCmd IIS (Lettres B-C)

  • Backup sauvegarde la configuration IIS.
  • BackupList liste les sauvegardes existantes.
  • BackupNommée sauvegarde IIS avec un nom de sauvegarde imposé.
  • BackupRestaure restaure une sauvegarde nommée précise.
  • BackupSansConfirm sauvegarde la configuration IIS. Vous ne sauvegardez pas le contenu.
  • Compression+ active la compression HTTP du contenu statique.
  • CompressionParams configure les paramètres de compression de contenu statique.
  • Custerr ajoute un message d’erreur personnalisé pour l’erreur 401.2.
  • CustomHeaders ajoute un en-tête de réponse.

Outils AppCmd IIS (Lettres D à F)

  • DirectoryBrowse- désactive l’exploration de répertoire.
  • DirectoryBrowse+ active l’exploration de répertoire.
  • DocDefautFiles- supprime un fichier de la liste de documents par défaut.
  • DocDefautFiles+ ajoute un fichier à la liste de documents par défaut.
  • FilteringEtendus+ autorise les caractères étendus.
  • FilteringExtensions- supprime une règle applicable à une extension précise de nom de fichier.
  • FilteringExtensions+ ajoute une règle d’autorisation applicable à une extension précise de nom de fichier.
  • FilteringExtensionsUnlisted- refuse les extensions de nom de fichier non répertoriées.
  • FilteringExtensionsWebDav- n’applique pas le filtrage des extensions de nom de fichier aux demandes WebDAV.
  • FilteringMaxContenu spécifie une longueur maximale du contenu.
  • FilteringMaxEntete spécifie la taille maximale des en-têtes comportant une valeur précise.
  • FilteringMaxURL spécifie une longueur maximale d’une URL entrante.
  • FilteringURL- ne fait pas d’analyse des URL qui contiennent une séquence précise.
  • FilteringVerb+ autorise un verbe.
  • FilteringVerbUnlisted- refuse les verbes non répertoriés.
  • FilteringVerbUnlistedWebDav- n’applique pas le filtrage des verbes aux demandes WebDAV.

Outils AppCmd IIS (Lettres H à P)

  • Help affiche l’aide d’AppCmd.
  • IPSecAddress- crée une règle de refus pour une adresse IPv4.
  • IPSecAddress+ crée une règle d’autorisation pour une adresse IPv4.
  • ISAPI crée une restriction ISAPI qui active une extension ISAPI.
  • Log- désactive la journalisation.
  • Log+ active la journalisation.
  • MaxBandwidth limite la bande passante pour un site Web.
  • MaxConnexions limite le nombre de connexions.
  • MaxTimeout limite le timeout pour un site web.
  • MIME ajoute un type MIME.
  • PoolList identifie tous les pools d’applications en cours d’exécution.
  • PoolRecycle recycle tous les pools d’applications en cours d’exécution.

Outils AppCmd IIS (Lettre R)

  • Redirect- désactive la redirection.
  • Redirect+ active la redirection et redirige les utilisateurs vers un autre site web.
  • RedirectPermanent change le code d’état retourné pour la redirection (code réponse.
  • RedirectStandard change le code d’état retourné pour la redirection (code réponse.
  • RedirectTemporaire change le code d’état retourné pour la redirection (code réponse.
  • RequestsList affiche la liste des demandes en cours d’exécution.

Outils AppCmd IIS (Lettres S à W)

  • SecurityRule- crée une règle de refus pour les utilisateurs anonymes.
  • SecurityRule+ crée une règle d’autorisation pour tous les utilisateurs.
  • SecurityRuleComplex crée une règle d’autorisation pour les rôles Admin et Invité, ainsi que pour les utilisateurs Alice et Bob, puis applique cette règle aux verbes GET et POST.
  • SiteAdd ajoute un nouveau site Web.
  • SiteAutoStart affiche les sites arrêtés qui ne doivent pas s’exécuter automatiquement.
  • SiteConfig stocke la totalité de la configuration d’un site web dans un fichier au format XML.
  • SiteConfigEnregistre enregistre les informations de configuration d’un site dans un fichier.
  • SiteConfigRestaure restaure les informations de configuration d’un site à partir d’un fichier au format XML.
  • SiteDelete supprime un site web.
  • SiteList affiche les caractéristiques d’un site web.
  • SitesDeplacePool déplace toutes les applications d’un site vers un nouveau pool d’applications.
  • SiteSet modifie l’ID d’un site.
  • SitesList liste tous les sites Web.
  • SitesStartAll démarre tous les sites.
  • SiteStopped affiche les sites arrêtés.
  • SMTP+ configure le courrier électronique SMTP pour remettre immédiatement les courriels.
  • SSLPage exige SSL 128 bits pour un fichier HTML.
  • SSLSite exige SSL 128 bits pour le site Web.
  • Trace+ active la journalisation du suivi des demandes ayant échoué au niveau du site.
  • WPList répertorie les processus de travail en cours d’exécution.

Grille de lecture

Par ailleurs, le nom de mes scripts respecte, peu ou prou, les règles suivantes.

Notamment, vous trouverez le prefix AppCmd- devant un script Appcmd IIS.

Ensuite, le mot qui suit désigne la catégorie concernée (AUTH: Authorisation, WP: Worker Process, Site, SSL, Backup, Max, etc.).

Puis, il y a éventuellement un complément (MaxTimeout).

Puis, le signe + à la fin désigne un ajout ou une activation.

Enfin, le signe – à la fin désigne un retrait ou une désactivation.

Aussi, vous pouvez utiliser ces scripts comme vous voulez. Notamment, c’est à à vos risques et périls car il n’y a aucune garantie.

Téléchargez le fichier zip suivant, qui contient les scripts : AppCmd_V1_0_0.zip

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *