<?Pub UDT _bookmark _target?><chapter id="startinst-1"><?Pub Tag atict:info tracking="off" ref="0"?><?Pub Tag
atict:user user="sharonr" fullname="Sharon Veach"?><title>Adding Solaris Trusted Extensions Software
to the Solaris OS (Tasks)</title><indexterm><primary>installing</primary><secondary>Solaris OS for Trusted Extensions</secondary>
</indexterm><highlights><itemizedlist><para>This chapter describes how to prepare the Solaris OS for Solaris Trusted Extensions software.
This chapter also describes the information you need before enabling Trusted Extensions.
Instructions on how to enable Trusted Extensions is also provided.</para><listitem><para><olink targetptr="startinst-11" remap="internal">Initial Setup Team Responsibilities</olink></para>
</listitem><listitem><para><olink targetptr="startinst-4" remap="internal">Installing or Upgrading the
Solaris OS for Trusted Extensions</olink></para>
</listitem><listitem><para><olink targetptr="startinst-6" remap="internal">Collecting Information and
Making Decisions Before Enabling&nbsp;Trusted Extensions</olink></para>
</listitem><listitem><para><olink targetptr="startinst-3" remap="internal">Enabling the Solaris Trusted
Extensions Service</olink></para>
</listitem>
</itemizedlist>
</highlights><sect1 id="startinst-11"><title>Initial Setup Team Responsibilities</title><indexterm><primary>Solaris Trusted Extensions</primary><see>Trusted Extensions</see>
</indexterm><indexterm><primary>Trusted Extensions configuration</primary><secondary>division of tasks</secondary>
</indexterm><indexterm><primary>Trusted Extensions configuration</primary><secondary>initial setup team responsibilities</secondary>
</indexterm><indexterm><primary>security</primary><secondary>initial setup team</secondary>
</indexterm><para>Trusted Extensions software is designed to be enabled and configured by
two people with distinct responsibilities. However, the Solaris installation
program does not enforce this two-role task division. Instead, task division
is enforced by roles. Because roles and users are not created until after
installation, it is a good practice to have an <olink targetptr="glossary-59" remap="internal">initial
setup team</olink> of at least two people present to enable and configure Trusted Extensions software.</para>
</sect1><sect1 id="startinst-4"><title>Installing or Upgrading the Solaris OS for Trusted Extensions</title><indexterm><primary>Trusted Extensions</primary><secondary>preparing for</secondary>
</indexterm><itemizedlist><para>The choice of Solaris installation options can affect the use
and security of Trusted Extensions:</para><listitem><para>To properly support Trusted Extensions, you must install the underlying Solaris OS securely.
For Solaris installation choices that affect Trusted Extensions, see <olink targetptr="startinst-7" remap="internal">Install a Solaris System to Support Trusted Extensions</olink>.</para>
</listitem><listitem><para>If you have been using the Solaris OS, check your current configuration
against the requirements for Trusted Extensions. For configuration choices that
affect Trusted Extensions, see <olink targetptr="startinst-5" remap="internal">Prepare an Installed
Solaris System for Trusted Extensions</olink>.</para>
</listitem>
</itemizedlist><task id="startinst-7"><title>Install a Solaris System to Support Trusted Extensions</title><indexterm><primary>requirements for Trusted Extensions</primary><secondary>Solaris installation options</secondary>
</indexterm><indexterm><primary>Trusted Extensions requirements</primary><secondary>Solaris installation</secondary>
</indexterm><indexterm><primary>Solaris installation options</primary><secondary>requirements</secondary>
</indexterm><tasksummary><para>This task applies to fresh installations of the Solaris OS. If you are
upgrading, see <olink targetptr="startinst-5" remap="internal">Prepare an Installed Solaris
System for Trusted Extensions</olink>.</para>
</tasksummary><procedure remap="single-step"><step><para>When installing the Solaris OS, take the recommended action on the
following installation choices.</para><para>The choices follow the order of Solaris installation
questions. Installation questions that are not mentioned in this table do
not affect Trusted Extensions.</para><informaltable frame="all"><tgroup cols="3" colsep="1" rowsep="1"><colspec colwidth="17.20*"/><colspec colwidth="26.02*"/><colspec colwidth="31.78*"/><thead><row><entry><para>Solaris Option</para>
</entry><entry><para>Trusted Extensions Behavior</para>
</entry><entry><para>Recommended Action</para>
</entry>
</row>
</thead><tbody><row><entry><para>NIS naming service</para><para>NIS+ naming service</para>
</entry><entry><para>Trusted Extensions supports files and LDAP for a naming service. For host
name resolution, DNS can be used.</para>
</entry><entry><para>Do not choose NIS or NIS+. You can choose None, which is equivalent
to files. Later, you can configure LDAP to work with Trusted Extensions.</para>
</entry>
</row><row><entry><para>Upgrade</para>
</entry><entry><para>Trusted Extensions installs labeled zones with particular security characteristics.</para>
</entry><entry><para>If you are upgrading, go to <olink targetptr="startinst-5" remap="internal">Prepare an
Installed Solaris System for Trusted Extensions</olink>.</para>
</entry>
</row><row><entry><para><literal>root</literal> password</para>
</entry><entry><para>Administration tools in Trusted Extensions require passwords. If the <literal>root</literal> user does not have a password, then <literal>root</literal> cannot
configure the system.</para>
</entry><entry><para>Provide a <literal>root</literal> password. Do not change the default <literal>crypt_unix</literal> password encryption method. For details, see <olink targetdoc="group-sa" targetptr="concept-41" remap="external"><citetitle remap="section">Managing Password Information</citetitle> in <citetitle remap="book">System Administration Guide: Security Services</citetitle></olink>.</para>
</entry>
</row><row><entry><para>Developer Group</para>
</entry><entry><para>Trusted Extensions uses the Solaris Management Console to administer the network. The End User
group and smaller groups do not install the packages for the Solaris Management Console.</para>
</entry><entry><para>On any system that you plan to use to administer other systems, do not
install the End User, Core, or Reduced Networking Group.</para>
</entry>
</row><row><entry><para>Custom Install</para>
</entry><entry><para>Because Trusted Extensions installs zones, you might need more disk space
in partitions than the default installation supplies.</para>
</entry><entry><para>Choose Custom Install, and lay out the partitions.</para><para>Consider adding extra swap space for roles. If you plan to clone zones,
create a 2000 MB partition for the ZFS pool.</para><para>For auditing files, best practice is to create a dedicated partition.</para>
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</step>
</procedure>
</task><task id="startinst-5"><title>Prepare an Installed Solaris System for Trusted Extensions</title><indexterm><primary>requirements for Trusted Extensions</primary><secondary>Solaris installed systems</secondary>
</indexterm><indexterm><primary>Trusted Extensions requirements</primary><secondary>Solaris installed systems</secondary>
</indexterm><indexterm><primary>Solaris installed systems</primary><secondary>requirements for Trusted Extensions</secondary>
</indexterm><tasksummary><para>This task applies to Solaris systems that have been in use, and
on which you plan to run&nbsp;Trusted Extensions. Also, to run&nbsp;Trusted Extensions on
an upgraded Solaris system, follow this procedure. Other tasks that
might modify an installed Solaris system can be done during&nbsp;Trusted Extensions configuration.</para>
</tasksummary><taskprerequisites><itemizedlist><para>Trusted Extensions cannot be enabled in some Solaris environments:</para><listitem><para>If your system is part of a cluster,  Trusted Extensions cannot
be enabled on the system.</para>
</listitem><listitem><para>The enabling of Trusted Extensions in an alternate boot environment
(BE) is not supported. Trusted Extensions can only be enabled in&nbsp;the current
boot environment.</para>
</listitem>
</itemizedlist>
</taskprerequisites><procedure><step><para>If non-global zones are installed on your system, remove them.</para><para>Or, you can re-install the Solaris OS. If you are going to re-install the Solaris OS,
follow the instructions in <olink targetptr="startinst-7" remap="internal">Install a Solaris
System to Support Trusted Extensions</olink>.</para>
</step><step><para>If your system does not have a <literal>root</literal> password,
create one.</para><para>Administration tools in Trusted Extensions require passwords.
If the <literal>root</literal> user does not have a password, then <literal>root</literal> cannot
configure the system.</para><para>Use the default <literal>crypt_unix</literal> password encryption method
for the <literal>root</literal> user. For details, see <olink targetdoc="group-sa" targetptr="concept-41" remap="external"><citetitle remap="section">Managing Password Information</citetitle> in <citetitle remap="book">System Administration Guide: Security Services</citetitle></olink>.</para><note><para><indexterm><primary>security</primary><secondary>root password</secondary></indexterm><indexterm><primary>root passwords</primary><secondary>required in Trusted Extensions</secondary></indexterm><indexterm><primary>Trusted Extensions requirements</primary><secondary>root password</secondary></indexterm>Users must not disclose
their passwords to another person, as that person might then have access to
the data of the user and will not be uniquely identified or accountable. Note
that disclosure can be direct, through the user deliberately disclosing her/his
password to another person, or indirect, for example, through writing it down,
or choosing an insecure password. The Solaris OS provides protection against
insecure passwords, but cannot prevent a user from disclosing her or his password,
or from writing it down.</para>
</note>
</step><step><para>If you plan to administer the site from this system, add the Solaris packages
for the Solaris Management Console.</para><para>Trusted Extensions uses the Solaris Management Console to administer the
network. If your system was installed with the End User group or a smaller
group, the system does not have the packages for the Solaris Management Console.</para>
</step><step><para>If you have created an <filename>xorg.conf</filename> file, you
need to modify it.</para><para>Add the following line to the end of the Module
section in the <filename>/etc/X11/xorg.conf</filename> file.</para><screen>load "xtsol"</screen><note><para>By default, the <filename>xorg.conf</filename> file does not exist.
Do nothing if this file does not exist.</para>
</note>
</step><step><para>If you plan to clone zones, create a partition for the ZFS pool.</para><para>To decide on your zone creation method, see <olink targetptr="ovw-11" remap="internal">Planning
for Zones in Trusted Extensions</olink>.</para>
</step><step><para>If you plan to install labeled zones on this system, check that
your partitions have sufficient disk space for zones.</para><para>Most systems
that are configured with Trusted Extensions install labeled zones. Labeled zones
can require more disk space than the installed system has set aside.</para><para>However, some Trusted Extensions systems do not require that labeled zones
be installed. For example, a multilevel printing server, a multilevel LDAP
server, or a multilevel LDAP proxy server do not require labeled zones to
be installed. These systems might not need the extra disk space.</para>
</step><step performance="optional"><para>Add extra swap space for roles.</para><para>Roles
administer Trusted Extensions. Consider adding extra swap for role processes.</para>
</step><step performance="optional"><para>Dedicate a partition for audit files.</para><para>Trusted Extensions enables auditing by default. For audit files, best practice
is to create a dedicated partition.</para>
</step><step performance="optional" id="startinst-step-netservices-ltd-1"><para>To
run a hardened configuration, run the <command>netservices limited</command> command
before you enable Trusted Extensions.</para><screen># <userinput>netservices limited</userinput></screen>
</step>
</procedure>
</task>
</sect1><sect1 id="startinst-6"><title>Collecting Information and Making Decisions
Before Enabling&nbsp;Trusted Extensions</title><indexterm><primary>Trusted Extensions</primary><secondary>preparing for</secondary>
</indexterm><para>For each system on which Solaris Trusted Extensions is going to be configured, you need
to know some information, and make some decisions about configuration. For
example, because you are going to create labeled zones, you might want to
set aside disk space where the zones can be cloned as a Solaris <trademark>ZFS</trademark> File System. Solaris ZFS provides additional
isolation for the zones.</para><task id="startinst-12"><title>Collect System Information Before Enabling Trusted Extensions</title><indexterm><primary>collecting information</primary><secondary>before enabling&nbsp;Trusted Extensions</secondary>
</indexterm><indexterm><primary>Trusted Extensions</primary><secondary>collecting information before enabling</secondary>
</indexterm><procedure><step><para>Determine the system's main hostname and IP address.</para><para>The
hostname is the name of the host on the network, and is the global zone. On
a Solaris system, the <command>getent</command> command returns the
hostname, as in:</para><screen># <userinput>getent hosts</userinput> machine1
192.168.0.11   machine1</screen>
</step><step><para>Determine the IP address assignments for labeled zones.</para><para>A
system with two IP addresses can function as a multilevel server. A system
with one IP address must have access to a multilevel server in order to print
or perform multilevel tasks. For a discussion of IP address options, see <olink targetptr="ovw-12" remap="internal">Planning for Multilevel Access</olink>.</para><para>Most systems require a second IP address for the labeled zones. For
example, the following is a host with a second IP address for labeled zones:</para><screen># <userinput>getent hosts</userinput> machine1-zones
192.168.0.12   machine1-zones</screen>
</step><step><para>Collect LDAP configuration information.</para><itemizedlist><para>For the LDAP server that is running Trusted Extensions software, you need
the following information:</para><listitem><para>The name of the Trusted Extensions domain that the LDAP server
serves</para>
</listitem><listitem><para>The IP address of the LDAP server</para>
</listitem><listitem><para>The LDAP profile name that will be loaded</para>
</listitem>
</itemizedlist><para>For an LDAP proxy server, you also need the password for the LDAP proxy.</para>
</step>
</procedure>
</task><task id="startinst-13"><title>Make System and Security Decisions Before Enabling Trusted Extensions</title><indexterm><primary>decisions to make</primary><secondary>before enabling&nbsp;Trusted Extensions</secondary>
</indexterm><indexterm><primary>Trusted Extensions</primary><secondary>decisions to make before enabling</secondary>
</indexterm><tasksummary><para>For each system on which Solaris Trusted Extensions is going to be configured, make these
configuration decisions before enabling the software.</para>
</tasksummary><procedure><step><para>Decide how securely the system hardware needs to be protected.</para><itemizedlist><para>At a secure site, this step has been done for every installed Solaris system.</para><listitem><para>For SPARC systems, a PROM security level and password has
been provided.</para>
</listitem><listitem><para>For x86 systems, the BIOS is protected.</para>
</listitem><listitem><para>On all systems, <literal>root</literal> is protected with
a password.</para>
</listitem>
</itemizedlist>
</step><step><para>Prepare your <filename>label_encodings</filename> file.</para><para><indexterm><primary>deciding</primary><secondary>to use a Sun-supplied encodings file</secondary></indexterm>If you have a site-specific <filename>label_encodings</filename> file,
the file must be checked and installed before other configuration tasks can
be started. If your site does not have a <filename>label_encodings</filename> file,
you can use the default file that Sun supplies. Sun also supplies other <filename>label_encodings</filename> files, which you can find in the <filename>/etc/security/tsol</filename> directory. The Sun files are demonstration files. They might not
be suitable for production systems.</para><para>To customize a file for your site, see <olink targetdoc="trsollbladmin" remap="external"><citetitle remap="book">Solaris Trusted Extensions Label Administration</citetitle></olink>.</para>
</step><step><para>From the list of labels in your <filename>label_encodings</filename> file,
make a list of the labeled zones that you need to create.</para><para>For
the default <filename>label_encodings</filename> file, the labels are the
following, and the zone names can be similar to the following:</para><informaltable frame="topbot"><tgroup cols="2" colsep="0" rowsep="0"><colspec colwidth="50*"/><colspec colwidth="50*"/><thead><row rowsep="1"><entry><para>Label</para>
</entry><entry><para>Zone Name</para>
</entry>
</row>
</thead><tbody><row><entry><para><literal>PUBLIC</literal></para>
</entry><entry><para><literal>public</literal></para>
</entry>
</row><row><entry><para><literal>CONFIDENTIAL : INTERNAL</literal></para>
</entry><entry><para><literal>internal</literal></para>
</entry>
</row><row><entry><para><literal>CONFIDENTIAL : NEED TO KNOW</literal></para>
</entry><entry><para><literal>needtoknow</literal></para>
</entry>
</row><row><entry><para><literal>CONFIDENTIAL : RESTRICTED</literal></para>
</entry><entry><para><literal>restricted</literal></para>
</entry>
</row>
</tbody>
</tgroup>
</informaltable><para>For ease of NFS mounting, the zone name of a particular
label must be identical on every system. Some systems, such as multilevel
print servers, do not need to have labeled zones installed. However, if you
do install labeled zones on a print server, the zone names must be identical
to the zone names of other systems on your network.</para>
</step><step><para>Decide when to create roles.</para><para><indexterm><primary>roles</primary><secondary>determining when to create</secondary></indexterm><indexterm><primary>creating</primary><secondary>accounts during or after configuration</secondary></indexterm><indexterm><primary>configuring</primary><secondary>as a role or as superuser?</secondary></indexterm><indexterm><primary>deciding</primary><secondary>to configure as a role or as superuser</secondary></indexterm>Your
site's security policy can require you to administer Trusted Extensions by assuming
a role. If so, or if you are configuring the system to satisfy criteria for
an evaluated configuration, you must create roles early in the configuration
process.</para><para>If you are not required to configure the system by using roles, you
can choose to configure the system as superuser. This method of configuration
is less secure. Audit records do not indicate which user was superuser during
configuration. Superuser can perform all tasks on the system, while a role
can perform a more limited set of tasks. Therefore, configuration is more
controlled when being performed by roles.</para>
</step><step><para>Choose a zone creation method.</para><para>You can create zones
from scratch, copy zones, or clone zones. These methods differ in speed of
creation, disk space requirements, and robustness. For the trade-offs, see <olink targetptr="ovw-11" remap="internal">Planning for Zones in Trusted Extensions</olink>.</para>
</step><step><para>Plan your LDAP configuration.</para><para>Using local files for
administration is practical for non-networked systems.</para><para>LDAP is the naming service for a networked environment. A populated
LDAP server is required when you configure several machines.</para><itemizedlist><listitem><para>If you have an existing Sun <trademark>Java</trademark> System Directory Server (LDAP server), you can create
an LDAP proxy server on a system that is running Trusted Extensions. The multilevel
proxy server handles communications with the unlabeled LDAP server.</para>
</listitem><listitem><para>If you do not have an LDAP server, you can configure a system
that runs Trusted Extensions software as a multilevel LDAP server.</para>
</listitem>
</itemizedlist>
</step><step><para>Decide other security issues for each system and for the network.</para><itemizedlist><para>For example, you might want to consider the following security issues:</para><listitem><para>Determine which devices can be attached to the system and
allocated for use.</para>
</listitem><listitem><para>Identify which printers at what labels are accessible from
the system.</para>
</listitem><listitem><para>Identify any systems that have a limited label range, such
as a gateway system or a public kiosk.</para>
</listitem><listitem><para>Identify which labeled systems can communicate with particular
unlabeled systems.</para>
</listitem>
</itemizedlist>
</step>
</procedure>
</task>
</sect1><sect1 id="startinst-3"><title>Enabling the Solaris Trusted Extensions Service</title><para>In the Solaris Express Community Edition, Solaris Trusted Extensions is
a service that is managed by the service management facility (SMF). The name
of the service is <literal>svc:/system/labeld:default</literal>. By default,
the <literal>labeld</literal> service is disabled.</para><task id="startinst-8"><title>Enable Solaris Trusted Extensions</title><indexterm><primary>Trusted Extensions</primary><secondary>enabling</secondary>
</indexterm><indexterm><primary>enabling</primary><secondary>Trusted Extensions on a Solaris system</secondary>
</indexterm><indexterm><primary>adding</primary><secondary>Trusted Extensions to a Solaris system</secondary>
</indexterm><indexterm><primary>service management framework (SMF)</primary><secondary><literal>labeld</literal> service</secondary>
</indexterm><indexterm><primary><literal>labeld</literal> service</primary>
</indexterm><indexterm><primary>enabling</primary><secondary><literal>labeld</literal> service</secondary>
</indexterm><tasksummary><itemizedlist><para>The <literal>labeld</literal> service attaches labels to communications
endpoints. For example, the following are labeled:</para><listitem><para>All zones and the directories and files within each zone</para>
</listitem><listitem><para>All processes including window processes</para>
</listitem><listitem><para>All network communications</para>
</listitem>
</itemizedlist>
</tasksummary><taskprerequisites><para>You have completed the tasks in <olink targetptr="startinst-4" remap="internal">Installing
or Upgrading the Solaris OS for Trusted Extensions</olink> and <olink targetptr="startinst-6" remap="internal">Collecting Information and Making Decisions Before
Enabling&nbsp;Trusted Extensions</olink>.</para>
</taskprerequisites><procedure><step><para>On a Solaris system, enable the <literal>labeld</literal> service.</para><screen># <userinput>svcadm enable -s svc:/system/labeld:default</userinput></screen><para>The <literal>labeld</literal> service adds labels to the system and
starts the Solaris auditing service and device allocation. Do not perform
other tasks until the cursor returns to the prompt.</para>
</step><step><para>Verify that the service is enabled.</para><screen># <userinput>svcs -x labeld</userinput>
svc:/system/labeld:default (Trusted Extensions)
 State: online since <replaceable>weekday month date hour:minute:second year</replaceable>
   See: labeld(1M)
Impact: None.</screen><note><para>The labels do not appear until after you reboot the system. <olink targetptr="txconf-60" remap="internal">Setting Up the Global Zone in Trusted Extensions</olink> includes
tasks that you might want to perform before rebooting.</para>
</note>
</step>
</procedure><taskrelated role="troubleshooting"><para><indexterm><primary>troubleshooting</primary><secondary>Solaris release that supports the <literal>labeld</literal> service</secondary></indexterm><indexterm><primary><literal>labeld</literal> service</primary><secondary>troubleshooting</secondary></indexterm><indexterm><primary>error messages</primary><secondary>troubleshooting</secondary></indexterm><indexterm><primary><literal>svcs: Pattern 'labeld' doesn't match any instances</literal></primary></indexterm>The following message
indicates that you are not running a Solaris release that supports Trusted Extensions as
a service: <literal>svcs: Pattern 'labeld' doesn't match any instances</literal>.</para><para>To run Trusted Extensions on a Solaris system that does not support
the <literal>labeld</literal> service, follow the instructions in the <citetitle>Solaris Trusted Extensions Installation and Configuration</citetitle> guide.</para>
</taskrelated>
</task>
</sect1>
</chapter><?Pub *0000025543 0?>