Paloalto PAN-OS Single Sign On(SSO) 연동 가이드

이 가이드는 Genian NAC와 Paloalto PAN-OS 제품간의 Single Sign On(SSO) 연동에 대한 정보를 제공합니다.

가이드 개요

이 문서는 Next Generation Firewall(NGFW) 시스템인 Paloalto의 PAN-OS와 네트워크 접근제어 시스템인 Genian NAC의 연동을 위한 설치와 설정 방법에 대한 가이드입니다.

두 제품간 사용자 인증정보를 연동하여 Genian NAC에서 인증한 사용자는 Paloalto PAN-OS에서 추가적으로 인증하지 않더라도 내부 시스템에 접근 할 수 있도록 하며, Paloalto PAN-OS가 Genian NAC의 사용자-노드의 결합된 정보를 이용하여, 사용자 기반의 접근제어 정책을 활용할 수 있도록 도움을 줍니다.

연동의 목적

Genian NAC와 PAN-OS의 연동은 다음의 효과를 제공합니다.

Single-Sign-On(SSO)

  • Genian NAC는 사용자가 노드를 사용하려 하거나 회사의 네트워크에 접속하기 위해서 필수적으로 로그인 절차를 거치도록 합니다. 이 로그인 정보를 이용하여 PAN-OS에서는 별도로 인증하는 불편함을 해소하며, 사용자 기반의 보안 정책을 구현하는데 도움을 줍니다.

사용자기반 정책구현, 정보불일치 해소

  • 실제 노드의 사용자 정보를 보유하고 있는 Genian NAC의 사용자 정보를 이용하여, 신규 입사자, 부서이동, 근무위치의 변경 등의 사유로 인한 노드와 실제 사용자 정보의 불일치 되는 문제를 해결할 수 있습니다.

<연동시의 인증/사용자 접근제어 프로세스>

  1. Genian NAC에서 사용자 인증

  2. Genian NAC가 인증정보(IP, User-ID)를 Paloalto PAN-OS로 전송 (XML API, syslog)

  3. 등록된 노드(IP)정보와 사용자정보의 조합: PAN-OS

  4. 사용자정보가 확인된 IP에 태그 할당: PAN-OS

  5. 사용자 기반의 제어: PAN-OS

사전준비 사항

networking 사전 준비사항

  • Genian NAC Policy Center와 Paloalto PAN-OS간의 통신을 확인합니다.

  • 본 가이드에서는 XML API (http, https)방식과 syslog방식의 두가지 방법을 제시하고 있으므로 활용하고자 하는 방법에 따라 확인바랍니다.

구현방식

권장설정(보안수준 높음)

간편설정(연결성 높음)

XML API

https (8443)

http (80)

Syslog

TLS (6514)

UDP (514)

Genian NAC의 접속 포트정보는UI에서 ‘시스템 > 서비스 관리 > 접속포트’에 있습니다.

XML API를 이용한 연동

XML API 연동을 위한 paloalto PAN-OS 설정

본 문서에서 다루는 PAN-OS의 설정에 대한 설명은 Genian NAC와의 연동을 위한 부분에 한합니다.

Step 1: 사용자인증정보의 처리를 위한 관리자 역할 생성하기

Device >Admin roles 으로 이동한 후, Add를 선택하면, Admin Role Profile창이 나타납니다.

Admin Role Profile 창에서의 입력 값은 다음과 같습니다.

설정 항목

설정 값

참고

Name

Genian_NAC_SSO

Admin role의 이름 설정

Description

Admin role의 용도를 서술

생략 가능

XML API탭

모든 항목을 Enable 해줍니다. (본 가이드의 기능만을 활용할 경우는 Report, Export, Import의 기능은 생략가능)

Report, Log, Configuration, Operational Requests, Commit, User-ID Agent, Export, Import 모두를 enable 함

Step 2: 사용자 인증정보 처리를 위한 관리자 계정 생성하기

Device >Administrators 로 이동한 후, Add를 선택하면, Administrator 추가 창이 나타납니다.

Administrator 창에서의 입력 값은 다음과 같습니다

설정 항목

설정 값

참고

Name

Genian_NAC

계정의 이름 설정

Authentication Profile

None

별도 설정하지 않음

Use only client certification authentication (Web)

설정 안함

계정의 Password를 이용하여 접근권한을 확인하므로 별도로 설정하지 않음 (API-Key를 확인하는 경우에 설정)

Use Public Key Authentication(SSH)

설정 안함

Administrator Type

Role Based 선택

Step 1에서 생성된 권한을 상속함

Profile

Genian_NAC_SSO

