0%
0/1 Lessons
Course Introduction • 5min
0 / 2 lessons complete
Course Introduction
Free Preview Lesson
Video | 3 min
PowerShell System Requirements
Free Preview Lesson
Video | 2 min
Getting Started with Windows PowerShell • 56min
0 / 8 lessons complete
The Basics of PowerShell
Free Preview Lesson
Video | 7 min
Installing and Updating PowerShell
Free Preview Lesson
Video | 7 min
The Text Based Console Part 1- An Overview
Video | 7 min
Text Based Console Part 2 - An Overview
Video | 5 min
The ISE (Intelligent Scripting Environment) Part 1
Video | 5 min
The ISE (Intelligent Scripting Environment) Part 2
Video | 5 min
Setting up Visual Studio Code for PowerShell
Video | 14 min
Use the OGV Command to Easily View console data!
Video | 6 min
Getting Help and Finding Commands • 39min
0 / 6 lessons complete
Getting Help and Finding Commands Part 1
Video | 7 min
Getting Help and Finding Commands Part 2
Video | 3 min
Getting Help and Finding Commands Part 3
Video | 4 min
Help System LAB Questions
Video | 6 min
Help System Lab Answers 1-4
Video | 9 min
Help System Lab Answers 5-9
Video | 10 min
PowerShell Command Syntax • 33min
0 / 5 lessons complete
Command Syntax Part 1
Video | 8 min
Command Syntax Part 2
Video | 8 min
Command Syntax Part 3
Video | 5 min
Command Syntax Lab Questions
Video | 4 min
Command Syntax Lab Answers
Video | 8 min
PowerShell Objects and Properties • 35min
0 / 6 lessons complete
Objects, Properties and Methods Part 1
Video | 3 min
Objects, Properties and Methods Part 2
Video | 8 min
Objects, Properties and Methods Part 3
Video | 7 min
Questions 1-9 for Objects, Properties and Methods
Video | 2 min
Answers to Questions 1-7 O-P-M
Video | 11 min
Answers to Questions 8,9 O-P-M
Video | 4 min
The PowerShell Pipeline • 24min
0 / 2 lessons complete
PowerShell Providers • 30min
0 / 5 lessons complete
What are PowerShell Providers
Video | 3 min
Using PS Drive
Video | 6 min
PowerShell Provider CMDlets -1
Video | 12 min
PowerShell Providers CMDlets -2
Video | 7 min
Student Assignments
Text | 2 min
PowerShell Arrays and Variables • 28min
0 / 4 lessons complete
PowerShell Variables
Video | 9 min
PowerShell Arrays
Free Preview Lesson
Video | 12 min
PowerShell Variables Challenge
Video | 2 min
PowerShell Variables Solution
Video | 5 min
PowerShell Loops • 19min
0 / 3 lessons complete
For Loops
Free Preview Lesson
Video | 7 min
While Loops
Free Preview Lesson
Video | 7 min
For Each Loop
Free Preview Lesson
Video | 5 min
PowerShell Conditional Statements • 11min
0 / 1 lessons complete
On Premises Lab Setup • 36min
0 / 8 lessons complete
Should You Watch This Section?
Video | 2 min
Downloading and Installing VirtualBox
Video | 2 min
Downloading Windows Server 2019
Video | 3 min
Creating Your Virtual Network
Video | 2 min
Creating Your Virtual Machines
Video | 7 min
Installing VirtualBox Guest Additions
Video | 2 min
Installing Windows Server
Video | 8 min
Installing the Active Directory Domain Services Role
Video | 10 min
Basic Domain Administration with Windows PowerShell • 2hr 27min
0 / 10 lessons complete
Configuring PowerShell Execution Policy with Group Policy
Video | 13 min
Installing Windows Server Roles and Features with Powershell
Video | 6 min
Running Powershell Scripts as Scheduled Tasks
Free Preview Lesson
Video | 8 min
Creating Organizational Units with Powershell
Video | 11 min
Creating and Managing Active Directory User Accounts with PowerShell
Video | 19 min
Move all AD Users in a Group to a Specific Organizational Unit
Video | 7 min
Generate a list of AD Users and their OU
Video | 5 min
PowerShell Splatting
Video | 5 min
Bulk Install Windows MSU Files Automatically with PowerShell
Video | 13 min
Lab: Domain Administration with Windows PowerShell
Lab | 60 min
Send Emails with PowerShell • 22min
0 / 2 lessons complete
Send Emails from Gmail with PowerShell
Video | 9 min
Create Password Expiration Notification Script
Video | 13 min
PowerShell Desired State Configuration (DSC) Basics • 1hr 48min
0 / 6 lessons complete
DSC Overview
Video | 9 min
Enabling PSRemoting with Group Policy
Video | 9 min
The DSC Resource Kit
Video | 7 min
Configuring The Local Config Manager for DSC Push
Free Preview Lesson
Video | 14 min
Uninstalling Windows Features with DSC
Video | 9 min
Lab: Desired State Configuration (DSC)
Lab | 60 min
PowerShell Modules • 58min
0 / 7 lessons complete
Finding and installing PowerShell modules
Free Preview Lesson
Video | 17 min
Creating a Custom PowerShell Module: Files and Folders
Video | 5 min
Writing the New-Greeting Function
Video | 4 min
Writing the Get-GreetingMessage Function
Video | 3 min
Creating the PSM1 PowerShell Module File
Video | 9 min
Creating a PowerShell Module Manifest and Importing our Custom Module
Video | 8 min
Writing automated module tests with Pester
Video | 12 min
Powershell Challenges • 1hr 55min
0 / 23 lessons complete
Section Overview
Video | 5 min
The Trusted Hosts List Challenge
Text | 5 min
The Trusted Hosts List Answer
Video | 5 min
Starting a Remote Session Challenge
Text | 5 min
Starting a Remote Session Answer
Video | 5 min
Rename a Computer Challenge
Text | 5 min
Rename a Computer Answer
Video | 5 min
Change a Password on a Remote Computer Challenge
Text | 5 min
Change a Password on a Remote Computer Answer
Video | 5 min
How to Copy Files To-From a Remote Machine Challenge
Text | 5 min
How to Copy Files To-From a Remote Machine using VSC Answer
Video | 5 min
How to Export Logs to a CSV File Challenge
Text | 5 min
How to Export Logs to a CSV File Answer
Video | 5 min
How to Create Multiple Folders on the Host Machine using Powershell
Text | 5 min
How to Create Multiple Folders on the Host Machine using Powershell Answer
Video | 5 min
Who Rebooted the Server ID1074 Challenge
Text | 5 min
Who Rebooted the Server
Video | 5 min
How can you get Info on all your Hard Drives Challenge
Text | 5 min
How can you get Info on all your Hard Drives Answer
Video | 5 min
How can I get a list of CPU's and Installed Printers, Last Boot-up Time Challenge
Text | 5 min
How can I get a List of CPU's and Installed Printers, Last Boot-up Time Answer
Video | 5 min
How can I Automate Tasks with Task Scheduler Challenge
Text | 5 min
How can I Automate Tasks with the Task Scheduler Answer
Video | 5 min
Course Conclusion • 1min
0 / 1 lessons complete
Resources
There are no resources for this lesson.
Notes can be saved and accessed anywhere in the course. They also double as bookmarks so you can quickly review important lesson material.
Characters: 0 / 1000
First, on SAMS01 (or your member server) make sure the SMB 1.0/CIFS File Sharing Support feature is installed:
This is the feature that we will be removing from SAMS01. Once you’ve done that, head over to SADC01 to beging writing the node configuration.
To get started with this lecture, we are going to create a new PowerShell script called “RemoveSMBv1.ps1” in the “C:\DSC” folder:
The script will start out with the same few lines as the LCMConfig script by declaring the TargetServer variable and creating a CIM session with the target server.
Also add a variable for the config paths:
$ConfigPath = “C:\DSC\Config”
Next, we need to create a configuration for removing a Windows Feature (SMBv1) from our target node:
# Uninstall SMBv1
Configuration RemoveSMBv1 {
Import-DscResource -ModuleName PSDesiredStateConfiguration
Node $TargetServer {
WindowsFeature "SMB1" {
Name = "FS-SMB1"
Ensure = "Absent"
}
}
}
We are running the Import-DscResource so the configuration command will run without error.
Now let’s create the MOF file with this configuration:
# Create MOF file for target server
$RemoveSMBv1 = RemoveSMBv1 -Outputpath "C:\DSC\Configs"
A new file is created in the “C:\DSC\Configs” folder. The MDWS01.meta.mof is the LCM (local configuration manager) config and the MDWS01.mof is the node configuration.
Once the MOF file is generated, we can test our node against the LCM configuration file we just generated:
This should return false since we install the SMBv1 feature at the beginning of this lecture:
Next, add the the following code before the test line:
# Apply the DSC Configuration to Node
Start-DSCConfiguration -CimSession $Session -Path $ConfigPath -Wait -Verbose
When we execute this code, it will remove the feature and let us know it's pending a reboot:
We could force a reboot with the following line when we are sure nobody is using the computer.:
Invoke-Command -ComputerName $TargetServer -ScriptBlock {restart-computer}