Skip to content

PowerShell module to help manage IIS instances, which can also be run from PowerShell Core

License

Notifications You must be signed in to change notification settings

Badgerati/IISManager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 

Repository files navigation

IISManager

MIT licensed PowerShell

This is a lightweight PowerShell module to help manage IIS instances, with support for working in PowerShell Core on Windows (including the Ubuntu prompt on Windows).

Unlike other modules, this module has no dependency on any DLLs. The only dependency is that you have IIS installed on the server (or your machine).

There is also support for binding certificates to websites, and sharing directories.

Feel free to contribute.

Install

Install-Module -Name IISManager
Import-Module -Name IISManager

Functions

Application Pools

  • Get-IISMAppPool
  • Get-IISMAppPools
  • New-IISMAppPool
  • Remove-IISMAppPool
  • Reset-IISMAppPool
  • Restart-IISMAppPool
  • Start-IISMAppPool
  • Stop-IISMAppPool
  • Test-IISMAppPool
  • Test-IISMAppPoolRunning
  • Update-IISMAppPool
  • Update-IISMAppPoolProcessModel
  • Update-IISMAppPoolRecycling

Apps

  • Get-IISMApp
  • New-IISMApp
  • Remove-IISMApp
  • Test-IISMApp
  • Update-IISMApp

Directories

  • Get-IISMDirectory
  • Get-IISMDirectoryShare
  • Mount-IISMDirectoryShare
  • New-IISMDirectory
  • Remove-IISMDirectory
  • Remove-IISMDirectoryShare
  • Set-IISMDirectoryCredentials
  • Test-IISMDirectory
  • Test-IISMDirectoryShare
  • Update-IISMDirectory
  • Update-IISMDirectoryPhysicalPaths

Sites

  • Add-IISMSiteBinding
  • Edit-IISMSiteAppPool
  • Edit-IISMSitePhysicalPath
  • Get-IISMSiteAppPool
  • Get-IISMSiteBindingCertificate
  • Get-IISMSiteBindings
  • Get-IISMSitePhysicalPath
  • Get-IISMSite
  • Get-IISMSites
  • New-IISMSite
  • Remove-IISMSite
  • Remove-IISMSiteBinding
  • Remove-IISMSiteBindings
  • Remove-IISMSiteDefaultBinding
  • Remove-IISMSiteBindingCertificate
  • Reset-IISMSiteAppPool
  • Restart-IISMSite
  • Set-IISMSiteBindingCertificate
  • Start-IISMSite
  • Stop-IISMSite
  • Test-IISMSite
  • Test-IISMSiteBinding
  • Test-IISMSiteBindingCertificate
  • Test-IISMSiteRunning

Logging

  • Add-IISMSiteCustomLogField
  • Add-IISMSiteLogField
  • Clear-IISMSiteCustomLogFields
  • Clear-IISMSiteLogFields
  • Get-IISMSiteCustomLogFields
  • Get-IISMSiteLogFields
  • Get-IISMSiteLogFormat
  • Get-IISMSiteLogging
  • Get-IISMSiteLogPath
  • Get-IISMSiteLogPeriod
  • Remove-IISMSiteCustomLogField
  • Remove-IISMSiteLogField
  • Set-IISMSiteLogFields
  • Set-IISMSiteLogPath
  • Set-IISMSiteLogPeriod
  • Test-IISMSiteCustomLogField
  • Test-IISMSiteLogField

FTP

  • Add-IISMFtpDirectoryIPSecurity
  • Add-IISMFtpDirectoryAuthorization
  • Add-IISMFtpServerCustomAuthentication
  • Add-IISMFtpSiteCustomAuthentication
  • Add-IISMFtpSiteLogField
  • Clear-IISMFtpSiteLogFields
  • Disable-IISMFtpSiteAuthentication
  • Enable-IISMFtpSiteAuthentication
  • Get-IISMFtpDirectoryAuthorization
  • Get-IISMFtpDirectoryIPSecurity
  • Get-IISMFtpServerCustomAuthentication
  • Get-IISMFtpServerCustomAuthenticationProvider
  • Get-IISMFtpSiteLogging
  • Get-IISMFtpSiteLogFields
  • Get-IISMFtpSiteLogPath
  • Get-IISMFtpSiteLogPeriod
  • Register-IISMFtpServerCustomAuthenticationProvider
  • Remove-IISMFtpDirectoryAuthorization
  • Remove-IISMFtpDirectoryIPSecurity
  • Remove-IISMFtpServerCustomAuthentication
  • Remove-IISMFtpSiteCustomAuthentication
  • Remove-IISMFtpSiteLogField
  • Set-IISMFtpDirectoryIPSecurityUnlisted
  • Set-IISMFtpSiteLogFields
  • Set-IISMFtpSiteLogPath
  • Set-IISMFtpSiteLogPeriod
  • Set-IISMFtpSiteSslPolicy
  • Set-IISMFtpSiteUserIsolation
  • Test-IISMFtpSiteLogField
  • Test-IISMSiteIsFtp
  • Unregister-IISMFtpServerCustomAuthenticationProvider

Misc

  • Get-IISMCertificateThumbprint
  • Invoke-IISMAppCommand
  • New-IISMCredentials
  • Reset-IISMServer

ToDo

  • Hosts file control
  • Folder permissions via ACL