Windows Server 유저, 그룹 관리 구성 가이드
Windows Server 로컬 사용자와 그룹 관리 가이드입니다. 그룹 설계, New-LocalUser, Add-LocalGroupMember, NTFS 권한, 계정 상태와 비밀번호 재설정 절차를 정리했습니다.
Windows Server 유저, 그룹 관리 구성 가이드
Windows Server를 운영할 때는 Administrator 계정을 공유해서 쓰지 말고 사용자별 계정을 만들어 권한을 분리해야 한다. 실습은 로컬 사용자와 그룹 생성, 초기 비밀번호 변경, 사용자별 폴더 생성 흐름을 다뤘다. 여기서는 LocalAccounts PowerShell 모듈과 NTFS 권한 설정까지 포함해 정리한다.
관리 원칙
- 사용자보다 그룹을 먼저 설계한다.
- 권한은 사용자에게 직접 주기보다 그룹에 부여한다.
- Administrator 그룹 멤버는 최소화한다.
- 초기 비밀번호는 사용자가 첫 로그인 후 변경하도록 운영한다.
- 퇴사자, 만료 계정, 장기 미사용 계정은 비활성화하거나 제거한다.
1. 현재 사용자와 그룹 확인
Get-LocalUser | Format-Table Name, Enabled, LastLogon
Get-LocalGroup | Sort-Object Name
Get-LocalGroupMember "Administrators"
Get-LocalGroupMember "Remote Desktop Users"2. 업무 그룹 생성
예시는 운영자 그룹과 일반 실습 사용자 그룹을 분리한다.
New-LocalGroup `
-Name "Lab Operators" `
-Description "Users allowed to operate lab services"
New-LocalGroup `
-Name "Lab Readers" `
-Description "Read-only lab users"
Get-LocalGroup "Lab Operators", "Lab Readers"3. 로컬 사용자 생성
비밀번호는 명령행에 평문으로 넣지 않는다. Read-Host -AsSecureString으로 입력한다.
$SecurePassword = Read-Host "Enter initial password for labuser01" -AsSecureString
New-LocalUser `
-Name "labuser01" `
-Password $SecurePassword `
-FullName "Lab User 01" `
-Description "Personal lab account"
Get-LocalUser "labuser01"4. 그룹에 사용자 추가
Add-LocalGroupMember `
-Group "Lab Operators" `
-Member "labuser01"
Add-LocalGroupMember `
-Group "Remote Desktop Users" `
-Member "labuser01"
Get-LocalGroupMember "Lab Operators"
Get-LocalGroupMember "Remote Desktop Users"관리자 권한이 정말 필요한 경우가 아니라면 Administrators 그룹에 넣지 않는다. Administrators 멤버는 서버 전체 제어 권한을 갖는다.
5. 사용자 폴더와 NTFS 권한
사용자별 작업 폴더를 만들고 해당 사용자와 관리자만 접근하도록 설정한다.
New-Item -ItemType Directory -Force -Path D:\Users\labuser01
icacls D:\Users\labuser01 /inheritance:r
icacls D:\Users\labuser01 /grant "labuser01:(OI)(CI)M"
icacls D:\Users\labuser01 /grant "Administrators:(OI)(CI)F"
icacls D:\Users\labuser016. 계정 상태 관리
Disable-LocalUser -Name "labuser01"
Enable-LocalUser -Name "labuser01"
Set-LocalUser `
-Name "labuser01" `
-Description "Personal lab account - active"
Get-LocalUser "labuser01" | Format-List *7. 비밀번호 변경
사용자 본인이 로그인 후 비밀번호를 바꾸는 것이 가장 좋다. 관리자가 재설정해야 할 때도 평문을 기록하지 않는다.
$NewPassword = Read-Host "Enter new password for labuser01" -AsSecureString
Set-LocalUser -Name "labuser01" -Password $NewPassword8. 점검 스크립트
로컬 계정과 중요한 그룹 멤버를 한 번에 확인하는 간단한 점검 스크립트다.
"== Local Users =="
Get-LocalUser |
Select-Object Name, Enabled, LastLogon |
Format-Table -AutoSize
"== Administrators =="
Get-LocalGroupMember "Administrators" |
Select-Object Name, ObjectClass, PrincipalSource |
Format-Table -AutoSize
"== Remote Desktop Users =="
Get-LocalGroupMember "Remote Desktop Users" |
Select-Object Name, ObjectClass, PrincipalSource |
Format-Table -AutoSize정리
Windows Server 계정 관리는 사용자 생성보다 그룹 설계가 먼저다. 업무별 그룹을 만들고, 사용자를 그룹에 넣고, 폴더나 RDP 같은 권한은 그룹 단위로 부여하는 방식이 관리하기 쉽다. 비밀번호는 명령행과 문서에 남기지 말고 SecureString 입력을 사용하며, Administrators 그룹은 꼭 필요한 계정으로 제한한다.