BIG-IP를 통한 SNI 지원(Server Name Indication)

4553 단어 snibig-ip
개시하다
SNI(Server Name Indication)는 SSL 연결이 시작될 때(SSL의 악수를 하기 전) 클라이언트가 서버에 연결 대상의 호스트 이름(FQDN)을 보내는 구조다.SSL 연결을 설정하기 전에 서버에서 호스트 이름을 알 수 있습니다.
서버에서는 호스트 이름을 확인한 후 SSL 악수에 응답하기 때문에 요청한 호스트 이름의 SSL 인증서를 사용하여 SSL 연결을 할 수 있습니다.
하나의 글로벌 IP 주소에서 FQDN의 서로 다른 여러 사이트를 운영할 때 각 사이트의 SSL에 대응하기 위해 SNI를 사용한다.
다음은 SNI에서 BIG-IP의 Virtual Server가 대응하는 방법에 대한 설명입니다.
프로세스 설정
BIG-IP에서 여러 SSL 인증서를 사용하려면 다음 절차를 따르십시오.

단계 설정(GUI)
SSL 인증서 및 개인 키 가져오기
먼저 SNI에 사용할 서버 인증서와 개인 키를 BIG-IP로 가져옵니다.GUI 는 System → File Management → SSL Ceertificate List 의 위치입니다.

여기서 조금 중요한 것은 "Fallback용"인증서와 개인 키입니다. 이것은 "인증서와 일치하지 않는 SSL 연결"에 응답하는 인증서입니다.FallBack에 사용할 인증서와 개인 키를 미리 준비해야 합니다.
Client SSL 작성 소개
그런 다음 각 인증서에 대한 Client SSL Profile을 만듭니다.각 Client SSL Profile은 Ceertificate, Key 및 ServerName을 설정해야 합니다.
여기 설정 및 (Client SSL Profile의 설정 항목은 캡처 하나로 잠글 수 없기 때문에 분할됩니다.)

여기 설정.

그러나 Fallback용 인증서와 연관된 Client SSL Profile만 ServerName을 입력하지 않고 Default SSL Profile for SNI를 활성화합니다.
이런 느낌.

가상 서버에 클라이언트 SSL 프로필 적용
마지막으로 SSL 연결을 기다리는 Virtual Server에 여러 개의 Client SSL Profile을 적용하면 됩니다.
Virtual Server 설정의 해당 섹션입니다.

보완: CLI의 설정 정보
CLI를 통해 설정할 때는 다음과 같습니다.
SSL 인증서 또는 개인 키 가져오기
SSL 인증서나 개인 키 파일을 BIG-IP 내의 임의의 디렉터리 (/shared/tmp 등) 에 업로드하고 명령을 사용하여 파일을 BIG-IP 설정에 등록합니다.등록할 때, 파일은 지정한 디렉터리로 복사되기 때문에 업로드된 파일은 삭제할 수 있습니다.
인증서 파일을 '/shared/tmp/test.crt' 로 하고 기밀 키 파일을 '/shared/tmp/test.key' 로 하며 BIG-IP에'test-cert.crt ','test-cert.key' 로 등록하는 방법입니다.
(이렇게 되면 GUI에서 인증서와 기밀 키를 합쳐서'test-cert'로 표시됩니다.)
# tmsh
(tmos)# 
(tmos)# create sys file ssl-cert test-cert.crt source-path file:///shared/tmp/test.crt
Copying file "file:///shared/tmp/test.crt" ...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
101  1216  101  1216    0     0  3710k      0 --:--:-- --:--:-- --:--:--     0
(tmos)# 
(tmos)# create sys file ssl-key test-cert.key source-path file:///shared/tmp/test.key
Copying file "file:///shared/tmp/test.key" ...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  1704  100  1704    0     0  4982k      0 --:--:-- --:--:-- --:--:--     0
Client SSL 작성 소개
인증서와 개인 키를 연결하는 Client SSL Profile을 만들고 Server Name 방법을 설정합니다.3단계로 나뉘어 한 줄로 통일적으로 설정할 수도 있다.
# tmsh
(tmos)# 
(tmos)# create ltm profile client-ssl test.example.co.jp 
(tmos)# modify ltm profile client-ssl test.example.co.jp { cert-key-chain replace-all-with  { test-cert { cert test-cert.crt key test-cert.key } } }
(tmos)# modify ltm profile client-ssl test.example.co.jp server-name "test.example.co.jp" 
가상 서버에 클라이언트 SSL 프로필 적용
여기에는 이미 Virtual Server "vs example.co.jp https"가 있으며 Client SSL Profile을 추가하는 방법이 기재되어 있습니다.
# tmsh
(tmos)# modify ltm virtual vs_example.co.jp_https profiles add { test.example.co.jp { context clientside } } 
참조 정보
  • 위키백과(일본어): Server Name Indication
  • Askf5 K13452: Configuring a virtual server to serve multiple HTTPS sites using the TLS Server Name Indication feature
  • 좋은 웹페이지 즐겨찾기