Home > Articles

Like this article? We recommend

Securing the System Controller

In order to effectively secure SCs, changes are required to both the Solaris OE software running on the SCs and the configuration of the Sun Fire 12K or 15K platform. We added customized modules to versions 4.0.1 and newer of the Solaris Security Toolkit software to simplify the Solaris OE installation and deployment of these recommendations. These modules automate the implementation of the security recommendations.

The primary function of the Solaris Security Toolkit software is to automate and simplify building secured Solaris OE systems based on the recommendations contained in this and other security-related Sun BluePrints OnLine articles.

NOTE

We recommend that you disable failover before hardening either of the SCs. Re-enable failover only after both SCs are hardened and tested.

The Sun Fire 12K and 15K SC module sunfire_15k_sc-secure.driver exclusively performs hardening tasks. No minimization of the Solaris OE is performed.

You can use the Sun Fire 12K and 15K SC module of the Solaris Security Toolkit in either standalone or JumpStart TM mode to secure SCs.

NOTE

Configuration modifications for performance enhancements and software configuration are not addressed by the Solaris Security Toolkit.

To harden the SCs, refer to the following sections:

  • "Adding Security Software"

  • "Customizing the Solaris Security Toolkit Driver"

  • "Overriding Solaris Security Toolkit Defaults"

  • "Installing Downloaded Software and Implementing Modifications"

Adding Security Software

The next stage in hardening the SCs requires downloading and installing additional software security packages. This section covers the following tasks:

  • "Install Solaris Security Toolkit Software" on page 20

  • "Download Recommended Patch Cluster Software"

  • "Download FixModes Software"

  • "Download OpenSSH Software"

  • "Download the MD5 Software"

NOTE

Of the software described in this section, the Solaris Security Toolkit, Recommended and Security Patch Cluster, FixModes, and MD5 software are required. Instead of OpenSSH, you can substitute a commercial version of Secure Shell, available from a variety of vendors. You must install a Secure Shell product on the SCs.

Install Solaris Security Toolkit Software

The Solaris Security Toolkit software must be downloaded first, then installed on the SCs. Later, you'll use the Solaris Security Toolkit software to automate installing other security software and implementing the Solaris OE modifications for hardening the SCs.

The primary function of the Solaris Security Toolkit software is to automate and simplify building secured Solaris OE systems based on the recommendations contained in this and other security-related Sun BluePrints OnLine articles.

NOTE

The following instructions use filenames that are correct only for version 4.0.1 and newer of the Solaris Security Toolkit software.

To Download Solaris Security Toolkit Software

  1. Download the latest version of the source file from:

  2. http://www.sun.com/security/jass

    NOTE

    If you are using SMS 1.4 software, you must use Solaris Security Toolkit version 4.0.1 or newer.

  3. Extract the source file into a directory on the server by using the uncompress command:

  4. # uncompress SUNWjass-4.0.1.pkg.Z

    Where SUNWjass-4.0.1.pkg.Z is the file name of the most current release.

  5. Install the Solaris Security Toolkit software onto the server using the pkgadd command:

  6. # pkgadd -d SUNWjass-4.0.1.pkg SUNWjass

    Where SUNWjass-4.0.1.pkg is the file name of the most current release.

    Executing this command creates the SUNWjass subdirectory in /opt. This subdirectory contains all Solaris Security Toolkit directories and associated files. The script make-jass-pkg—included in Solaris Security Toolkit software releases since version 0.3—allows administrators to create custom packages using a different installation directory.

Download Recommended Patch Cluster Software

Patches are regularly released by Sun to provide Solaris OE fixes for performance, stability, functionality, and security. It is critical to the security of a system that the most up-to-date patch is installed. Ensure that the latest Solaris OE Recommended and Security Patch Cluster is installed on the SCs. This section describes how to download the latest patch cluster.

Downloading the latest patch cluster does not require a SunSolve OnLineSM program support contract.

NOTE

Apply standard best practices to all patch installations. Before installing any patches, evaluate and test them on non-production systems or during scheduled maintenance windows.

To Download Recommended Patch Cluster Software

  1. Download the latest patch from the SunSolve OnLine Web site at:

  2. http://sunsolve.sun.com

  3. Click on the Patches link at the top of the left navigation bar.

  4. Click on Recommended and Security Patches in the Download box.

  5. Select the download option for the appropriate Solaris OE version, either HTTP or FTP, by clicking on the appropriate link.

  6. In our example, we selected Solaris 9 OE using HTTP download.

    The Save As dialog box is displayed in your browser window.

  7. Move the file securely to the SCs with the scp command, or ftp if Secure Shell is not available.

  8. If you use the scp command, it should be similar to the following example:

    % scp 9_Recommended.zip sun15-sc0:/var/tmp
  9. Move the file to the /opt/SUNWjass/Patches directory and uncompress it as follows:

  10. # cd /opt/SUNWjass/Patches
    # mv /var/tmp/9_Recommended.zip .
    # unzip 9_Recommended.zip
    Archive:   9_Recommended.zip
      creating: 9_Recommended/
     inflating: 9_Recommended/CLUSTER_README 
     inflating: 9_Recommended/copyright 
     inflating: 9_Recommended/install_cluster 
    [. . .]

    Later, using the Solaris Security Toolkit software, you will install the patch after downloading all the other security packages.

    NOTE

    If you do not place the Recommended and Security Patches software into the /opt/SUNWjass/Patches directory, a warning message displays when you execute the Solaris Security Toolkit software.