Admin Role과 동일하게 설정

Password Profile

None

별도 설정하지 않음

Step 3: 사용자 인증정보를 전송하기 위한 API-Key 생성하기

웹브라우져를 이용하여, [https://PAN-OS IP/api/?type=keygen&user=[username]&password=[password]] 를 입력하여 API-Key를 생성합니다.

웹브라우저에 위와 같이 입력하면, 다음의 결과를 얻을 수 있습니다.

#Script
<response status='success'>
<result>
<key>LUFRPT1KbW80SU1hRXJuNk5XNHBudUhCNGMydE0rSUk9RFIzdEJ5RGcwWkRCVlhYMXl0Q1FPdz09
</key>
</result>
</response>

여기서 생성된 API-Key를 이용하여, Genian NAC가 인증정보를 PAN-OS로 전송합니다.

Step 4: Genian NAC로부터 사용자 인증정보 수신시 SSO동작을 위한 구성하기

Network > Zone 으로 이동하여, Enable User Identification 선택 후 ‘OK’ 클릭 (인증된 사용자는 사용권한을 할당 받습니다)

XML API 연동을 위한 Genian NAC 설정

Genian NAC에서 사용자가 인증시 발생하는 로그를 활용하여, PAN-OS로 XML API(webhook)를 전송하도록 설정하는 과정에 대한 설명입니다.

Step 1: 사용자가 Genian NAC에 인증시 발생하는 로그에 대한 검색필터 만들기

검색필터를 만들기 위해 감사 > 로그검색 으로 이동합니다.

사용자 인증시 PAN-OS로 전송해야 하므로 다음과 같이 로그 검색조건을 적용합니다.

설정 항목

설정 값

참고

로그ID

인증

셀렉트박스에서 선택

설명

사용자가 인증됨

사용자 인증시의 로그 중, 키워드 설정

위의 조건으로 로그 검색시, 사용자 인증과 관련한 로그가 존재하는 지 확인 후, 저장합니다.

Step 2: 검색필터 이벤트 발생시, PAN-OS로 이벤트 전송설정하기

Step1에서 만든 검색필터의 ‘저장’을 클릭하면, 검색필터를 설정화면이 나타납니다.

여기에서 다음과 같이 설정합니다.

설정 항목

설정 값

참고

이름

사용자 로그인 정보 전송

검색필터의 이름

설명

사용자가 로그인 시의 로그를 PAN-OS로 전송하기 위함

Webhook

선택, 로그인 이벤트 발생시 API 호출을 위함

XML API

태그

할당, 검색대상:사용자, 할당대상:노드, 태그:인증사용자

Webhook 설정: 다음과 같이 입력합니다.

설정 항목

설정 값

참고

방식

POST

URL

https://XXX.XXX.XXX.XXXX/api/?type=user-id&action=set&key

PAN-OS의 IP

CHARSET

UTF-8

POST 데이터

아래 POST 데이터 입력값 참고

데이터 전송타입

multipart/form-data

API-Key

팔로알토 PAN-OS설정 Step3에서 만든 API-Key 입력

POST 데이터 입력값

<uid-message>
  <version>1.0</version>
  <type>update</type>
  <payload>
      <login>
        <entry name="{ID}" ip="{_IP}" timeout="20" />
      </login>
  </payload>
</uid-message>

Syslog를 이용한 연동

Syslog 연동을 위한 paloalto PAN-OS 설정

본 문서에서 다루는 PAN-OS의 설정에 대한 설명은 Genian NAC와의 연동을 위한 부분에 한합니다.

Step 1: 사용자 인증정보의 수신을 위한 Syslog 설정하기

  1. Device > User Identification > User Mapping 으로 이동한 후, User-ID Agent Setup 탭에서 Edit 버튼을 선택합니다.

  2. Syslog filter를 선택하고 Add를 클릭하면 Syslog Parse profile 설정 창에 다음과 같이 설정 값을 작성합니다.

설정 항목

설정 값

참고

Syslog Parse Profile

Genian_NAC

Syslog Parse의 이름 설정

Description

생략가능

Type

Field Identifier

Syslog의 Type을 지정합니다.

Event String

USERAUTH

Genian NAC에서 전송시의 메시지 구분 값

Enter a Username Prefix

ID=

Genian NAC에서 인증한 사용자의 ID

Enter a Username Delimiter

, (comma)

구분자

Enter a Address Prefix

IP=

Genian NAC에서 인증한 사용자 노드의 IP

Enter a Address Prefix

, (comma)

구분자

Step 2: 사용자 인증정보의 Syslog 송신자 지정하기

Device > User Identification > User Mapping 으로 이동한 후, Server Monitoring 부분에서 Add를 클릭하여 User Identification Monitored Server 설정 창에 다음과 같이 작성합니다

설정 항목

설정 값

참고

Name

Genian_NAC

계정의 이름 설정

Description

생략가능

Enabled

Enabled 선택

동작 선택

Type

Syslog Sender 선택

Network Address

Genian NAC IP

Genian NAC의 정책서버 IP

Connection Type

UDP

SSL(default)와 UDP중 선택

Filter

Genian_NAC 선택

Genian NAC에서 전송하는 정보 중 특정정보만 받기 위한 Filter선택

Step 3: Syslog Listener 서비스 활성화

Network > Network Profiles > Interface Mgmt 로 이동한 후, ADD를 클릭하면, syslog Listener New profile이 나타납니다.

  • 다음과 같이 설정 값을 작성합니다.

    1. Network Profile: Allow Genian NAC

    2. User-ID SYSLOG Listener-SSL 또는 User-ID SYSLOG Listener-UDP 선택

설정을 완료하고, ‘OK’를 클릭하면 the interface management profile로 이동합니다.

Step 4: Interface Management에 Genian NAC의 접근 허용하기

Network > Interfaces 를 선택한 후, 해당 인터페이스의 설정을 확인, 설정합니다. (UDP를 이용하는 경우 UDP/514, SSL을 이용하는 경우는 TCP/6514 입니다)

Advanced > Other info > Interface Management Profile 로 가서 Allow Genian NAC를 선택한 후, ‘OK’를 클릭합니다.

설정을 반영하기 위해, ‘Commit’을 클릭합니다.

Syslog 연동을 위한 Genian NAC 설정

Genian NAC에서 사용자가 인증시 발생하는 로그를 PAN-OS로 Syslog로 전송하도록 설정하는 과정에 대한 설명입니다.

Step 1: 사용자가 Genian NAC에 인증시 발생하는 로그에 대한 검색필터 만들기

검색필터를 만들기 위해 ‘* 감사 > 로그검색* ’으로 이동합니다.

사용자 인증시 PAN-OS로 전송해야 하므로 다음과 같이 로그 검색조건을 적용합니다.

설정 항목

설정 값

참고

로그ID

인증

셀렉트박스에서 선택

설명

사용자가 인증됨

사용자 인증시의 로그 중, 키워드 설정

위의 조건으로 로그 검색시, 사용자 인증과 관련한 로그가 존재하는 지 확인 후, 저장합니다.

Step 2: 검색필터 이벤트 발생시, PAN-OS로 이벤트 전송 설정하기

Step1에서 만든 검색필터의 ‘저장’을 클릭하면, 검색필터를 설정화면이 나타납니다, 다음과 같이 설정합니다.

설정 항목

설정 값

참고

이름

사용자 로그인 정보전송

검색필터의 이름

설명

사용자가 로그인 시의 로그를 PAN-OS로 전송하기 위함

SYSLOG 전송

선택, 사용자로그인시 Paloalto PAN-OS로 Syslog 전송

아래 Syslog 설정 입력값 참고

태그

할당, 검색대상:사용자, 할당대상:노드, 태그:인증사용자

Syslog 설정 입력값

설정 항목

설정 값

참고

서버주소

Paloalto PAN-OS의 IP입력

전송방법

UDP

UDP, TLS 중 선택

전송포트

514

UDP(514), TLS(6514)

포맷

Default

Default, CEF 중 택1

Syslog 메세지

USERAUTH, ID={ID}, IP={_IP}

CHAERSET

UTF-8

일반적으로 UTF-8

연동 동작 테스트: Paloalto PAN-OS에서 Genian NAC에서 전송한 사용자 로그인 이벤트 수신 확인하기

연동구성 완료 후, 다음과 같이 동작 테스트를 합니다.

  1. Command Line Interface(CLI)에서 확인하기

‘show user ip-user-mapping all’ 을 입력하여 수신된 정보를 확인합니다.

CLI Command
admin@PA-VM> show user ip-user-mapping all
IP                Vsys     From     User     IdleTimeout(s)   MaxTimeout(s)
------------    -------   -------  -------   --------------   -------------
172.29.101.1     vsys1    XMLAPI   genian             1111            1111

Total: 1 users

위와 같이, 수신된 정보가 확인되면, 정상적으로 설정이 된 것입니다.

  1. WEB User-interface(UI)에서 확인하기

Monitor > Logs > User-ID 로 이동하면, Genian NAC의 인증을 통해 전달된 인증목록을 확인할 수 있습니다