IIS(인터넷 정보 서비스)에서 SSL 인증서를 암호화하자 사용
환경
- 윈도우 서버
-
- 윈도우 서버 2019
- 인터넷 정보 서비스
-
- 10.0
- 윈 - ACME
-
- v2.1.16.1 버전
* 다른 버전과 함께 작동하지만 확인되지 않았습니다.
암호화하자 정보
서버 간의 통신을 암호화하기 위해 클라이언트와 서버 간에 두 가지 유형의 통신이 있는 경우 암호화 자체를 수행할 수 있지만 다른 서버가 올바른지 여부를 증명할 수는 없습니다.
이 문제를 해결하는 한 가지 방법은 타사 인증 기관에서 얻은 SSL 인증서를 사용하여 다른 서버가 올바른지 증명하는 것이지만 인증 기관 사용과 관련된 주기적인 비용이 거의 항상 있습니다.
SSL 인증서는 많은 스폰서가 지원하는 인증 기관인 Let's Encrypt를 사용하여 무료로 얻을 수 있습니다. 이번에는 Let's Encrypt에서 SSL 인증서를 가져와 IIS에서 실행되는 사이트에 적용하고 HTTPS 통신을 허용하도록 구성합니다.
다음 링크는 공식 홈페이지(일본어)입니다.
전제 조건
- Windows 서버가 설정되어 있습니다
- 인터넷 정보 서비스(IIS)를 설정하고 사이트를 만들었습니다
- 도메인을 획득했습니다.
- 대상 서버는 도메인에서 액세스할 수 있어야 합니다.
- HTTP를 통해 웹 사이트에 액세스 할 수있는 기능
- 방화벽 설정은 HTTPS(443) 포트를 통한 연결을 허용해야 합니다.
이 팁은 ASP.NET Core 프로그램에서 게시한 사이트를 사용하지만 IIS 사이트가 있는 한 사이트에서 실행되는 매체는 중요하지 않습니다.
승리 - ACME 받기
SSL 인증서에는 항상 만료 날짜가 있습니다. 따라서 SSL 인증서는 주기적으로 갱신해야 합니다.
정기적으로 Let's Encrypt에서 SSL 인증서를 얻으려면 win-acme이라는 도구를 사용하여 다운로드할 수 있습니다.
다운로드 할 수있는 많은 파일이 있지만 여기에서 "win-acme.v2.1.16.1037.x64.trimmed.zip"를 다운로드합니다. 버전은 다른 시간에 변경 될 수 있습니다. arm64, x64 및 x86의 경우 x64는 Windows Server에서 괜찮습니다.
ZIP 파일에서 내용을 추출하고 Windows Server에서 원하는 폴더에 압축을 풉니다. 이 도구는 설정에만 사용되므로 어디서나 사용할 수 있습니다. 프로그램을 실행할 수있는 장소에 배치하십시오.
IIS 구성
win-acme을 사용하기 전에 IIS 측에서 사전 구성이 필요합니다.
IIS 관리자를 연 후 HTTPS를 통해 액세스하려는 사이트를 선택한 다음 오른쪽 메뉴에서 바인딩을 클릭합니다.
포트 80을 선택하고 편집 단추를 클릭합니다.
호스트 이름에 가져온 도메인 이름을 입력합니다. 하위 도메인에만 액세스하려는 경우 하위 도메인을 입력할 수 있습니다.
윈 ACME 실행
Win-acme은 버전에 따라 선택 항목이 변경 될 수 있으므로 다른 버전을 사용하는 경우 차이점을 이해하십시오.
추출된 파일에서 "관리자 권한"으로 "wacs.exe"를 시작합니다.
새로운 창조물이므로 "N"을 입력하십시오.
사이트 이름 목록이 표시되므로 대상 사이트의 번호를 입력합니다.
특별한 상황이 아니라면 "A"는 괜찮습니다.
"y"를 입력하여 확인합니다.
"서비스 약관"은 다음 폴더에 있으므로 "y"를 입력하여 읽으십시오. 그러나 Windows Server에는 표준 PDF 앱이 없으므로 폴더에서 PDF 파일을 복사하여 읽는 것이 좋습니다.
동의하면 y를 입력합니다.
Let's Encrypt의 문제와 같은 알림을 받으려면 이메일 주소를 입력합니다. 넣지 않아도 아무런 문제가 없습니다.
그런 다음 오류가 표시되지 않으면 설치가 시작되고 완료됩니다. 화면은 닫을 수 있습니다.
IIS에서 서버 인증서를 열면 인증서가 추가된 것을 볼 수 있습니다.
인증서는 90일 동안 유효합니다.
자동 인증서 갱신이 작업 스케줄러에 등록되어 있는지 확인할 수 있습니다.
IIS 관리자에서 사이트 바인딩을 보면 HTTPS 바인딩이 자동으로 만들어지는 것을 볼 수 있습니다.
웹 사이트에 액세스할 수 있는지 확인한 후 HTTP 액세스가 필요하지 않은 경우 웹 사이트를 삭제할 수 있습니다.
확인
외부 웹 브라우저에서 "https:// 도메인 이름"으로 액세스할 때 HTTPS를 통해 연결할 수 있는지 확인합니다.
주소 표시줄에서 잠금 아이콘을 클릭하여 인증서를 확인할 수 있습니다.