Download FixModes Software

FixModes is a software package that tightens the default Solaris OE directory and file permissions. Tightening these permissions can significantly improve overall security of the SCs. More restrictive permissions make it even more difficult for malicious users to gain privileges on a system.

To Download FixModes Software

  1. Download the FixModes pre-compiled binaries from:

  2. http://www.sun.com/security/jass

    The FixModes software is distributed as a precompiled and compressed tar file formatted for systems based on SPARC® technology. The file name is SUNBEfixm.pkg.Z.

    NOTE

    Only certain versions of FixModes are supported for use on Sun Fire SCs. The correct FixModes version must have secure-modes.c version 1.41 and exempt-pkgs.h version 1.1. Newer versions of either file are acceptable. Earlier version of FixModes must not be used to secure Sun Fire SCs.

  3. Once downloaded, move the file securely to the SCs with the scp command, or ftp if scp is not available.

  4. The scp command used should be similar to the following command:

    % scp SUNBEfixm.pkg.Z sun15-sc0:/var/tmp
  5. Save the file, SUNBEfixm.pkg.Z, in the Solaris Security Toolkit Packages directory in /opt/SUNWjass/Packages, with the following commands:

  6. # cd /opt/SUNWjass/Packages
    # mv /var/tmp/SUNBEfixm.pkg.Z .
  7. Uncompress the archive.

  8. Later, using the Solaris Security Toolkit software, you'll install the FixModes software after downloading all the other security packages.

Download OpenSSH Software

In any secured environment, the use of encryption in combination with strong authentication is required to protect user-interactive sessions. At a minimum, network access to the SCs must be encrypted.

The tool most commonly used to implement encryption is Secure Shell software, whether a version bundled with Solaris, a third-party commercial, or open source (freeware) version. To implement all the security modifications performed by the Solaris Security Toolkit software and recommended in this article, you must implement a Secure Shell software product.

NOTE

With the release of Solaris 9 OE, a version of Solaris Secure Shell is included. If using Solaris 9 OE, we strongly recommend using this Secure Shell version.

Information on where to obtain commercial versions of Secure Shell is provided in "Related Resources" on page 47.

The Solaris Security Toolkit software disables all non-encrypted user-interactive services and daemons on the system, in particular daemons such as in.telnetd and in.ftpd.

Access to the system can be gained with Secure Shell similarly to what is provided by Telnet and ftp.

NOTE

If you choose to use a Secure Shell product other than OpenSSH, install and configure it before or during the Solaris Security Toolkit software run.

To Download OpenSSH Software

NOTE

If the SCs are running Solaris 9 OE, you can use the Solaris Secure Shell software and skip the OpenSSH installation steps in this section.

  1. Obtain the following Sun BluePrints online article and use the instructions in the article for downloading the software.

  2. A Sun BluePrints OnLine article about how to compile and deploy OpenSSH titled "Building and Deploying OpenSSH on the Solaris Operating Environment" is available at:

    http://www.sun.com/blueprints/0701/openSSH.pdf

    CAUTION

    Do not compile OpenSSH on the SCs, and do not install the compilers on the SCs. Use a separate Solaris OE system—running the same Solaris OE version, architecture, and mode (for example, Solaris 8 OE, Sun4U, and 64 bit)—to compile OpenSSH. If you

    implement a commercial version of Secure Shell, then no compiling is required. Understand, however, that omitting compilers does not provide significant protection against the determined attacker as they could use previously compiled tools.Download the MD5 Software

    The MD5 software validates MD5 digital fingerprints on the SCs. Validating the integrity of Solaris OE binaries provides a robust mechanism to detect system binaries that are altered or trojaned (hidden inside something that appears safe) by unauthorized users. By modifying system binaries, attackers provide themselves with backdoor access onto a system; they hide their presence and cause systems to operate in unstable manners.

To Download the MD5 Software

  1. Download the MD5 binaries from the following web site:

  2. http://www.sun.com/security/jass

    The MD5 programs are distributed as a compressed tar file.

  3. Move the file SUNBEmd5.pkg.Z securely to the SCs with the scp command, or ftp if scp is not available.

  4. The scp command used should be similar to the following:

    % scp SUNBEmd5.pkg.Z sun15-sc0:/var/tmp
  5. Copy the file, SUNBEmd5.pkg.Z, to the Solaris Security Toolkit Packages directory in /opt/SUNWjass/Packages.

  6. After the MD5 software is saved to the /opt/SUNWjass/Packages directory, the execution of the Solaris Security Toolkit installs the software.

    After the MD5 binaries are installed, you can use them to verify the integrity of executables on the system through the Solaris Fingerprint Database. More information on the Solaris fingerprint database is available in the Sun BluePrints OnLine article titled "The Solaris TM Fingerprint Database - A Security Tool for Solaris Software and Files."

  7. (Optional) Download and install Solaris Fingerprint Database Companion and Solaris Fingerprint Database Sidekick software from the SunSolve Online web site at:

  8. http://sunsolve.sun.com

    We strongly recommend that you install these optional tools and use them with the MD5 software. These tools simplify the process of validating system binaries against the database of MD5 checksums. Use these tools frequently to validate the integrity of the Solaris OE binaries and files on the cluster nodes.

    These tools are described in the "The Solaris TM Fingerprint Database - A Security Tool for Solaris Software and Files" article.

