참고: 이 문서의 명령은 Isilon Cluster에서만 사용할 수 있습니다. 외부 Linux 서버와 함께 사용하기 위한 것이 아닙니다.
참고: Isilon은 인증서를 자동 갱신하지 않습니다. Isilon Cluster에서 이 문서의 단계에 따라 수동으로 갱신해야 합니다.
소개
이 문서에서는 Isilon 웹 관리 인터페이스의 SSL(Secure Sockets Layer) 인증서를 교체 또는 갱신하는 방법에 대해 설명합니다. 다음 절차에는 자체 서명된 인증서 교체 또는 갱신을 완료하거나 CA(Certificate Authority)에 SSL 교체 또는 갱신을 요청하는 옵션이 포함됩니다.
필수 툴 또는 기술
이 작업을 완료하려면 Isilon 웹 관리 인터페이스에 액세스하기 위한 URL이 있어야 합니다. (이 문서의 예에서는
https://isilon.example.com:8080/
에서 제공하는 최신 버전)으로 업데이트합니다. 또한 명령줄에서 명령을 실행하는 데에도 익숙해야 합니다.
필수 구성 요소
참조 정보
다음 목록에는 의 기본 위치가 포함되어 있습니다.
server.crt
및
server.key
OneFS 7.0.x 및 OneFS 8.0.0의 파일
x입니다. 다음 절차에서 설치된 OneFS 버전에 대해 이 정보와 일치하도록 단계를 업데이트합니다.
OneFS 7.0.x 이상
/usr/local/apache24/conf/ssl.crt/server.crt
/usr/local/apache24/conf/ssl.key/server.key
OneFS 8.0.1.x 이상
- 아래 명령을 실행하여 인증서 목록을 가져옵니다.
isi certificate server list
- 원래 인증서 및 키의 백업을 저장합니다(OneFS 7.0.x - 8.0.0.x에만 해당).
- 클러스터의 노드에서 SSH 연결을 열고 "root" 계정을 사용하여 로그인합니다.
- 다음 명령을 실행하여 백업 위치를 생성하고 원래 키와 인증서를 저장합니다.
mkdir -p /ifs/data/Isilon_Support/original_ssl_backup
cp /usr/local/apache24/conf/ssl.crt/server.crt /ifs/data/Isilon_Support/original_ssl_backup
cp /usr/local/apache24/conf/ssl.key/server.key /ifs/data/Isilon_Support/original_ssl_backup
절차
로컬 작업 디렉토리를 만듭니다.
mkdir /ifs/local
cd /ifs/local
기존 인증서를 갱신할 것인지 아니면 처음부터 인증서를 만들 것인지 확인합니다.
기존(재고)을 기반으로 하는 갱신 인증서가 생성됩니다. ssl.key
명령을 입력합니다. 다음 명령을 실행하여 2년 인증서를 생성합니다. 만료 날짜가 다른 인증서를 생성하려면 -days 값을 늘리거나 줄입니다.
cp /usr/local/apache2/conf/ssl.key/server.key ./ ; openssl req -new -days 730 -nodes -x509 -key server.key -out server.crt
시스템 메시지에 조직에 적합한 정보로 답변하여 자체 서명된 SSL 인증서를 생성하는 프로세스를 완료합니다.
예를 들면 다음과 같습니다.
Country Name (2 letter code) [AU]:US
State or Province Name (full name) [Some-State]:Washington
Locality Name (eg, city) []:Seattle
Organization Name (eg, company) [Internet Widgits Pty Ltd]:Isilon
Organizational Unit Name (eg, section) []:Support
Common Name (e.g. server FQDN or YOUR name) []:isilon.example.com
Email Address []:support@example.com
정보 입력이 완료되면 server.csr
및 server.key
파일이 표시되는 위치 /ifs/local directory
명령을 입력합니다.
- (선택 사항) 인증서의 무결성 및 특성을 확인합니다.
openssl x509 -text -noout -in server.crt
이 단계 후에는 이 문서의 클러스터에 인증서 추가 섹션으로 이동합니다.
이 절차에서는 새 개인 키 및 SSL 인증서를 만드는 방법을 보여 줍니다. 다음 명령을 실행하여 RSA 2048-bit
개인 키:
openssl genrsa -out server.key 2048
인증서 서명 요청을 생성합니다.
openssl req -new -nodes -key server.key -out server.csr
조직에 적합한 정보를 입력합니다.
Country Name (2 letter code) [AU]:
State or Province Name (full name) [Some-State]:
Locality Name (eg, city) []:
Organization Name (eg, company) [Internet Widgits Pty Ltd]:
Organizational Unit Name (eg, section) []:
Common Name (e.g. server FQDN or YOUR name) []:
Email Address []:
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
- (선택 사항) Subject-Alternative-Names를 포함하는 인증 기관에 대한 CSR을 생성합니다. 추가 DNS가 필요한 경우 쉼표 (,) 를 사용하여 추가할 수 있습니다. 예를 들면 다음과 같습니다. DNS:example.com,DNS:www.example.com)
openssl req -new -nodes -key server.key -out server.csr -reqexts SAN -config <(cat /etc/ssl/openssl.cnf <(printf "[SAN]\nsubjectAltName=DNS:example.com"))
메시지가 표시되면 인증서 요청에 통합할 정보를 입력합니다. 정보 입력이 완료되면 server.csr
및 server.key
파일이 표시되는 위치 /ifs/local directory
명령을 입력합니다.
인증서를 자체 서명할지 또는 CA(Certificate Authority)에서 서명할지 확인합니다.
키를 사용하여 인증서에 자체 서명하려면 아래 명령을 실행하여 2년 동안 유효한 자체 서명된 인증서를 새로 만듭니다.
openssl x509 -req -days 730 -in server.csr -signkey server.key -out server.crt
키가 인증서와 일치하는지 확인합니다. 두 명령 모두 동일한 MD5 값을 반환해야 합니다.
openssl x509 -noout -modulus -in server.crt | openssl md5
openssl rsa -noout -modulus -in server.key | openssl md5
이 단계 후에는 이 문서의 클러스터에 인증서 추가 섹션으로 이동합니다.
CA가 인증서에 서명하는 경우 새 SSL 인증서가 x509 형식이고 전체 인증서 신뢰 체인을 포함하는지 확인합니다.
CA는 새 SSL 인증서, 중간 인증서 및 루트 인증서를 별도의 파일로 반환하는 것이 일반적입니다.
CA에서 이 작업을 수행한 경우 PEM 형식의 인증서를 수동으로 생성 해야 합니다 .
PEM 형식의 인증서를 만들 때는 순서가 중요합니다. 인증서는 파일의 맨 위에 있어야 하고, 그 다음에 중간 인증서가 있어야 하며, 루트 인증서는 맨 아래에 있어야 합니다.
다음은 PEM 형식 파일의 예입니다.
-----BEGIN CERTIFICATE-----
<The contents of your new TLS certificate>
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
<The contents of the intermediate certificate>
<Repeat as necessary for every intermediate certificate provided by your CA>
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
<The contents of the root certificate file>
-----END CERTIFICATE-----
CLI에서 PEM 형식의 파일을 생성하는 간단한 방법은 파일을 cat하는 것입니다(파일 순서가 중요함).
cat CA_signed.crt intermediate.crt root.crt > onefs_pem_formatted.crt
를 복사합니다. onefs_pem_formatted.crt
파일을 -> /ifs/local directory
이름을 다음과 같이 바꿉니다. server.crt
명령을 입력합니다.
참고: .cer 파일을 받으면 .crt 확장명으로 이름을 바꿉니다.
- (선택 사항) 인증서의 무결성 및 특성을 확인합니다.
openssl x509 -text -noout -in server.crt
클러스터에 인증서를 추가합니다.
OneFS 7.0.x-8.0.1.x의 경우:
- 각 노드에 새 인증서와 키를 설치합니다.
isi services -a isi_webui disable
chmod 640 server.key
chmod 640 server.crt
isi_for_array -s 'cp /ifs/local/server.key /usr/local/apache2/conf/ssl.key/server.key'
isi_for_array -s 'cp /ifs/local/server.crt /usr/local/apache2/conf/ssl.crt/server.crt'
isi services -a isi_webui enable
- 오래되었거나 사용되지 않은 인증서가 있는 경우 8.0으로 업그레이드가 완료된 후 삭제합니다. OneFS 8.0.1.x 이상에서 5단계의 지침을 따릅니다.
OneFS 8.0.1.x 이상:
- 새 인증서 및 키를 시스템으로 가져옵니다.
isi certificate server import /ifs/local/server.crt /ifs/local/server.key
- 인증서를 성공적으로 가져왔는지 확인합니다.
isi certificate server list -v
- 가져온 인증서를 기본값으로 설정합니다.
- OneFS 8.0 및 8.1의 경우 명령은 다음과 같습니다.
isi certificate server modify --id=<id_of_cert_to_set_as_default> --default
- OneFS 8.2 이상의 경우 명령은 다음과 같습니다.
isi certificate settings modify --default-https-certificate=<id_of_cert_to_set_as_default>
- 아래 명령을 사용해 "Default HTTPS Certificate" 상태를 확인하여 가져온 인증서가 기본값으로 사용되고 있는지 확인합니다.
isi certificate settings view
- 사용되지 않거나 오래된 인증서가 있는 경우 다음 명령을 사용하여 삭제합니다.
isi certificate server delete --id=<id_of_cert_to_delete>
- 다음 명령을 사용하여 가져온 새 인증서를 봅니다.
isi certificate server view --id=<id_of_cert>
참고: 포트 8081 및 8083은 여전히 SSL에 대해 로컬 디렉토리의 인증서를 사용합니다. 포트 8081 및 8083에 새 인증서를 사용하려면 아래 단계를 수행합니다.
isi services -a isi_webui disable
chmod 640 server.key
chmod 640 server.crt
isi_for_array -s 'cp /ifs/local/server.key /usr/local/apache2/conf/ssl.key/server.key'
isi_for_array -s 'cp /ifs/local/server.crt /usr/local/apache2/conf/ssl.crt/server.crt'
isi services -a isi_webui enable
확인
업데이트된 SSL 인증서를 확인하는 방법은 두 가지입니다.
- 다음으로 이동
https://<common name>:8080
여기서 <common name> 은 Isilon 웹 관리 인터페이스에 액세스하는 데 사용되는 호스트 이름입니다. 예를 들어 다음과 같습니다. isilon.example.com
- 웹 페이지의 보안 세부 정보를 봅니다. 이 작업을 수행하는 단계는 브라우저에 따라 다릅니다. 일부 브라우저에서는 주소 표시줄의 자물쇠 아이콘을 클릭하여 웹 페이지의 보안 세부 정보를 확인합니다.
- 웹 페이지의 보안 세부 정보에서 제목 줄과 기타 세부 정보가 올바른지 확인합니다. 다음과 유사한 출력이 표시 <되는데, 여기서 yourstate>, <yourcity>, <your company> 는 조직의 주, 도시, 이름입니다.
Subject: C=US, ST=<yourstate>, L=<yourcity>, O=<yourcompany>, CN=isilon.example.com/emailAddress=support@example.com
- 클러스터의 노드에서 SSH 연결을 열고 "root" 계정을 사용하여 로그인합니다.
- 다음 명령을 실행합니다.
echo QUIT | openssl s_client -connect localhost:8080
- 다음과 유사한 출력이 표시됩니다. 여기서 <yourstate>, <yourcity>, <your company> 는 조직의 시/도, 구/군/시 이름입니다.
Subject: C=US, ST=<yourstate>, L=<yourcity>, O=<yourcompany>, CN=isilon.example.com/emailAddress=support@example.com