ActiveDirectory Users&computer에 있는 AD계정을 Excel형태의 파일로 출력해주는 간단 스크립트.

   

 ADexport.vbs

   

   

Dim ObjWb 

Dim ObjExcel 

Dim x, zz 

Set objRoot = GetObject("LDAP://RootDSE") 

strDNC = objRoot.Get("DefaultNamingContext") 

Set objDomain = GetObject("LDAP://" & strDNC) ' Bind to the top of the Domain using LDAP using ROotDSE 

Call ExcelSetup("Sheet1") ' Sub to make Excel Document 

x = 1 

Call enummembers(objDomain) 

Sub enumMembers(objDomain) 

On Error Resume Next 

Dim Secondary(20) ' Variable to store the Array of 2ndary email alias's 

For Each objMember In objDomain ' go through the collection 

   

If ObjMember.Class = "user" Then ' if not User object, move on. 

x = x +1 ' counter used to increment the cells in Excel 

   

objwb.Cells(x, 1).Value = objMember.Class 

' I set AD properties to variables so if needed you could do Null checks or add if/then's to this code 

' this was done so the script could be modified easier. 

SamAccountName = ObjMember.samAccountName 

Cn = ObjMember.CN 

FirstName = objMember.GivenName 

LastName = objMember.sn 

initials = objMember.initials 

Descrip = objMember.description 

Office = objMember.physicalDeliveryOfficeName 

Telephone = objMember.telephonenumber 

EmailAddr = objMember.mail 

WebPage = objMember.wwwHomePage 

Addr1 = objMember.streetAddress 

City = objMember.l 

State = objMember.st 

ZipCode = objMember.postalCode 

Title = ObjMember.Title 

Department = objMember.Department 

Company = objMember.Company 

Manager = ObjMember.Manager 

Profile = objMember.profilePath 

LoginScript = objMember.scriptpath 

HomeDirectory = ObjMember.HomeDirectory 

HomeDrive = ObjMember.homeDrive 

AdsPath = Objmember.Adspath 

LastLogin = objMember.LastLogin 

   

zz = 1 ' Counter for array of 2ndary email addresses 

For each email in ObjMember.proxyAddresses 

If Left (email,5) = "SMTP:" Then 

Primary = Mid (email,6) ' if SMTP is all caps, then it's the Primary 

ElseIf Left (email,5) = "smtp:" Then 

Secondary(zz) = Mid (email,6) ' load the list of 2ndary SMTP emails into Array. 

zz = zz + 1 

End If 

Next 

' Write the values to Excel, using the X counter to increment the rows. 

   

objwb.Cells(x, 2).Value = SamAccountName 

objwb.Cells(x, 3).Value = CN 

objwb.Cells(x, 4).Value = FirstName 

objwb.Cells(x, 5).Value = LastName 

objwb.Cells(x, 6).Value = Initials 

objwb.Cells(x, 7).Value = Descrip 

objwb.Cells(x, 8).Value = Office 

objwb.Cells(x, 9).Value = Telephone 

objwb.Cells(x, 10).Value = EmailAddr

objwb.Cells(x, 11).Value = WebPage 

objwb.Cells(x, 12).Value = Addr1 

objwb.Cells(x, 13).Value = City 

objwb.Cells(x, 14).Value = State 

objwb.Cells(x, 15).Value = ZipCode 

objwb.Cells(x, 16).Value = Title 

objwb.Cells(x, 17).Value = Department 

objwb.Cells(x, 18).Value = Company 

objwb.Cells(x, 19).Value = Manager 

objwb.Cells(x, 20).Value = Profile 

objwb.Cells(x, 21).Value = LoginScript 

objwb.Cells(x, 22).Value = HomeDirectory 

objwb.Cells(x, 23).Value = HomeDrive 

objwb.Cells(x, 24).Value = Adspath 

objwb.Cells(x, 25).Value = LastLogin 

objwb.Cells(x,26).Value = Primary 

   

' Write out the Array for the 2ndary email addresses. 

For ll = 1 To 20 

objwb.Cells(x,26+ll).Value = Secondary(ll) 

Next 

' Blank out Variables in case the next object doesn't have a value for the property 