Customizing the Solaris Security Toolkit Driver

If you determine that your system requires some of the services and daemons disabled by the Solaris Security Toolkit, or you want to enable any of the inactive scripts available in the Solaris Security Toolkit, do so before executing the Solaris Security Toolkit.

As described earlier in this article, the SMS 1.3 software provides capabilities for securing the MAN network:

  • Disable ARP on the MAN network.

  • Disable all I1 IP traffic between the SCs and specific domains.

With SMS 1.2, either an .rhosts or .shosts file was required. For SMS 1.3 and 1.4, it changed to a .remotesc file. The .remotesc file is in /var/opt/SUNWSMS/SMS#.#/data/.remotesc, where #.# is the version number such as 1.4.

Beginning with SMS 1.2 and patch 112481-05, and continuing with SMS 1.3 and 1.4, you can use Secure Shell as an alternative transport mechanism for fomd, removing the requirement for in.rshd, in.rlogind, in.rexecd, and /.rhosts on the SCs. Using this alternative transport is strongly recommended. You can use any Secure Shell implementation, although the examples in this article are based on the use of Solaris Secure Shell running on Solaris 9 OE.

We strongly recommend that you disable ARP on the MAN network. For multi-domain system configurations where domain separation is of critical concern, we also recommend disabling IP connectivity between the SCs and those domains that require separation.

Disabling ARP on the MAN network can only be done for an entire chassis. It is not possible to make this change only for certain domains. It must be done on all domains having IP connectivity to the I1 network.

CAUTION

When disabling ARP on a Sun Fire 12K or 15K system, it is critical that the necessary configuration changes be made to all domains and both SCs at the same time. Making the changes only on certain domains or SCs causes the system to malfunction.

Implementing any of these modifications to the SCs requires modifying the files included with the Solaris Security Toolkit, as well as domain side modifications when disabling ARP on the MAN network. In addition, if you are implementing Secure Shell as an alternative transport for fomd, then additional manual steps are required.

The following sections provide instructions for using each of these options. The instructions include the required modifications to the Solaris Security Toolkit driver in addition to any manual modifications required. The modifications described are cumulative; if you want to use all three options, perform all the steps described in each of the three sections.

To Disable Dynamic ARP

  1. To add the necessary features or customize the hardening required for your system, edit a copy of the sunfire_15k_sc-hardening.driver file..

  2. # cd /opt/SUNWjass/Drivers
    # vi sunfire_15k_sc-hardening.driver

    CAUTION

    To preserve your changes for future updates and prevent the Solaris Security Toolkit from overriding your changes, modify only a copy of the driver. Keep the original Solaris Security Toolkit driver as a master.

  3. If static ARP configuration is required for this SC, uncomment s15k-static-arp.fin from the driver by removing the # symbol in front of the script.

  4. After editing the line, it should appear as follows in the JASS_SCRIPTS definition:

     s15k-static-arp.fin
  5. Review the domain hostname to MAC address mapping in the sms_sc_arp file.

  6. This file is in the /opt/SUNWjass/Files/etc directory. The Solaris Security Toolkit uses the following initial values (sun15-a through sun15-r) in this file:

    sun15-a     08:00:20:d5:c6:09
    sun15-b     08:00:20:fc:7e:4e
    sun15-c     08:00:20:b2:a8:c7
    sun15-d     08:00:20:cf:ad:7d
    sun15-e     08:00:20:ce:de:e5
    sun15-f     08:00:20:cc:c9:b7
    sun15-g     08:00:20:9d:02:e1
    sun15-h     08:00:20:2a:7f:f6
    sun15-i     08:00:20:f4:39:37
    sun15-j     08:00:20:6e:aa:31
    sun15-k     08:00:20:90:67:88
    sun15-l     08:00:20:ce:e6:5e
    sun15-m     08:00:20:5a:27:7f
    sun15-n     08:00:20:55:e5:36
    sun15-o     08:00:20:67:78:73
    sun15-p     08:00:20:c6:84:b5
    sun15-q     08:00:20:c0:37:cb
    sun15-r     08:00:20:41:9d:68
    1. If your site configuration for the MAN network uses different domain hostnames, replace the sun15-a through sun15-r values with your hostnames.

    2. The domain hostname and MAC address mapping can be obtained on the main SC by using the showplatform -v command, as in the following example:

      Domain Ethernet Addresses:
      ==============================
         Domain ID  Domain Tag    Ethernet Address
         A      newA       8:0:20:b8:79:e4
         B      engB       8:0:20:b4:30:8c
         C      domainC      8:0:20:b7:30:b0
         D        -       8:0:20:b8:2d:b0
         E      eng1       8:0:20:f1:b7:0
         F      domainF      8:0:20:be:f8:a4
         G      dmnG       8:0:20:b8:29:c8
         H        -       8:0:20:f3:5f:14
         I        -       8:0:20:be:f5:d0
         J      dmnJ       8:0:20:67:78:73
         K        -       8:0:20:f1:ae:88
         L        -       8:0:20:b7:5d:30
         M        -       8:0:20:f1:b8:8
         N        -       8:0:20:f3:5f:74
         O        -       8:0:20:f1:b8:8
         P        -       8:0:20:b8:58:64
         Q        -       8:0:20:f1:b7:ec
         R      dmnR       8:0:20:f1:b7:10
    3. If your site configuration requires different MAC addresses, replace them with MAC addresses that match your domain hostnames in this file for both SCs.

    4. Use either the default MAC addresses provided with the Solaris Security Toolkit or the ones that you determined are required for your site. You can customize the MAC addresses, as long as you meet the following conditions:

      Specify sufficiently random numbers for the last three octets (for example, use the 08:00:20 prefix and use random numbers for the rest).

      Place the addresses in the /etc/sms_arp_* files and match the contents of these files on both SCs and all domains.

      CAUTION

      Do not put the factory-provided sequential MAC addresses in these files.

  7. Review the IP Address for the I1 MAN interface of the main SC and matching MAC address in the sms_domain_arp file.

  8. This file is in the /opt/SUNWjass/Files/etc directory. The Solaris Security Toolkit uses the following initial values in this file:

    192.168.103.1      08:00:20:63:49:1e
    1. If your site configuration for the MAN network uses a different IP Address for the I1 MAN interface, replace the 192.168.103.1 value with the IP address of the I1 MAN interface used in your environment.

    2. To obtain the floating IP address and MAC address on the main SC, execute the ifconfig scman0 command as the root user.

    3. The floating IP address and MAC address can be obtained on the main SC by running the ifconfig scman0 command as the root user, as in the following example:

      sc0# ifconfig scman0
      scman0: flags=1008843 mtu 1500 index 4
          inet 192.168.10.1 netmask ffffffe0 broadcast 192.168.10.31
          ether 8:0:20:fa:34:f8
    4. If your site configuration requires a different MAC address than the initial 08:00:20:63:49:1e value, replace it with the MAC address that matches the IP Address for the I1 MAN interface on all domains and both SCs.

    5. All the domains must use the same /etc/sms_domain_arp file.

      If you want to force the MAC addresses to be the same, retrieve the MAC address from the sc0's I1 interface (scman0), and use this MAC address in the sms_domain_arp file on both sc0 and sc1.

      CAUTION

      The IP Address of the main SC in this file must match the IP address chosen as the IP Address of the SC on the I1 MAN network. Any mismatches cause MAN network failures. These failures can adversely affect the reliability, availability, serviceability, and security of the platform.

      The /etc/init.d/sms_arpconfig script (installed by the Solaris Security Toolkit) overrides the default I1 MAC addresses on both the sc0 and sc1. Even though the two system controllers have different MAC addresses by default, it is imperative that the MAC addresses be set identically for the static ARP to work.

    6. Be sure that you keep the sms_sc_arp file contents matched on both of the SCs, the sms_domain_arp file contents matched on both of the SCs, and the sms_domain_arp file contents matched on all domains.

    7. NOTE

      If a domain is configured to have both s15k-exclude-domains.fin and s15k-static-arp.fin applied to it, the result is equivalent to s15k-exclude-domains.fin. It is possible, however, to have some domains excluded while others use static ARPs. We strongly recommend that you disable ARP on the I1 MAN network to protect against ARP-spoofing attacks. Note that disabling ARP on the I1 MAN network is a modification that affects the entire chassis and all the domains in the chassis. It is not possible to disable ARP only between certain domains and the SCs.

