Skip to content

lucchesi-sec/powershell-automation

PowerShell Logo

PowerShell Automation Toolkit

License: MIT PowerShell Platform GitHub Pages PowerShell CI

GitHub last commit GitHub issues GitHub forks GitHub stars

A comprehensive collection of PowerShell modules and scripts for automation

Overview

This repository provides a suite of tools for automating common administrative and maintenance tasks in a Windows environment. The project is built around a core module, PSAdminCore, which provides essential functions for logging, notifications, reporting, and credential management.

🚀 Current Status

The PSAdminCore module has been fully implemented with comprehensive functionality including:

  • ✅ Complete module structure with public/private function organization
  • ✅ All core functions implemented (logging, privileges, notifications, etc.)
  • ✅ Enhanced security features and credential management
  • ✅ Pester unit tests for core functions, with ongoing expansion
  • ✅ CI/CD pipeline integration with automated testing
  • ✅ All scripts updated to use the new module system

Features

  • Core Module (PSAdminCore): A robust set of foundational functions including:
    • Logging: Structured logging with severity levels and automatic rotation
    • Security: Credential management, encryption, and compliance checking
    • Notifications: Email alerts and report generation
    • Validation: Parameter validation and connectivity testing
    • Configuration: Secure configuration management with encryption
  • Administration Scripts: Scripts for managing Active Directory, backups, and more.
  • Maintenance Scripts: Tools for system maintenance, such as disk cleanup and service monitoring.
  • Security Features: Built-in encryption, secure credential storage, and compliance validation.
  • Extensible: Designed to be easily extended with new scripts and modules.

Getting Started

Prerequisites

  • PowerShell 5.1 or later
  • Active Directory module (for AD-related scripts)

Installation

  1. Clone the repository:
    git clone https://github.com/lucchesi-sec/powershell-automation.git
  2. Navigate to the repository directory:
    cd powershell-automation
  3. Import the core module:
    Import-Module ./modules/PSAdminCore/PSAdminCore.psm1

Usage

For detailed information on how to use the modules and scripts, please refer to our full documentation site.

Documentation

Contributing

Please read CONTRIBUTING.md for details on our code of conduct and the process for submitting pull requests.

License

This project is licensed under the MIT License - see the LICENSE.md file for details.

Releases

No releases published

Packages

No packages published