Microsoft Product/Windows Server

Active Directory Certificate Service(ADCS) - (2) 인증서란? 사설인증서 만들기

o959 2024. 1. 23. 15:08

인증서 설명

 

 

 

인증서에 대해 간단하게 설명을 드리려고 합니다

작동방식, 왜쓰는지 등등...

 

 

 

 

인증서를 사용하는 이유

 

서비스로의 암호화된 연결을 위해 사용해요

해당 사이트의 소유권을 확인할 수 있으며, 신뢰를 얻을 수 있어요

 

인증서를 직접 발급해보시면 인증서 발급을 위해 발급사에서 진행하는 유효성 검사를 받아야 합니다

주로 사이트 소유권에 대해 물어봐요

 

이에 따라 스니핑, 피싱 등 피해를 예방할 수 있겠죠

 

 

 

 

 

 

 

 

공인인증서가 신뢰할 수 있는 연결을 만드는 방법

 

 

우선 SSL이란 단어는 보안 소켓 계층을 의미하며, 시간이 지나며 TLS라는 이름으로 바뀌었어요

그래도 계속 SSL이라는 단어를 사용합니다.

브라우저 표시줄에 자물쇠 아이콘이나 https의 s를 의미 합니다

 

인증서 적용 확인

크롬 브라우저 기준 확인 방법

 

 

 

 

SSL 암호화 과정은 아래와 같이 이루어져요

정말 간단하게! 이해할 수 있도록 (저 포함) 6가지 스텝으로 만들어 봤어요.

 

 

1. 사용자가 웹 사이트에 접속 합니다 (페이지 요청)

Ex) https://www.google.com

 

2. 웹페이지에서 공개키와 인증서를 함께 전송 합니다

 

3. 사용자PC(Client)에서 인증서가 유효한 CA로부터 발급됬는지

날짜가 유효한지 등 확인을 합니다

 

4. Client에서 공개키를 이용해 데이터를 암호화해서 전송 합니다

 

5. 웹페이지(서버)에서 공개키를 이용해서 데이터를 복호화하고

Client에 대한 응답값을 다시 암호화해서 전송합니다

 

6. Client는 대칭키를 이용하여 문서를 복호화해서 화면에 정보를 보여줍니다

 

 

 

 

 

각 사이트의 인증서 확인해보기

 

 

특정한 웹페이지에 접속해서 인증서를 확인해보려고 해요

 

 

 

인증서 유효기한 확인

구글 (www.google.com) 접속해보니 자물쇠 모양과 https를 봐서 인증서가 적용된 것을 알 수 있겠죠?

인증서의 유효기한은 2024년 3월 4일 까지네요

 

 

 

인증서 체인 정보 확인

Certification Path에 보면 해당 인증서의 체인 관계를 볼 수 있어요

루트 인증서로는 GlobalSign Root CA를 쓰고

아래 중간 인증 기관 2개의 인증서가 있네요.

 

 

 

 

루트 인증서 확인

해당 루트 인증서는 구글에 접속한 PC의 인증서 관리의 신뢰할 수 있는 루트 인증기관에 있답니다.

해당 루트인증서가 PC에 있어야 서버 인증서의 유효성을 확인 할 수 있어요

 

이미 PC에 내장된 루트 인증서도 있고 직접 다운받을 수도 있답니다.

공인인증서의 루트인증서는 왠만해서 모든 PC에 저장이 되어 있어요

 

 

 

 

루트인증서가 없는 인증서 상태

사설인증서이고 신뢰할 수 있는 루트인증기관에 해당 인증서에 대한

루트인증서가 없는 경우 위와 같이 확인할 수 없다고 나옵니다

 

위 내용은 아래에서 다시 설명하도록 할께요

 

이번엔 사설인증기관 (ADCS)에서

개인키가 있는 와일드카드 인증서를 만들어보려고 해요

 

 

 

 

AD CS에서 개인키가 있는 와일드카드 인증서 만들기

 

 

저번 포스팅에서 구성한 AD CS를 통해서 개인키가 있는 와일드카드 인증서를 만들어 보려고 해요

 

 

 

인증서 CSR 생성

인증서 CSR 생성을 위해

[All Tasks] - [Advanced Operations] - [Create Custom Request] 클릭

 

 

 

 

