안녕하세요, 아는 형입니다.
오늘은 프로젝트에 투입되어 펌뱅킹(Firm Banking) 시스템을 처음부터 구축할 때 실제로 어떤 절차를 거치는지, 준비 단계부터 통신 모듈 세팅까지 쭉 정리해보려고 합니다. 방화벽 신청서만 몇 장을 썼는지 모르겠네요.
펌뱅킹 시스템을 구축한다고 하면 다들 “그냥 SAP 설정만 하면 되는 거 아니야?”라고 생각하시는 경우가 많은데, 실제로는 SAP 설정은 오히려 마지막 단계에 가깝습니다. 그 전까지 은행, VAN사, 네트워크 담당자, 서버 담당자까지 얽혀서 처리해야 할 일이 정말 많거든요. 이번 글에서는 그 과정을 순서대로 풀어보겠습니다.

계좌 정리부터 시작합니다
펌뱅킹 시스템을 구축하고자 하는 고객사가 있다면 가장 먼저 해야 할 일은 계좌 정리입니다. 보통 계좌 관리는 자금운영팀에서 하고 있기에, 각 계좌가 어떤 용도로 쓰일지, 지급처리만 하는지 입금처리만 하는지, 펌뱅킹 사용 서비스를 어떻게 정의할지에 맞춰 정리를 해야 합니다.
지급처리의 경우는 F110, F111 IMG Setting과도 연계가 됩니다. 이 정리 작업이 나중에 지급방법 분류와도 이어지기 때문에 대충 넘어갈 수가 없어요. 이 부분은 지급방법 분류 편에서 좀 더 자세히 다뤄보겠습니다.
현업에게 필요한 서비스가 뭔지 확인을 받으면, 그다음은 현업 자금부서에서 은행 쪽으로 요청을 보낼 차례입니다. 펌뱅킹 약정이 필요한 은행에 약정 공문과 신규 ERP 테스트 계좌 생성 공문을 요청하고, 동시에 은행에서 생성해주는 업체코드를 받아서 VAN사에 전달하고 운영 업체코드 등록을 요청해야 하지요. 보통 은행 현업이 은행 전산부서 담당자를 통해 생성된 운영 업체코드를 시스템 구축 담당자에게 전달해주게 됩니다.
네트워크 환경, 여기서부터 진짜 시작입니다
자, 계좌 쪽 정리가 어느 정도 되면 이제 네트워크 환경을 준비해야 합니다. 사실 저는 이 부분이 펌뱅킹 구축 과정 중에 가장 시간이 오래 걸리는 구간이라고 생각하는데요, 방화벽 신청이 한두 번으로 끝나지 않기 때문입니다.
VAN사 방화벽 신청
펌뱅킹이 설치된 신규 서버에서 VAN사로 전문이 나가야 하니, 이때 사용할 신규 서버에 대한 방화벽 등록을 요청하는 VAN사의 방화벽 등록 신청서를 VAN사에 제출해야 합니다. 여기서 중요한 건 사용하려는 펌뱅킹 서비스에 맞춰 신청해야 한다는 점입니다. 저희 프로젝트의 경우엔 실시간(Realtime)과 배치(Batch) 두 서비스를 모두 신청했습니다.
VAN사 담당자는 서비스 내용에 대해 확인하고, 시스템 구축 담당자에게 펌뱅킹 통신 모듈과 VAN사가 연결될 때 사용되는 Mapper ID 계정을 발급하여 알려주게 됩니다. 그리고 VAN사마다 제공하는 곳도 있고 없는 곳도 있으나, 전문 이동 현황(송신/수신)을 확인할 수 있는 사이트가 있다면 서비스별 ID/PW도 함께 신청하시면 됩니다.
그룹망 간 구간 방화벽
SAP에서 VAN사로 전문이 나갈 수 있으려면, 고객사의 그룹망 간 구간 방화벽도 열려야 합니다. 이때 관련된 팀은 네트워크 팀이겠지요. 이건 각 고객사의 정보기확이나 인프라지원팀과 같은 관리 부서에서 1차 전자결재도 받고 실무 네트워크 팀 소속 회사의 방화벽 정책 신청서로 전자결재를 올려 한 번 더 결재를 받아야 합니다. 결재 라인이 하나가 아니라는 거죠.
실제 실무 처리 부서에서는 보통 증빙이 없으면 감사 때 문제가 발생해서 방화벽 처리를 해주는데 3일 정도 소요가 되었던 것 같습니다.
구축담당자 PC 접근용 방화벽
서버에 들어가서 vi editor로 ip나 password 같은 펌뱅킹 Configuration 설정을 하려면, 구축담당자(Consultant) PC에서 개발서버로 접근할 수 있어야 합니다. 이 권한도 마찬가지로 전자결재로 방화벽 신청을 진행해야 합니다.
여기서 삽질 좀 했습니다. 네트워크 담당자가 구축담당자 PC에서 개발서버로 접속되게 방화벽을 뚫어줬다고 해서 끝난 게 아니었거든요. 서버에는 여전히 접근이 안 됐습니다. ALC 때문이었죠.
| 방화벽 종류 | 관련 담당 | 비고 |
|---|---|---|
| VAN사 방화벽 | VAN사 담당자 | 서비스별(실시간/배치) 신청, Mapper ID 발급 |
| 그룹망 간 구간 방화벽 | 정보기획/인프라지원팀 + 네트워크 담당자 | 전자결재 2단계, 약 3일 소요 |
| Consultant PC 접근용 방화벽 | 네트워크 담당자 | 방화벽만으로는 서버 접근 불가 (ALC 별도) |
복병, ALC
큰 회사일수록 네트워크 담당자와 서버 담당자가 다른 경우가 많습니다. 방화벽이 열렸다고 해서 서버에 바로 붙을 수 있는 게 아니라는 걸 여기서 처음 알게 되실 텐데요. 서버 접근을 한 번 더 통제하는 ALC라는 게 있기 때문입니다.
ALC는 회사나 인프라 환경마다 약어의 정의가 조금씩 다르긴 하지만, 보통은 서버 접근을 통제하는 접근제어 시스템 혹은 접근 권한 체계를 의미합니다. 쉽게 말하면 사용자가 운영/개발 서버에 SSH나 원격접속을 할 때, 서버에 직접 붙는 게 아니라 ALC를 거쳐서 “누가, 어떤 서버에, 어떤 계정으로 접근할 수 있는지”를 통제하는 방식입니다.
일반적인 접근 흐름은 이렇습니다.
사용자 PC → ALC(접근제어) → 대상 서버 → SAP/DB/펌뱅킹 서비스
예를 들어 제가 펌뱅킹 서버에 접근한다고 하면, 아래 조건들이 갖춰져야 합니다.
- 사용자 ID가 ALC에 등록되어 있어야 합니다
sapbro01같은 대상 서버에 대한 접근 권한이 있어야 합니다- 필요하면
sapbro,root, SAP<SID>adm등의 OS 계정 사용 권한도 별도로 승인되어야 합니다 - 회사 정책에 따라 접속 기록, 명령어 입력 내역, 화면 녹화 등이 남을 수도 있습니다
특히 운영 서버에서는 PC에서 서버로 직접 SSH 접속하는 걸 막고, ALC 같은 접근제어 시스템을 반드시 거치도록 구성하는 경우가 많습니다. 보안뿐 아니라 접속 이력 관리와 감사(Audit) 때문인데요, 이 부분은 방화벽 포트 점검 편에서 조금 더 구체적으로 다뤄보겠습니다.
여기까지 네트워크와 ALC 신청을 마쳤다면, 이제 기본적인 준비는 어느 정도 끝난 셈입니다.