To Disable I1 Traffic

  1. To add the necessary features or customize the hardening required for your system, edit a copy of the sunfire_15k_sc-hardening.driver file..

  2. # cd /opt/SUNWjass/Drivers
    # vi sunfire_15k_sc-hardening.driver

    CAUTION

    To preserve your changes for future updates and prevent the Solaris Security Toolkit from overriding your changes, modify only a copy of the driver. Keep the original Solaris Security Toolkit driver as a master.

  3. If domain exclusion is required for this SC, uncomment s15k-exclude-domains.fin from the driver by removing the # symbol in front of the script.

  4. After editing the line, it should appear as follows in the JASS_SCRIPTS definition:

     s15k-exclude-domains.fin

    The default configuration of the s15k-exclude-domains.fin script is to disable I1 IP connectivity for all possible domains on the system.

  5. If you do not want the default configuration, then edit the s15k-exclude-domains.fin script.

  6. The s15k-exclude-domains.fin script is in the /opt/SUNWjass/Files directory and includes a variable, domain_RE, which specifies the domains to have their I1 IP connectivity disabled. To modify the domains that are impacted by this script, the definition of domain_RE must be changed. For example, if the following regular expression were used, then all domains would have their IP I1 MAN connectivity disabled except for domain D:

    domain_RE='D[A-CE-R]-I1'

    NOTE

    If a domain is configured to have both s15k-exclude-domains.fin and s15k-static-arp.fin applied to it, the result is equivalent to s15k-exclude-domains.fin. It is possible, however, to have some domains excluded while others use static ARPs. We strongly recommend that you disable ARP on the I1 MAN network to protect against ARP-spoofing attacks. Note that disabling ARP on the I1 MAN network is a modification that affects the entire chassis and all the domains in the chassis. It is not possible to disable ARP only between certain domains and the SCs.

To Use fomd With Secure Shell Instead of r*

NOTE

We recommend that you disable the failover mechanism before hardening the SCs. Re-enable failover only after you harden and test both SCs.

Using fomd with Secure Shell involves performing the following setup procedures:

  • "Verify Installation of Secure Shell Software"

  • "Configure Secure Shell"

  • "Reboot the SCs and Verify Secure Shell Configurations"

  • "Add Features and Customize the Hardening"

CAUTION

