주:

보안 애플리케이션 개발을 위해 Oracle Cloud Infrastructure Kubernetes Engine을 통해 SSH 터널링 활용

소개

이미지

Ali Mukadam의 도움으로 OKE와 SSH 터널링을했을 때 나는 그것을 "마법"이라고 불렀습니다.

그는 다음 메시지와 함께 나에게 응답 :

"당신은 그것을 마법이라고 불렀고, 다른 사람들은 그것을 과학이라고 불렀습니다. 내가 있는 곳은 하나이고 같은 곳이다."

원래 인용은 토르 영화에서:

"당신의 조상은 그것을 마법이라고 불렀지만 당신은 그것을 과학이라고 부릅니다. 나는 그들이 하나이고 같은 땅에서 왔습니다."

이 마법은 무엇인가?

최신 애플리케이션 개발에서는 특히 Oracle Cloud Infrastructure Kubernetes Engine(OCI Kubernetes Engine 또는 OKE)과 함께 작업할 때 로컬 및 클라우드 기반 리소스 간의 연결을 보호하는 것이 필수적입니다. SSH 터널링은 OKE 클러스터에 안전하게 접속할 수 있는 간단하면서도 강력한 방법을 제공하므로 개발자는 공용 인터넷에 노출되지 않고 리소스를 관리하고 상호 작용할 수 있습니다. 이 사용지침서에서는 OKE를 사용하여 SSH 터널링을 설정하는 방법과 개발자가 이 접근 방식을 워크플로우에 통합하여 보안 및 효율성을 향상시키는 방법에 대해 알아봅니다. 초기 구성부터 모범 사례에 이르기까지 OKE 기반 애플리케이션에서 SSH 터널링을 효과적으로 활용하는 데 필요한 모든 것을 다룹니다.

다음 이미지는 서로 다른 두 응용 프로그램을 터널링하는 SSH의 전체 트래픽 플로우를 보여줍니다.

이미지

목표

작업 1: OKE에 Kubernetes 클러스터 배치(배스천 및 운영자 인스턴스 사용)

OKE에 Kubernetes 클러스터가 배치되어 있는지 확인합니다.

작업 2: Kubernetes 클러스터에 NGINX 웹 서버 배치

운영자는 인터넷에서 직접 액세스할 수 없으며 Bastion 호스트를 통과해야 합니다.

새 Pod/Application 테스트

작업 3: Localhost 항목으로 SSH 구성 스크립트 만들기

SSH 터널이 작동하도록 하려면 /Users/iwhooge/.ssh 폴더에 있는 SSH 구성 파일에 다음 항목을 추가해야 합니다.

작업 4: SSH 터널 설정 및 Localhost를 사용하여 NGINX 웹 서버에 연결

작업 5: Kubernetes 클러스터에 MySQL Database 서비스 배치

SSH 터널을 통해 NGINX 응용 프로그램에 연결할 수 있습니다. 이제 OKE 환경 내에서 실행 중인 MySQL 데이터베이스 서비스를 추가합니다.

작업 6: SSH 구성 스크립트 내에 Localhost 항목 추가

새 MySQL 데이터베이스 서비스에 액세스하려면 SSH 구성 스크립트 내에 추가 localhost 항목을 추가합니다.

작업 7: SSH 터널 설정 및 Localhost를 사용하여 MySQL Database에 연결

작업 8: 모든 응용 프로그램 및 서비스 정리

다음 단계

OKE 클러스터에 대한 액세스 보안은 최신 애플리케이션 개발에서 중요한 단계이며 SSH 터널링은 강력하고 간단한 솔루션을 제공합니다. 이 자습서의 단계를 구현함으로써 개발자는 리소스를 보호하고 워크플로우를 간소화하며 여러 애플리케이션에 대한 중요한 연결을 제어할 수 있습니다. SSH 터널링을 OKE 설정에 통합하면 보안이 향상될 뿐만 아니라 공용 인터넷에 리소스를 노출하는 것과 관련된 위험을 최소화할 수 있습니다. 이 연습을 통해 자신 있게 OKE 클러스터를 사용하고 확장 가능하고 안전하며 효율적인 애플리케이션을 구축하는 데 집중할 수 있습니다.

확인

추가 학습 자원

docs.oracle.com/learn에서 다른 실습을 탐색하거나 Oracle Learning YouTube 채널에서 더 많은 무료 학습 콘텐츠에 액세스하세요. 또한 Oracle Learning Explorer가 되려면 education.oracle.com/learning-explorer을 방문하십시오.

제품 설명서는 Oracle Help Center를 참조하십시오.