본문 바로가기
Virtualization & Cloud/Server & Linux

Windows Server 2022 (4) - 서버 운영을 위한 필수 사항, 원격 접속, DNS 서버, Active Directory

by TwoJun 2024. 9. 13.
728x90
반응형

2024-09-06(FRI)

 

 

01. 금일 예정

(1) 서버 운영을 위한 필수 사항

(2) 원격 접속 서버

(3) DNS(Domain Name Service) 서버

(4) DHCP(Dynamic Host Configuration Protocol) 서버 

 

 

 

1. PowerShell LAB 

1-1. Windows Scripting Host 활용 

 

 

 

1-2. 스크립트를 별도의 .ps 파일로 저장한 후 불러오기

(1) 위와 같이 적고 스크립트 파일로 저장한다.

 

(2) 이후 PowerShell에서 실행시킨다.

 

 

 

 

 

 

 

 

 

2. 원격 접속 진행

2-1. Open SSH 설치

(1) First VMs를 초기 상태의 스냅샷으로 복원한다.

 

 

(2) 해당 커맨드를 사용해서 서비스 관리자를 실행한다.

 

 

(3) Windows Update 서비스를 활성화한다.

 

 

(4) 이후에 설정 → 앱 및 기능  → 선택적 기능에서 OpenSSH 서버 기능을 활성화시킨다.

 

 

(5) Progress Bar가 진행되면서 이 작업이 끝나면 OpenSSH 서버 기능이 활성화된다.

 

 

 

 

2-2. 원격 접속 진행

(1) First VMs에서 PowerShell에서 sshd 서비스를 활성화시킨다.

 

 

(2) WinClient VMs로 접속해서 Telnet 접속을 진행한다.

- 설정 > 선택적 기능 > Open SSH Client를 설치한다.

 

 

(3) PowerShell ISE를 관리자 권한으로 실행 후 위와 같은 스크립트를 작성 후 스크립트를 실행시킨다.

 

(4) 위와 같이 원격 접속에 성공한다.

 

 

 

 

2-3. Server Core 환경으로 원격 접속 진행 (PowerShell ISE에서 스크립트 파일을 생성해서 진행하는 것도 가능)

(1) 서버 코어에서 위와 같은 커맨드를 실행시킨다.

 

(2) 이후 WinClient VMs로 접속해서 위와 같은 커맨드를 실행한다.

(3) 서버 코어의 패스워드를 입력한다.

 

(4) 위와 같이 서버 코어에 원격으로 접속을 수행할 수 있다.

 

 

 

 

2-4. 5가지 원격 접속의 장단점 비교

  telnet 서버 ssh 서버 vnc 서버 원격 데스크톱 powershell