Although any version of Secure Shell may be used by fomd, the Secure Shell binaries scp and ssh must be available in /usr/bin. If the binaries, or links to the binaries, are not found in this location, then fomd attempts to revert back to r*. The fomd generates log messages when reverting to r*. If the r* services are disabled and fomd cannot fall back, then fomd generates file propagation errors for each file it cannot copy.

Verify Installation of Secure Shell SoftwareTo Verify Installation of Secure Shell Software

  1. Verify that a Secure Shell version is installed, configured, and running appropriately.

  2. NOTE

    For fomd to work properly over Secure Shell, it must be possible for root to ssh from one SC to the other SC without requiring a password or command line options.

Configure Secure Shell

Perform the following steps to configure Secure Shell properly between the two SCs. The steps include instructions for both Solaris Secure Shell and OpenSSH. If another Secure Shell variant, or a customized OpenSSH build, is being used, then these instructions may require modifications for those products.

For fomd to work properly over Secure Shell, it must be possible for root to ssh from one SC to the other SC without requiring a password or command line arguments.

We recommend creating 2048-bit keys using RSA for Secure Shell protocol version 2. Be aware that using 2048-bit keys may introduce slight performance reductions.

NOTE

The following steps require that you have root access and know the correct hostnames for the SCs on the I2 MAN network. These are the hostnames that SC failover uses; therefore, Secure Shell must be configured properly for SC failover to work.

In the following steps, we use the filename /.ssh/id_rsa for the Secure Shell keys and the default I2 MAN hostnames, sun15-sc0-i2 and sun15-sc1-i2, for the SCs.

To Configure Secure Shell

  1. If using Solaris 9 OE, change the default Secure Shell configuration to allow root log in on both SCs:

    1. On both SC0 and SC1, edit the file /etc/ssh/sshd_config to allow root log-in.

    2. SC failover does not work if this step is omitted.

    3. Change the PermitRootLogin parameter from no to yes.

    4. Reboot each of the SCs by entering the following command from the platform shell:

    5. # reboot -y

      NOTE

      You can reboot the SCs while the domains are running.

  2. On the main SC (SC0) in a terminal window command line, perform the following steps:

  3. NOTE

    We recommend that you display terminal windows side by side for both SCs (main and spare) throughout this procedure. Doing so makes it easier to enter the data and perform sequential steps on each SC.

    1. Generate a user key by entering the following command in the appropriate Secure Shell directory.

    2. For our Solaris 9 OE example, we enter the command at the /usr/bin directory:

      # /usr/bin/ssh-keygen -b 2048 -t rsa

      The defaults for OpenSSH are 1024-bit keys with RSA for protocol version 1, that is, -t rsa1. You must specify -t rsa to get RSA for protocol version 2.

    3. Accept the default filename without entering a pass phrase.

    4. Transfer the public key file to a temporary file on SC1 using either scp (if available) or rcp:

    5. # scp /.ssh/id_rsa.pub sun15-sc1-i2:/.ssh/id_rsa.pub-sc0

      or

      # rcp /.ssh/id_rsa.pub sun15-sc1-i2:/.ssh/id_rsa.pub-sc0

      CAUTION

      Do not omit the remote filename or use /.ssh/id_rsa.pub as the filename on SC1. If there is already a public key file on SC1, it may be overwritten and invalidate SC1's private key.

  4. On the spare SC (SC1) in a terminal window command line, perform the following steps:

    1. Generate a user key by entering the following command:

    2. # /usr/bin/ssh-keygen -b 2048 -t rsa
    3. Accept the default filename without entering a pass phrase.

    4. Transfer the public key file to a temporary file on SC0 using either scp (if available) or rcp:

    5. # scp /.ssh/id_rsa.pub sun15-sc0-i2:/.ssh/id_rsa.pub-sc1

      or

      # rcp /.ssh/id_rsa.pub sun15-sc0-i2:/.ssh/id_rsa.pub-sc1

      CAUTION

      Do not omit the remote filename or use /.ssh/id_rsa.pub as the filename on SC0. If there is already a public key file on SC0, it may be overwritten and invalidate SC0's private key.

  5. Return to the main SC and perform the following steps:

    1. Append SC1's public key to the /.ssh/authorized_keys2 or /.ssh/authorized_keys file.

    2. NOTE

      If you are using OpenSSH, the file to use is /.ssh/authorized_keys2. If you are using Solaris Secure Shell on Solaris 9 OE, the file to use is /.ssh/authorized_keys. This command creates the file if it does not exist.

      # cat /.ssh/id_rsa.pub-sc1 >> /.ssh/authorized_keys2

      or

      # cat /.ssh/id_rsa.pub-sc1 >> /.ssh/authorized_keys
    3. Remove the temporary file.

    4. # rm /.ssh/id_rsa.pub-sc1
  6. Return to the spare SC and perform the following steps:

    1. Append SC0's public key to the /.ssh/authorized_keys2 or /.ssh/authorized_keys file.

    2. # cat /.ssh/id_rsa.pub-sc0 >> /.ssh/authorized_keys2

      or

      # cat /.ssh/id_rsa.pub-sc0 >> /.ssh/authorized_keys
    3. Remove the temporary file.

    4. # rm /.ssh/id_rsa.pub-sc0

      Due to a known incompatibility between the SMS 1.2 software and Secure Shell startup script, if you upgrade the configuration from SMS 1.2 to SMS 1.3, you may need to move the SMS 1.2 startup script from UNIX run-level 2 to run-level 3 on both the main and spare SC.

  7. If /etc/rc2.d/S99sms exists, perform the following:

  8. NOTE

    This step is not necessary for SMS 1.4

    # mv /etc/rc2.d/S99sms /etc/rc3.d

    In addition to verifying the location of /etc/rc3.d/S99sms, also verify the location of the Secure Shell startup. It must be listed prior to /etc/rc3.d/S99sms. If you upgrade the SC's from SMS 1.2 to SMS 1.3, then you may need to move the Secure Shell software startup script to /etc/rc2.d.

  9. If the Secure Shell software is listed, alphabetically, after the SMS software in /etc/rc3.d then move the Secure Shell software startup script to /etc/rc2.d as follows:

  10. # mv /etc/rc3.d/*ssh* /etc/rc2.d/.

