-
Postman proxy를 이용해서 private VM에 API request 하기 (tunneling)Programing/OCI 2023. 8. 18. 15:34반응형
priavate 환경에 VM 인스턴스를 생성하고 내부에 서버를 구축했습니다.
위의 그림과 비교해 설명하면 다음과 같습니다.
- A: 로컬에 위치한 개인 컴퓨터 (Windows)
- B: Public VM (Ubuntu) - 터널링 용 베스쳔 서버
- C: Private VM (Ubuntu) - 운영/개발 서버 (flask)
그리고 서버가 잘 구축되었는지, 인스턴스 환경에서 문제가 발생하지는 않는지 테스트를 진행하고자 합니다.
방법을 검색해보면 대다수 이 링크에서 설명하는 방법과 크게 다르지 않습니다.
하지만 네트워크 초보에게는 정보가 너무 적습니다. 어떻게 하라는건지 감이 잘 안왔습니다.
시행착오를 거치며 접속, API요청에 성공한 방법을 공유합니다.
주의
- 당연히 네트워크 접속 보안규칙(AWS: inbound rule / OCI: ingress rule)은 알맞게 설정해 주셨죠?
- 저는 flask의 기본 포트번호(5000번)을 변경하지 않고 사용했습니다.
- 대다수 검색결과에서는 proxy 설정에 5001번 포트를 사용했고, 저도 5001번으로 설정했습니다.
Step 1: 로컬 컴퓨터에서 퍼블릭 VM에 접속, 터널 생성
cmd에서 Public VM에 접속해주세요. 이때, 터널도 함께 생성합니다.
# password를 이용하는 경우 ssh -D {port} {username}@{public-VM-IP} # ssh키를 이용하는 경우 ssh -D {port} -i {path-of-key-file} {username}@{public-VM-IP} # 제가 접속에 사용한 명령 ssh -D 5001 -i C:\Users\Lee\Documents\ssh\ssh-key-VM.key ubuntu@xxx.xx.xx.xxx
Step 2: proxy port 변경
새로 cmd 창을 띄워서 작업해주세요.
npm을 사용해야하는데, 만약 npm 명령이 먹히지 않는다면 node js를 사전에 설치해주세요.
node js를 설치하면 npm도 함께 설치됩니다. 이후 http-proxy-to-socks를 설치합니다.
npm install -g http-proxy-to-socks
로컬호스트의 proxy port를 8080 port로 변경합니다.
hpts -s 127.0.0.1:5001 -p 8080
Step 3: Postman proxy 설정
Postman에서 설정에 들어갑니다.
proxy 설정을 아래와 같이 설정해주세요
Step 4: 테스트
localhost로 요청을 날려보면 성공적으로 response를 받습니다!
private VM에서도 당연히 로그가 남는걸 볼 수 있습니다.
반응형'Programing > OCI' 카테고리의 다른 글
OCI MySQL DB (MDB) #2. DB에 접속하기 (MySQL Workbench) (0) 2023.08.20 OCI MySQL DB (MDB) #1. DB 인스턴스 생성 (0) 2023.08.20 OCI Cloud shell로 VM 접속하기(SSH) (0) 2023.06.09 VScode로 OCI VM 서버 원격접속하기(SSH) (0) 2023.06.07 OCI VM 인스턴스 생성하기 (0) 2023.06.07