Oracle® Solaris 11.2의 네트워크 보안

인쇄 보기 종료

업데이트 날짜: 2014년 8월
 
 

하드웨어에서 IKEv1에 대한 공개 키 인증서를 생성하고 저장하는 방법

공개 키 인증서를 생성하여 하드웨어에 저장하는 작업은 시스템에서 공개 키 인증서를 생성하여 저장하는 작업과 유사합니다. 하드웨어에서 ikecert certlocalikecert certdb 명령이 하드웨어를 식별해야 합니다. 토큰 ID를 사용하는 –T 옵션은 명령에 대한 하드웨어를 식별합니다.

시작하기 전에

  • 하드웨어가 구성되어 있어야 합니다.

  • /etc/inet/ike/config 파일의 pkcs11_path 키워드가 다른 라이브러리를 가리키지 않을 경우 하드웨어에서는 /usr/lib/libpkcs11.so 라이브러리를 사용합니다. 라이브러리는 RSA Security Inc. PKCS #11 암호화 토큰 인터페이스(Cryptoki), 즉 PKCS #11 라이브러리 표준에 따라 구현되어 있어야 합니다.

    설정 지침은 Sun Crypto Accelerator 6000 보드를 찾도록 IKEv1을 구성하는 방법을 참조하십시오.

Network IPsec Management 권한 프로파일에 지정된 관리자여야 합니다. 자세한 내용은 Oracle Solaris 11.2의 사용자 및 프로세스 보안 의 지정된 관리 권한 사용을 참조하십시오.

