Message Server 보안 권고 설정을 하다 보면 Internal Message Server Port라는 것을 보실 거예요. 그럼 Internal External Message Server Port 차이는 뭘까요?

우선 간단히 말하면 Internal 그대로 내부의 Message Server 통신을 의미하고, External Message Server 외부 통신을 의미합니다.

 

그럼 내부, 외부는 뭘까요?

우선 여기서 말하는 내부는 어플리케이션 서버(AP서버)가 PAS(CI)에 등록(로그인)하기 위해 사용하는 포트 말합니다.

외부는 우리가 흔히 사용하는 로그온 그룹, 부하 분산 등 Read-only Access 사용되는 것이구요.

 

Internal Message Server Port 기본값으로 39NN 포트를 사용하고, rdisp/msserv_internal 파라미터로 설정할 있습니다. 여기서 NN Message Server 있는 ASCS 인스턴스 넘버입니다.

External Message Server Port 기본값으로 sapms<SID> 서비스에서 사용하는 포트를 사용하고, rdisp/msserv 파라미터로 설정할 있습니다. sapms<SID> /etc/services 에서 확인할 있습니다.

 

그럼 간단히 테스트를 해볼까요?

저의 테스트 환경은 아래와 같습니다.

- OS: CentOS7

- DB: Oracle 11.2

- SAP 버전: SAP ERP 6.0 EhP4

- Servers: PAS 1, AAS 1

- 로그온 그룹에 PAS, AAS 등록된 상태

- PAS 실행 중이며, AAS 실행 중이지 않은 상태

- PAS ASCS 인스턴스 넘버는 01

- 사전에 방화벽 포트를 모두 열어놓은 상태에서 로그온 그룹에 PAS, AAS 모두 포함시켜 놓았으며, 이후에 방화벽을 닫음

 

테스트 시나리오

1. PAS 서버 방화벽 3601, 3901 차단 상태에서 AAS 기동

2. PAS 서버 방화벽 3901 허용 AAS 재기동

3. PAS 서버 방화벽 3601,3901 모두 허용 로그온 그룹 테스트

 

 

1. PAS 서버 방화벽 3601, 3901 차단 상태에서 AAS 기동

우선 현재 방화벽 상태를 알아보겠습니다.

[root@testehp4ci ~]# firewall-cmd --list-all

public (default, active)

  interfaces: eno16777736

  sources:

  services: dhcpv6-client ssh

  ports: 1521/tcp 3200/tcp 3300/tcp 4237/tcp 2049/tcp 111/tcp 3201/tcp

  masquerade: no

  forward-ports:

  icmp-blocks:

  rich rules:

3601, 3901 포트는 열려있지 않습니다.

 

PAS 실행 중인 상태입니다.

이제 AAS 실행시켜볼까요?

testehp4ap:eh4adm 36> startsap

Checking EH4 Database

Database is running

-------------------------------------------

Starting Startup Agent sapstartsrv

OK

Instance Service on host testehp4ap started

-------------------------------------------

starting SAP Instance D00

Startup-Log is written to /home/eh4adm/startsap_D00.log

-------------------------------------------

/usr/sap/EH4/D00/exe/sapcontrol -prot NI_HTTP -nr 00 -function Start

Instance on host testehp4ap started

 

우선은 실행이 것처럼 보입니다. 하지만 PAS 접속해서 T-Code: SM51이나 SMLG 들어가보면 AAS 호스트는 보이지 않는데요,

 

AAS 호스트의 Dispatcher 로그를 보면, 메시지서버에 접속하는 데에 실패한 것을 확인할 있습니다. 그리고 여기서 Internal Message Server Port 3901 포트로 접속을 시도한 것을 있죠.

testehp4ap:eh4adm 39> cd /usr/sap/EH4/D00/work

testehp4ap:eh4adm 41> vi dev_disp

Wed Jun  5 23:01:44 2019

***LOG Q0I=> NiPConnect2: 192.168.192.175:3901: connect (113: No route to host) [nixxi.cpp 3289]

*** ERROR => NiPConnect2: SiPeekPendConn failed for hdl 39/sock 12

    (SI_ECONN_REFUSE/113; I4; ST; 192.168.192.175:3901) [nixxi.cpp    3289]