SamAccountName = "-" 

Cn = "-" 

FirstName = "-" 

LastName = "-" 

initials = "-" 

Descrip = "-" 

Office = "-" 

Telephone = "-" 

EmailAddr = "-" 

WebPage = "-" 

Addr1 = "-" 

City = "-" 

State = "-" 

ZipCode = "-" 

Title = "-" 

Department = "-" 

Company = "-" 

Manager = "-" 

Profile = "-" 

LoginScript = "-" 

HomeDirectory = "-" 

HomeDrive = "-" 

Primary = "-" 

For ll = 1 To 20 

Secondary(ll) = "" 

Next 

End If 

   

' If the AD enumeration runs into an OU object, call the Sub again to itinerate 

   

If objMember.Class = "organizationalUnit" or OBjMember.Class = "container" Then 

enumMembers (objMember) 

End If 

Next 

End Sub 

Sub ExcelSetup(shtName) ' This sub creates an Excel worksheet and adds Column heads to the 1st row 

Set objExcel = CreateObject("Excel.Application") 

Set objwb = objExcel.Workbooks.Add 

Set objwb = objExcel.ActiveWorkbook.Worksheets(shtName) 

Objwb.Name = "Active Directory Users" ' name the sheet 

objwb.Activate 

objExcel.Visible = True 

objwb.Cells(1, 2).Value = "SamAccountName" 

objwb.Cells(1, 3).Value = "CN" 

objwb.Cells(1, 4).Value = "FirstName" 

objwb.Cells(1, 5).Value = "LastName" 

objwb.Cells(1, 6).Value = "Initials" 

objwb.Cells(1, 7).Value = "Descrip" 

objwb.Cells(1, 8).Value = "Office" 

objwb.Cells(1, 9).Value = "Telephone" 

objwb.Cells(1, 10).Value = "Email" 

objwb.Cells(1, 11).Value = "WebPage" 

objwb.Cells(1, 12).Value = "Addr1" 

objwb.Cells(1, 13).Value = "City" 

objwb.Cells(1, 14).Value = "State" 

objwb.Cells(1, 15).Value = "ZipCode" 

objwb.Cells(1, 16).Value = "Title" 

objwb.Cells(1, 17).Value = "Department" 

objwb.Cells(1, 18).Value = "Company" 

objwb.Cells(1, 19).Value = "Manager" 

objwb.Cells(1, 20).Value = "Profile" 

objwb.Cells(1, 21).Value = "LoginScript" 

objwb.Cells(1, 22).Value = "HomeDirectory" 

objwb.Cells(1, 23).Value = "HomeDrive" 

objwb.Cells(1, 24).Value = "Adspath" 

objwb.Cells(1, 25).Value = "LastLogin" 

objwb.Cells(1, 26).Value = "Primary SMTP" 

End Sub 

MsgBox "Done" ' show that script is complete




'기술(MS,Web,Windows,AWS) > [MS]Active Directory' 카테고리의 다른 글

DNS 과정  (0) 2016.03.10
AD Active Directory 핵심 정리  (0) 2016.03.10
AD 기초3 물리적구성요소  (0) 2016.02.07
AD 기초2 논리적구성단위  (0) 2016.02.07
AD 기초1 정의,핵심  (0) 2016.02.07

 

 

 

 

1. Active Directory 란 ?

   

AD는 네트워트상의 모든 리소스에 관한 정보(사용자 및 컴퓨터, 그룹 등)를 논리적 계층 구조로 중앙 저장소에 저장하여

네트워크상에서 인증을 통해서 언제 어디서라도 그 리소스를 검색하고, 액세스 할 수 있게 해주는 디렉터리 서비스이다.

   

   

① DNS와 통합

   

AD는 DNS(Domain Name System)를 통해 이름 해석 기능, 해당 개체의 위치 정보까지 제공

사용자, 주변 장치 등의 정보들을 관리자가 통합 관리할 수 있도록 해주는 서비스

   

② 확장성

   

관리자가 새로운 클래스를 스키마에 추가 하거나 기존의 크래스에 새로운 속성을 추가 할 수 있다.