원격으로 관리하는 경우 Example 7–1Oracle Solaris 11.2의 보안 셸 액세스 관리 의 보안 셸을 사용하여 ZFS를 원격으로 관리하는 방법에서 보안 원격 로그인 지침을 참조하십시오.

  1. 자체 서명된 인증서 또는 CSR을 생성하고 토큰 ID를 지정합니다.

    주 -  Sun Crypto Accelerator 6000 보드는 RSA에 대해 최대 2048비트의 키를 지원합니다. DSA의 경우 이 보드는 최대 1024비트의 키를 지원합니다.

    다음 옵션 중 하나를 선택합니다.

    • 자체 서명된 인증서의 경우 다음 구문을 사용합니다.
      # ikecert certlocal -ks -m 2048 -t rsa-sha512 \
      > -D "C=US, O=PartyCompany, OU=US-Partym, CN=Partym" \
      > -a -T dca0-accel-stor IP=192.168.116.16
      Creating hardware private keys.
      Enter PIN for PKCS#11 token: Type user:password

      –T 옵션에 대한 인수는 연결된 Sun Crypto Accelerator 6000 보드의 토큰 ID입니다.

    • CSR의 경우 다음 구문을 사용합니다.
      # ikecert certlocal -kc -m 2048 -t rsa-sha512 \
      > -D "C=US, O=PartyCompany, OU=US-Partym, CN=Partym" \
      > -a -T dca0-accel-stor IP=192.168.116.16
      Creating hardware private keys.
      Enter PIN for PKCS#11 token: Type user:password

    ikecert 명령 인수에 대한 설명은 ikecert(1M) 매뉴얼 페이지를 참조하십시오.

  2. PIN에 대한 프롬프트에서 Sun Crypto Accelerator 6000 사용자 이름, 콜론 및 사용자 암호를 입력합니다.

    Sun Crypto Accelerator 6000 보드에 암호가 rgm4tigt인 사용자 ikemgr이 있을 경우 다음을 입력합니다.

    Enter PIN for PKCS#11 token: ikemgr:rgm4tigt

    주 -  ikecert 명령을 입력할 때 –p 옵션을 지정하면 PKCS #11 토큰이 디스크에 일반 텍스트로 저장되며 root 권한으로 보호됩니다. PIN을 디스크에 저장하지 않는 경우 in.iked 명령을 실행한 후 ikeadm 명령을 사용하여 토큰을 잠금 해제해야 합니다.

    암호를 입력한 후 인증서에서 다음과 같은 출력을 인쇄합니다.

    Enter PIN for PKCS#11 token: ikemgr:rgm4tigt
    -----BEGIN X509 CERTIFICATE-----
    MIIBuDCCASECAQAwSTELMAkGA1UEBhMCVVMxFTATBgNVBAoTDFBhcnR5Q29tcGFu
    …
    oKUDBbZ9O/pLWYGr
    -----END X509 CERTIFICATE-----
  3. 인증서를 상대방에게 보냅니다.

    다음 옵션 중 하나를 선택합니다.

  4. 시스템에서 인증서가 인식되도록 /etc/inet/ike/config 파일을 편집합니다.

    다음 옵션 중 하나를 선택합니다.

    • 자체 서명된 인증서

      원격 시스템의 관리자가 cert_trust, remote_idremote_addr 매개변수에 대해 제공하는 값을 사용합니다. 예를 들어, enigma 시스템에서 ike/config 파일은 다음과 유사하게 표시됩니다.

      # Explicitly trust the following self-signed certs
      # Use the Subject Alternate Name to identify the cert
      
      cert_trust "192.168.116.16"  Local system's certificate Subject Alt Name
      cert_trust "192.168.13.213"  Remote system's certificate Subject Alt name
      
      …
      {
       label "JA-enigma to US-partym"
       local_id_type dn
       local_id "C=JA, O=EnigmaCo, OU=JA-Enigmax, CN=Enigmax"
       remote_id "C=US, O=PartyCompany, OU=US-Partym, CN=Partym"
      
       local_addr  192.168.116.16
       remote_addr 192.168.13.213
      
       p1_xform
        {auth_method rsa_sig oakley_group 2 auth_alg sha256 encr_alg aes}
      }
    • 인증서 요청

      CA에서 cert_root 키워드에 대한 값으로 제공하는 이름을 입력합니다. 예를 들어, enigma 시스템의 ike/config 파일은 다음과 유사하게 표시될 수 있습니다.

      # Trusted root cert
      # This certificate is from Example CA
      # This is the X.509 distinguished name for the CA that it issues.
      
      cert_root "C=US, O=ExampleCA\, Inc., OU=CA-Example, CN=Example CA"
      
      …
      {
       label "JA-enigma to US-partym - Example CA"
       local_id_type dn
       local_id "C=JA, O=EnigmaCo, OU=JA-Enigmax, CN=Enigmax"
       remote_id  "C=US, O=PartyCompany, OU=US-Partym, CN=Partym"
      
       local_addr  192.168.116.16
       remote_addr 192.168.13.213
      
       p1_xform
        {auth_method rsa_sig oakley_group 2 auth_alg sha256 encr_alg aes}
      }
  5. 하드웨어에서 상대방의 인증서를 배치합니다.

    Step 4에서 응답한 대로 PIN 요청에 응답합니다.


    주 -  반드시 개인 키를 생성한 것과 동일한 연결된 하드웨어에 공개 키 인증서를 추가해야 합니다.
    • 자체 서명된 인증서

      원격 시스템의 자체 서명된 인증서를 추가합니다. 이 예에서는 인증서가 DCA.ACCEL.STOR.CERT 파일에 저장됩니다.

      # ikecert certdb -a -T dca0-accel-stor < DCA.ACCEL.STOR.CERT
      Enter PIN for PKCS#11 token: Type user:password

      자체 서명된 인증서가 rsa_encryptauth_method 매개변수에 대한 값으로 사용한 경우 하드웨어 저장소에 피어의 인증서를 추가합니다.

    • CA의 인증서

      CA가 인증서 요청에서 생성한 인증서와 조직의 인증서를 추가합니다.

      중간 인증서도 추가해야 할 수 있습니다.

      # ikecert certdb -a -T dca0-accel-stor < DCA.ACCEL.STOR.CERT
      Enter PIN for PKCS#11 token: Type user:password
      # ikecert certdb -a -T dca0-accel-stor < DCA.ACCEL.STOR.CA.CERT
      Enter PIN for PKCS#11 token: Type user:password

      CA의 CRL(인증서 해지 목록)을 추가하려면 IKEv1에서 해지된 인증서를 처리하는 방법을 참조하십시오.

다음 단계

IPsec 정책 설정을 완료하지 않았으면 IPsec 정책을 사용으로 설정하거나 새로 고치는 IPsec 절차로 돌아가십시오. VPN을 보호하는 IPsec 정책의 예는 IPsec를 사용하여 VPN 보호를 참조하십시오. 다른 IPsec 정책 예는 IPsec을 사용하여 두 서버 간의 네트워크 트래픽을 보호하는 방법을 참조하십시오.