Windows에서 Apache로 Kerberos/NTLM SSO 설정
회사 개요
설정을 위한 단계별 지침 Kerberos 인증 아파치가 있는 윈도우에서. 초기 설정, 설정을 포함하여 안전하고 원활한 사용자 인증을 위해 Kerberos를 구성하는 방법을 알아보세요. 브라우저 구성.
WordPress용 LDAP/Active Directory 통합을 손쉽게 구현하는 방법 (영상 )
Windows Xampp 서버에서 Apache를 사용한 SSO:
- 명령 프롬프트를 엽니다 관리자 모드.
- 다음 명령을 실행하여 추가하세요. SPN(서비스 사용자 이름) 서비스 계정용
- 다음 명령을 실행하여 이것이 올바르게 설정되었는지 확인하십시오.
- 결과가 나열되어야 합니다. http/machinename.domain.com
- Active Directory 사용자 및 컴퓨터를 열고 상단 메뉴에서 다음을 선택합니다. 보기 >> 고급 기능.
- 서비스 계정을 열고 다음으로 이동하십시오. 속성 편집기 탭에서 서비스 주체 이름 확인하기 위해 SPN 항목.
- 로 이동 대표단 탭.
- 선택 모든 서비스에 대한 위임을 위해 이 사용자를 신뢰합니다(Kerberos만 해당)..
Setspn -s http/<computer-name>.<domain-name> <domain-user-account>
예시: C:\Users\Administrator> setspn -S HTTP/ machinename.domain.com service_account
참고: 여기서 "machinename.domain.com"은 컴퓨터 이름입니다. AD 서비스가 실행 중인 Windows 서버에서 해당 도메인이 확인 가능한지 확인하십시오.
setspn -l domain\service_account

- 신청.
- Click Here 아파치 모듈을 다운로드합니다.
- 복사 mod_authnz_sspi.so 에 Apache24 > 모듈 폴더로 이동하여 모듈(C:\xampp\apache\modules) 디렉터리에 배치합니다.
- 복사 sspipkgs.exe 에서 파일 Apache24 -> 빈 폴더를 찾아 웹 서버에 있는 Xampp Apache 폴더(.....\xampp\apache\bin)의 bin 폴더에 넣습니다.
- httpd.conf(.....\xampp\apache\conf)를 열고 LoadModule 섹션에 아래 코드 줄을 배치합니다.
- 다음 모듈의 주석 처리가 해제되었는지 확인하세요.
- 또한, LDAP 확장을 활성화하세요.
- (.....\xampp\apache\conf\httpd.conf)에서 httpd.conf 파일을 엽니다.
#Require all grants 뒤에 아래 줄로 이동하여 붙여넣습니다. - 다시 시작하십시오. 아파치 서버.
LoadModule authnz_sspi_module modules/mod_authnz_sspi.so
LoadModule authn_core_module modules/mod_authn_core.so
LoadModule authz_core_module modules/mod_authz_core.so
<Directory "...../xampp/htdocs">
......
......
#Require all granted
AllowOverride None Options None
AuthType SSPI
SSPIAuth On
SSPIAuthoritative On
Require valid-user
</Directory>
Kerberos SSO를 위한 브라우저 구성:
참고 : 클라이언트 측 구성을 사용하면 해당 브라우저가 SPNEGO를 사용하여 브라우저에 대한 Kerberos 인증을 협상할 수 있습니다. 최종 사용자 시스템의 브라우저가 Kerberos 인증을 지원하도록 구성되어 있는지 확인해야 합니다.
모든 브라우저에 대한 일반 Kerberos SSO 구성:
- 제어판으로 이동하여 다음을 클릭하세요. 네트워크 및 인터넷 >> 인터넷 옵션.
- 그러면 인터넷 속성 창이 열립니다. 클릭 보안 >> 로컬 인트라넷 >> 사이트.

- 그 후 고급 버튼.

- . 이 웹사이트를 영역에 추가하세요 섹션에 SSO로 로그인하려는 웹사이트 URL을 추가하세요.

- 도구 > 인터넷 옵션 > 보안 > 로컬 인트라넷 > 사용자 정의 수준.
- 사용자 인증 옵션까지 아래로 스크롤하여 선택합니다. 인트라넷 영역에서만 자동 로그인.

- 를 클릭하십시오 Ok 버튼을 누른 다음 브라우저를 다시 시작하세요.
위 설정을 완료한 후에는 Internet Explorer, Google Chrome 및 Apple Safari에 대한 브라우저 설정을 구성할 필요가 없습니다.
- 인터넷 익스플로러
- Google Chrome
- 모질라 파이어 폭스
- 애플 사파리
자주 묻는 질문
더 많은 FAQ ➔기존 LDAP 사용자를 Kerberos 서비스 주체로 사용할 수 있습니까?
예, 기존 LDAP 사용자를 Kerberos 서비스 주체로 사용할 수 있습니다. 그러나 이 사용자는 만료되지 않도록 설정된 비밀번호를 가지고 있어야 합니다. 애플리케이션은 이 계정을 Kerberos 서비스 주체로 사용하고 해당 키탭을 사용하여 Kerberos 티켓을 얻으므로 어떤 사용자도 이 계정을 사용하지 않는지 확인하시기 바랍니다.
"Kerberos 클라이언트", "Kerberos 서버", "응용 프로그램 서버"란 무엇입니까?
Kerberos의 모든 인증은 클라이언트와 서버 사이에서 발생합니다. 따라서 Kerberos 서비스에 대한 서비스 티켓을 받는 모든 엔터티를 Kerberos 용어로 "Kerberos 클라이언트"라고 합니다. 사용자는 종종 클라이언트로 간주되지만 모든 주체가 클라이언트일 수 있습니다.
키 배포 센터, 줄여서 KDC를 일반적으로 "Kerberos 서버"라고 합니다. 인증 서비스(AS)와 티켓 부여 서비스(TGS)는 모두 KDC에 의해 구현됩니다. 모든 주체에 연결된 모든 비밀번호는 KDC에 저장됩니다. 이 때문에 KDC는 가능한 한 안전해야 합니다.
"응용 프로그램 서버"라는 문구는 클라이언트가 Kerberos 티켓을 사용하여 인증하는 동안 상호 작용하는 데 사용하는 Kerberos화된 소프트웨어를 의미하는 경우가 많습니다. 응용 프로그램 서버의 예로는 Kerberos telnet 데몬이 있습니다.
자격 증명을 입력하라는 메시지가 나타나는 이유는 무엇입니까?
이는 Kerberos 대신 인증에 NTLM 프로토콜을 사용할 때 발생합니다.
이는 여러 가지 이유로 인해 발생할 수 있습니다:
- 웹사이트에 접속하기 위해 도메인에 가입된 컴퓨터를 사용하고 있는지 확인하세요.
- LDAP 서버와 웹 서버 간에 시간이 동기화되어 있는지 확인하세요.
- Kerberos SSO에 대해 브라우저 설정 및 인터넷 옵션이 구성되어 있는지 확인하십시오.
- 이 문제가 계속 발생하는 경우 언제든지 문의해 주세요.


