교재: 6425C – Configuring and Troubleshooting Windows Server 2008 Active Directory Domain Services
1일차
AD는 인프라라서 ‘하고 말고’의 문제가 아님
- 보안 인프라
- 리소스 인프라
- 권한 관리 인프라
AD가 없으면 사용자 컴퓨터에 수많은 유틸리티를 설치해야 함
DRM이 한 두 개도 아니고… 매체 제어 시스템이라든지… AD가 안 되어 있어서 그걸 쓰는 거예요. 빠른 길을 두고 돌아서 가는 경우가 많다.
정보 보호
- IDA: ID & Access
- AAA: 인증, 권한 부여, 계정(Accounting)
- CIA: 기밀성, 무결성, 가용성, 신뢰성
위 3가지를 다 지원하는 솔루션이 AD.
ID와 액세스
- ID: 사용자 계정(& 저장하는 DB)
- 보안 주체: 액세스와 권한 부여의 대상
- 사용자, 컴퓨터, 그룹
- SID로 고유성을 나타낸다
Resource: 공유 폴더
- 보안 설명자로 보안됨: 어떤 ID가 내 리소스에 접근 가능한가?
- ACL: Access Control List
- 두 가지임.
- DACL: 읽기, 쓰기… ACE(퍼미션)로 이루어져 있음.
- 흔히 우리가 보는 것은 DACL임.
- SACL: System …
- Audit(감사)에 대한 권한
- 어떤 ID가 와서 무엇을 했는지(누가/무엇에/언제 접근?) 기록
- ACE: Access Control Entry
- 퍼미션
ID와 PW를 합쳐 Credential이라 함
- 인증은 크게 로컬/원격 인증으로 나뉨
토큰
- 사용자 SID
- 멤버 그룹 SIDs
- 권한
- 기타 액세스 정보
보안 설명자
- SACL
- DACL
권한 부여에 필요한 3가지 구성 요소
- 리소스
- 액세스 요청
- 보안 토큰
사용자의 액세스 토큰의 내용이 ACL의 ACE에 들어 있는지 봄
[따로 놀 때]Workgroup 권한 부여
SAM 데이터베이스(레지스트리… 일반적으로 보이지 않음 -> 특정 권한으로 실행해야 보임)
[액티브 디렉터리 도메인]MS에서는 도메인을 삼각형으로 표시함.
도메인 전체를 제어하는 것이 DC(Domain Controller)
- AD DS가 돌아가는 컴퓨터가 바로 도메인 컨트롤러임.
- 중앙에서 인증을 다 해준다.
- 데이터베이스가 있다.
도메인에 조인된 멤버 서버
ID와 Access에 대한 인프라가 바로 AD임.
- User, Group, Computer, 기타 ID에 대한 정보 저장
- ID 인증
- AD에서 사용되는 Kerberos 인증은 SSO 제공. 사용자는 한 번만 인증된다.
- Kerberos는 국제 표준
- Access Control
- 감사 내역(Audit trail) 제공
AD의 IDA 서비스
- AD LDS: AD 환경의 App 개발할 때(AD의 스키마를 건드려서 코딩하는데, 메인 AD DB의 것을 잘못 컨트롤하면 문제가 생길 수 있으니 AD의 스키마를 복제해서 AD LDS로 개발한다고.)
- AD CS: 암호화에는 인증서가 따라가죠.
- AD RMS: 국내에서는 많이 안 쓰는데 해외에서는 많이 씁니다. DRM과 비슷한 기능. 커널 모드가 아니라 AD 환경에서 동작. 오피스 문서를 누가 편집하고 열어 볼 지, 메일도 회신이나 출력이나 여러 권한을 편집 가능. AD 환경을 써서 DRM 솔루션을 대체할 수 있음
- AD FS: Public/Private Cloud 상호 인증
- 포리스트가 서로 다른 회사가 합병이 되었을 때
- 내 아이디로 이쪽/저쪽을 인증해야
- 마치 미국의 연방들이 서로 인증하듯이
실제 일어나는 현상을 구현한 기술들이 많아요.
AD는 데이터베이스다
- 각 레코드는 개체다
- 사용자
- 컴퓨터
- 그룹 등
- 각 필드는 특성
- 로그온 이름
- SID
- 암호
- 설명
- 멤버십 등
- ID(보안 주체 또는 계정{Accounts})
서비스
- Kerberos
- DNS
- 컴퓨터를 찾을 수 있는 가장 좋은 방법. 하지만 일일이 외우긴 힘들다. 이름으로 찾으려면 숫자를 이름으로 풀이해주는 놈이 필요하죠. 그게 DNS.
- 복제
- AD DC 한 대만 있어서 문제가 생기면? 재앙. 여러 대를 두고 복제해야 함
**Novell의 NetWare가 디렉터리 서비스 시장의 75% 차지했으나 MS의 AD가 DNS와 결합되면서 역전. 현재는 디렉터리 서비스의 전세계 75%가 MS AD가 됨.
*** DNS + Directory Service = Active Directory
데이터베이스에 액세스하기
- Windows 도구
- 사용자 인터페이스(Active Directory 사용자 및 컴퓨터, ADSI, 구성 요소)
- APIs(.NET, VBScript, PowerShell)
- LDAP(국제 표준 프로토콜)
- 표준도 지원하고 특화된 추가 기능 제공
AD 데이터 저장소
- %systemroot%\NTDS\ntds.dit
- 논리 파티션
- 도메인 네이밍 컨텍스트(Domain naming context)
- 스키마
- 구성
- 글로벌 카탈로그(부분 특성 세트, PAS)
- 부분 특성 세트: Indexing해 놓음. 마치 홈쇼핑 카탈로그처럼 찾기 쉽게
- DNS(애플리케이션 파티션)
- 논리 파티션
- SYSVOL
- %systemroot%\SYSVOL
- 로그온 스크립트
- 모든 클라이언트에 적용 가능
- 정책
마치 붕어빵을 굽듯 ‘틀’에 대한 정의가 스키마임.
- AD를 쫙 구축해 놓고 Exchange Server 등을 설치하면 스키마가 수정/확장됨.
- AD는 진화한다.
- 한번 수정되면 되돌리기 힘듦
- 스키마 변경 작업이 있을 때 반드시 백업을 해야 한다.
AD DS 역할을 수행하는 서버
- AD DB(NTDS.dit)와 SYSVOL을 호스트
- DC간에 복제된
- Kerberos KDC 서비스: 인증 수행
- 기타 AD 서비스
모범 사례
- 가용성: 도메인당 최소 두 대 이상의 DC
- 보안: 서버 코어(Server Core)와 RODCs
- Server Core: AD를 구성할 때 GUI로 작업한 뒤 Production 환경에서 GUI를 분리해서 배포하면 되겠지요? 윈도우 서버 2012 이상에서 가능.
- RODCs
- Read Only DCs: 읽기 전용 DC
- 전체 복제를 하지 않고, 나이지리아 등 해당 나라의 사용자에 대한 정보만 복제, Master에서 받을 수만 있기 때문에 잘못된 DC의 내용을 내려받을 일이 없어지는 장점이 있음.
- 메인 DC가 없이 RODC만 만들어 줄 수는 없다. RODC는 캐싱해주는 역할만. 보안이 취약한 곳에서 사용.
AD 스키마
[조직 단위]개체(Objexcts)
- 사용자
- 컴퓨터
조직 단위
- Domain 내에서 개체를 그룹으로 묶는데 사용되는 컨테이너
- OU 생성으로 할수 있는 일?
- 관리 권한 위임
- 그룹 정책 적용
▲ 지역에 따라
▲ 액세스 권한을 나누는 것도 방법이다.
도메인
- 하나 이상의 DC 필요
- 모든 DC는 Domain NC(Domain naming context)를 복제한다
- 도메인은 사용자, 그룹, 컴퓨터 등이 생성되는 컨텍스트
- ‘복제 경계’
- 동일한 도메인에서는 ‘홍길동’이 하나만 생기지만 다른 도메인에 가면 복제
- 신뢰된 ID 저장소
- 모든 DC는 해당 도메인의 어떤 로그온도 인증 가능
- 인증에 대한 모든 정보
- 모든 DC는 해당 도메인의 어떤 로그온도 인증 가능
- 도메인은 특정 관리 정책에 대한 Max 범위(경계)
- 암호
- 8자 이상, 복잡성 등
- 잠금
- 5번 틀리면 잠긴다 등
- 암호
도메인 트리, 서로 다른 트리끼리는 트러스트.
AD는 자연계를 묘사하고 있음
- 나무(Tree)
- 숲(Forest)
포리스트에 처음 만든 도메인: 포리스트 루트 도메인이자 도메인의 루트 도메인.
- 처음 AD를 구축할 때 적는 도메인 명이라서 루트 도메인일 뿐.
- 기업간에 AD FS를 사용
- A 기업의 계정이 B 기업의 리소스에 접근 가능
조직의 구조를 도메인에 반영하는 것은 최악의 결정
- ‘지역’에 따라 나누면 적어도 없어지지는 않음.(하지만 좋은 선택은 아님)
- 조직은 OU로 나누어라
Tree
- treyresearch.net의 자식으로 antarctica.treyresearch.net
- proseware.com은 전혀 다른 도메인임
DC가 하나만 있으면
- 인증도 못 하고 찾지도 못함
- 그래서 여러 대를 둠
복제
- 멀티마스터 복제(모든 방향으로 다 복제가 됨. 스타 토폴로지 형태로 복제)
- DB의 개체와 특성
- SYSVOL의 콘텐츠가 복제됨
- Windows 2000부터 제공
- 옛날에는 PDC(Primary DC) 형태여서 하나는 주고, 하나는 받는 역할이었는데 이제는 서로서로 복제됨
사이트(Sites)
- 병렬적인 개념
- 같은 네트워크 대역 단위로 나누는 것
- Default-First-Site-Name
- 속도 효율을 위해 나눌 수 있음
- 어떤 복제 트래픽이 해당 사이트 안에서 발생하도록
- 나이지리아와 한국에 각각 DC가 한 대씩
- 사이트 내부에서 서로 복제하고
- 브리지 헤드 서버(한국-나이지리아 간 복제용)를 통해서 나머지 것이 복제되는 형태로
글로벌 카탈로그
- 포리스트 범위의 특성 집합을 인덱싱
- 많이 액세스되는 특성에 대해
기능 수준
- AD DC 중에서도 맨 처음 올린 DC의 버전을 따라감
- 2003의 AD 내용을 복제한 뒤 제거하고 2012만 살림
- 2012로 수준을 올리면 못 내려옴
- 성장만 하고 내려갈 수는 없음
- 기능 수준을 올린 후 이전 윈도우 버전을 실행하는 도메인 컨트롤러를 추가할 수 없다
- 작업 마스터(FSMO) 역할을 넘겨준 뒤 이전해야 함
- 역할 이전을 못하고 DC가 죽으면 해당 권한을 뺏어야 함
DNS와 애플리케이션 파티션
- DNS가 있기에 ‘Active’ Directory이다.
- DNS 도메인 이름과 액티브 디렉터리의 논리 도메인 단위 사이에 일대일 관계
- 도메인에서 컴퓨터와 서비스를 찾는데 전적으로 DNS에 의존
트러스트 관계
- 또 다른 도메인에 신뢰된 ID 저장소 개념 확장
- AD Sites 및 Trust 도구에서 작업 가능
- 도메인 트리가 다른 경우 트러스트 가능
AD 도메인 서비스 설치
- 2008 R2까지 DCPROMO.EXE 실행
- 2012에서는 없음
- 반드시 서버 관리자를 통해서 해야 함
- 마법사가 모든 길을 가이드 해준다.
- 대규모 회사에서는 데이터베이스나 로그 파일을 시스템 폴더에 두지 않음
- 분리하는 게 좋음
새 포리스트 생성 준비
- DNS 이름/NETBIOS 이름
- 기전 윈도우 버전 DC 지원 여부 체크
- DNS 역할 추가
- IPv4
실습1
L1-1(Volume 2 교재)
DC 올리고 포리스트 수준 올려보고, VM 되돌리기까지 완료.
AD 관리 스냅인
- AD 사용자 및 컴퓨터
- 개체 관리
- 사용자, 그룹, 컴퓨터, 프린터, 공유 폴더 등
- 스키마 관리
- regsvr32 schmmgmt.dll
- mmc에서 스냅인으로 ‘AD Scheme’ 추가
AD 관리 도구 찾기
- AD 멤버 클라이언트 또는 서버에 RSAT 설치
- Remote Server Administration Tools
- Windows Vista SP1 이상에서 사용 가능
- 서버 운영체제가 아니더라도 관리 작업 수행 가능
AD Administrative Center
▲ 프로그래밍으로 확장 가능
**최소한 하나의 스크립트 언어를 잘 다루면 좋다.(ㅠ_ㅠ 중간에 수업 못 들음)
개체의 위치를 찾기 위한 옵션
검색하기 원하는 범주를 입력한다.
Object 탭에서 해당 사용자의 위치를 알 수 있음
saved query에서 new -> query
(값이 있는 것만 가져옴)
(비밀번호가 만료되지 않은 사용자만 가져옴)
(folder를 만들어서 정리하는 것도 가능, Export도 물론 동작함.)
(검색 대상을 변경하거나 다양한 조건으로 검색 가능)
Active Directory 관리 센터에서 Global Search를 눌러 아래와 같이 DC를 선택한 후
Global Catalog 서버만 찾아보자
DC 중에서 글로벌 카탈로그 서버를 찾아준다.
그룹 정책을 디자인하는 역할 자체가 큰 Role임. 그룹 정책 디자인하려면 먼저 컨설팅을 받음. 그룹 정책은 기술이 아니라 기획/보안임.
로그온 스크립트. 사용자별로 특정 공유 폴더 연결, 로그오프시 제거
화면보호기 ON, 돌아올 때 암호 넣도록.