Oracle® Solaris 11.2의 네트워크 보안

인쇄 보기 종료

업데이트 날짜: 2014년 8월
 
 

CA가 서명한 인증서로 IKEv1을 구성하는 방법

시작하기 전에

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

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

  1. ikecert certlocal -kc 명령을 사용하여 CSR(인증서 서명 요청)을 만듭니다.

    명령 인수에 대한 설명은 자체 서명된 공개 키 인증서로 IKEv1을 구성하는 방법Step 1를 참조하십시오.

    # ikecert certlocal -kc -m keysize -t keytype \
    -D dname -A altname
    1. 예를 들어, 다음 명령은 partym 시스템에서 CSR을 만듭니다.
      # ikecert certlocal -kc -m 2048 -t rsa-sha384 \
      > -D "C=US, O=PartyCompany\, Inc., OU=US-Partym, CN=Partym" \
      > -A "DN=C=US, O=PartyCompany\, Inc., OU=US-Partym"
      Creating software private keys.
        Writing private key to file /etc/inet/secret/ike.privatekeys/2.
      Enabling external key providers - done.
      Certificate Request: 
        Proceeding with the signing operation.
        Certificate request generated successfully (…/publickeys/0)
      Finished successfully.
      -----BEGIN CERTIFICATE REQUEST-----
      MIIByjCCATMCAQAwUzELMAkGA1UEBhMCVVMxHTAbBgNVBAoTFEV4YW1wbGVDb21w
      …
      lcM+tw0ThRrfuJX9t/Qa1R/KxRlMA3zckO80mO9X
      -----END CERTIFICATE REQUEST-----
    2. 다음 명령은 enigma 시스템에서 CSR을 만듭니다.
      # ikecert certlocal -kc -m 2048 -t rsa-sha384 \
      > -D "C=JA, O=EnigmaCo\, Inc., OU=JA-Enigmax, CN=Enigmax" \
      > -A "DN=C=JA, O=EnigmaCo\, Inc., OU=JA-Enigmax"
      Creating software private keys.
      …
      Finished successfully.
      -----BEGIN CERTIFICATE REQUEST-----
      MIIBuDCCASECAQAwSTELMAkGA1UEBhMCVVMxFTATBgNVBAoTDFBhcnR5Q29tcGFu
      …
      8qlqdjaStLGfhDOO
      -----END CERTIFICATE REQUEST-----
  2. CSR을 CA에 제출합니다.

    CA에서 CSR 제출 방법을 알려 줄 수 있습니다. 대부분 조직에는 제출 양식을 제공하는 웹 사이트가 있습니다. 양식을 사용하려면 제출이 적합한지 증명해야 합니다. 일반적으로 양식에 CSR을 붙여 넣습니다. 조직에서 요청을 확인하면 서명된 인증서를 발행합니다. 자세한 내용은 IKE에서 공개 키 인증서 사용을 참조하십시오.

  3. 각 인증서를 시스템에 추가합니다.

    ikecert certdb -a에 대한 –a 옵션은 붙여 넣은 객체를 시스템의 적합한 인증서 데이터베이스에 추가합니다. 자세한 내용은 IKE와 공개 키 인증서를 참조하십시오.

    1. 관리자로 로그인합니다.

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

    2. CA에서 받은 공개 키와 해당 인증서를 추가합니다.
      # ikecert certdb -a < /tmp/PKIcert.eml
    3. CA의 공개 인증서를 추가합니다.

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

      # ikecert certdb -a < /tmp/PKIca.eml
    4. CA에서 해지된 인증서 목록을 보낸 경우 certrldb 데이터베이스에 CRL을 추가합니다.
      # ikecert certrldb -a
      Press the Return key
      Paste the CRL
      -----BEGIN CRL-----
      …
      -----END CRL----
      Press the Return key
      Press Control-D
  4. /etc/inet/ike/config 파일의 cert_root 키워드를 사용하여 인증서를 발행한 CA를 식별합니다.

    CA 인증서의 DN(고유 이름)을 사용합니다.

    1. 예를 들어, partym 시스템의 ike/config 파일은 다음과 유사하게 표시될 수 있습니다.
      # Trusted root cert
      # This certificate is from Example CA
      # This is the X.509 distinguished name for the CA's cert 
      
      cert_root "C=US, O=ExampleCA\, Inc., OU=CA-Example, CN=Example CA"
      
      ## Parameters that may also show up in rules.
      
      p1_xform 
       { auth_method rsa_sig oakley_group 1 auth_alg sha384 encr_alg aes}
      p2_pfs 2
      
      {
       label "US-partym to JA-enigma - Example CA"
       local_id_type dn
       local_id  "C=US, O=PartyCompany, OU=US-Partym, CN=Partym"
       remote_id "C=JA, O=EnigmaCo, OU=JA-Enigmax, CN=Enigmax"
      
       local_addr  192.168.13.213
       remote_addr 192.168.116.16
      
       p1_xform
        {auth_method rsa_sig oakley_group 2 auth_alg sha256 encr_alg aes}
      }

      주 -  auth_method 매개변수에 대한 모든 인수는 동일한 행에 있어야 합니다.
    2. enigma 시스템에서 유사한 파일을 만듭니다.

        특히 enigma ike/config 파일은 다음을 따라야 합니다.

      • 동일한 cert_root 값을 포함합니다.

      • 로컬 매개변수에 enigma 값을 사용합니다.

      • 원격 매개변수에 partym 값을 사용합니다.

      • label 키워드에 고유한 값을 만듭니다. 이 값은 원격 시스템의 label 값과 달라야 합니다.

      …
      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
      …
  5. 해지된 인증서를 처리하는 IKEv1 정책을 설정합니다.

    적합한 옵션을 선택합니다.

    • OCSP를 사용할 수 없음

      공개 키 인증서에 OCSP 서버에 연결하는 URI가 제공되지만 시스템에서 인터넷에 연결할 수 없는 경우 ike/config 파일에 ignore_ocsp 키워드를 추가합니다.

      # Trusted root cert
      …
      cert_root "C=US, O=ExampleCA\, Inc., OU=CA-Example,…
      ignore_ocsp

      ignore_ocsp 키워드를 지정하면 IKEv1에서는 인증서가 유효하다고 간주합니다.

    • CRL을 사용할 수 없음

      CA에서 CRL에 대한 신뢰할 수 있는 소스를 제공하지 않거나 시스템에서 인터넷에 연결하여 CRL을 검색할 수 없는 경우 ike/config 파일에 ignore_crls 키워드를 추가합니다.

      # Trusted root cert
      …
      cert_root "C=US, O=ExampleCA\, Inc., OU=CA-Example,…
      ignore_crls
    • CRL 또는 OCSP에 대한 URI를 사용할 수 있음

      CA에서 해지된 인증서에 대한 중앙 배포 지점을 제공하는 경우 URI를 사용하도록 ike/config 파일을 수정할 수 있습니다.

      예는 IKEv1에서 해지된 인증서를 처리하는 방법을 참조하십시오.

