Computer >> 컴퓨터 >  >> 시스템 >> Windows

Windows PowerShell로 로컬 사용자 및 그룹 관리하는 방법 – 초보자를 위한 완벽 가이드

Windows PowerShell은 단순한 스크립트 도구를 넘어 로컬 사용자(Local Users)와 그룹(Groups)을 관리하는 강력한 수단으로 활용할 수 있습니다. 이는 Windows가 다중 사용자(multiuser) 운영체제라는 원칙을 잘 보여주는 부분이기도 합니다.


물론 로컬 사용자와 그룹을 관리할 수 있는 GUI 기반 유틸리티도 여러 가지 존재합니다. 하지만 많은 시스템 관리자는 마우스 클릭보다 명령줄(Command-line) 방식이 더 빠르고 정확하며, 반복 작업의 자동화에 유리하다고 평가합니다. 이번 가이드에서는 PowerShell 명령어만으로 로컬 사용자와 그룹을 효율적으로 관리하는 방법을 자세히 알아보겠습니다.


PowerShell로 로컬 사용자 & 그룹 관리하기


이번 가이드는 크게 두 가지 파트로 나누어 설명합니다.

  1. 로컬 사용자(Local Users) 관리
  2. 사용자 그룹(User Groups) 관리

시작하기 전에 관리자 권한(Administrator)으로 Windows PowerShell을 실행해야 한다는 점을 잊지 마세요. 시작 메뉴에서 PowerShell을 검색한 뒤 '관리자 권한으로 실행'을 선택하면 됩니다.


1] 로컬 사용자 관리


시스템에 등록된 모든 로컬 사용자 계정의 세부 정보를 확인하고 싶다면 아래 cmdlet을 입력하세요. 계정 이름(Account Name), 활성화 상태(Enabled status), 설명(Description) 등의 정보를 한눈에 볼 수 있습니다.

Get-LocalUser

특정 항목만 골라서 확인할 수도 있습니다. 예를 들어, 특정 로컬 계정의 비밀번호가 마지막으로 설정된 시점을 조회하려면 다음과 같이 입력합니다.

Get-LocalUser -Name root | Select-Object PasswordLastSet

이 cmdlet의 기본 구조는 다음과 같습니다. Select-Object 뒤에 '*'를 넣으면 해당 계정의 모든 속성을 출력합니다.

Get-LocalUser -Name root | Select-Object *

Select-Object와 함께 사용할 수 있는 대표적인 객체(Object) 목록은 다음과 같습니다. 필요한 정보에 따라 적절히 조합하여 활용하세요.

  • AccountExpires
    — 계정 만료 날짜
  • Description
    — 계정 설명
  • Enabled : True
    — 계정 활성화 여부
  • FullName
    — 사용자 전체 이름
  • PasswordChangeableDate
    — 비밀번호 변경 가능 날짜
  • PasswordExpires
    — 비밀번호 만료 여부
  • UserMayChangePassword
    — 사용자의 비밀번호 변경 허용 여부
  • PasswordRequired
    — 비밀번호 필수 여부
  • PasswordLastSet
    — 비밀번호 최종 설정 일시
  • LastLogon
    — 마지막 로그온 시간
  • Name
    — 계정 이름
  • SID
    — 보안 식별자(Security Identifier)
  • PrincipalSource
    — 계정 출처
  • ObjectClass
    — 객체 클래스

2] 사용자 그룹 관리


로컬 사용자 계정이 속한 모든 그룹의 세부 정보를 확인하려면 아래 cmdlet을 사용하세요.

Get-LocalGroup

새로운 로컬 사용자 그룹을 생성해야 한다면 다음 cmdlet을 활용합니다. <그룹 이름>과 설명 부분을 원하는 값으로 바꿔 입력하세요.

New-LocalGroup -Name <그룹 이름> -Description '<그룹에 대한 설명 입력>'

생성한 그룹에 로컬 사용자 계정을 추가하려면 아래 명령어를 사용합니다. 여러 멤버를 한 번에 추가할 수 있으며, -Verbose 옵션을 붙이면 실행 결과를 자세히 확인할 수 있습니다.

Add-LocalGroupMember -Group '<그룹 이름>' -Member ('이름1','이름2','<역할>') -Verbose

같은 작업을 파이프(|)를 이용해 처리할 수도 있습니다. 특정 사용자를 찾아 바로 그룹에 추가하는 방식입니다.

Get-Localuser -Name john | Add-LocalGroupMember -Group '<그룹 이름>'

특정 그룹에 소속된 모든 사용자 계정을 확인하고 싶다면 아래 명령어를 사용하세요.

Get-LocalGroupMember -Group '<그룹 이름>'

마지막으로, 그룹에서 특정 로컬 사용자 계정을 제거해야 할 때는 아래 cmdlet을 사용합니다.

Remove-LocalGroupMember -Group '<그룹 이름>' –Member <로컬 사용자 계정 이름>

마무리


위에서 소개한 cmdlet들은 Windows PowerShell을 통해 로컬 사용자와 그룹을 관리할 때 반드시 알아두어야 하는 기본 명령어들입니다. GUI 도구에 익숙했다면 처음에는 다소 생소하게 느껴질 수 있지만, 몇 번만 직접 사용해 보면 명령줄 방식의 빠른 속도와 높은 생산성에 금방 익숙해질 것입니다.


이 가이드가 여러분의 시스템 관리 업무에 도움이 되기를 바랍니다.