# Windows Yeah, Windoze is here too # Active Directory To get a list of the FSMO Role holders for a Single Domain. ```Powershell Get-ADDomain | Select-Object DistinguishedName, SchemaMaster, DomainNamingMaster, InfrastructureMaster, PDCEmulator, RIDMaster ``` To get a list of the FSMO Role holders in a Forest. ```Powershell Get-ADForest | Select-Object Name,SchemaMaster, DomainNamingMaster,InfrastructureMaster, PDCEmulator, RIDMasterall ``` To get a nicely formatted list with all the Domain Controllers and who owns which particular role. ```Powershell Get-ADDomainController -Filter * | Select-Object Name, Domain, Forest, OperationMasterRoles | Where-Object {$_.OperationMasterRoles} ``` Create a new AD computer. ```Powershell $ServerName="newsys" $DC="ads01.example.com" $OU="OU=SERVERS,DC=example,DC=com" New-ADComputer -Name $ServerName -SamAccountName $ServerName -Path $OU -Description "Apache Win Development" -Server $DC -Enabled $True ``` Unlock an account ```Powershell get-ADUser -Identity -Properties LockedOut Unlock-ADAccount -Identity ``` Change a password ```Powershell $SecPaswd= ConvertTo-SecureString -String 'kPnguoHTUQ' -AsPlainText -Force Set-ADAccountPassword -Reset -NewPassword $SecPaswd -Identity cesvcsso01 Set-ADUser -Identity -ChangePasswordAtLogon $false ``` New AD group ```Powershell $GroupName="SvrOps" $OU="OU=GROUPS,DC=exmple,DC=com" New-ADGroup $GroupName -Path $OU -GroupCategory Security -GroupScope Global -PassThru -Verbose ``` # Windows Management Consoles
CERTMGR.MSC Certificates snap-in
CERTSRV.MSC Certification Services
CMD.EXE Command Prompt
COMPMGMT.MSC Computer Management
DCPOL.MSC Domain Controller Security Policy
DEVMGMT.MSC Device Manager
DFRG.MSC Disk Defragmenter
DFSGUI.MSC Distributed File System
DHCPMGMT.MSC DHCP Manager
DISKMGMT.MSC Disk Management
DNSMGMT.MSC DNS Manager
DOMAIN.MSC Active Directory Domains & Trust
DOMPOL.MSC Domain Security Policy
DSA.MSC Active Directory Users & Computers
DSA.MSC /DOMAIN=domainname
DSA.MSC /SERVER=servername
DSSITE.MSC Active Directory Sites & Services
EVENTVWR.MSC Event Viewer
FSMGMT.MSC Shared Folders
GPEDIT.MSC local Group Policy Editor
IAS.MSC Internet Authentication Service
INETMGR Internet Information Service (\\Windows\\system32\\inetsrv)
LUSRMGR.MSC Local Users and Groups
MMC.EXE Microsoft Management Console
MSINFO32.EXE Hardware and software configuration information
PERFMON.MSC Performance Monitor
REGEDIT.EXE Run Registry Editor
RRASMGMT.MSC Routing and Remote Access
RSOP.MSC Resultant Set of Policy
SECPOL.MSC Local Security Policy
SERVICES.MSC Service Configuration
TSCC.MSC Terminal Services
MSTSC Remote Desktop
# Windows Install Media ```./create_win_usb.sh ~/Downloads/Win10.iso /dev/sdc``` ```bash #!/bin/bash # -------------------------------------------------------------- # Create Bootable Windows 10/11 USB in Linux (Debian/RPM-based) # Version: 1.0 # Author: LinuxConfig.org # Date: 23-06-2023 # License: GPL-3.0 # -------------------------------------------------------------- # Input parameters: Path to the ISO file and USB block device location ISO_PATH=$1 USB_BLOCK=$2 echo "ISO Path is: $ISO_PATH" echo "USB block device is: $USB_BLOCK" # Check for required commands REQUIRED_COMMANDS=("rsync" "parted" "wipefs" "mkfs.vfat" "mkfs.ntfs" "udisksctl" "sha256sum" "mount" "umount" "mkdir" "cp" "sync" "mktemp") echo "Checking for required commands..." for cmd in "${REQUIRED_COMMANDS[@]}"; do if ! command -v $cmd >/dev/null 2>&1; then echo "Missing command $cmd. Please install the corresponding package and rerun this script." exit 1 fi done echo "All required commands are available." # 1. Checking ISO file read -p "Do you want to calculate the ISO file checksum? This could take some time. Press 'y' to continue or any other key to skip: " response if [[ $response =~ ^[Yy]$ ]] then echo "Calculating ISO file checksum..." ISO_CHECKSUM=$(sha256sum $ISO_PATH) echo "Checksum is: $ISO_CHECKSUM" read -p "Please verify the checksum. Press 'y' to continue: " response if [[ ! $response =~ ^[Yy]$ ]] then echo "Aborting due to user response." exit 1 fi fi # Warning about formatting and data loss echo "WARNING: All data on $USB_BLOCK will be lost!" read -p "Are you sure you want to continue? [y/N]: " confirm confirm=${confirm:-N} if [[ $confirm =~ ^[Yy]$ ]] then # 2. Formatting the USB drive echo "Formatting USB drive..." wipefs -a $USB_BLOCK parted $USB_BLOCK mklabel gpt parted $USB_BLOCK mkpart BOOT fat32 0% 1GiB parted $USB_BLOCK mkpart INSTALL ntfs 1GiB 100% parted $USB_BLOCK unit B print # Create temporary directories for mounting ISO_MOUNT=$(mktemp -d) VFAT_MOUNT=$(mktemp -d) NTFS_MOUNT=$(mktemp -d) # 3. Mounting the ISO echo "Mounting ISO..." mount $ISO_PATH $ISO_MOUNT # 4. Formatting and copying to the USB echo "Copying to USB..." mkfs.vfat -n BOOT ${USB_BLOCK}1 mount ${USB_BLOCK}1 $VFAT_MOUNT rsync -r --progress --exclude sources --delete-before $ISO_MOUNT/ $VFAT_MOUNT/ mkdir -p $VFAT_MOUNT/sources cp $ISO_MOUNT/sources/boot.wim $VFAT_MOUNT/sources/ mkfs.ntfs --quick -L INSTALL ${USB_BLOCK}2 mount ${USB_BLOCK}2 $NTFS_MOUNT rsync -r --progress --delete-before $ISO_MOUNT/ $NTFS_MOUNT/ # 5. Unmounting and power off echo "Unmounting drives and syncing data... This may take a while, do not disconnect your USB drive." umount $NTFS_MOUNT umount $VFAT_MOUNT umount $ISO_MOUNT sync # Remove temporary mount directories rmdir $ISO_MOUNT $VFAT_MOUNT $NTFS_MOUNT udisksctl power-off -b $USB_BLOCK echo "Done! You can now safely disconnect your USB drive." else echo "Aborted by user." exit 1 fi ```