以下过程介绍如何使用 pkgadd 命令添加和删除已签名的软件包。
成为超级用户或同等角色。
角色包含授权和具有一定权限的命令。有关角色的更多信息,请参见 《系统管理指南:安全性服务》中的“配置 RBAC(任务列表)”。
显示软件包密钥库的内容。
# pkgadm listcert -p passarg |
以下示例说明如何显示存储在本地的证书的详细信息。
# pkgadm listcert -P pass:test123 Keystore Alias: /C=US/O=VeriSign, Inc./OU=Class 2 Public Primary Certification Authority - G2/O Common Name: /C=US/O=VeriSign, Inc./OU=Class 2 Public Primary Certification Authority - G2/O Certificate Type: Trusted Certificate Issuer Common Name: /C=US/O=VeriSign, Inc./OU=Class 2 Public Primary Certification Authority - G2/O Validity Dates: <May 18 00:00:00 1998 GMT> - <Aug 1 23:59:59 2028 GMT> MD5 Fingerprint: 2D:BB:E5:25:D3:D1:65:82:3A:B7:0E:FA:E6:EB:E2:E1 SHA1 Fingerprint: B3:EA:C4:47:76:C9:C8:1C:EA:F2:9D:95:B6:CC:A0:08:1B:67:EC:9D |
成为超级用户或同等角色。
角色包含授权和具有一定权限的命令。有关角色的更多信息,请参见 《系统管理指南:安全性服务》中的“配置 RBAC(任务列表)”。
从软件包密钥库中删除受信任证书。
# pkgadm removecert -n "certfile " |
removecert -n “certfile” 选项指定用户证书/密钥对的别名或受信任证书的别名。
可使用 pkgadm listcert 命令查看证书的别名。
以下示例说明如何删除证书。
# pkgadm listcert Keystore Alias: /C=US/O=VeriSign, Inc./OU=Class 2 Public Primary Certification Authority - G2/O Common Name: /C=US/O=VeriSign, Inc./OU=Class 2 Public Primary Certification Authority - G2/O Certificate Type: Trusted Certificate Issuer Common Name: /C=US/O=VeriSign, Inc./OU=Class 2 Public Primary Certification Authority - G2/O Validity Dates: <May 18 00:00:00 1998 GMT> - <Aug 1 23:59:59 2028 GMT> MD5 Fingerprint: 2D:BB:E5:25:D3:D1:65:82:3A:B7:0E:FA:E6:EB:E2:E1 SHA1 Fingerprint: B3:EA:C4:47:76:C9:C8:1C:EA:F2:9D:95:B6:CC:A0:08:1B:67:EC:9D # pkgadm removecert -n "/C=US/O=VeriSign, Inc./OU=Class 2 Public Primary Certification Authority - G2/O" Enter Keystore Password: storepass Successfully removed Certificate(s) with alias \ </C=US/O=VeriSign, Inc./OU=Class 2 Public Primary Certification Authority - G2/O> |
如果系统位于具有代理的防火墙之后,则需要首先设置代理服务器,然后才能使用 pkgadd 命令从 HTTP 服务器添加软件包。
成为超级用户或同等角色。
角色包含授权和具有一定权限的命令。有关角色的更多信息,请参见 《系统管理指南:安全性服务》中的“配置 RBAC(任务列表)”。
选择下列方法之一指定代理服务器:
使用 http_proxy、HTTPPROXY 或 HTTPPROXYPORT 环境变量指定代理服务器。
例如:
# setenv http_proxy http://mycache.domain:8080 |
或者指定以下内容之一:
# setenv HTTPPROXY mycache.domain # setenv HTTPPROXYPORT 8080 |
在 pkgadd 命令行上指定代理服务器。
例如:
# pkgadd -x mycache.domain:8080 -d http://myserver.com/pkg SUNWpkg |
创建包括代理服务器信息的管理文件。
例如:
# cat /tmp/admin mail= instance=unique partial=ask runlevel=ask idepend=ask rdepend=ask space=ask setuid=ask conflict=ask action=ask networktimeout=60 networkretries=3 authentication=quit keystore=/var/sadm/security basedir=default proxy=mycache.domain:8080 |
然后,使用 pkgadd -a 命令标识管理文件。例如:
# pkgadd -a /tmp/admin -d http://myserver.com/pkg SUNwpkg |
以下过程假设您已经导入了 Oracle 的根 CA 证书。有关更多信息,请转至 http://download.oracle.com/docs/cd/E17476_01/javase/1.4.2/docs/tooldocs/solaris/keytool.html。
成为超级用户或同等角色。
角色包含授权和具有一定权限的命令。有关角色的更多信息,请参见 《系统管理指南:安全性服务》中的“配置 RBAC(任务列表)”。
添加已签名的软件包。
# pkgadd -d /pathname/device-name |
-d device-name 选项指定从中安装软件包的设备。该设备可以是目录、磁带、软盘或可移除磁盘。该设备还可以是由 pkgtrans 命令创建的数据流。
以下示例说明如何添加存储在系统上的已签名软件包。
# # pkgadd -d /tmp/signed_pppd The following packages are available: 1 SUNWpppd Solaris PPP Device Drivers (sparc) 11.10.0,REV=2003.05.08.12.24 Select package(s) you wish to process (or 'all' to process all packages). (default: all) [?,??,q]: all Enter keystore password: ## Verifying signature for signer <User Cert 0> . . . |
以下示例说明如何使用 HTTP URL 作为设备名称安装已签名的软件包。该 URL 必须指向流格式的软件包。
# pkgadd -d http://install/signed-video.pkg ## Downloading... ..............25%..............50%..............75%..............100% ## Download Complete . . . |