스키마는 디렉토리에 저장할 수 있는 각 개체 클래스의 정의와 클래스의 속성을 말한다.

MS 솔루션이 설치될 때 마다 해당 솔루션 기반 데이터베이스가 확장이 되는 구조

   

③ 정책을 기반으로 하는 관리

   

디렉토리 개체와 도메인 자원에 접근할 때 적용되는 모든 권한이 정책을 통해 관리된다

   

④ 정보 보안

   

AD의 보안 기능은 사용자 인증과 접근 권한 제어이며. 사용자 인증은 중앙에서 관리 하며 접근 권한 제어는 AD의 각 개체뿐 아니라 각 속성에서도 정의가 가능하다.

   

   

   

   

   

   

Active Directory(AD) : 네트워크 상으로 나눠져 있는 여러 가지 자원을

중앙의 관리자가 통합하여 관리할 수 있다.

   

Active Directory에 사용되는 용어에 대한 간단한 설명

디렉토리 서비스 : 분산된 네트워크 관련 자원 정보를 중앙의 저장소에 통합시켜 놓음으로써 사용자는 중앙의 저장소를 통해 원하는 네트워크 자원에 대한 정보를 자동으로 취득하여 그 자원에 접근할 수 있다.(네트워크 자원은 계정,프린터 등)

Active Directory 도메인 서비스 (AD DS) : 사용자, 주변 장치 등의 정보를 네트워크 상에 저장하고 이 정보들을 관리자가 통합하여 관리하도록 해준다. AD DS를 사용하기 위해서는 DNS 서버를 설치해야 한다.

도메인(Domain) : AD의 기본이 되는 단위로, 관리를 하기 위한 하나의 큰 단위의 범위를 표현하며, 관리를 위해서 지역적인 범위로 구분될 수 있다.(Ex : 나주 본사, 서울 지사)

트리(Tree) : 트리는 도메인의 집합

포리스트(Forest) : 두 개 이상의 트리로 Active Directory가 구성된 것 (Ex : AD로 구성된 회사가 다른 회사와 제휴를 맺어 비지니스 관계를 가지는 경우)

도메인<트리<포리스트 관계이다.

사이트(Site) : 지리적으로 떨어져있고, IP 주소대가 다른 묶음

트러스트(Trust) : 도메인 또는 포리스트 사이에 신뢰할지 여부에 대한 관계를 나타내는 의미, 같은 포리스트 안의 도메인 사이에는 상호 양방향 전이 트러스트를 갖는다. 이 외에도 한쪽 방향의 신뢰관계만 맺는 경우를 단방향 전이 트러스트라고 한다.

a->b->c->d 에서 단계를 줄이기 위해 a->d로 바로가기 트러스트 관계를 맺을 수도 있다.

조직 구성 단위(Organizational Unit, OU) : OU는 도메인 안세서 세부적인 단위로 나누는 것

(Ex : 서울 지사에서 엔지니어부, 영업부 등의 부서로 나누면 이러한 부서를 OU라고 할 수 있다.)

도메인 컨트롤러(Domain Controller, DC) : 로그인, 이용 권한 확인, 새로운 사용자 등록, 암호 변경, 그룹 등을 처리하는 기능을 하는 서버 컴퓨터

AD 도메인 서비스를 구현할 때는 도메인에 하나 이상의 DC를 설치해야 한다.

읽기 전용 도메인 컨트롤러(Read Only Domain Controller, RODC) : RODC는 주 도메인 컨트롤러로부터 AD와 관련된 데이터를 전송받아서 저장한 후 사용하지만 스스로 데이터를 추가하거나 변경하지는 않는다.

(Ex : RODC를 사용하는 경우는 주로 본사와 멀리 떨어진 지사에서 도메인 컨트롤러가필요한데

별도의 관리자를 두기 어려울 때 주 도메인 컨트롤러의 부하를 반담하기 위해서 주로 사용된다.)

글로벌 카탈로그(Global Catalog, GC) : AD 트러스트 내의 도메인들에 포함된 개채에 대한 정보를 수집하여 저장하는 통합 저장소로 AD를 구성하면 가장 먼저 설치하는 도메인 컨트롤러가 글로벌 카탈로그 서버로 지정된다.

