Calendar Server를 위해 SSL을 구현하려면 인증서 데이터베이스가 필요합니다. 인증서 데이터베이스는 인증 기관(CA) 및 Calendar Server용 인증서를 정의해야 합니다. 이 절에서는 개념 및 태스크 정보를 제공합니다.
인증서 데이터베이스를 만들기 전에 다음에 익숙해져야 합니다.
Mozilla 도구 — 이번 릴리스에는 다음 Mozilla 도구가 포함되어 있습니다.
인증서 데이터베이스를 만들고 관리하는 인증서 데이터베이스 도구(certutil)자세한 내용은 다음 웹 사이트를 참조하십시오.
http://mozilla.org/projects/security/pki/ nss/tools/certutil.html
인증서 데이터베이스를 생성하기 전에 도구 구문을 잘 알고 있어야 합니다.
사용 가능한 보안 모듈에 대한 정보를 표시하는 보안 모듈 데이터베이스 도구(modutil)자세한 내용은 다음 웹 사이트를 참조하십시오.
http://mozilla.org/projects/security/pki/ nss/tools/modutil.html
이 유틸리티는 다음 디렉토리에서 사용할 수 있습니다.
/opt/SUNWics5/cal/lib
또는 웹 사이트에서 최신 버전을 다운로드할 수 있습니다.
라이브러리 경로 변수 — Mozilla 도구를 사용하기 전에 LD_LIBRARY_PATH 변수를 올바르게 설정합니다. 예를 들면 다음과 같습니다.
setenv LD_LIBRARY_PATH /opt/SUNWics5/cal/lib
파일 및 디렉토리 예 — 이번 장의 예에서는 다음 파일과 디렉토리를 사용합니다.
alias는 인증서 데이터베이스가 있는 디렉토리입니다. 다음 디렉토리에 alias 디렉토리를 만듭니다.
/var/opt/SUNWics5
또한 정기적으로 alias 디렉토리를 백업해야 합니다.
sslPasswordFile은 인증서 데이터베이스 비밀번호를 포함하는 텍스트 파일입니다. 이 파일은 Calendar Server가 아니라 certutil 유틸리티가 사용합니다. 다음 디렉토리에 sslPasswordFile을 만듭니다.
/etc/opt/SUNWics5/config
/etc/passwd에서는 난수 생성을 위한 엔트로피를 만듭니다. 즉, 이 디렉토리는 난수 생성기에서 실제로 무작위한 결과를 얻을 수 있도록 도와주는 다양하고 고유한 시드를 생성하는 데 사용됩니다.
수퍼유저(root)로 로그인합니다.
certutil의 인증서 데이터베이스 비밀번호를 /etc/opt/SUNWics5/config/sslPasswordFile에 지정합니다. 예를 들면 다음과 같습니다.
# echo "password" /etc/opt/SUNWics5/config/sslPasswordFile |
여기서 password는 고유 비밀번호입니다.
인증서 데이터베이스 alias 디렉토리를 만듭니다. 예를 들면 다음과 같습니다.
# cd /var/opt/SUNWics5 # mkdir alias |
bin 디렉토리로 이동하고 인증서 데이터베이스(cert8.db)와 키 데이터베이스(key3.db)를 만듭니다. 예를 들면 다음과 같습니다.
# cd /opt/SUNWics5/cal/bin # ./certutil -N -d /var/opt/SUNWics5/alias -f /etc/opt/SUNWics5/config/sslPasswordFile |
certutil 유틸리티를 실행해야 하는 경우에는 항상 다음 예를 정확하게 따르거나 certutil 도움말 페이지를 참조하여 구문을 이해해야 합니다.
예를 들어, 이 경우에는 -d //file 정보를 함께 지정하지 않고는 -N 옵션과 함께 유틸리티를 실행하지 마십시오.
자체 서명된 기본 루트 인증 기관 인증서를 생성합니다. 예를 들면 다음과 같습니다.
# ./certutil -S -n SampleRootCA -x -t "CTu,CTu,CTu" -s "CN=My Sample Root CA, O=sesta.com" -m 25000 -o /var/opt/SUNWics5/alias/SampleRootCA.crt -d /var/opt/SUNWics5/alias -f /etc/opt/SUNWics5/config/sslPasswordFile -z /etc/passwd |
호스트를 위한 인증서를 생성합니다. 예를 들면 다음과 같습니다.
# ./certutil -S -n SampleSSLServerCert -c SampleRootCA -t "u,u,u" -s "CN=hostname.sesta.com, O=sesta.com" -m 25001 -o /var/opt/SUNWics5/alias/SampleSSLServer.crt -d /var/opt/SUNWics5/alias -f /etc/opt/SUNWics5/config/sslPasswordFile -z /etc/passwd |
여기서 hostname.sesta.com은 서버 호스트 이름입니다.
인증서를 검증합니다. 예를 들면 다음과 같습니다.
# ./certutil -V -u V -n SampleRootCA -d /var/opt/SUNWics5/alias # ./certutil -V -u V -n SampleSSLServerCert -d /var/opt/SUNWics5/alias |
인증서를 나열합니다. 예를 들면 다음과 같습니다.
# ./certutil -L -d /var/opt/SUNWics5/alias # ./certutil -L -n SampleSSLServerCert -d /var/opt/SUNWics5/alias |
modutil을 통해 사용 가능한 보안 모듈을 나열합니다(secmod.db). 예를 들면 다음과 같습니다.
# ./modutil -list -dbdir /var/opt/SUNWics5/alias |
alias 파일의 소유자를 icsuser 및 icsgroup(또는 Calendar Server를 실행할 사용자 및 그룹 아이디)으로 변경합니다. 예를 들면 다음과 같습니다.
# find /var/opt/SUNWics5/alias -exec chown icsuser {}; # find /var/opt/SUNWics5/alias -exec chgrp icsgroup {}; |