JavaScript is required to for searching.
Skip Navigation Links
Exit Print View
System Administration Guide: Security Services
search filter icon
search icon

Document Information


Part I Security Overview

1.  Security Services (Overview)

Part II System, File, and Device Security

2.  Managing Machine Security (Overview)

3.  Controlling Access to Systems (Tasks)

Controlling System Access (Task Map)

Securing Logins and Passwords (Task Map)

Securing Logins and Passwords

How to Display a User's Login Status

How to Display Users Without Passwords

How to Temporarily Disable User Logins

How to Monitor Failed Login Attempts

How to Monitor All Failed Login Attempts

How to Create a Dial-Up Password

How to Temporarily Disable Dial-Up Logins

Changing the Password Algorithm (Task Map)

Changing the Default Algorithm for Password Encryption

How to Specify an Algorithm for Password Encryption

How to Specify a New Password Algorithm for an NIS Domain

How to Specify a New Password Algorithm for an NIS+ Domain

How to Specify a New Password Algorithm for an LDAP Domain

How to Install a Password Encryption Module From a Third Party

Monitoring and Restricting Superuser (Task Map)

Monitoring and Restricting Superuser

How to Monitor Who Is Using the su Command

How to Restrict and Monitor Superuser Logins

SPARC: Controlling Access to System Hardware (Task Map)

Controlling Access to System Hardware

How to Require a Password for Hardware Access

How to Disable a System's Abort Sequence

4.  Controlling Access to Devices (Tasks)

5.  Using the Basic Audit Reporting Tool (Tasks)

6.  Controlling Access to Files (Tasks)

7.  Using the Automated Security Enhancement Tool (Tasks)

Part III Roles, Rights Profiles, and Privileges

8.  Using Roles and Privileges (Overview)

9.  Using Role-Based Access Control (Tasks)

10.  Role-Based Access Control (Reference)

11.  Privileges (Tasks)

12.  Privileges (Reference)

Part IV Oracle Solaris Cryptographic Services

13.  Oracle Solaris Cryptographic Framework (Overview)

14.  Oracle Solaris Cryptographic Framework (Tasks)

15.  Oracle Solaris Key Management Framework

Part V Authentication Services and Secure Communication

16.  Using Authentication Services (Tasks)

17.  Using PAM

18.  Using SASL

19.  Using Solaris Secure Shell (Tasks)

20.  Solaris Secure Shell (Reference)

Part VI Kerberos Service

21.  Introduction to the Kerberos Service

22.  Planning for the Kerberos Service

23.  Configuring the Kerberos Service (Tasks)

24.  Kerberos Error Messages and Troubleshooting

25.  Administering Kerberos Principals and Policies (Tasks)

26.  Using Kerberos Applications (Tasks)

27.  The Kerberos Service (Reference)

Part VII Oracle Solaris Auditing

28.  Oracle Solaris Auditing (Overview)

29.  Planning for Oracle Solaris Auditing

30.  Managing Solaris Auditing (Tasks)

31.  Solaris Auditing (Reference)



Monitoring and Restricting Superuser

An alternative to using the superuser account is to set up role-based access control. Role-based access control is called RBAC. For overview information on RBAC, see Role-Based Access Control (Overview). To set up RBAC, see Chapter 9, Using Role-Based Access Control (Tasks).

How to Monitor Who Is Using the su Command

The sulog file lists every use of the su command, not only the su attempts that are used to switch from user to superuser.


Entries that include ??? indicate that the controlling terminal for the su command cannot be identified. Typically, system invocations of the su command before the desktop appears include ???, as in SU 10/10 08:08 + ??? root-root. After the user starts a desktop session, the ttynam command returns the value of the controlling terminal to the sulog: SU 10/10 10:10 + pts/3 jdoe-root.

Entries similar to the following can indicate that the su command was not invoked on the command line: SU 10/10 10:20 + ??? root-oracle. The user might have switched to the oracle role by using a GUI.

How to Restrict and Monitor Superuser Logins

This method immediately detects superuser attempts to access the local system.

  1. View the CONSOLE entry in the /etc/default/login file.

    By default, the console device is set to /dev/console. With this setting, root can log in to the console. root cannot log in remotely.

  2. Verify that root cannot log in remotely.

    From a remote system, try to log in as superuser.

    mach2 % rlogin -l root mach1
    Password: <Type root password of mach1>
    Not on system console
    Connection closed.
  3. Monitor attempts to become superuser.

    By default, attempts to become superuser are printed to the console by the SYSLOG utility.

    1. Open a terminal console on your desktop.
    2. In another window, use the su command to become superuser.
      % su -
      Password: <Type root password>

      A message is printed on the terminal console.

      Sep 7 13:22:57 mach1 su: 'su root' succeeded for jdoe on /dev/pts/6

Example 3-7 Logging Superuser Access Attempts

In this example, superuser attempts are not being logged by SYSLOG. Therefore, the administrator is logging those attempts by removing the comment from the #CONSOLE=/dev/console entry in the /etc/default/su file.

# CONSOLE determines whether attempts to su to root should be logged
# to the named device

When a user attempts to become superuser, the attempt is printed on the terminal console.

SU 09/07 16:38 + pts/8 jdoe-root

To become superuser from a remote system when the /etc/default/login file contains the default CONSOLE entry, users must first log in with their user name. After logging in with their user name, users then can use the su command to become superuser.

If the console displays an entry similar to Mar 16 16:20:36 mach1 login: ROOT LOGIN /dev/pts/14 FROM mach2.Example.COM, then the system is permitting remote root logins. To prevent remote superuser access, change the #CONSOLE=/dev/console entry to CONSOLE=/dev/console in the /etc/default/login file.