Kubernetes 대시보드를 설치하고, 아파치를 프록시로 구성하고, 아파치를 사용하여 사용자 인증을 제어하는 방법을 알아보시겠습니까? 이 자습서에서는 Kubernetes 대시보드를 설치하고 우분투 리눅스를 실행하는 컴퓨터에서 인증 프록시로 아파치를 사용하는 방법을 보여 드리겠습니다.
• Ubuntu 20
• Ubuntu 19
• Ubuntu 18
• Kubernetes 1.18
이 자습서는 단일 노드 Kubernetes 클러스터를 설치합니다.
이 예제에서는 Kubernetes 마스터 노드 IP 주소가 192.168.15.200입니다.
쿠베르네츠 – 튜토리얼
이 페이지에서는 Kubernetes와 관련된 자습서 목록에 빠르게 액세스할 수 있습니다.
튜토리얼 Kubernetes – 마스터 노드 설치
필요한 패키지 목록을 설치합니다.
Docker 서비스를 설치합니다.
부팅 하는 동안 Docker 서비스를 사용 합니다.
Docker 서비스 구성 파일을 편집합니다.
항목의 끝에 다음 구성 추가: EXECSTART
구성 전의 파일은 다음과 같습니다.
여기에 우리의 구성 후 파일입니다.
시스템 구성 파일을 만듭니다.
다음은 파일 내용입니다.
시스템 구성 파일을 사용하도록 설정합니다.
명명된 구성 파일인 모듈을 편집합니다. CONF
이 파일의 끝에 다음 구성을 추가합니다.
FSTAB 구성 파일을 편집하고 스왑 메모리 사용을 사용하지 않도록 설정합니다.
구성 전의 파일은 다음과 같습니다.
여기에 우리의 구성 후 파일입니다.
고유한 호스트 이름을 설정합니다.
필요한 환경 변수를 구성하도록 파일을 만듭니다.
다음은 파일 내용입니다.
컴퓨터를 재부팅합니다.
Kubernetes 리포지토리 키를 다운로드하고 설치합니다.
공식 Kubernetes 저장소를 추가합니다.
Kubernetes 패키지를 설치합니다.
필요한 Kubernetes 이미지를 다운로드합니다.
다음은 명령 출력입니다.
Kubernetes 클러스터를 초기화합니다.
다음은 명령 출력입니다.
Kubernetes 클러스터에 노드를 추가하는 명령을 기록합니다.
Kubernetes 구성 파일에 올바른 파일 권한을 설정합니다.
필요한 네트워크 구성을 설치합니다.
기본적으로 Kubernetes 마스터 노드는 PODS를 실행할 수 없습니다.
선택적으로 Kubernetes 마스터 노드가 PODS를 실행하도록 합니다.
예제에서는 단일 노드 Kubernetes 클러스터를 사용하고 있습니다.
튜토리얼 – Kubernetes 대시 보드 설치
필요한 패키지 목록을 설치합니다.
필요한 YAML 파일을 다운로드합니다.
Kubernetes 대시보드를 설치합니다.
다음은 명령 출력입니다.
대시보드에 대한 서비스 계정을 만듭니다.
대시보드 서비스 계정에 클러스터 관리자 역할을 구성합니다.
아파치 프록시에 대한 서비스 계정을 만듭니다.
클러스터 관리자 역할을 아파치 프록시 계정으로 구성합니다.
Kubernetes 서버에서 사용할 수 있는 아파치 비밀을 나열합니다.
다음은 명령 출력입니다.
귀하의 비밀의 이름은 우리 이름과 동일하지 않습니다.
아파치 비밀 토큰 값을 가져옵니다.
다음은 명령 출력입니다.
아파치 토큰 값을 기록하십시오.
예제에서는 토큰 값입니다.
대시보드 서비스 클러스터 IP 주소를 나열합니다.
다음은 명령 출력입니다.
클러스터 IP 주소와 TCP 포트를 기록합니다.
이 예제에서는 대시보드 클러스터가 TCP 포트 443및 IP 주소 10.107.55.24를 사용하고 있습니다.
필요한 대시보드 구성을 완료했습니다.
Kubernetes 프록시 – 아파치를 사용하여 기본 사용자 인증
마스터 노드에 아파치 서버를 설치합니다.
필요한 아파치 모듈을 활성화합니다.
아파치 구성 파일을 편집합니다.
이 파일의 끝에 다음 줄을 추가합니다.
아파치 암호 파일을 만들고 첫 번째 사용자 계정을 추가합니다.
시스템에서 새 사용자 계정에 암호를 입력하도록 요청합니다.
다음은 파일 내용입니다.
추가 사용자 계정을 만들려면 다음 명령을 사용합니다.
OpenSSL 명령을 사용하여 개인 키와 인증서를 만듭니다.
요청된 정보를 입력합니다.
COMMON_NAME 라는 옵션에서 IP 주소 또는 호스트 이름을 입력해야 합니다.
우리의 예에서, 우리는 IP 주소를 사용: 192.168.15.200
기존 Kubernetes 프록시 인증서와 키를 PEM 형식을 사용하여 단일 파일로 변환합니다.
기본 웹 사이트에 대한 아파치 구성 파일을 편집합니다.
다음은 구성 전의 파일입니다.
여기에 우리의 구성 후, 파일입니다.
프록시패스 및 프록시패스역이라는 구성 항목의 IP 주소를 대시보드 클러스터 IP 주소로 변경합니다.
REQUESTHEADER라는 구성 항목의 토큰 값을 이전에 만든 아파치 비밀 토큰 값으로 변경합니다.
예제에서는 자체 서명된 인증서를 사용하여 HTTPS를 사용하도록 설정했습니다.
예제에서는 아파치 기본 인증의 사용을 구성했습니다.
아파치는 사용자와 대시보드 클러스터 IP 주소 간의 HTTPS 통신을 프록시합니다.
아파치는 Kubernetes 서버 설치 중에 자동으로 생성된 인증서와 키를 사용하여 대시보드에 대한 상호 TLS 인증을 수행합니다.
아파치 서버는 대시보드로 전송된 모든 패킷에 헤더를 추가합니다.
이 헤더는 권한 부여 베어러라고 명명되었으며 이전에 아파치 프록시에 만든 비밀 토큰이 포함되어 있습니다.
아파치는 또한 HTTP 사용자를 요청된 URL의 HTTPS 버전으로 리디렉션합니다.
아파치 서비스를 다시 시작합니다.
브라우저를 열고 아파치 서버 IP 주소의 HTTPS 버전에 액세스합니다.
이 예제에서는 브라우저에 다음 URL을 입력했습니다.
• https://192.168.15.200
아파치 서버는 사용자 인증을 수행해야 합니다.
로그인이 성공한 후 Kubernetes 대시보드를 제시해야 합니다.
아파치 프록시는 AUTH HEADER라는 기능을 사용하여 Kubernetes 대시보드에서 자동으로 인증을 수행합니다.
당신은 성공적으로 Kubernetes 대시 보드의 프록시로 아파치의 구성을 완료.