인증서 CSR 생성

Next

 

 

 

 

인증서 CSR 생성

Next

 

 

인증서 CSR 생성

탬플릿을 Web Server로 변경 후 Next

 

 

 

인증서 CSR 생성

Details 클릭 후 Properties 클릭

 

 

 

인증서 CSR 생성

Subject Name의 Type을 Common Name으로 변경 후 인증서에 할당할 주체대체 이름을 입력해주고 ADD를 클릭

 Alternative Name의 Type을 Common Name으로 변경 후 인증서에 할당할 주체대체 이름을 입력해주고 ADD를 클릭

 

 

인증서 CSR 생성

ADD로 추가하게되면 위 처럼 추가가 됩니다

 

 

 

인증서 CSR 생성

General Tap의 FriendlyName과 Description을 기입해줍니다

(안써도 상관없어요)

 

 

 

 

인증서 CSR 생성

Extensions Tap의 Available Options에서 Client Authentication을 추가해주세요

 

 

 

인증서 CSR 생성

Private Key Tab에서 Make Private Key Exportable 체크해주시고 OK를 눌러 저장해주세요

 

 

 

 

 

인증서 CSR 생성

Next

 

 

 

인증서 CSR 생성 완료

Request 파일을 저장할 장소를 지정하고 Finish 클릭

 

 

인증서 CSR 생성 확인

해당 Request 파일을 메모장으로 열고 내용을 전부 복사해주세요

 

 

 

사설 인증 기관 접속

http://[ADCS Server IP]/certsrv 로 인증기관에 접속해주세요

관리자 계정을 이용해서 로그인 해줍니다

 

 

 

 

인증서 요청

Request a Certificate 클릭

 

 

 

인증서 요청

Advanced Certificate Request 클릭

 

 

 

인증서 요청

Submit a certificate request by using ~ 클릭

 

 

 

인증서 요청

저장했던 Request 파일의 내용을 입력하고

Certificate Template를 Web Server로 변경하고 Submit 클릭

 

 

 

인증서 다운로드

Download Certificate를 클릭해서 다운받아주세요

 

 

 

다운받은 인증서 확인

설치를 하려고 보니, 해당 인증서가 Trusted 되지 않는다고 나오네요

ADCS를 설치하면서 생긴 루트인증서가 현재 서버에 설치되지 않아서 그렇습니다

 

 

 

인증기관 접속

다시 ADCS에 접속해시고

Download a CA Certificate ~를 클릭해주세요

 

 

 

 

루트 인증서 다운로드

Download CA Certificate를 클릭해서 다운받아 주세요

해당 파일이 루트 인증서 입니다

 

 

 

루트 인증서 설치

파일 실행후 Install Certificate 클릭해주세요

 

 

 

루트 인증서 설치

Local Machine 클릭 후 Next

 

 

 

루트 인증서 설치

Place all Certificates in the following store 체크 후

저장소는 Browse를 눌러 Trusted Root Certification Authorities를 찾아서 선택해주세요

그리고 Next를 눌러 설치를 완료해주세요!

 

 

 

인증서 상태 재 확인

이후 발급 받은 서버 인증서 (와일드카드)를 실행하면 이전에 발생한 신뢰할수 없다는 에러가 뜨지 않고

개인용에 정상적으로 설치할 수 있습니다

 

 

 

인증서 설치

마찬가지로 Local Machine에 Personal 저장소에 설치해주시면 되겠습니다

 

 

 

 

인증서 내보내기

설치가 완료 되었고, 개인키를 포함한 인증서 (pfx) 형태를 위해 Export 작업을 진행해야 합니다

 

 

인증서 내보내기

설치된 인증서 우 클릭 후 Export 클릭

 

 

 

인증서 내보내기

Next

 

 

 

인증서 내보내기

Yes, Export the Private Key 클릭 후 Next

 

 

 

인증서 내보내기

Delete를 제외한 모든 옵션 체크 후 Next

 

 

인증서 내보내기

인증서 패스워드 지정 후 Next

 

 

 

인증서 내보내기

인증서 저장 위치 지정후 Next를 클릭하여 저장 및 Export를 끝내줍니다

 

 

인증서 내보내기 완료

이제 해당 인증서를 이용하여 다른 서버에서도 사용할 수 있어요