Reboot the SCs and Verify Secure Shell ConfigurationsTo Reboot the SCs and Verify Secure Shell Configurations

  1. Reboot each of the SCs by entering the following command from the platform shell:

  2. # reboot -y

    NOTE

    You can reboot the SCs while the domains are running.

  3. Verify that the configuration on SC0 works properly.

    1. Log into SC1 from SC0 as root using ssh:

    2. # ssh sun15-sc1-i2
    3. When prompted to add this host to the list of known hosts, answer yes.

    4. Log out of SC1 with exit.

    5. Log into SC1 from SC0 again with ssh, and verify that no prompts are generated and that the login without a password is successful.

  4. Verify the configuration on SC1 works properly.

    1. Log into SC0 from SC1 using ssh:

    2. # ssh sun15-sc0-i2
    3. When prompted to add this host to the list of known hosts, answer yes.

    4. Log out of SC0 with exit.

    5. Log into SC0 from SC1 again with ssh, and verify that no prompts are generated and that the login without a password is successful.

Configure SMS to Use Secure Shell

After Secure Shell is installed and configured, you must instruct SMS to use Secure Shell instead of the r* services to copy files.

To Configure SMS to Use Secure Shell

  1. Verify that links to both the ssh and scp executables are present in /usr/bin.

  2. Execute the following smsconfig command to create softlinks from /usr/bin/ssh and scp to /opt/SUNWSMS/bin.

  3. # smsconfig -s ssh

    NOTE

    If the Secure Shell version being used does not have its executables, or links to its executables, present in /usr/bin, this command will fail.

    With SMS 1.2, either an .rhosts or .shosts file was required. For SMS 1.3 and 1.4, it changed to a .remotesc file. The .remotesc file is in /var/opt/SUNWSMS/SMS#.#/data/.remotesc, where #.# is the version number such as 1.4.

Add Features and Customize the HardeningTo Add Features and Customize the Hardening

  1. To add necessary features and customize the hardening required for your system, edit a copy of the sunfire_15k_sc-hardening.driver file..

  2. # cd /opt/SUNWjass/Drivers
    # vi sunfire_15k_sc-hardening.driver

    CAUTION

    To preserve your changes for future updates and prevent the Solaris Security Toolkit from overriding your changes, modify only a copy of the driver. Keep the original Solaris Security Toolkit driver as a master.

  3. To configure the SMS software to use Secure Shell for failover, set the following parameter (jassSMSSecureFailover) to 1.

  4. After editing the line, it should appear as follows in the JASS_SCRIPTS definition:

    # Set this parameter to 1 if you want to configure SMS to use
    # Secure Shell.
    jassSMSSecureFailover=1

    This script disables the r* services in the /etc/inetd.conf file automatically and performs the following, based upon the SMS version you are using:

    • For SMS 1.2, this script copies the /.rhosts file to /.shosts.

    • For SMS 1.3, this script removes the /.rhosts file, because it is no longer needed.

    The five services disabled are as follows:

    #shell stream tcp nowait root /usr/sbin/in.rshd    in.rshd
    #shell stream tcp6 nowait root /usr/sbin/in.rshd    in.rshd
    #login stream tcp6 nowait root /usr/sbin/in.rlogind  in.rlogind
    #exec stream tcp nowait root /usr/sbin/in.rexecd   in.rexecd
    #exec stream tcp6 nowait root /usr/sbin/in.rexecd   in.rexecd

Overriding Solaris Security Toolkit Defaults

If there are some services that must remain enabled, and the Solaris Security Toolkit automatically disables them, you can override the defaults before executing the driver.

To prevent the toolkit from disabling a service, comment out the call to the appropriate finish script in the driver.

For example, if your environment requires Network File System (NFS)-based services, you can leave them enabled. Comment out the disable-nfs-server.fin and disable-rpc.fin scripts by appending a # sign before them in the copy of the sunfire_15k_domain-hardening.driver script.

For more information about editing and creating driver scripts, refer to the Solaris Security Toolkit documentation.

Installing Downloaded Software and Implementing Modifications

The Solaris Security Toolkit version 4.0.1 and newer provides a driver (sunfire_15k_sc-secure.driver) for automating the installation of security software and Solaris OE modifications. The driver performs the following tasks:

  • Installs and executes the FixModes software to tighten file system permission

  • Installs the MD5 software

  • Installs the Recommended and Security Patch Cluster software

  • Implements over 100 Solaris OE security modifications

NOTE

The actions performed by each of the scripts is described in the Solaris Security Toolkit documentation.