속도 매우 빠름 매우 빠름 매우 느림 빠름 매우 빠름
GUI 지원 미지원 미지원 지원 지원 미지원
보안 취약 강함 취약
(SSH와 연동해서 보완 가능하다)
강함 강함
사용 가능 커맨드 CLI CLI 제한 없음 제한 없음 모든 powershell 커맨드 사용
클라이언트
프로그램
기본 내장됨 기본 내장됨
(설치 필요) 
별도 설치 필요 기본 내장됨 기본 내장됨
라이센스 비용 유료 또는 무료 무료 무료 추가 비용 없음
(원격 데스크톱 서버의 경우 별도의 라이센스 필요(
추가 비용 없음

 

 

 

 

 

 

 

 

3. DNS(Domain Name Service) 서버

3-1. DNS(Domain Name Service)

(1) DNS 서버는 실제 서버에 접속하려면 서버의 IP 주소가 필요한데 모든 서버의 주소를 외우고 있는 건 사실상 불가능하다. 따라서 사람이 인식하기 쉬운 도메인 네임을 지정해 놓고, 해당 도메인 네임을 각 서버의 IP 주소로 변환시켜 주는 작업을 수행하는 서버를 DNS 서버라고 정의한다.

 

 

 

 

3-2. LAB : host 파일 설정과 DNS 서버 설정 확인

(1) First VMs를 초기 상태 스냅샷으로 복원한다.

 

 

(2) 로컬 서버 메뉴에서 인터넷 익스플로러 보안 강화 구성을 비활성화한다.

 

 

(3) 해당 경로에서 hosts 파일을 메모장으로 실행한다.

 

 

 

 

 

 

3-3. DNS 서버가 URL 정보를 기반으로 IP 주소를 얻는 과정 

(1) 웹 브라우저나 ping 등의 명령을 통해 URL로 접속을 시도한다.

 

(2) 호스트 파일에 해당 URL 주소의 IP 주소가 적혀 있는지 확인한다.

 

(3) 호스트 파일에 접속하고자 하는 URL에 대한 주소가 기재되어 있다면 DNS 서버에 질의 없이 해당 IP 주소로 연결된다. 

 

(4) 호스트 파일에 만약 대응되는 주소가 없거나 URL 정보가 없다면 네트워크 설정에서 "기본 설정 DNS 서버" 부분이 설정 & 활성화되어 있는지 확인한다.

 

(5) 네트워크 설정에서 기본 설정 DNS 서버가 존재하지 않는다면 IP 주소 획득에 실패하여 입력한 URL에 대한 IP 주소를 알 수 없다.

 

(6) 네트워크 설정에 기본 설정 DNS 서버가 활성화되어 있다면 해당 DNS 서버에서 URL에 대한 주소를 얻을 수 있다.

 

(7) DNS 서버가 존재하여 DNS 서버가 해당 URL의 IP 주소를 질의한다.

 

(8) DNS 서버가 URL의 주소를 알고 있다면 주소를 획득할 수 있게 된다.

 

(9) DNS 서버가 응답하지 않거나 DNS 서버가 작동하더라도 URL의 주소를 모를 경우 IP 주소 획득에 실패하게 된다.

 

- 간단하게 정리한 부분이지만 실제 IP 주소를 획득하는 과정은 더 복잡하다. 

 

 

 

 

3-4. Domain Name 체계

(1) 네트워크에 연결된 디바이스를 구분하는 유일한 방법은 IP 주소로 구분하는 것이다. 하지만 사람들이 웹 서버에 대해 각각 대응되는 주소를 모두 외우고 있는 것은 사실상 불가능하다.

 

(2) 그리고 이러한 IP 주소와 관련된 URL을 관리하는 전용 컴퓨터가 있고 해당 전용 컴퓨터의 IP 주소만 알고 있다면 URL에 대응되는 주소를 모르더라도 전용 컴퓨터에게 질의하면 된다. (전용 서버가 DNS 서버가 된다)

 

(3) 인터넷이 폭발적으로 확장하면서 인터넷에 연결된 모든 컴퓨터를 DNS 서버가 관리할 수 없게 되었고 Domain Name 체계를 고려하게 되었다.

 

 

 

 

3-5. Local DNS 서버가 작동하는 순서

(1) 컴퓨터 웹 브라우저에 접속하고자 하는 웹 서버의 URL(www.xxx.com)을 입력한다.

 

(2) 로컬 DNS 서버에 해당 URL의 주소에 대한 IP 주소를 질의한다.

 

(3) 로컬 DNS 서버는 자신의 캐시 DB를 검색해서 해당 URL의 정보가 있는지 확인한다.

- 만약 정보가 있다면 바로 응답을 주지만 대부분 없는 경우가 많다.

 

(4) 로컬 DNS 서버는 루트 DNS 서버에 해당 URL의 IP 주소를 물어본다.

 

(5) 루트 DNS 서버도 해당 URL의 주소를 모르므로 .com 주소를 총괄하는 COM DNS 서버의 주소를 알려주면서 COM DNS 서버에 해당 요청을 질의할 것을 요청한다.

 

(6) COM DNS 서버에 해당 URL에 대한 IP 주소 정보를 질의한다.

 

(7) COM DNS 서버도 해당 URL의 주소를 모른다고 가정한다면 xxx.com을 관리하는 DNS 서버의 주소를 알려주면서 해당 서버로 질의하도록 요청한다.

 

(8) xxx.com DNS 서버에 해당 URL의 IP 주소를 질의한다.

 

(9) xxx.com DNS 서버는 해당 서비스를 제공하는 기업 또는 특정 조직에서 구축한 자체적 DNS 서버이기 때문에 해당 웹 사이트에 대한 URL 주소를 갖는 컴퓨터의 목록을 모두 갖고 있다. 이를 통해 로컬 DNS 서버가 해당 주소 응답을 받아서 클라이언트에게 반환한다.

 

(10) 클라이언트는 해당 주소를 받아서 접속을 시도한다.

 

 

 

 

3-6. 캐싱 전용 DNS(Caching-only DNS) 서버

(1) Caching-only DNS 서버란 컴퓨터에서 URL로 IP 주소를 얻고자 할 때 해당하는 URL의 IP 주소를 알려주는 직접적인 DNS 서버를 말한다.

 

 

 

 

3-7. First VMs를 Caching-only DNS 서버로 구축 / WinClient VMs에서 구축한 First VMs을 DNS 서버로 사용

(1) WinClient VMs의 주소를 위와 같이 정적으로 할당한다.

 

 

(2) ADMaster VMs의 전원을 끈다.

 

 

 

(3) First VMs에서 기능 추가

 

 

(4) 서버 역할에서 DNS 서버를 선택한다.

 

 

(5) 위와 같이 DNS 서버 기능 설치를 시작한다.

 

 

(6) 그리고 First VMs의 방화벽 설정을 다시 허용한다.

 

 

(7) services.msc에서 DNS Server가 Enable(Running Status) 되어 있는지 확인한다.

 

 

(8) WinClient VMs의 DNS 서버 주소 대역을 First VMs의 주소 대역으로 변경한다.

 

 

 

 

(10) 현재 웹 브라우저에 정상적으로 접속 가능한 상태다.

 

(11) 위에서 구축한 Caching-only DNS 서버인 First VMs를 통해 특정 도메인의 IP 주소를 가져온 상황이다.

 

 

 

 

3-8. First VMs - DNS 서버 Second VMs - 웹 서버,  Third VMs - FTP 서버로 운영

 

(1) Second VMs로 접속한 후 서버 관리자에서 Web Server 기능을 추가한다. (관리자 계정)

 

(2) 웹 서버에 대한 Role을 위와 같이 추가해준다.

 

 

(3) 설치가 진행된다.

 

(4) 제어판의 시스템 보안 > Windows Defender Firewall의 WWW, FTP Server 옵션이 활성화되어 있는지 체크한다.

 

 

(5) 방화벽 설정을 모두 허용한다.

 

 

(6) Microsoft FTP Service를 Disable 한다.

 

 

(7) localhost로 접속 시 초기 웹 서비스 화면이 노출되면 웹 서버가 Running State이다. 

 

 

 

(8) Third VMs를 FTP 서버로 설정해야 한다.(ALFTP Server 사용)

- ALFTP Server 10을 다운로드 받아서 설치한 후 실행한다.

 

 

(9) 방화벽 설정에서 ALFTP server 옵션을 개인, 공용 모두 활성화한다.

 

 

(10) 방화벽 설정을 모두 허용한다.

 

 

(11) ALFTP Server 구성 정보를 위와 같이 설정한다.

 

 

(12) 상단의 구성 정보에서 설정한 주소로 FTP 접속 시도 시 정상적으로 접속된다.

 

 

 (13) ALFTP Server에서 접속 이벤트 로그도 확인 가능하다.

 

 

 

 

3-9. First VMs - DNS 서버 : this.com DNS 서버로 설정

(1) First VMs에서 DNS 관리자를 열고 정방향 조회 영역에서 새로운 영역을 추가한다.

 

 

(2) 이전 단계에서 "주 영역"을 선택하고 영역명을 this.com으로 입력한다.

 

 

(3) 영역 파일 부분에서는 설정된 기본값 그대로 두고 다음으로 넘어간다.

 

 

(4) 이 부분까지 완료하면 마법사가 완료되는데 정방향 조회 영역에 this.com 표준 주 영역이 생성된 것을 확인할 수 있다.

 

 

(5) 정방향 조회 영역에서의 this.com을 선택하고 새 호스트를 선택한다.

 

 

(6) 이름에 www만 입력해도 FQDN 영역이 자동 완성된다. 

 

 

 

(7) 동일한 방식으로 새 호스트를 생성하는데 이름에 ftp, 주소 대역을 위와 같이 입력해준다.

- 위와 동일하게 ftp.this.com으로 FQDN이 자동 완성된다.

 

 

(8) 이를 통해 도메인 네임으로 각 웹 서버, FTP 서버에 접속할 수 있게 된다.

 

 

- WinClient VMs에서 설정 당시 명시한 도메인 네임으로 Second VMs, Third VMs의 웹 서버, FTP 서버에 접속 가능하다.

 

- 위와 같이 하나의 물리적 서버에 다양한 서비스를 제공하는 다수의 서버를 운영할 수 있다.

 

 

 

 

 

3-10. Round-Robin 기반의 DNS 서버

다수의 웹 서버 장비를 두고 있는 네이버

 

(1) 유명한 포털 사이트의 경우 동시에 수 십만 대 이상 장비에서 접속을 요청할 수 있다 Hello world 예제 수준을 넘는 트래픽이 쏠리기 때문에 1대의 웹 서버가 아니라 여러 대의 웹 서버를 운영해서 트래픽 부하를 고르게 분배해야 할 필요성이 있다.

 

(2) 위와 같은 운영 방식을 라운드 로빈 기반 DNS 서버라고 한다.

 

 

 

 

3-11. LAB : Round-Robin DNS 서버 

(1) 앞서 설정한 DNS 목록을 모두 삭제한다.

 

 

(2) 위와 같이 4개의 DNS 호스트를 추가한다.

 

 

 

(3) WinClient, Second, Third VMs에서 DNS 서버의 주소를 First VMs의 IP 주소 대역으로 변경한다.

 

(4) 이후 DNS 서버 주소가 수정된 부분을 확인하고 nslookup에서 First VMs에서 설정한 도메인 네임을 주게 되면 DNS 호스트로 등록된 주소 대역들이 출력된다.

 

(5) 추후에는 Active Directory에 DNS, DHCP 서버를 두게 된다.

 

 

(6) 이후 도메인 네임으로 사이트 접속 시 First VMs의 DNS 서버에 등록된 사이트로 연결된다.

 

(7) 각 VMs에서 DNS 서버를 First VMs의 IP 주소로 설정하고 위의 도메인 네임으로 접속한다. 접속 시 각각 다른 사이트가 표시된다.

 

 

 

 

 

 

4. Active Directory

- Active Directory의 용어와 개념

- AD 환경 구축 및 실습

- 도메인 컨트롤러 구성 실습

- AD 설정 및 통합관리 실습

 

- AD DS 구축과 구성도 이해

- 서버 관리자를 통한 Domain Controller 통합 관리 방법 이해 

 

 

 

4-1. Active Directory 개요

(1) 현재까지의 실습은 윈도우 서버 2022를 사용하면서 여러 대의 서버를 구축하고 운영했다. 클라이언트 또한 1~2대 규모였기 때문에 크게 문제가 되거나 불편한 점이 없었지만 규모가 커지는 상황이라면 많은 문제가 발생할 수 있다.

 

전사적인 규모의 네트워크 운영 환경 예시

(2) 기업이나 특정 그룹 등의 규모의 전사적 네트워크 환경을 위의 기존 단일 서버로 운영하기에는 분명한 한계점이 존재한다.

 

(3) 이러한 전사적 네트워크 환경(대규모 네트워크 환경)을 관리하고 운영하기 위해 Microsoft에서 개발한 기술을 Active Directory라고 한다.

 

(4) 위와 같은 대규모 네트워크 환경에서 Active Directory를 도입하게 되면 네트워크상으로 분리되어 있는 여러 가지 리소스들을 중앙 관리자가 통합해서 관리할 수 있기 때문에 각 지점으로 퍼져있는 엔드포인트에서는 본인의 디바이스에 정보나 데이터를 저장할 필요성이 사라진다.

 

(5) 다른 지사로 이동하더라도 자신의 아이디와 패스워드로 로그온만 가능하다면 어디에서든지 회사 전체 자원에 접근할 수 있다.

 

 

 

 

4-2. Active Directory Terminology: Directory Service(DS)

(1) Directory Service(DS)는 네트워크 내의 모든 리소스와 객체를 관리하는 서비스를 의미한다. 네트워크 내의 사용자, 컴퓨터, 그룹, 프린터, 애플리케이션 및 기타 리소스에 대한 정보를 저장하고 관리하는 역할을 수행한다.

 

(2) 분산된 네트워크 관련 리소스 정보를 중앙 저장소에 통합시켜 놓음으로써 사용자가 네트워크상의 정보를 탐색함에 있어 수월함을 제공한다.

 

 

 

 

4-3. Active Directory Terminology : Active Directory Domain Service(AD DS)

(1)  AD DS는 AD의 핵심 구성 요소 중 하나로써, 네트워크의 모든 객체를 중앙에서 관리하고, 사용자 인증, 권한 부여, 네트워크 리소스의 관리를 제공하는 역할을 한다.

 

(2) 컴퓨터 사용자, 기타 주변 장치에 대한 정보를 네트워크상에 저장하고 저장한 정보를 관리자가 통합하여 관리한다.

 

(3) AD DS를 사용하기 위해서 기본적으로 DNS 서버를 설치해야 한다.

 

 

 

 

4-4. Active Directory Terminology : Domain

(1) 도메인은 AD의 가장  기본이 되는 단위를 의미한다.

 

(2) 각각의 디바이스들을 관리하기 위한 하나의 더 큰 단위를 표현하는 용어이다.

 

 

 

 

4-5. Active Directory Terminology : Tree & Forest

Active Directory Terminology : Tree & Forest
https://learn.microsoft.com/ko-kr/entra/identity/domain-services/concepts-forest-trust

 

(1) 트리(Tree)는 도메인의 집합으로 보면 된다. 위의 그림에서 나온 예시 구성을 트리 구조라고 한다.

 

(2) 두 개 이상의 트리로 Active Directory가 구성되는 환경을 포리스트(Forest)라고 한다.

 

(3) 크기 단위로 비교할 경우 Domain < Tree < Forest 순서다.

 

(4) 위의 예시 구성의 경우 단일 트리로 이루어져 있고 포리스트는 1개의 트리만 존재하기 때문에  Domain < Tree <= Forest 구조가 된다.

 

 

 

 

4-6. Active Directory Terminology : Site

(1) 도메인이 논리적인 범주라면 사이트는 물리적인 범주라고 볼 수 있다.

 

(2) 위의 Topology를 보면 서울, 뉴욕 지사는 동일한 도메인으로 묶이지만 거리상으로는 매우 멀다. 따라서 서울, 뉴욕 지사는 동일한 도메인에 속하더라도 별도의 사이트로 구분된다.

 

(3) 부산 지사도 별도의 사이트이기 때문에 위의 Topology의 포리스트에는 3개의 사이트로 구성된다.

 

 

 

 

4-7. Active Directory Terminology : Trust

Active Directory Terminology : Tree & Forest

(1) 트러스트(Trust)는 도메인 또는 포리스트 사이의 신뢰 여부에 대한 관계를 나타내는 용어이다.

 

(2) 동일한 포리스트 내부의 도메인 사이에는 Two-way Transitive Trust(양방향 전이 트러스트) 관계를 갖고 있다.

- 쉽게 말해 도메인끼리 서로 신뢰하고 있는 상태를 말한다.

 

(3) 위와 같이 포리스트가 2개 이상의 트리로 구성되더라도 기본적으로 양방향 전이 트러스트 관계를 맺지만 부산 지사가 독일 지사와 연결되기 위해서 부산 > 서울 > 영국 > 독일 지사 단계를 거쳐야 한다.

 

(4) 이러한 단계를 줄이기 위해 부산 > 독일에 대한 바로 가기 트러스트를 맺을 수 있다. 맺지 않아도 논리적으로 문제가 되지 않지만 네트워크 트래픽을 줄이고 거쳐 가는 도메인 컨트롤러들의 부하를 줄이기 위해 바로 가기 트러스트를 맺을 수 있다.

 

 

 

 

4-8. Active Directory Terminology : Organization Unit(조직 구성 단위)

(1) 특정 도메인 내부에서 세부적으로 나눈 단위를 조직 구성 단위라고 한다.

 

(2) 위의 토폴로지에서 서울 지사의 관리부, 회계부, 기술부서가 있다고 한다면 각각의 부서를 조직 구성 단위라고 한다.

 

 

 

 

4-9. Active Directory Terminology : Domain Controller(DC)

(1) 도메인 컨트롤러는 로그온, 이용 권한 확인, 신규 사용자 등록, 암호 변경, 그룹 처리 등 다양한 작업을 수행하는 서버 컴퓨터를 지칭하는 용어이다.

 

(2) 도메인 서비스 구현을 위해 도메인 내부에 하나 이상의 DC(Domain Controller)를 설치해야 한다. 

 

 

 

 

4-10. Active Directory Terminology : Read-Only Domain Controller(RODC)

(1) RODC는 별도의 관리자가 수시로 관리해야 한다. RODC는 주 도메인 컨트롤러부터 Active Directory와 관련된 데이터를 전송받아서 저장한 후 사용하지만 스스로 데이터를 추가하거나 수정하지 않는다.

 

(2) RODC를 사용하기 적합한 상황은 예를 들어 본사와 멀리 떨어진 지사에서 도메인 컨트롤러가 필요하지만 별도의 관리자 등을 두기 어려울 경우 도메인 컨트롤러의 부하를 줄이기 위해 사용될 수 있다.

 

 

 


4-11. Active Directory Terminology : Global Catalog(GC)

(1) 트러스트 내부의 여러 도메인에 포함된 개체에 대한 정보를 수집하여 저장하는 통합 저장소 환경을 의미한다.

 

(2) 데이터베이스로 비유하면 생각하기 쉽다.

 

 

 

 

 

 

 

 

 

5. Active Directory Domain Service(AD DS) Implementation

5-1. Topology Configuration

Topology Configuration

 

 

 

 

 

5-2. AD DS Installation

(1) 작업 이전 모든 VMs를 초기화한다. (초기 상태 스냅샷 복원 진행)

 

(2) First, Second, Third, WinClient VMs의 관리자 계정 비밀번호를 수정한다.

- First : Pa$$w0rd1

- Second : Pa$$w0rd2

- Third : Pa$$w0rd3

- WinClient : Pa$$w0rd

 

 

 

(2) First VMs에 AD, DNS 서버 기능을 추가한다.

 

 

(2) 구성 정보를 설정하고 설치를 진행한다.

 

 

 

(3) AD, DNS 서버 기능이 추가되면 서버 관리자 메뉴에서 "해당 서버를 도메인 컨트롤러로 승격" 옵션을 클릭한다.

 

 

(4) 루트 도메인 이름을 "hanbit.com"으로 설정한다.

 

 

(5) 도메인 컨트롤러 옵션에서 디렉터리 서비스 복원 모드를 위한 암호를 설정한다.(Pa$$w0rd)

 

 

(6) NetBIOS 도메인명을 "HANBIT"으로 명시한다.

 

 

(7) AD DS 데이터베이스, 로그 파일 및 SYSVOL의 위치를 확인하고 넘어간다.

 

 

(8) 필수 구성 요소를 확인하고 설치 과정으로 넘어간다.

 

 

(9) AD DS의 설치 과정이 진행되고 있다.

 

 

(10) 서비스 설치가 완료되면 가상 머신이 재부팅된다.

 

 

(10) 재부팅 후 확인해 보면 NetBIOS 도메인명\Administrator 형식으로 계정 이름이 변경된다.

 

 

 

 

 

 

6. Reference 

(1) https://www.hanbit.co.kr/store/books/look.php?p_code=B2079064069

 

이것이 Windows Server다(개정판)

2017년, 초판 출간 후 6년이라는 세월 동안 Windows Server 도서 분야 부동의 베스트셀러로 자리매김한 『이것이 Windows Server다』가 Windows Server 2022 버전을 반영해 2판으로 돌아왔습니다. VMware 가상머신

www.hanbit.co.kr

※ 해당 포스팅을 기준으로 내용 추가가 필요하다고 생각되면 기존 내용에 다른 내용이 추가될 수 있습니다.

개인적으로 공부하며 정리한 내용이기에 오타나 틀린 부분이 있을 수 있으며, 이에 대해 댓글로 알려주시면 감사하겠습니다!

728x90
반응형

댓글