3.2.18. 보안 경로 사용
현재는 암호로 보호되는 키 파일이 지원되지 않습니다. HAProxy는 시작 시 암호를 묻는 메시지를 표시하며 이 프로세스를 자동화할 방법이 없습니다. 키 파일에서 암호를 제거하려면 다음을 실행합니다.
# openssl rsa -in <passwordProtectedKey.key> -out <new.key>
다음은 트래픽이 대상에 프록시되기 전에 라우터에서 TLS 종료와 함께 보안 에지 종료 경로를 사용하는 방법에 대한 예입니다. 보안 에지 종료 경로는 TLS 인증서 및 키 정보를 지정합니다. TLS 인증서는 라우터 프런트엔드에서 제공합니다.
먼저 라우터 인스턴스를 시작합니다.
# oc adm router --replicas=1 --service-account=router
다음으로 에지 보안 경로에 사용할 개인 키 csr 및 인증서를 만듭니다. 이 작업을 수행하는 방법에 대한 지침은 인증 기관 및 공급자에 따라 다릅니다. www.example.test 도메인의 간단한 자체 서명 인증서는 아래 표시된 예제를 참조하십시오.
# sudo openssl genrsa -out example-test.key 2048
#
# sudo openssl req -new -key example-test.key -out example-test.csr \
-subj "/C=US/ST=CA/L=Mountain View/O=OS3/OU=Eng/CN=www.example.test"
#
# sudo openssl x509 -req -days 366 -in example-test.csr \
-signkey example-test.key -out example-test.crt
위의 인증서와 키를 사용하여 경로를 생성합니다.
$ oc create route edge --service=my-service \
--hostname=www.example.test \
--key=example-test.key --cert=example-test.crt
route "my-service" created
해당 정의를 살펴보겠습니다.
$ oc get route/my-service -o yaml
apiVersion: v1
kind: Route
metadata:
name: my-service
spec:
host: www.example.test
to:
kind: Service
name: my-service
tls:
termination: edge
key: |
-----BEGIN PRIVATE KEY-----
[...]
-----END PRIVATE KEY-----
certificate: |
-----BEGIN CERTIFICATE-----
[...]
-----END CERTIFICATE-----
www.example.test 에 대한 DNS 항목이 라우터 인스턴스를 가리키는지 확인하고 도메인의 경로를 사용할 수 있어야 합니다. 아래 예제에서는 로컬 확인자와 함께 curl을 사용하여 DNS 조회를 시뮬레이션합니다.
# routerip="4.1.1.1" # replace with IP address of one of your router instances.
# curl -k --resolve www.example.test:443:$routerip https://www.example.test/