During the installation and modifications implemented in this section, all non-encrypted access mechanisms to the SC—such as Telnet and FTP—are disabled. The hardening steps do not disable console serial access over SC serial ports.

To Install Downloaded Software and Implement Changes

NOTE

Even if no patches are installed by the Solaris Security Toolkit, it is critical that the sunfire_15k_sc-secure.driver be called. Calling either the -harden or -config drivers can result in an unsupported configuration.

  1. Execute the sunfire_15k_sc-secure.driver script as follows:

  2. # cd /opt/SUNWjass
    # ./jass-execute -d sunfire_15k_sc-secure.driver
    ./jass-execute: NOTICE: Executing driver, 
    sunfire_15k_sc-secure.driver
    
    ============================================================
    sunfire_15k_sc-secure.driver: Driver started.
    ============================================================
    [...]
    

    NOTE

    The hardening described in this article is performed in standalone mode, not JumpStart mode, because the SCs were built using an interactive Solaris OE installation. For details on the differences between standalone mode and JumpStart mode, refer to the Solaris Security Toolkit documentation.

  3. Restart the SMS software as follows:

  4. # /etc/init.d/sms stop
    [...]
    # /etc/init.d/sms start

    After you restart the SMS software, modifications to the I1 domain network take affect and fomd uses Secure Shell.

  5. Reboot each of the SCs by entering the following command from the platform shell:

  6. # reboot -y

    NOTE

    You can reboot the SCs while the domains are running.

    You must reboot the SCs for the changes to be implemented.

To View the Contents of the Driver File

  1. To view the contents of the driver file and obtain information about the Solaris OE modifications, refer to the Solaris Security Toolkit documentation available either in the /opt/SUNWjass/Documentation directory or through the web at:

  2. http:/http://www.sun.com/security/jass

To Undo a Solaris Security Toolkit Run

Each Solaris Security Toolkit run creates a run directory in /var/opt/SUNWjass/run. The names of these directories are based on the date and time the run is initiated. In addition to displaying the output to the console, the Solaris Security Toolkit software creates a log file in the /var/opt/SUNWjass/run directory.

CAUTION

Do not modify the contents of the /var/opt/SUNWjass/run directories under any circumstances. Modifying the files can corrupt the contents and cause unexpected errors when you use Solaris Security Toolkit software features such as undo.

The files stored in the /var/opt/SUNWjass/run directory track modifications performed on the system and enable the jass-execute undo feature.

NOTE

By default, the Solaris Security Toolkit overwrites any files backed up during earlier runs being undone. In some cases, this action overwrites changes made to files since the run was performed. If you have concerns about overwriting changes, use the -n (no force) option to prevent modified files from being overwritten. Refer to the Solaris Security Toolkit documentation for more details about this option.

  1. To undo a run or series of runs, use the jass-execute -u command.

  2. For example, on a system where two separate Solaris Security Toolkit runs are performed, you could undo them by using the following command and options:

    # pwd
    /opt/SUNWjass
    # ./jass-execute -u
    Please select a JASS run to restore through:
    1. September 25, 2003 at 06:28:12 (/var/opt/SUNWjass/run/20030925062812)
    2. December 10, 2003 at 19:04:36 (/var/opt/SUNWjass/run/20031210190436)
    3. Restore from all of them
    Choice{'q' to exit)? 2
    ./jass-execute: NOTICE: Restoring to previous run 
    //var/opt/SUNWjass/run/20021210190436
    
    ============================================================
    undo.driver: Driver started.
    ============================================================
    [...]

    Refer to the Solaris Security Toolkit documentation for details on the capabilities and options available in the jass-execute command.

InformIT Promotional Mailings & Special Offers

I would like to receive exclusive offers and hear about products from InformIT and its family of brands. I can unsubscribe at any time.

Overview


Pearson Education, Inc., 221 River Street, Hoboken, New Jersey 07030, (Pearson) presents this site to provide information about products and services that can be purchased through this site.

This privacy notice provides an overview of our commitment to privacy and describes how we collect, protect, use and share personal information collected through this site. Please note that other Pearson websites and online products and services have their own separate privacy policies.

Collection and Use of Information


To conduct business and deliver products and services, Pearson collects and uses personal information in several ways in connection with this site, including:

Questions and Inquiries

For inquiries and questions, we collect the inquiry or question, together with name, contact details (email address, phone number and mailing address) and any other additional information voluntarily submitted to us through a Contact Us form or an email. We use this information to address the inquiry and respond to the question.

Online Store

For orders and purchases placed through our online store on this site, we collect order details, name, institution name and address (if applicable), email address, phone number, shipping and billing addresses, credit/debit card information, shipping options and any instructions. We use this information to complete transactions, fulfill orders, communicate with individuals placing orders or visiting the online store, and for related purposes.

Surveys

Pearson may offer opportunities to provide feedback or participate in surveys, including surveys evaluating Pearson products, services or sites. Participation is voluntary. Pearson collects information requested in the survey questions and uses the information to evaluate, support, maintain and improve products, services or sites, develop new products and services, conduct educational research and for other purposes specified in the survey.

Contests and Drawings

Occasionally, we may sponsor a contest or drawing. Participation is optional. Pearson collects name, contact information and other information specified on the entry form for the contest or drawing to conduct the contest or drawing. Pearson may collect additional personal information from the winners of a contest or drawing in order to award the prize and for tax reporting purposes, as required by law.

Newsletters

If you have elected to receive email newsletters or promotional mailings and special offers but want to unsubscribe, simply email information@informit.com.

