다음 예에서는 대부분 ldapsearch 및 ldapmodify 명령을 사용하여 LDAP 디렉토리에서 사용자 키와 인증서를 검색합니다. 이러한 명령은 Directory Server와 함께 제공됩니 다. 이러한 명령에 대한 자세한 내용은 Sun ONE Directory Server Resource Kit Tools Reference 릴리스를 참조하십시오.
다음 예에서는 인증 기관의 인증서를 LDAP 디렉토리에 추가합니다. 이러한 인증서의 디렉토리 구조는 이미 존재합니다. 인증서와 인증서가 속하는 LDAP 항목은 add-root-CA-cert.ldif라는 .ldif 파일에 입력합니다. Base64 인코딩된 텍스트로 입력해야 하는 인증서 정보를 제외하고 이 파일의 모든 텍스트는 ASCII 텍스트로 입력합니다.
dn: cn=SMIME Admin,ou=people,o=demo.siroe.com,o=demo objectClass: top objectClass: person objectClass: organizationalPerson objectClass: inetOrgPerson objectClass: certificationAuthority cn: RootCACerts sn: CA authorityRevocationList: novalue certificateRevocationList: novalue cacertificate;binary:: MFU01JTUUEjAQBgNVBAsTCU1zZ1NlcnZlcjcMBoGA1UEAxMTydG QGEwJVUzEOMAwGA1UEMFUJTUUxEjAQBgNVBAsTCU1zZ1NlcnZlcjEMBoGA1UEAxMTQ2VydG aFw0wNjAxMwODAwMDBaM267hgbX9FExCzAJByrjgNVBAk9STklBMQwCgYDVQQVHR8EgaQwg YTAlVMRMQYDVQQIEwpDQUxJRk9STklBMQwwCgYDVQQKEwww3ltgYz11lzAdBgNVBpYSE9Vc 5yZWQaddWlm899XBsYW5ldC5jb20wgZ8wDQYJoGBAK1mUTy8vvnOFg4mlHjkghytQUR1k8l 5mvWRf77ntm5mGXRD3XMU4OciUq6zUfIg3ngvxlLyERTIqjUS8HQU4R5pvj+rrVgsAGjggE +FNAJmtOV2A3wMyghqkVPNDP3Aqq2fkcn4va3C5nRNAYxNNVE84JJ0H3jyPDXhMBlQU6vQn weMBAAjggEXMIIBEzARBglghkgBhCAQEEBApqlSai4mfuvjh02SQkoPMNDAgTwMB8GA1UdI QYMBaAEd38IK05AHreiU9OYc6vNMOwZMIGsBgNVHR8EgaQwgaEwb6BtoGuGaWxkYXA6Lyht bmcucmVkLmlbGFuZXQuY29tL1VJD1DXJ0aWZpY2F0ZSBNYW5hZ2VyLE9VPVBlb3BsZSxPPW aWxxYT9jZXJ0aZpY2jdu2medXRllkghytQURYFNrkuoCygKoYoaHR0cDovL3Bla2kghytQU Zy5yZWQuaXBsYW5lC5jb20vcGVranLmNybDAeBgNVHREEFzAVgRNwb3J0aWEuc2hhb0BzdW 4uY29tMA0GCxLm78freCxS3Pp078jyTaDci1AudBL8+RrRUQvxsMJfZeFED+Uuf10Ilt6kw Tc6W5UekbirfEZGAVQIzlt6DQJfgpifGLvtQ60Kw==
ldapmodify 명령을 사용하여 CA 인증서를 LDAP 디렉토리에 추가합니다.
# ldapmodify -a -h demo.siroe.com -D "cn=Directory Manager" -w mypasswd -v -f add-root-CA-cert.ldif |
smime.conf의 trustedurl 매개 변수 값은 LDAP 디렉토리에서 CA 인증서의 위치를 지정합니다. 예 1의 경우 trustedurl은 다음으로 설정됩니다.
trustedurl==ldap://demo.siroe.com:389/cn=SMIME Admin, ou=people, o=demo.siroe.com,o=demo?cacertificate;binary?sub? (objectclass=certificationAuthority)
이 예에서는 메일 사용자의 공개 키와 인증서를 LDAP 디렉토리에 추가합니다. 이 예에서는 LDAP 디렉토리에 메일 사용자가 이미 있다고 가정합니다. 키와 인증서 및 이들이 속한 LDAP 항목은 add-public-cert.ldif라는 .ldif 파일에 입력합니다. Base64 인코딩된 텍스트로 입력해야 하는 키와 인증서 정보를 제외하고 이 파일의 모든 텍스트는 ASCII 텍스트로 입력합니다.
dn: uid=JohnDoe,ou=People, o=demo.siroe.com,o=demo changetype: modify replace: usercertificate usercertificate;binary:: MFU01JTUUxEjAQBgNVBAsT1zZ1NlcnZlcjMBoGA1UEAxMTydG QGEwJVUzEAwGA1hMFU01JTUUxEjAQBgNVBAsTCU1zZ1NlcnZlcjEcMBoGA1UEAxMTQ2VydG aFw0wNjAxMTODAwaM267hgbX9FExCzAJBgwyrjgNVBAk9STklBMQwwCgYDVQQVHR8EgaQwg AlVzMRMwEQYDVQQIDQUxJRk9STklBMQwwCgYDVQQKEwww3ltgoOYz11lzAdBgNVBpYSE9Vc 5yZWaddiiWlm899XBsYW5ldb20wgZ8wDQYJoGBAK1mUTy8vvO2nOFg4mlHjkghytQUR1k8l 5mvgcWL77ntm5mGXRD3XMU4OcizUfIg3ngvxlLKLyERTIqjUS8HQU4R5pvj+rrVgsAGjggE +FG9NAqtOV2A3wMyghqkVPNDP3Aqq2BYfkcn4va3RNAYxNNVE84JJ0H3jyPDXhMBlQU6vQn 1NAgMBGjggEXMIIBEzARBglghkgBhvhCAQEEBApqlSai4mfuvjh02SQMNDAgTwMB8GA1UdI QYMBaEd38IK05AHreiU9OYc6v+ENMOwZMIGsBgNVHR8EgaQwgaEwb6BuGaWxkYXA6Lyht74 tpbmcmVkLmlwbGFuZXQuY29tL1VJRD1DZXJ0aWZpY2F0ZSBNYW5hZ2V9VPVBlb3BsZSxPPW 1haWxT9jZXJ0aWZpY2jdu2medXRllHjkghytQURYFNrkuoCygKoYoaHDovL3Bla2kghytQU luZy5WQuaXBsYW5ldC5jb20vcGVraW5nLmNybDAeBgNVHREEFzAVgRNw0aWEuc2hhb0BzdW 4uY29A0GCxLm78UfreCxS3Pp078jyTaDv2ci1AudBL8+RrRUQvxsMJfZD+Uuf10Ilt6kwhm Tc6W5UekbirfEZGAVQIzlt6DQJfgpifGLvtQ60Kw==
ldapmodify 명령을 사용하여 공개 키와 인증서를 LDAP 디렉토리에 추가합니다.
# ldapmodify -a -h demo.siroe.com -D "cn=Directory Manager" -w mypasswd -v -f add-public-cert.ldif |
smime.conf의 certurl 매개 변수 값은 LDAP 디렉토리에서 공개 키와 해당 인증서의 위치를 지정합니다. 예 2의 경우 certurl은 다음으로 설정됩니다.
certurl==ldap://demo.siroe.com:389/ou=people, o=demo.siroe.com, o=demo?userCertificate;binary?sub?
다음 예에서는 LDAP 디렉토리에서 CA 인증서와 공개 키 및 해당 인증서를 검색하는 것을 보여 줍니다.
다음 예에서 -b 옵션에 정의된 기본 DN cn=SMIME admin, ou=people,o=demo.siroe.com,o=demo objectclass=*는 LDAP 디렉토리에 있는 하나의 CA 인증서를 설명합니다. 디렉토리에서 찾는 경우 ldapsearch는 인증서에 대한 정보를 ca-cert.lidf 파일에 반환합니다.
# ldapsearch -L -h demo.siroe.com -D "cn=Directory Manager" -w mypasswd -b "cn=SMIME admin, ou=people,o=demo.siroe.com,o=demo" "objectclass=*" > ca-cert.ldif |
아래 예에서는 ca-cert.ldif 파일의 검색 결과를 보여 줍니다. 파일 내용의 형식은 ldapsearch의 -L 옵션을 사용한 결과입니다.
# more ca-cert.ldif dn: cn=SMIME admin,ou=people,o=demo.siroe.com,o=demo objectClass: top objectClass: person objectClass: organizationalPerson objectClass: inetOrgPerson objectClass: certificationAuthority cn: RootCACerts cn: SMIME admin sn: CA authorityRevocationList: novalue certificateRevocationList: novalue cacertificate;binary:: MFU01JTUUxEjAQBgNVBAsTCU1zZNlcnZlcjcMBoGA1UEAxMTydG QGEwJVEOMAwGA1UEChMFU0UUxEjAQBgNVBAsTCU1zZ1NlcnZlcjEcMBoGA1UEAxMTQ2VydG aFw0jAxMTIwODAwMDBaM267X9FExCzAJBgwyrjgNVBAk9STklBMQwwCgYDVQQVHR8EgaQwg YlVzMRMwEQYDVQQIEwpDQUx9STklBMQwwCgYDVQQKEwww3ltgoOYz11lzAdBgNVBpYSE9Vc 5yQuaddiiWlm899XBsYW5ljb20wgZ8wDQYJoGBAK1mUTy8vvO2nOFg4mlHjkghytQUR1k8l 5mcWRfL77ntm5mGXRD3XMciUq6zUfIg3ngvxlLKLyERTIqjUS8HQU4R5pvj+rrVgsAGjggE +FNAJmqtOV2A3wMyghqkDP3Aqq2BYfkcn4va3C5nRNAYxNNVE84JJ0H3jyPDXhMBlQU6vQn 1NABAAGjggEXMIIBEzglghkgBhvhCAQEEBApqlSai4mfuvjh02SQkoPMNDAgTwMB8GA1UdI QYMAFEd38IK05AHreOYc6v+ENMOwZMIGsBgNVHR8EgaQwgaEwb6BtoGuGaWxkYXA6Lyht74 tpbucmVkLmlwbGFuZY29tL1VJRD1DZXJ0aWZpY2F0ZSBNYW5hZ2VyLE9VPVBlb3BsZSxPPW 1haWYT9jZXJ0aWZpdu2medXRllHjkghytQURYFNrkuoCygKoYoaHR0cDovL3Bla2kghytQU luZyZWQuaXBsYW5ldb20vcGVraW5nLmNybDAeBgNVHREEFzAVgRNwb3J0aWEuc2hhb0BzdW 4uYtMA0GCxLm78Ufre3Pp078jyTaDv2ci1AudBL8+RrRUQvxsMJfZeFED+Uuf10Ilt6kwhm Tc6W5UekbirfEZGAVQIzlt6DQJfgpifGLvtQ60Kw== |
다음 예에서 -b 옵션에 정의된 기본 DN o=demo.siroe.com,o=demo objectclass=*는 LDAP 디렉토리의 기본 DN과 그 아래에서 발견된 모든 공개 키와 인증서를 usergroup.ldif 파일로 반환하도록 합니다.
# ldapsearch -L -h demo.siroe.com -D "cn=Directory Manager" -w mypasswd -b "o=demo.siroe.com,o=demo" "objectclass=*" > usergroup.ldif |
다음 예에서 -b 옵션에 정의된 기본 DN uid=JohnDoe, ou=people,o=demo.siroe.com,o=demo objectclass=*는 LDAP 디렉토리에 있는 하나의 공개 키와 해당 인증서를 설명합니다.
# ldapsearch -L -h demo.siroe.com -D "cn=Directory Manager" -w mypasswd -b "uid=JohnDoe, ou=people,o=demo.siroe.com,o=demo" "objectclass=*" > public-key.ldif |
아래 예는 public-key.ldif 파일의 검색 결과를 보여 줍니다. 파일 내용의 형식은 ldapsearch의 -L 옵션을 사용한 결과입니다.
# more public-key.ldif dn: uid=sdemo1, ou=people, o=demo.siroe.com, o=demo objectClass: top objectClass: person objectClass: organizationalPerson objectClass: siroe-am-managed-person objectClass: inetOrgPerson objectClass: inetUser objectClass: ipUser objectClass: userPresenceProfile objectClass: inetMailUser objectClass: inetLocalMailRecipient objectClass: icsCalendarUser objectClass: sunUCPreferences mail: JohnDoe@demo.siroe.com mailHost: demo.siroe.com . . uid: JohnDoe . . mailUserStatus: active inetUserStatus: active . . usercertificate;binary:: MFU01JTUUxEjAQBgNBAsTCU1zZ1NlcnZjcMBoGA1UEAxMTydG QGEwJEOwGA1UEChMFU01JTUUxEjAQBgNVBAsTCU1zZ1NlcnZlcjEcMBoGA1UEAxMTQ2VydG aFw0MTIwODAwMDBaM267hgbX9FExCzAJBgwyrjgNVBAk9STklBMQwwCgYDVQQVHR8EgaQwg YTAlVEQYDVQQIEwpDQUxJRk9STklBMQwwCgYDVQQKEwww3ltgoOYz11lzAdBgNVBpYSE9Vc 5yZWQdWlm899XBsYW5ldC5jb20wgZ8wDQYJoGBAK1mUTy8vvO2nOFg4mlHjkghytQUR1k8l 5mvgc7ntm5mGXRD3XMU4OciUq6zUfIg3ngvxlLKLyERTIqjUS8HQU4R5pvj+rrVgsAGjggE +FG9NmV2A3wMyghqkVPNDP3Aqq2BYfkcn4va3C5nRNAYxNNVE84JJ0H3jyPDXhMBlQU6vQn 1NAgMAgEXMIIBEzARBglghkgBhvhCAQEEBApqlSai4mfuvjh02SQkoPMNDAgTwMB8GA1UdI QYMBaEdK05AHreiU9OYc6v+ENMOwZMIGsBgNVHR8EgaQwgaEwb6BtoGuGaWxkYXA6Lyht74 tpbucmVkwbGFuZXQuY29tL1VJRD1DZXJ0aWZpY2F0ZSBNYW5hZ2VyLE9VPVBlb3BsZSxPPW 1haxYT9jZaWZpY2jdu2medXRllHjkghytQURYFNrkuoCygKoYoaHR0cDovL3Bla2kghytQU luZyZWQuaYW5ldC5jb20vcGVraW5nLmNybDAeBgNVHREEFzAVgRNwb3J0aWEuc2hhb0BzdW 4u9tMA0GC78UfreCxS3Pp078jyTaDv2ci1AudBL8+RrRUQvxsMJfZeFED+Uuf10Ilt6kwhm Tc6W5UekbirfEZGAVQIzlt6DQJfgpifGLvtQ60Kw== . . |
네트워크 보안 서비스(NSS)에 사용되는 여러 인증서는 LDAP 데이터베이스가 아닌 자체 데이터베이스에 저장됩니다. 이러한 인증서와 관련 CRL을 데이터베이스에 저장하기 위해 Messaging Server에서는 certutil 및 crlutil의 두 가지 유틸리티를 제공합니다. 이러한 유틸리티를 사용하여 데이터베이스를 검색할 수도 있습니다.
certutil에 대한 자세한 내용은 Sun Java System Directory Server 관리 설명서(http://download.oracle.com/817-2012)를 참조하십시오. 또한 crlutil과 함께 제공되는 도움말 텍스트를 참조하십시오(유틸리티를 인수 없이 실행하면 유틸리티의 온라인 도움말을 볼 수 있음).