Oracle Solaris 11 Hardening - Final
Oracle Solaris 11 Hardening - Final
Oracle Solaris 11 Hardening - Final
Ensure that the system is up-to-date with the latest patches and updates. Use the Oracle
support portal to download and apply the necessary
To update and patch Oracle Solaris 11, can use the pkg (Package) management commands.
The primary command for this purpose is pkg update. Here are the basic steps:
1.Update the Package Repository Catalog: Before updating the packages, you should ensure
that your package repository catalog is up to date.
2.Update Installed Packages: After refreshing the package repository catalog, and update
the installed packages to the latest versions available in the repository:
3.Install Available Updates: If there are any updates available, you can install them
4.Reboot if Necessary: Some updates may require a system reboot. If this is the case, the
system will usually display a message indicating that a reboot is required.
Identify and disable or remove unnecessary services and daemons running on the
system. This helps reduce the attack surface.
1. Identify Running Services:
Use the svcs command to list the currently running services:
Review the list of services and identify those that are unnecessary for your system's
functionality.
2. Disable Unnecessary Services:
Use the svcadm command to disable specific services. For example, to disable the Telnet
service:
Replace network/telnet with the actual service name you want to disable.
3. Check and Disable Services at Boot:
Use the svcprop command to check if a service is enabled to start at boot:
To disable a service from starting at boot, use the svcadm command:
3. Firewall Configuration
Configure the built-in firewall to allow only necessary incoming and outgoing traffic. The
ipfilter and ipfw utilities can be used for this purpose.
1. Install IPFilter:
Ensure that the IPFilter package is installed on your system. You can use the following
command to install it:
2. Enable and Start IPFilter:
Enable the IPFilter service and start it:
3. Configure IPFilter Rules:
Create a configuration file for IPFilter, typically located at /etc/ipf/ipf.conf. Edit the file using
a text editor (e.g., vi or nano) and add your filtering rules.
This example allows all incoming and outgoing traffic on the e1000g0 interface but logs and
blocks any other incoming traffic.
4. Reload IPFilter Rules:
After modifying the ipf.conf file, you need to reload the IPFilter rules to apply the changes:
5. Enable IPFilter at Boot:
Ensure that IPFilter starts at boot time:
6. Verify IPFilter Status:
Check the status of IPFilter to ensure that it is running without any errors:
7. Monitor IPFilter Logs:
IPFilter logs can be found in the /var/adm/messages file. Monitor these logs regularly for any
indications of blocked or allowed traffic.
8. Test Firewall Rules:
Thoroughly test your firewall rules to ensure that they are working as expected. Verify that
only the intended traffic is allowed and that unauthorized traffic is blocked.
9. Adjust Rules as Needed:
As your network requirements change, you may need to modify your IPFilter rules
accordingly. Update the ipf.conf file and reload the rules.
6. Audit Logging
Enable and configure the audit framework to monitor and log security-relevant events.
Regularly review audit logs for any suspicious activities.
The Audit service in Solaris is managed by the auditd daemon Audit logs are stored in the
specified directory (e.g., /var/audit).
Review logs regularly using tools like auditreduce, praudit, or the audit_viewer GUI.
7. Network Security
Disable unnecessary network services.
• Use tools like tcpwrappers to control access to network services.
• Implement network segmentation and VLANs to isolate sensitive components.
Firewall: Solaris 11 includes the ipfilter and ipfw utilities for configuring firewalls. You can
use these tools to set up rules to control incoming and outgoing network traffic.
IPS (Image Packaging System) and Updates:
Keeping the operating system and software up-to-date is crucial for security. Solaris 11 uses
IPS for package management, allowing you to easily update the system and applications.
RBAC (Role-Based Access Control):
RBAC allows administrators to define roles and assign specific privileges to those roles. By
using RBAC, you can control access to network-related configuration and administration
tasks.
Zones and Virtualization:
Solaris Zones provide a way to virtualize the operating system. By isolating different services
or applications in separate zones, you can enhance security by containing potential security
breaches to a specific zone.
Secure by Default:
Solaris 11 is designed with security in mind, and it follows the principle of being "secure by
default." This means that unnecessary services are disabled by default, and you need to
explicitly enable them if required.
Encryption and Security Protocols:
Solaris 11 supports various encryption and security protocols, including IPsec, for securing
communication between systems. Ensure that you configure these protocols appropriately
based on your security requirements.
Audit Framework:
Solaris includes an audit framework that allows you to monitor and log system events.
Enabling and configuring auditing can help you track security-related activities and detect
potential security incidents.
Network Intrusion Detection and Prevention:
Consider using additional tools or solutions for network intrusion detection and prevention.
Third-party applications or appliances can be integrated with Solaris 11 to enhance security
against network threats.
Network Services Security:
Disable unnecessary network services and configure the security settings for essential
services. This includes services like SSH, FTP, and others. Use strong authentication methods
and encryption where applicable.
Regular Security Audits and Monitoring:
Implement regular security audits and monitoring to detect and respond to potential
security incidents. This includes reviewing logs, analyzing network traffic, and staying
informed about security vulnerabilities and patches.
8. SSH Configuration
Configure SSH to use strong encryption and key-based authentication.
• Disable root login via SSH if not required.
1. Enable and Configure SSH: Ensure that the SSH service is enabled and properly configured
on your Oracle Solaris 11 system. If it's not installed, you can install it using the following
command:
After installation, you may need to enable and start the SSH service:
2. Configure SSH Options: Edit the SSH configuration file at /etc/ssh/sshd_config to specify
options and restrictions. Some
To create and manage resource pools, you can use the pooladm and poolcfg commands. For
example, to create a pool, you can use the following command:
Processor Sets (psets): Processor sets allow you to allocate a specific set of CPUs to a
particular resource pool. This helps in isolating and controlling the CPU resources assigned to
different applications or users.
To create and manage processor sets, you can use the psrset and poolcfg commands. For
example, to associate a processor set with a resource pool:
Projects: Projects in Solaris 11 allow you to group and manage related processes together.
Each project can have resource controls defined, such as CPU shares, memory limits, and
more.
Use the projadd and prctl commands to create and manage projects.
Fair Share Scheduler (FSS): The Fair Share Scheduler is a scheduling class in Solaris that
allows administrators to allocate CPU resources based on specified shares. This helps in
ensuring that each project or application gets its fair share of CPU time.
You can use the priocntl and ps commands to configure and monitor fair share scheduler
settings.
13. Documentation
Maintain detailed documentation of the system's security configuration and any changes
made. This documentation is crucial for audits and troubleshooting.