*** ERROR => MsIAttachEx: NiBufConnect to testehp4ci/3901 failed (rc=NIECONN_REFUSED) [msxxi.c      718]

 

2. PAS 서버 방화벽 3901 허용 AAS 재기동

그럼 이번에는 PAS 서버의 3901 포트를 허용한 후에 AAS 재기동해보겠습니다.

아래와 같이 방화벽 3901 포트를 열어주고,

[root@testehp4ci ~]# firewall-cmd --permanent --add-port=3901/tcp

success

[root@testehp4ci ~]# firewall-cmd --reload

success

[root@testehp4ci ~]# firewall-cmd --list-all

public (default, active)

  interfaces: eno16777736

  sources:

  services: dhcpv6-client ssh

  ports: 1521/tcp 3200/tcp 3300/tcp 3901/tcp 4237/tcp 2049/tcp 111/tcp 3201/tcp

  masquerade: no

  forward-ports:

  icmp-blocks:

  rich rules:

 

AAS 중지/시작할게요.

testehp4ap:eh4adm 42> stopsap

Checking EH4 Database

Database is running

-------------------------------------------

stopping the SAP instance D00

Shutdown-Log is written to /home/eh4adm/stopsap_D00.log

-------------------------------------------

/usr/sap/EH4/D00/exe/sapcontrol -prot NI_HTTP -nr 00 -function Stop

Instance on host testehp4ap stopped

Waiting for cleanup of resources

....................................................................

testehp4ap:eh4adm 43> startsap

Checking EH4 Database

Database is running

-------------------------------------------

Starting Startup Agent sapstartsrv

OK

Instance Service on host testehp4ap started

-------------------------------------------

starting SAP Instance D00

Startup-Log is written to /home/eh4adm/startsap_D00.log

-------------------------------------------

/usr/sap/EH4/D00/exe/sapcontrol -prot NI_HTTP -nr 00 -function Start

Instance on host testehp4ap started

 

T-Code: SM51, SMLG 실행해보면, 아래와 같이 정상 동작하는 것을 있습니다.

 

그럼 이제 로그온 그룹을 사용해서 SAPGUI 로그인해볼까요?

 

이런… 에러메시지가 뜨네요.

이건 외부에서 메시지 서버의 정보를 받아올 없기 때문입니다. , External Message Server Port 3601 포트가 막혀 있기 때문이죠.

 

3. PAS 서버 방화벽 3601,3901 모두 허용 로그온 그룹 테스트

그럼 이제 마지막으로 3601 포트를 열어주고 로그온 그룹으로 SAPGUI 열어보는 테스트를 해보겠습니다.

아래와 같이 방화벽 3601포트를 열어주시고,

[root@testehp4ci ~]# firewall-cmd --permanent --add-port=3601/tcp

success

[root@testehp4ci ~]# firewall-cmd --reload

success

[root@testehp4ci ~]# firewall-cmd --list-all

public (default, active)

  interfaces: eno16777736

  sources:

  services: dhcpv6-client ssh

  ports: 1521/tcp 3200/tcp 3300/tcp 3901/tcp 4237/tcp 2049/tcp 3601/tcp 111/tcp 3201/tcp

  masquerade: no

  forward-ports:

  icmp-blocks:

  rich rules:

 

다시 SAPGUI에서 로그온 그룹으로 테스트를 해보면?

 

위와 같이 연결되는 것을 확인할 있습니다.

물론 로그인도 되네요!

 

지금까지 Internal Message Server 포트와 External Message Server 포트의 차이점에 대해 알아보았습니다.

수고하셨습니다~

 

참고자료:

https://help.sap.com/doc/saphelp_nwpi71/7.1/en-US/47/c56a6938fb2d65e10000000a42189c/content.htm?no_cache=true

'SAP BC' 카테고리의 다른 글

SAPCAR option  (0) 2021.10.25
SAP 프린터 설정 (사용자 PC 프린터 사용)  (0) 2020.07.28
WEB GUI 활성화  (1) 2020.07.07
ASCS / PAS / AAS / CI / DI  (2) 2020.04.06
[SAP] TemSe와 Spool - 개념 및 관리방법  (0) 2020.03.24

+ Recent posts