Service Announcements

On rare occasions it is necessary to send out a strictly service related announcement. For instance, if our service is temporarily suspended for maintenance we might send users an email. Generally, users may not opt-out of these communications, though they can deactivate their account information. However, these communications are not promotional in nature.

Customer Service

We communicate with users on a regular basis to provide requested services and in regard to issues relating to their account we reply via email or phone in accordance with the users' wishes when a user submits their information through our Contact Us form.

Other Collection and Use of Information


Application and System Logs

Pearson automatically collects log data to help ensure the delivery, availability and security of this site. Log data may include technical information about how a user or visitor connected to this site, such as browser type, type of computer/device, operating system, internet service provider and IP address. We use this information for support purposes and to monitor the health of the site, identify problems, improve service, detect unauthorized access and fraudulent activity, prevent and respond to security incidents and appropriately scale computing resources.

Web Analytics

Pearson may use third party web trend analytical services, including Google Analytics, to collect visitor information, such as IP addresses, browser types, referring pages, pages visited and time spent on a particular site. While these analytical services collect and report information on an anonymous basis, they may use cookies to gather web trend information. The information gathered may enable Pearson (but not the third party web trend services) to link information with application and system log data. Pearson uses this information for system administration and to identify problems, improve service, detect unauthorized access and fraudulent activity, prevent and respond to security incidents, appropriately scale computing resources and otherwise support and deliver this site and its services.

Cookies and Related Technologies

This site uses cookies and similar technologies to personalize content, measure traffic patterns, control security, track use and access of information on this site, and provide interest-based messages and advertising. Users can manage and block the use of cookies through their browser. Disabling or blocking certain cookies may limit the functionality of this site.

Do Not Track

This site currently does not respond to Do Not Track signals.

Security


Pearson uses appropriate physical, administrative and technical security measures to protect personal information from unauthorized access, use and disclosure.

Children


This site is not directed to children under the age of 13.

Marketing


Pearson may send or direct marketing communications to users, provided that

  • Pearson will not use personal information collected or processed as a K-12 school service provider for the purpose of directed or targeted advertising.
  • Such marketing is consistent with applicable law and Pearson's legal obligations.
  • Pearson will not knowingly direct or send marketing communications to an individual who has expressed a preference not to receive marketing.
  • Where required by applicable law, express or implied consent to marketing exists and has not been withdrawn.

Pearson may provide personal information to a third party service provider on a restricted basis to provide marketing solely on behalf of Pearson or an affiliate or customer for whom Pearson is a service provider. Marketing preferences may be changed at any time.

Correcting/Updating Personal Information


If a user's personally identifiable information changes (such as your postal address or email address), we provide a way to correct or update that user's personal data provided to us. This can be done on the Account page. If a user no longer desires our service and desires to delete his or her account, please contact us at customer-service@informit.com and we will process the deletion of a user's account.

Choice/Opt-out


Users can always make an informed choice as to whether they should proceed with certain services offered by InformIT. If you choose to remove yourself from our mailing list(s) simply visit the following page and uncheck any communication you no longer want to receive: www.informit.com/u.aspx.

Sale of Personal Information


Pearson does not rent or sell personal information in exchange for any payment of money.

While Pearson does not sell personal information, as defined in Nevada law, Nevada residents may email a request for no sale of their personal information to NevadaDesignatedRequest@pearson.com.

Supplemental Privacy Statement for California Residents


California residents should read our Supplemental privacy statement for California residents in conjunction with this Privacy Notice. The Supplemental privacy statement for California residents explains Pearson's commitment to comply with California law and applies to personal information of California residents collected in connection with this site and the Services.

Sharing and Disclosure


Pearson may disclose personal information, as follows:

  • As required by law.
  • With the consent of the individual (or their parent, if the individual is a minor)
  • In response to a subpoena, court order or legal process, to the extent permitted or required by law
  • To protect the security and safety of individuals, data, assets and systems, consistent with applicable law
  • In connection the sale, joint venture or other transfer of some or all of its company or assets, subject to the provisions of this Privacy Notice
  • To investigate or address actual or suspected fraud or other illegal activities
  • To exercise its legal rights, including enforcement of the Terms of Use for this site or another contract
  • To affiliated Pearson companies and other companies and organizations who perform work for Pearson and are obligated to protect the privacy of personal information consistent with this Privacy Notice
  • To a school, organization, company or government agency, where Pearson collects or processes the personal information in a school setting or on behalf of such organization, company or government agency.

Links


This web site contains links to other sites. Please be aware that we are not responsible for the privacy practices of such other sites. We encourage our users to be aware when they leave our site and to read the privacy statements of each and every web site that collects Personal Information. This privacy statement applies solely to information collected by this web site.

Requests and Contact


Please contact us about this Privacy Notice or if you have any requests or questions relating to the privacy of your personal information.

Changes to this Privacy Notice


We may revise this Privacy Notice through an updated posting. We will identify the effective date of the revision in the posting. Often, updates are made to provide greater clarity or to comply with changes in regulatory requirements. If the updates involve material changes to the collection, protection, use or disclosure of Personal Information, Pearson will provide notice of the change through a conspicuous notice on this site or other appropriate way. Continued use of the site after the effective date of a posted revision evidences acceptance. Please contact us if you have questions or concerns about the Privacy Notice or any objection to any revisions.

Last Update: November 17, 2020