Category: Powershell

Exchange Online (Office 365) 환경에 적용된 Password reset Global 정책의 예외를 적용하는 방법

Exchange Online에서 주기적인 사용자 암호 변경을 유도하기 위해 제공하는 옵선이 현재는 Global 정책 한가지 밖에 없습니다. 그래서 전체 계정에 적용 되거나 안되거나의 결정만 할 수 있는 상태 입니다. (2019.01 버전) 하지만 일부 시스템에 사용을 목적으로 생성한 계정 같은 경우, 90일 단위 암호 변경은 업무 수행에 많은 불편함과 더 나아가 시스템의 장애로 이어 질수 있어 이를 예외 처리할 수 있는 방법을...

[Powershell] Get-ADUser 명령어

기본적으로 Script 언어를 배울 때, 변경 명령어는 나중에 배우고, 보통 정보를 읽어오는 행위 먼저 배우게 됩니다. 그 이유는 변경 명령어로 예기치 않는 장애가 발생할 수 있으니까요. Powershell 도 동일하게 보통 Get-ADUser 명령어를 먼저 배우게 됩니다. 다만 Powershell 구분은 Like 구분에 대해 굉장히 인색하게 적용되어 일반적인 Script 언어에 비해 접근이 좀 어려운게 사실 입니다. 구체적인 내용은 아래를 내용들을 참고 해주시기 바랍니다....

[Q] Powershell을 이용해서 사용자 암호를 Reset 하나요?

Windows 10 + RSAT (Remote Server Administrator Tools) 환경에서 Windows 2012R2 서버에 리모트로 접근해서 테스트 진행한 환경 입니다. 보통 사용자 계정 암호를 reset 하는 행위는 몇몇가지 이외에는 없습니다. 본인의 암호를 분실 했을 때 내부 암호 변경 정책 일자가 초과하여 계정이 잠겼을 때 기본 문법은 다음과 같습니다. Set-ADAccountPassword [-WhatIf] [-Confirm] [-AuthType ] [-Credential ] [-Identity] [-NewPassword ] [-OldPassword ] [-Partition ]...

User Password Expired 점검 및 Password reset Powershell code

목적 OnPremise 환경에서 Powershell을 이용한 CLI 기반의 빠른 조회 대상 LastLogonData Passwordexpired passwordlastset Passwordneverexpires Passwordnotrequired 계정 조회 문법 Get-ADUser 사용자 이름 -Server “조회 AD 서버” -Properties * | Select-Object -Property LastLogonDate, passwordexpired, passwordlastset, passwordneverexpires, passwordnotrequired Example LastLogonDate : 2018. 2. 6. 오후 3:49:50 passwordexpired : False passwordlastset : 2018. 2. 13. 오전 9:35:10 passwordneverexpires : False passwordnotrequired : False 계정...

동적 메일 그룹의 구성원 보기 (Get-DynamicDistributionGroup)

기본 조건 Office365 시스템에 Remote Powershell 환경이 구축되어야 함. automatic module download로 별도 설치 불필요 On-Premise 시스템에도 적용 가능 함. Powershell ver 2.0 이상 필요 기본 명령어 Command., Get-DynamicDistributionGrup “검색하고자 하는 그룹 명칭” Example., 기본 명령어를 입력하게되면, 달랑 해당 그룹 명칭과 담당자 계정명만 나오게 됩니다. (보안상 blur 처리 했습니다.) 그럼 기본 명령어에 ” fl 이라는 옵션을 추가 해보면 다음과 같이...

Powershell을 이용한 메일 relay 서버 테스트

Scenario SMTP 서버에서 아래 Source를 통해 메일 발송 테스트 Cmd – 관리자권한 실행 Powershell 입력 후 [enter] 아래 메일내용 복사 & 붙여넣기 $EmailFrom = “보내는 사람 메일주소” $EmailTo = “받는 사람 메일주소” $Subject = “SMTP Mail Test” $Body = “This is just a test mail to verify the working of CMD” $SMTPServer = “192.168.2.215” $SMTPClient = New-Object Net.Mail.SmtpClient($SmtpServer, 25) $SMTPClient.EnableSsl...

조회 AD 서버와 사용자 account를 입력 받아 password expired를 조회하는 구문

<# .SYNOPSIS CDNetworks 임직원의 암호 만료 상황 점검 Script .PARAMETER Name ddddd .EXAMPLE ddddd #> $name = Read-Host “Enter Employee Name” $server = Read-Host “AD Server Name” Get-ADUser $name -Server $server -Properties * | Select-Object -Property LastLogonDate, passwordexpired, passwordlastset, passwordneverexpires, passwordnotrequired 위와 같이 코드를 작성하고 임의의 파일명으로 저장하시고, 해당 폴더로 Powershell 경로로 옮긴다음 아래 그림과 같이 실행하면 됩니다.

How to Run PowerShell Commands on Remote Computers

PowerShell Remoting allows you to run individual PowerShell commands or access full PowerShell sessions on remote Windows systems. It’s similar to SSH for accessing remote terminals on other operating systems. PowerShell is locked-down by default, so you’ll have to enable PowerShell Remoting before using it Enabling PowerShell Remoting On the computer you want to access remotely, open a PowerShell window...

MS Powershell source code 모음 사이트

MS에서는 MVP나 공식 Powershell 개발자들을 통해 생산되는 Powershell code를 아래 MS 사이트에 모아두고 있어 여러 사이트에 산재되어 있는 정보보다 조금 더 신뢰할 수 있는 정보를 보유 하고 있습니다. 물론 해당 사이트에 업로드 된 Powershell code 라고 해도, 강제성이 없기 때문에 언제든지 Expired 될수 있다는 걸 꼭 명심해야 합니다. 저도 해당 사이트에 Script Brower 라는 add-on을 잘 사용했지만, 언제부터인가 업데이트가 안되다가...

부모(Parents)와 자식(Child) AD 환경에서 DistributionGroup 또는 DistributionGroupMember 명령으로 구성원 확인이 안될 때.

  단일 AD 환경 또는 단일 계층의 포레스트 구조라면 문제가 안되지만, 부보(Parents)와 자식 (Child) 구조의 AD 환경에서 자식(Child) 서버에 존재하는 DistributionGroup에 대한 정보 확인 및 구성원 정보 확인 기본적으로 안되도록 되어 있다. 설정이 안되어 있는 상태에서 자식(Child) AD 서버에 있는 그룹이나 그룹 소속 구성원 확인을 하고자 할 때 아래와 같은 에러가 발생 한다. [한글 버전] PS C:\Windows\system32> Get-DistributionGroup _Info ‘xxx.xxx.co.kr’에서...