예 10-2  IKEv1 구성 시 rsa_encrypt 사용

    ike/config 파일의 auth_method rsa_encrypt를 사용할 경우 publickeys 데이터베이스에 피어의 인증서를 추가해야 합니다.

  1. 원격 시스템의 관리자에게 인증서를 보냅니다.

    이 인증서를 전자 메일 메시지에 붙여 넣을 수 있습니다.

    예를 들어, partym 관리자는 다음 메시지를 보냅니다.

    To: admin@enigma.ja.example.com
    From: admin@party.us.example.com
    Message: -----BEGIN X509 CERTIFICATE-----
    MII…
    ----END X509 CERTIFICATE-----

    enigma 관리자는 다음 메시지를 보냅니다.

    To: admin@party.us.example.com
    From: admin@enigma.ja.example.com
    Message: -----BEGIN X509 CERTIFICATE-----
    MII
    …
    -----END X509 CERTIFICATE-----
  2. 각 시스템에서 전자 메일로 전송된 인증서를 로컬 publickeys 데이터베이스에 추가합니다.

    # ikecert certdb -a < /tmp/saved.cert.eml

RSA 암호화에 대한 인증 방법은 IKE에서 도청자에게 ID를 숨깁니다. rsa_encrypt 메소드는 피어의 ID를 숨기므로 IKEv1이 피어의 인증서를 검색할 수 없습니다. 즉, rsa_encrypt 메소드를 사용하려면 IKEv1 피어가 상대의 공개 키를 알고 있어야 합니다.

    따라서 /etc/inet/ike/config 파일에 있는 rsa_encryptauth_method를 사용할 경우 publickeys 데이터베이스에 피어의 인증서를 추가해야 합니다. 그러면 publickeys 데이터베이스에는 통신하는 시스템 쌍의 각각에 대해 다음 세 개의 인증서가 포함됩니다.

  • 공개 키 인증서

  • CA의 인증서 체인

  • 피어의 공개 키 인증서

문제 해결 – IKEv1 페이로드는 인증서 세 개 이상을 포함하므로 너무 커져서 rsa_encrypt를 통해 암호화하지 못할 수 있습니다. “authorization failed”, “malformed payload” 등의 오류는 rsa_encrypt 메소드가 전체 페이로드를 암호화할 수 없음을 나타내는 것일 수 있습니다. 두 개의 인증서만 필요로 하는 rsa_sig 등의 메소드를 사용하여 페이로드 크기를 줄이십시오.

다음 단계

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