(Ex : 사용자의 경우 사용자의 이름, 전체 이름, 로그인 아이디와 비밀번호 등의 정보가 글로벌 카탈로그에 저장된다.)

 

 

 

 

 




'기술(MS,Web,Windows,AWS) > [MS]Active Directory' 카테고리의 다른 글

DNS 과정  (0) 2016.03.10
AD export to 엑셀  (0) 2016.03.10
AD 기초3 물리적구성요소  (0) 2016.02.07
AD 기초2 논리적구성단위  (0) 2016.02.07
AD 기초1 정의,핵심  (0) 2016.02.07




SQL STD----ENT 버전 비교

ENT의 장점(STD 불가한 기능)


1. 빠른 복구 : 서버 재시작 시 시스템 구동이 STD보다 빠름, 서비스시작속도 또한 빠름

2. 데이터 압축 : 데이터 스토리지 공간 정략

3. 리소스거버너 : 리소스 사용제약을 통해 서비스들 간섭을 최소화 할 수 있음

4. Hot Add 메모리 및 CPU : 향후 사용량 증가에 따른 확장이 용이

5. 대용량 데이터 관리가 용이 : 테이블 및 인덱스 분할 가능

6. TED 및 Audit 기능 : 개인정보보호법 등 정보 보호 시 응용프로그램 변경없이 암호화가능, 사용자 해동감시 가능

7. AlwaysOn가용성그룹 가능, STD는 불가

8. 장애조치 클러스터 가능, STD는 최대 2노드까지

9. 데이터베이스 미러링 가능, STD는 동기화모드만 지원

10. 데이터베이스 스냅숏 , STD는 불가

11. 온라인 인덱싱, 온라인 스키마 변경, STD는 불가

12. 여러 파일스트림 컨테니어, STD는 불가

   











MOVE


“{Mount database on the server with preference 1 (with colors)}”

Get-MailboxDatabase | Sort Name | ForEach {$db=$_.Name; $xNow=$_.Server.Name ;$dbown=$_.ActivationPreference| Where {$_.Value -eq 1};  Write-Host $db “on” $xNow “Should be on” $dbOwn.Key -NoNewLine; If ( $xNow -ne $dbOwn.Key){Write-host ” WRONG” -ForegroundColor Red; Move-ActiveMailboxDatabase $db -ActivateOnServer $dbOwn.Key -confirm:$False} Else {Write-Host ” OK” -ForegroundColor Green}}






Verify 


“{Verify if the database is mounted on the server with preference 1 (with colors)}”

Get-MailboxDatabase | Sort Name | ForEach {$db=$_.Name; $xNow=$_.Server.Name ;$dbown=$_.ActivationPreference| Where {$_.Value -eq 1};  Write-Host $db “on” $xNow “Should be on” $dbOwn.Key -NoNewLine; If ( $xNow -ne $dbOwn.Key){Write-host ” WRONG” -ForegroundColor Red; } Else {Write-Host ” OK” -ForegroundColor Green}}













'기술(MS,Web,Windows,AWS) > [MS]Exchange2013' 카테고리의 다른 글

메일(메시지) 헤더 분석편 References  (0) 2016.05.25
ISAPI Filter  (0) 2016.03.11



가능한 원인 1. 해당 웹응용프로그램(웹사이트) Pool 상태 확인

시작 - 실행 - inetmgr (IIS 관리자 구동 후) 응용 프로그램 풀 확인

해당 사이트가 바인딩된 응용프로그램 풀의 상태가 중지되어있음 -> 다시 시작

다시 죽는다면, 종료되는 응용프로그램 풀은 지우고 새로 응용프로그램 풀을 추가


가능한 워인 2. 해당 웹응용프로그램 Pool.config 파일 내에 인증정보 (예를들어 NAS접근계정 등) 삭제 후 재시도

가상서버 WEB서버 VHDX를 복사하여, 재구성한 웹서버에서 동일한 문제가 발생했었음







윈도우 서비스 등록 삭제 방법. 

1. 서비스 등록

