.. _integrate-external: 외부 인증서버 설정 =============================== LDAP, RADIUS, IMAP, POP3, SMTP 또는 기타 타사 시스템을 사용하여 외부 인증 시스템에 인증하도록 정책 서버를 구성할 수 있습니다. RADIUS --------- 사용자 인증을 위해 기존의 외부 RADIUS 서버와 연동하도록 정책 서버를 구성 할 수 있습니다. 사용자가 접속인증페이지(CWP) 나 에이전트를 통해 인증되면 사용자 비밀번호 가 RADIUS 서버를 통해 인증 됩니다. #. 왼쪽 상단 항목의 **설정** 으로 이동합니다. #. 왼쪽 설정 항목에서 **사용자 인증 > 인증연동** 으로 이동합니다. **RADIUS 인증연동** 메뉴에서 아래를 설정: #. **서버주소** : 연동하고자하는 외부 RADIUS 인증서버의 IP주소 또는 FQDN 을 설정합니다. #. **서버포트** : RADIUS 인증서버 서비스포트를 설정합니다.(*기본포트: 1812*) #. **인증키** : RADIUS 인증서버와의 상호인증을 위한 인증키를 설정합니다. #. **수정** 버튼을 클릭합니다. .. _integrate-external-ldap: LDAP (Active Directory) 서버 연동 --------------------------------------- **사용자 인증** 을 **Active Directory** 와 연동 하도록 **정책 서버** 를 구성 할 수 있습니다. #. 상단 항목의 **설정** 으로 이동합니다. #. 왼쪽 설정 항목에서 **사용자 인증 > 인증연동** 으로 이동합니다. #. 인증연동 창에서 **LDAP 인증연동** 메뉴를 찾습니다. #. 아래 옵션을 찾아 입력: - **서버주소**: LDAP(ActiveDirectory) 인증연동을 위한 서버시스템의 주소/도메인을 설정합니다. - **서버포트**: LDAP 서비스 포트번호를 설정합니다. (*표준값: Non-SSL=389, SSL=636*) - **Base DN**: LDAP Base DN을 설정합니다. (*예: CN=Users,DC=geni,DC=genians,DC=com*) - **Bind DN**: 사용자 검색을 위한 Bind DN 값을 설정합니다. Anonymous검색이 가능 할 경우 공백.(*도메인 예:Administrator@genians.com / Bind 계정에는 관리자 권한이 있어야합니다.*) - **Bind Password**: 사용자 검색을 위한 Bind DN 비밀번호를 설정합니다. - **Serch Attribute**: 사용자 ID를 담고있는 속성값 이름(ActiveDirectory: sAMAccountName)을 설정합니다. - **SSL 접속**: LDAP 서버 접속시 SSL연결을 사용할지 여부를 선택합니다. - **Secondary LADP사용** : Secondary LDAP 사용여부를 선택합니다. #. **수정** 버튼을 클릭합니다. #. 테스트 를 클릭 하여 구성 설정을 테스트합니다. (*테스트 계정은 BASE DN 에있는 모든 사용자 계정이 될 수 있습니다*) .. note:: 알려진 이슈 * 오류 메시지: **"LDAP 서버에 연결하지 못했습니다. URI=ldaps://[IP]:[PORT]/, ERRMSG='-1:Can't contact LDAP server, TLSv1.0=-1:Can't contact LDAP server' "** * 해결 방법: LDAP 서버 펌웨어를 최신 패치로 업데이트합니다. "보안패치가 되지 않은 서버의 LDAP을 통해 Active Directory에 대해 인증하려고 하는 알려진 문제" 이며, 이는 암호화 호환성으로 인해 발생합니다. **이메일** 은 대부분의 조직에서 제공하는 서비스이므로 사용자 디렉토리를 제공하는 것이 가장 쉽습니다. **이메일** 에서 사용되는 **SMTP** , **POP3** 및 **IMAP** 을 사용하여 사용자의 아이디 와 비밀번호 를 확인할 수 있습니다 . IMAP ---- #. 상단 항목의 **설정** 으로 이동합니다. #. 왼쪽 설정 항목에서 **사용자 인증 > 인증연동** 으로 이동합니다. #. 메인창에서 **IMAP 인증연동** 을 찾습니다. #. **IMAP 서버**, **IMAP 포트**, **사용자도메인** 을 입력합니다. #. **수정** 버튼을 클릭합니다. #. **인증테스트 > 테스트** 버튼을 클릭하여 사용자 인증을 테스트합니다. **예제** ============================ ===================== ======== ============== Service Name Server Name Port Domain ============================ ===================== ======== ============== Google G Suites imap.gmail.com 993 Your Domain Exchange Online (Office 365) outlook.office365.com 993 Your Domain ============================ ===================== ======== ============== POP3 ---- #. 상단 항목의 **설정** 으로 이동합니다. #. 왼쪽 설정 항목에서 **사용자 인증 > 인증연동** 으로 이동합니다. #. 메인창에서 **POP3 인증연동** 을 찾습니다. #. **POP3 서버**, **POP3 포트**, **사용자도메인** 을 입력합니다. #. **수정** 버튼을 클릭합니다. #. **인증테스트 > 테스트** 버튼을 클릭하여 사용자 인증을 테스트합니다. **예제** ============================ ===================== ======== ============== Service Name Server Name Port Domain ============================ ===================== ======== ============== Google G Suites pop.gmail.com 995 Your Domain Exchange Online (Office 365) outlook.office365.com 995 Your Domain ============================ ===================== ======== ============== .. _integrate-external-smtp: SMTP ---- #. 상단 항목의 **설정** 으로 이동합니다. #. 왼쪽 설정 항목에서 **사용자 인증 > 인증연동** 으로 이동합니다. #. 메인창에서 **SMTP 인증연동** 을 찾습니다. #. **SMTP 서버**, **SMTP 포트**, **사용자도메인** 을 입력합니다. #. **수정** 버튼을 클릭합니다. #. **인증테스트 > 테스트** 버튼을 클릭하여 사용자 인증을 테스트합니다. .. note:: Genian NAC는 오직 smtps만 지원합니다. (SMTP over SSL) **예제** ============================ ===================== ======== ============== Service Name Server Name Port Domain ============================ ===================== ======== ============== Google G Suites smtp.gmail.com 465 Your Domain ============================ ===================== ======== ============== 문제 해결 ^^^^^^^^^^^^^^ .. error:: **Gmail SMTP 인증연동에 확인 된 이슈 :** * 인증 테스트: 인증 실패. Authentication failed.SMTP(535-5.7.8:Username and Password not accepted. Learn more at 535 5.7.8 https://support.google.com/mail/?p=BadCredentialsy32sm41405227qt) * Genian NAC 로그 : Login failed. ERRMSG='Authorize(Account disabled)' * **수정** : Google 계정 설정/보안에서 보안이 낮은 앱 액세스를 설정합니다. .. _integrate-external-saml: SAML 2.0 -------- `SAML`_ (Security Assertion Markup Language)은 당사자 간에 인증 및 인증 데이터를 교환 할 수 있는 개방형 표준입니다. SAML은 인증이 필요한 최종 사용자 및 SP(서비스 공급자)와 인증 서비스를 제공하는 IdP(인증 공급자)로 구성 됩니다. Genian NAC가 SAML을 통해 Google과 통합되면 Genian NAC는 SP가 되고 Google은 IdP가 됩니다. 다음은 SAML 연동을 위한 기본 구성 단계입니다. #. 상단 항목의 **설정** 으로 이동합니다. #. 왼쪽 설정 항목에서 **사용자 인증 > 인증연동** 으로 이동합니다. #. 메인창에서 **SAML2** 를 찾습니다. #. **SP Entity ID** 및 **SP ACS URL** 값을 복사합니다. #. Genian NAC 의 복사 된 해당값을*IdP server* 에 입력합니다. #. **IdP Entity ID** 및 **IdP SSO URL** 에 IdP 서버로 부터 얻은 값들을 입력합니다. #. **x509 Certificate** 의 경우 IdP 서버에서 발급한 인증서를 입력합니다. #. **수정** 버튼을 클릭합니다. #. **인증테스트 > 테스트** 버튼을 클릭하여 사용자 인증을 테스트합니다. .. toctree:: :maxdepth: 1 integrate-external/saml-okta integrate-external/saml-okta-adminconsole integrate-external/saml-gsuit Webhook 인증연동 -------------------- Webhook 인증연동은 사용자가 로그인 시도 시 , Webhook 이벤트가 발생하고 Genian NAC는 Webhook URL을 호출하게 됩니다. 호출된 URL로부터 리턴 성공값이 Genian NAC로 반환되면 사용자 로그인이 되는 인증방식 입니다. 다음은 Webhook 인증연동을 사용하기 위한 설정 방법입니다. 1. 정책 - 노드정책 클릭 후 , Webhook 인증을 사용할 노드정책을 선택합니다. 2. 노드정책 세부 설정에 있는 인증방식에 할당 버튼을 클릭후 Webhook을 추가합니다.( **인증방식 목록 상단에 위치한 인증방식부터 인증에 사용됩니다.** ) 3. **설정 - 인증연동 - Webhook 인증연동** 으로 이동합니다. 4. 이벤트 발생시 **호출할 URL** 과 **호출 방식** 을 설정 합니다.( **GET,POST중 호출방식을 선택합니다.** ) .. code-block:: 예시) 데이터 형식 - json GET 방식 : http://호출할 URL/?id={_USERID}&pwd={_USERPASSWORD} POST 방식 : http://호출할 URL/ 5. POST 방식일 경우 **데이터전송타입** 을 선택 후 , 데이터 형식에 맞는 POST 데이터를 입력합니다. .. code-block:: 예시)데이터 형식 - application/json POST 데이터 : id={_USERID}&pwd={_USERPASSWORD} 6. 결과검증 정규식을 입력합니다. ( **리턴 성공값을 작성합니다.** ) 7. 결과메세지 정규식을 입력합니다. 8. 결과메세지 문자셋을 설정합니다. .. note:: SSL 기반 암호화 통신 사용을 위해서는, Webhook URL을 https로 수정합니다. 인증 연동 테스트 ------------------- **RADIUS**, **LDAP**, **IMAP**, **POP3** , **SMTP** 또는 **Webhook** 의 연동 구성을 테스트하여 성공적인 연결을 확인 할 수 있습니다. #. 왼쪽 상단 항목의 **설정** 으로 이동합니다. #. 왼쪽 설정 항목에서 **사용자 인증 > 인증연동** 으로 이동합니다. #. 메인창에서 **인증 테스트** 을 찾습니다. #. 설정을 변경한 경우 **수정** 을 클릭합니다. #. **테스트** 를 클릭하여 변경한 설정에 대해 테스트합니다. .. _SAML: https://en.wikipedia.org/wiki/Security_Assertion_Markup_Language