계정 신청과 통신 모듈 세팅
다음은 계정 신청과 통신 모듈, 펌뱅킹 데몬 세팅 차례입니다. 앞에서 신청했던 방화벽/ALC와는 결이 조금 다른, 실제 시스템 구성 작업이 시작되는 지점이에요.
먼저 특히 BC 모듈에 요청해야 하는 사항이 많은데요, 우선 OS상 접근을 위한 유저 계정 생성이 필요합니다. 저 같은 경우 보통 펌뱅킹 관련 계정인 관계로 User를 firmbank로 만들어달라고 요청하곤 합니다. 그리고 SAP와 펌뱅킹 데몬이 연결되려면 SAP RFC가 필요한데, 이때 사용할 SAP RFC 계정도 함께 요청합니다.
또한 VAN사에서 제공하는 펌뱅킹 통신모듈을 SAP 서버 내 특정 경로에 설치하고, 파일서버(NAS)와 연계해달라는 요청도 필요합니다. 파일 기반으로 생성된 파일이 VAN사 통신모듈 내 지정된 경로로 오가는 구조이기 때문이죠.
이렇게 파일이 생성되고 서버 내 특정 폴더로 전문을 내려보내려면 권한이 있어야 하니, 775 권한을 요청해서 파일 생성 및 읽기/쓰기가 문제없도록 폴더 권한도 챙겨야 합니다. 그리고 JAVA 버전도 신경 써야 하는데요, 너무 최신 버전은 펌뱅킹 서비스가 안 돌아가는 경우가 있어서 1.08 버전 정도로 요청합니다.
수취인 성명 조회 시 글자가 깨지는 경우가 있었는데,
glibc-commonpackage 설치 확인과firmbankOS user의 locale에서 UTF-8 제거를 미리 요청하여 해결했습니다. 인코딩 이슈는 항상 예상 못한 곳에서 터지더라고요.
Config 파일, 여기서 실제로 손이 많이 갑니다
자, 이제 앞서 신청했던 계정들을 실제로 사용할 차례입니다. 원화/외화/배치 각각 통신모듈 Config 관련 정보 세팅이 필요한데요, 제가 사용한 VAN사의 경우 CF_Jcopool_property.xml, CF_Accept.xml, CF_Communication.xml 파일에 각각 IP 등의 설정값과 SAP 연계 정보를 수정해줘야 했습니다.
이 작업은 VI Editor로 진행하는데, VI Editor 사용법을 모르신다면 미리 익혀두시는 걸 추천드립니다. 이 부분은 VI Editor 사용법 편에서 따로 다뤄보겠습니다.
수정 내역 중 SAP 연계 정보에는 SAP ID/PW, 인스턴스 번호, SID 정보뿐만 아니라, SAP RFC 원화 송신/수신, 외화 송신/수신을 받는 함수를 연결해줘야 하는 부분이 있습니다. 여기를 놓치면 통신모듈은 떠 있는데 SAP와 실제로 데이터가 안 오가는 상황이 생기니, 꼭 잊지 말고 연결해주세요. 하기와 같이 함수를 연력해야 하지요.
| 구분 | RFC 함수명 |
|---|---|
| 원화 송신 | ZBRO_RFC_SEND |
| 외화 송신 | ZBRO_RFC_SEND_F |
| 원화 수신 | ZBRO_RFC_RECV |
| 외화 수신 | ZBRO_RFC_RECV_F |
여기까지 되었으면 BC에게 서버 기본 세팅 마무리를 요청해야 합니다. Startup.sh 파일 경로를 변경하고, SAP 내 펌뱅킹 공통 테이블도 수정(파일경로 수정 필요)하면, 정말 끝입니다.
돌아보며
정리하고 보니 정말 많죠? 은행, VAN사, 네트워크 담당자, 서버 담당자, BC까지 — 이렇게 많은 사람과 부서가 얽혀 있다 보니 어느 하나라도 빠지면 진행이 멈춥니다. 그만큼 챙겨야 할 것도 많지만, 펌뱅킹 시스템을 구축하려면 반드시 거쳐야 하는 과정이기도 합니다.
다음 편에서는 이번에 잠깐 언급했던 방화벽 포트 점검 부분과, 실시간 인터페이스 설계 이야기를 좀 더 풀어보겠습니다.
“펌뱅킹 시스템 구축 절차를 배워보자 – 계좌정리부터 ALC까지”에 대한 1개의 생각