명령창에서 실행 합니다..  (cmd , 시작->실행->cmd 입력)
sc create "New Service이름" binPath= "C:\TestFolder\TestApp.exe"


2. 서비스 삭제

sc delete "New Service이름"






DOM 문서객체모델

문서, 객체, 모델

문서 = 노드의 집합

노드 = 요소노드, 텍스트노드, 속성노드

요소노드 = 웹상에서 제공되는 문서의 가장 기본적인 벽돌조각

             요소는 다른 요소를 포함할 수 있다(html 제외 한 모든 요소)

             요소노드 = 텍스트노드 + 속성노드

태그 = 요소의 이름을 붙인 것

텍스트노드 = P태그 안에 적힌 텍스트

속성노드 = P태그의 title속성


DOM에서 제공되는 4개 메소드

document.getElementById("aaa")

document.getElementsByTagName("aaa")

getAttribute("aaa")

setAttribute("aaa","bb")







팀버너스리 웹의 역사에서도 언급되었듯이 

웹의 하위 기반기술은

1. HTTP 전송규약
 HTML은 HTTP로 전송됨

2. HTML 하이퍼미디어 포맷

3. URI 리소스식별자
 HTML의 링크는 URI를 이용


OSI 7레이어                       TCP/IP 프로토콜

7 어플리케이션 레이어          어플리케이션 HTTP, FTP, DNS, SNMP, telnet,SMTP, TFTP 
6 Presentation                  어플리케이션
5 Session                       어플리케이션
4 Transport                TCP / UDP
3 Network                    IP, ICMP, ARP , RARP
2 DataLink                  네트워크 인터페이스
1 Physical                  네트워크 인터페이스


포트개념
TCP/UDP 전송프로토콜에서 사용되는 가상의 논리적 통신연결부, 아래 번호로 구별되며 IP와 함께 사용됨

0~ 65535
0~1023 알려진포트
1024~49151 Registered Port
49152~65535 동적포트




그러고보니 50년도 안된 기술이네


1969 미 국방성 ARPANET 미국 서부 대학교들만 연결

1972 이메일 탄생

1974 인터넷 용어 탄생

1975 TCP/IP개발, 시운전 개시   
     컴퓨터 간, 혹은 다른장치 간 데이터통신을 위해 정해놓은 규약
     Transmission Control Protocol / Internet Protocol
     1) TCP는 데이터를 패킷단위로 분해
     2) IP는 패킷을 전송하는 역할을 담당(주소 등 정보를 포함한 패킷헤더를 가짐)
     3) 중간중간 라우터들은 패킷헤더의 IP를 검사하여 최종 목적지로 전달
     4) 목적지 패킷검사 후 TCP가 데이터로 다시 재결합시킴

1979 USENET구축, 뉴스그룹 생성

1982 TCP/IP 도입(인터넷 개념 정립됨)

1984 DNS 제시

1986 NSFNET 구축 (미국 국립 과학재단, 90년대 초까지 전 세계 인터넷의 백본으로 불리어지고 사용됨)

1991 팀버너스리 WWW 개발

1993 모자이크 웹브라우져 등장, WWW 사용율 급증함.

1994 넷스케이프 네비게이터 1.0 발표, W3C구성

1995 NSFNET해체, 사설 ISP 업체에서 인터넷 운용 사설백본 등장 확대

1996 MS Internet Explorer 발표

1998 전세계 인터넷 사용자 수 1억명 돌파





팀 버너스리

1980년 영국 옥스퍼드를 졸업한 한 젊은이가 유럽입자물리학연구소(CERN)와 6개월간의 프로그래밍 계약을 체결.

방대한 자료를 관리하는 시스템 개발

CERN은 2차대전이 끝난 후인 1953년 9월 유럽의 20개국가가 미국의 과학기술을 따라잡기 위해 만든 합동연구소.

수십개의 나라에서 온 수천명의 과학자와 엔지니어들에 의해 방대한 연구성과를 쏟아내고 있었다.

이를 계기로 팀은 후일 월드와이드웹으로 발전하게 될 간단한 프로그램 개발에 들어가게 된다. 그는 업무 시간 외에 틈틈이 프로그래밍에 공을 들였다. 그 결과 나온 것이 인콰이어(ENQUIRE) 프로그램. WWW의 시초


계약을 마치고 CERN을 떠났다가 다시 돌아온 84년. 그는 예전에 만든 인콰이어를 발전시키면 연구소의 과학자들이 자료를 공유하는 시스템을 만들 수 있을 것이라고 생각했다.

“전세계에 분산된 하이퍼텍스트를 연계시키는 시스템을 만들어 보겠습니다.”

1989년 비공식적으로 진행

마이크 센달 팀장은 팀이 뜻을 굽히지 않자 그에게 당시로는 최첨단인 애플의 넥스트컴퓨터를 한대 사서 건네주었다.

​1990년 팀은 마우스로 클릭하는 것만으로 하이퍼텍스트 문서를 편집할 수 있는 SW를 완성했다.

그리고 1년 만에 하이퍼텍스트를 클릭해 전세계 인터넷콘텐츠를 연결해 공유할 수 있도록 해 주는 검색시스템을 만들었다.

“WWW프로젝트는 정보검색기술과 하이퍼텍스트를 결합해 쉽고 강력한 글로벌 정보시스템을 만들기 위한 것.

 이 프로젝트는 훨씬더 학술적인 정보가 자유롭게 누구에게나 도달할 수 있어야 한다는 철학과 함께 시작되었습니다. 

또한 정보가 국제적으로 퍼져있는 팀들 안에서 정보를 공유할 수 있도록 하고, 지원그룹에 의해 정보가 전파되는 것을 목표로

1991년 8월 6일 오전. CERN연구원인 팀 버너스리 박사는 alt.hypertextgroup 란 이름의 뉴스그룹에 보낸 글

 세계최초로 발명한 본격적인 하이퍼텍스트 시스템을 '월드와이드웹(World Wide Web)'이라 불렀다.

 하이퍼링크 기반의 문서구조 개념

‘하이퍼텍스트(Hypertext)' 링크 

인터넷에서 웹주소인 URL(Uniform Document Idenfier)‘

하이퍼텍스트문서들을 주고받기 위한 '주파수를 맞출‘ 규약, HTTP(Hyper Text Transfer Protocol)

1991년. 인터넷에서는 또다른 웹 '고퍼(Gopher)'가 한창 인기. 하이퍼텍스트기능만 없을 뿐 그밖에는 고퍼가 웹보다 나아 보였음?

웹서버가 넥스트컴퓨터 전용, 반면 고퍼는 다양한 컴퓨터에서 가동

팀과 그의 동료는 자신들이 개발한 SW를 모두 공개했고 웹은 점차 사람들의 관심을 끌기 시작함

이듬해 결정적 계기 

일리노이대 국립슈퍼컴퓨팅센터(NSCA) 시급 6달러85센트를 받고 일하던 마크 안드리센이란 학생

웹브라우저 모자이크 개발

1993년 4월30일 CERN 웹기술 라이선스 없음을 문서로 공표

이듬 해 3월 

마크 안드리센은  모자이크커뮤이케이션스 설립 = 넷스케이프

일반인들을 위한 브라우저 넷스케이프 내비게이터

95년 상장



추가.

미국 과학계의 대부 버니버 부시

인간의 연상능력

한 항목을 파악하면 그 다음 항목이 마음의 연상에 의해 순간적으로 떠오르게 됨
이 작용은 뇌세포가 이루고 있는 복잡한 그물모양의 궤적에 따라 일어남


기억을 확장해 주는 기계(MeMory Extender)’, 줄여서 ‘(MeMEx)’

종이자료를 20분의 1로 줄여 보관할 수 있는 마이크로필름 저장장치, 건판사진, 그리고 방대한 인덱스로 표시된 지식의 저장창고를 만들어 몇 개의 키보드만 치면 어떤 지식의 부분이라도 접근할 수 있게 하는 아날로그 컴퓨팅의 꿈을 표현하고 있었다.

​부시의 글은 사람들의 엄청난 언론의 관심을 끌었다.

​그의 연상 접근 방식은 비록 아이디어에 그침

그러나 하이퍼텍스트를 사용하는 웹 정보검색의 효시






+ Recent posts