Exalogic Security - Oracle

15 downloads 223 Views 1MB Size Report
The Oracle Exalogic Elastic Cloud presents a level of security synergy not often found in today's systems ... considered
An Oracle White Paper  June 2012   

Exalogic Security      

 

                                                                                                                                               Exalogic Security – An Introduction 

     

 

 

Disclaimer   The following is intended to outline our general product direction. It is intended for information  purposes only, and may not be incorporated into any contract. It is not a commitment to deliver  any material, code, or functionality, and should not be relied upon in making purchasing  decisions. The development, release, and timing of any features or functionality described for  Oracle’s products remains at the sole discretion of Oracle.     

 

 

                                                                                                                                               Exalogic Security – An Introduction 

     

 

 

Executive Overview ........................................................................... 3

Introduction ....................................................................................... 4

Objective / Scope .......................................................................... 4

General Approach to Security........................................................    4

Compliance ................................................................................... 5

Assumptions..................................................................................    6

Overview of Exalogic ......................................................................... 7

Use Cases.........................................................................................    7

Implementing Exalogic in an Existing Infrastructure...........................    8

Recommendations – Overview of Control Techniques ...................... 9

Network ....................................................................................... 11

Operating Systems ...................................................................... 16

Storage........................................................................................    20

Systems Management ................................................................. 22

Oracle Traffic Director ................................................................. 24

Conclusion ...................................................................................... 24

References......................................................................................    25

 

                                                                                                                                               Exalogic Security – An Introduction 

     

 

 

Executive Overview  The Oracle Exalogic Elastic Cloud is an Engineered System designed to consolidate and optimize the performance  of Oracle middleware and application workloads.  It is composed of compute nodes, the Oracle Sun ZFS Storage  Appliance, and a converged InfiniBand I/O backplane for storage and networking and the Exalogic Elastic Cloud  software. Working in concert, the Oracle Exalogic system’s components, when properly configured, offer the  necessary level of security needed for organizations to store and process sensitive information.  The Oracle Exalogic Elastic Cloud presents a level of security synergy not often found in today’s systems.  As a  truly Engineered System, its security state is greater than the sum of its individual components.  The carefully  considered, designed and tested integration between the application nodes, network and storage components of  Exalogic makes this possible.  This paper is the introduction for the series on Exalogic security. It is the first in a series that discusses the security  best practices that are recommended for an Exalogic implementation in an existing IT environment. These best  practices are developed in consideration of the performance and availability requirements typical of most  organizations.                  



 

                                                                                                                                               Exalogic Security – An Introduction 

     

 

 

Introduction  The goal of this paper is to cover various use cases regarding the role of security controls in an Exalogic system  and highlight Oracle recommended security practices with the intention of reducing Exalogic’s overall attack  surface.  As with any system handling sensitive information, it should have the security controls and processes  appropriate to reducing risk of loss or destruction of information to an acceptable level.  As such, it should be  physically secure, networked to ensure availability without exposing sensitive information, have access controls in  place so that only authorized users can gain access, and have appropriate administrative and management controls.   In support of this Exalogic is delivered from Oracle with various security controls that can be leveraged according  to the individual needs of an organization.   

Objective / Scope  The objective of this paper is to describe security features and practices specific to Exalogic that can be used  to reduce risks to organizations through various means including security hardening, minimization,  separation and isolation techniques.  As there are a number of different configurations that an Exalogic  solution can take, these security practices should be considered a generic baseline and not a prescriptive  solution set.  The scope of this paper covers the platform infrastructure components of Exalogic including:  •  Hardware  •  Operating System  •  Network  •  Storage    Note that subsequent releases of this paper will discuss additional platform and application security features  and their configurations as they become available.     

General Approach to Security  Designing, implementing, and managing security for an integrated environment such as Oracle’s Exalogic  system requires an organization to support a framework for architecting and governing security.  The general  approach to security described here aligns with those contained in common standards such as those from the  International Standards Organization (ISO) or those found in the Information Technology Infrastructure  Library (ITIL).  To ensure a comprehensive and cost effective security approach, the following should be  considered: 



 

                                                                                                                                               Exalogic Security – An Introduction 

     

 

  •   The context of the Exalogic solution.  An Exalogic system should be implemented within the  context of an existing security architecture that exhibits a defense­in­depth strategy and a need­to­ know access policy. Questions such as where will the Exalogic systems reside relative to one's IT  environment, from a physical and logical perspective will need to be considered.    •   Perform a risk assessment.  The only viable way to identify and implement appropriate security  controls is to perform a risk assessment of the Exalogic system relative to its placement and use  within an organization’s larger IT infrastructure i.e., what data will it process and how will it be  integrated into the overall IT architecture?  •   Governance and management.  Controls need to be implemented within an associated management  infrastructure to ensure effectiveness of those controls.  The management infrastructure is the  governance framework that represents an organizations overall processes and methods for ensuring  controls address identified risks, accountability is maintained and data confidentiality, integrity and  availability are supported.  ITIL and ISO offer examples of information technology and security  governance frameworks.      •   Apply appropriate security controls.  Although the minimum threshold for security controls can  change from one environment to another, applying a common baseline of security controls within  an Exalogic system is recommended.  •   Audit, monitor and manage all security, system changes and related activities.  •   Default settings for items such as preconfigured user ID’s and their passwords should be changed as  soon as practical.  •   Maximize the use of separation techniques to ensure the isolation of data as much as possible. 

     

Compliance  A primary goal of this paper is to enable organizations to address various compliance mandates.  Compliance  requirements have become all pervasive in today’s data processing environment and should be considered  critical business drivers.  These can range from legal and regulatory mandates such as HIPAA, SOX and  GLBA to industry developed standards such as PCI, ISO and ANSI.  Following the recommendations in this  paper should help enable organizations to address different compliance requirements.  For example, the  guidance in this document, if followed should enable an organization to address those portions of the PCI  standard applicable to separation and security of data and processing resources within the Exalogic  Engineered System.  Note that this does not imply that an organization would be fully compliant with PCI as  the standard mandates the use of other security controls that are beyond the scope of Exalogic.  As security baselines, the US Defense Information Systems Agency (DISA) UNIX Security Technical  Implementation Guide (STIG), the US National Security Agency (NSA) Guide to the Secure Configuration  of Red Hat Enterprise Linux or the Center for Internet Security (CIS) recommendations should be 



 

                                                                                                                                               Exalogic Security – An Introduction 

     

 

 

considered.  These offer guidance in areas such as: discretionary access controls, general security, file and  directory permissions, system access, network services, network based authentication, restriction of services,  logging, tools and backup. All of these topics should be considered when securing a UNIX based system and  tailored according to the needs and security policy of a particular organization.      

Assumptions  It is important to understand that Engineered Systems are not standalone and independently secured  systems; rather as noted above, implementing security for an Exalogic system should be done within the  context of a specific security architecture and overall governance framework that conforms to an  organization’s security policy.  As such, customers should consider various security measures beyond those  available and incorporated into Exalogic, to ensure the confidentiality, integrity and availability of their  systems and data.  Additional security measures can include external firewalls, identity and access  management, intrusion detection system and cryptographic functionality.  The extent of the security services  implemented will depend upon which data and services are exposed by the Exalogic machine.  Additional  assumptions include: 

  •  

This paper applies to the currently released Exalogic version 1.0 and the Exalogic Elastic Cloud  System release 2.0. 

•  

This paper represents an approach to risk management.  That means our intent is to reduce risk (or  the overall attack surface as mentioned above) to a manageable level without impacting service  levels.  

•  

It is assumed that Exalogic is implemented in a physically secure environment so that only  authorized users can access the physical servers, interfaces, cabling, consoles and other components. 

•  

It is assumed that the Exalogic system can leverage standard security controls typically found within  an IT infrastructure including systems management, identity provisioning, access control,  monitoring and auditing, etc.  That is, Exalogic does not replace existing security services and so,  may rely on those already implemented by an organization as part of an existing security  architecture. 

 

   

             

 



 

                                                                                                                                               Exalogic Security – An Introduction 

     

 

 

Overview of Exalogic  Oracle Exalogic is an Engineered System with integrated hardware and software designed to provide a  complete platform for a wide range of application types and widely varied workloads.  An Exalogic system is  intended for large­scale, performance­sensitive, mission­critical application deployments.  It combines Oracle  Fusion Middleware software and industry­standard hardware to enable a high degree of isolation between  concurrently deployed applications, which have varied security and availability requirements.   Exalogic is designed to fully leverage an internal InfiniBand fabric that connects all of the processing,  storage, memory and external network interfaces within an Exalogic machine to form a single, large  computing device.  Each Exalogic machine is connected to the customer's data center networks via 10 GbE  (client traffic) and GbE (management) interfaces.  If you are using applications that follow Oracle's best practices for highly scalable, fault­tolerant systems, you  do not need to make any application architecture or design changes to benefit from Exalogic.  You can  connect many Exalogic machines or a combination of Exalogic machines and Oracle Exadata Database  Machines to develop a single, large­scale environment.   The Oracle Exalogic documentation noted in the  reference can be found here: http://docs.oracle.com/cd/E18476_01/index.htm.  .    

Use Cases  Use cases provide scenarios for security controls to be implemented in an Exalogic environment.  The below  use cases are a sampling of activities where security plays a role.  These use cases are presented to provide a  guideline for developing security controls within an IT infrastructure that incorporates Exalogic.  The  recommendations below have been developed in consideration of these use cases.     1. Enable security and isolation of applications and processes so users cannot access any other application or  process including their data and processing resources, nor even have a comprehension of their existence.  2. Enable security and isolation of administrative functions such that system administrators may only  perform those functions they are authorized to perform, i.e., implement a security policy of least privilege  and need to know.  3. Enable security and isolation of development, test, quality assurance and production environments run on  Exalogic systems.  4. Enable and support compliance to various security standards such as PCI and HIPAA that require the  confidentiality and integrity of sensitive data and processing resources.   

 



 

                                                                                                                                               Exalogic Security – An Introduction 

     

 

 

Implementing Exalogic in an Existing Infrastructure  The diagram below illustrates how Exalogic exists within the context of a security architecture.  For example,  a firewall DMZ has been implemented here to interrogate network traffic from the Internet and after the  Oracle HTTP servers and SSL has been implemented that support the confidentiality of data.  This is typical  of separation in a tiered architecture where a web, application, and data tiers exist.  Notice also that  encryption has been implemented via HTTPS to ensure data confidentiality. 

.   

 

                                   Diagram 1.  Sample of an Existing Security Architecture  

         

 



Exalogic Security – An Introduction

Recommendations – Overview of Control Techniques

Security and risk mitigation techniques fall into a number of broad categories. In this paper these are outlined in terms of where they apply in a traditional IT infrastructure: •

Network



Operating System



Storage



Systems Management

The controls described here should be integrated into either an organization's existing security architecture or within an Exalogic system itself. These represent current recommended practices from Oracle and are further elaborated below. The below diagram illustrates the primary components of Exalogic as described in the network, operating system and storage sections below. As previously noted these recommendations are not intended to be prescriptive in nature.

9

Exalogic Security – An Introduction

Diagram 2. Sample Exalogic System and Connections using InfiniBand

10

Exalogic Security – An Introduction

Network From a security standpoint a network is a means to transport data in a secure fashion. This can be accomplished through several mechanisms including cryptography (e.g., IPSec, SSH, SSL, etc) via isolation (e.g., VLANs, vNIC, etc) or via firewalls since they are typically used to inspect network traffic and look for and filter out abnormal conditions. Separation, which is a basic security tenet, can be implemented for data transiting a network in an Exalogic environment through the use of VLANs. The creation and management of VLANs is beyond the scope of this document but is described in detail in the Sun Network QDR InfiniBand Gateway Switch Administration Guide noted in the reference section.

One of the most common models for application isolation involves multiple IP subnetting, in which the most mission-critical applications are assigned their own IP subnets layered above the default IPoIB link of InfiniBand fabric. In this model, some subnets may also contain applications that have less stringent or otherwise different resource requirements. Other subnets may host WebLogic domains, which contain multiple applications, such as those dedicated to a given department or line of business. It is recommended that IP subnetting be implemented to provide logical network separation for Exalogic systems. The detailed procedures for setting up IP subnets are found in the Exalogic Enterprise Deployment Guide and the Exalogic Machine Owner’s Guide noted in the Reference section.

An Exalogic system is pre-configured to support network isolation to ensure the security of data transiting the network. The primary networks of an Exalogic system provide separation of different types of network traffic as noted below. Each network must be on a distinct and separate subnet from the others and all IP addresses must be statically assigned IP addresses, not dynamically assigned (DHCP) addresses.

The diagram below provides a general schematic of the Exalogic network environment and its primary components. Each of the connections between the different nodes and switches should be secured, typically through the use of secure protocols that utilize cryptography, e.g., SSL or SSH.

11

Exalogic Security – An Introduction

Diagram 3. Example of Exalogic Networking

12

Exalogic Security – An Introduction

Management network: This required network connects to an existing management network, and is used for administrative work for all components of Exalogic. It connects ILOM, compute nodes, server heads in the storage appliance, and switches connected to the Ethernet switch in the Exalogic machine rack. This management network is in a single subnet. ILOM connectivity uses separate ILOM ports. 
For multi-rack configurations it is recommended to configure a single subnet per configuration. The management network should be secured for confidentiality and integrity via the implementation of SSH. It is further recommended that specific roles be defined within the management network to ensure isolation of administrative functions.

InfiniBand private network: This required network connects the compute nodes and the Sun ZFS Storage 7320 appliance through the BOND0 interface to the InfiniBand gateway switches on the Exalogic rack. It is the default IP over InfiniBand (IPoIB) subnet created automatically during the initial configuration of the Exalogic machine. The InfiniBand private network is a non-routable network fully contained in the Exalogic machine, and it does not connect to ones existing network. The InfiniBand private network within the Exalogic rack functions as a backplane between nodes and can be considered to be physically secured.

Client access network: This required network connects the compute nodes to your existing client network through the BOND1 interface and is used for client access to the compute nodes. Each Exalogic compute node has a single default client access (edge network) to an external 10 Gb Ethernet network through a Sun Network QDR InfiniBand Gateway Switch. This enables isolation of network traffic for each compute node. The logical network interface of each compute node for client access network connectivity is bonded. Bond1 consists of 2 vNICs (Ethernet over IB vNICs). To enable network separation, each vNIC is mapped to a separate Sun Network QDR InfiniBand Gateway Switch and each host EoIB vNIC is associated with a different HCA IB port.

Secure Network Protocols

Network communications that require confidentiality are recommended to implement secure protocols such as IPSec, SSL or SSH. These protocols implement encryption to prevent the disclosure of information transiting networks. For example, SSL can be used between clients and applications to prevent disclosure of sensitive information. Likewise, SSH can be used to secure communications between system administrators and those systems they are managing. SSL and SSH are both integrated into the Exalogic bootstrapping process. It is recommended that all client traffic that contains sensitive information use secure protocols. It is likewise recommended that all administrative and system management traffic use secure protocols. Note that in Exalogic, insecure protocols such as FTP and Telnet are disabled by default.

13

Exalogic Security – An Introduction

Firewalls

From a networking perspective, an enterprise deployment architecture is secured because every functional group of software components can be isolated, and all traffic can be restricted by protocol and port. It is recommended that Exalogic systems be implemented behind a firewall complex external to the Exalogic system, with the characteristics noted here: • Configure external load balancers to redirect all external communication received on port 80 to port 443. • Communication from external clients does not go beyond the Load Balancing Router level. • No direct communication from the Load Balancing Router to the data tier is allowed. • Components are separated in different protection zones: the web tier, application tier, and the data tier. • Direct communication between two firewalls at any one time is prohibited. • If communication begins in one firewall zone, it must end in the next firewall zone. • All communication between components across protection zones is restricted by port and protocol, according to firewall rules.

In addition to a firewall complex external to Exalogic, firewall capabilities can be implemented internally through use of IPtables. IPtables is a form of IP filter that can be implemented with the operating system to perform interrogation (packet filtering inspection) of network traffic (at layers 2 and 3). This can be a useful tool for filtering and blocking network to traffic destined for a specific port. IPtables are set up within the operating system via rules that detail the filtering to be performed as well as how inspected traffic will be subsequently routed. IPtables can thus be used to enforce separation, for example, between a production and a test system. Besides the use of IPtables the Exalogic 10 GbE Switch 72p has the ability to perform packet filtering and inspect layer 2, 3 and 4 header fields. This allows an organization to evaluate and make permit/deny decisions based upon protocol, source, destination and other parameters. For example, the port, IP address and MAC address can all be interrogated. Optionally a firewall could be implemented between Exalogic and external systems such as Exadata and other 3rd party solutions. In such a case, network traffic would communicate over the 10GbE interface rather than the Infiniband interface.

InfiniBand

The InfiniBand fabric is inherently secure as it functions as an internal backplane between different nodes with no opportunity for data leakage or compromise. This allows for secure network communications between an Exalogic application node and a storage node for example. As such, no additional security controls are recommended for use with InfiniBand on an Exalogic system. Note that this does not preclude

14

Exalogic Security – An Introduction

users from implementing other security mechanisms. For example, encryption could be implemented at the application layer and simply transported by the InfiniBand network. The critical concerns of security, quality of service and application workload isolation are dealt with in the most efficient manner possible directly in the firmware of the devices that implement the fabric, i.e., the InfiniBand fabric's native capabilities are more secure, reliable with better performance.

It is recommended that organization utilize IP subnets over the default IP over InfiniBand (IPoIB) link where network separation is desired, e.g., to separate data and applications of similar risk profiles. [When you create IP subnets, ensure that each of the interfaces per Exalogic compute node for these additional IP subnets above the default IPoIB subnet is bonded.] For additional information, see the Oracle Exalogic Enterprise Deployment Guided noted in the Reference section.

InfiniBand Partitioning

Exalogic's implementation of InfiniBand supports partitioning. An InfiniBand partition defines a group of InfiniBand nodes that are allowed to communicate with one another. Partitions can be set up for Exalogic's private InfiniBand fabric or to one's client network for EoIB using VLANs and VNICs to the edge network. IB partitioning allows users to isolate network traffic as one would do with VLAN's. Unique partitions are defined through the definition of pkeys. By enabling multiple partitions users can support more fine grained access control over the data transiting their Infiniband fabric. For example, different Exalogic compute nodes can be associated with different IB partitions. This could thus allow an Exalogic rack to support multiple compute nodes for different functions such as development, test and production and then associated with different IB partitions; effectively isolating the network traffic of each of these from one another. This is shown in the network diagram above where PCI applications are separated from other applications, each on their own partition. InfiniBand partitions are created via the assignment of partition keys. The partition key is a 16-bit hexadecimal value that defines a unique partition. When a packet arrives at a compute node, the partition key of the packet is matched with the Subnet Manager configuration. This validation prevents a compute node from communicating with another compute node outside of its partition. Note that Exadata machines only support the default Infiniband partition.

15

Exalogic Security – An Introduction

Operating Systems Exalogic supports both Linux and Solaris operating systems. Both of these operating systems are rich in security features that can be used to ensure the confidentiality, integrity and availability of the data resident on Exalogic as well as control over the administrative and operational aspects of it. Because the applications that are run on Exalogic are unique, the specific operating system controls utilized may be different from implementation to implementation. For this reason, we only provide general guidance by way of security principles, as to the use of operating system controls and do not offer a prescriptive list. Note that it is also recommended that organizations evaluate the management and administrative workload needed to implement these controls to ensure that the appropriate balance between security and usability are met. The basic security principles recommended for securing Exalogic include: •

Minimize the system by deleting unnecessary packages and services to reduce vulnerabilities



Ensure file and directory permissions are secured for need to know based access



Isolate networks and functions according to similar risk profiles



Implement a least privilege security policy and associated password rules



Support confidentiality through the use of encryption



Restrict access to special privileges and processes through the use of roles



Secure and review audit logs on a regular basis



Do not access the system via root unless absolutely necessary



Ensure the system is as up to date as possible and apply patches accordingly



Ensure file systems with user-writable directories are mounted on separate partitions



Ensure default user ID and passwords are modified as soon as practical

Hardening / Minimization

Hardening and minimization represents a security strategy to reduce the overall attack surface of an operating system, that is, make it less susceptible to threats that may compromise the security and integrity of the operating system functions as well as the data being processed. (Hardening is the securing of system and other resources through the use of access control and other methods. Minimization is the removal of unnecessary programs and functions.) All hardware including application compute nodes, storage nodes and network switches are recommended to be hardened such that they implement a need to know and least privilege security policy. This can be accomplished through different means but should only be undertaken after an organization performs a risk analysis of their IT infrastructure and determines what functionality and system functions are required to enable the underlying business application systems to perform their defined tasks. Because different applications may require different functionality and services from the operating system, more specific hardening and minimization recommendation are beyond the scope of this paper. A

16

Exalogic Security – An Introduction

review of the most applicable controls relevant to securing an Exalogic system is described in brief below. Note that this is not an exhaustive list and further, such controls must be implemented in a mutually beneficial manner according to a defined security architecture.

Both supported operating systems can be hardened and minimized using various scripts and tools. Specific guidance on hardening and minimization can be found in the documentation found in the reference section below. These offer recommendations in areas such as: discretionary access controls, general security, file and directory permissions, system access, network services, network based authentication, restriction of services, logging, tools and backup. All of these topics should be considered when hardening a UNIX based system and tailored according to the needs of a particular organization.

Operating System Data Confidentiality

Data confidentiality applies to protecting data in transit over a network or at rest in storage, from unauthorized disclosure, typically using encryption technology. Within the operating systems of Exalogic, this primarily applies to system management functions performed by administrators. Administrative communications issued by system administrators, database administrators and others should be encrypted. In Exalogic, such administrative information may be used to access server or storage systems via Oracle Embedded Integrated Lights Out Manager (ILOM), directly via Ethernet ports on those systems or via the Oracle Enterprise Manager / Ops Center. [The InfiniBand switches incorporated into Exalogic may also be accessed via Ethernet ports.] It is recommended that for ensuring confidentiality over administrative functions within the scope of managing the operating systems on Exalogic, all administrative functions should be encrypted using secure protocols such as SSL or SSH.

ILOM

Integrated Lights Out Management (ILOM) is used for remote systems management. ILOM comes preconfigured on all Exalogic systems. ILOMs are used by system administrators to manage systems and require confidentiality when commands are issued. It is recommended that ILOMs be secured using SSH to ensure the confidentiality of administrative actions.

17

Exalogic Security – An Introduction

Separation of Duties

Separation of duties for system administrators is used to reduce the risk of fraud, collusive behavior and prevent inadvertent errors. Separation of duties is a technique for ensuring that no single user or administrator can perform more functions than necessary to complete their assigned duties. It is recommended that a security policy of least privilege be implemented while configuring an Exalogic system. Separation of duties should be enforced at the operating system whether Oracle Linux or Oracle Solaris are used. Technologies used for enforcing separation of duties should be used in concert with logging of all privileged actions. It is recommend that no privileged action be executed anonymously (i.e. using “root” account) and every privileged action should be logged using the syslog facility. Both operating systems used in the Exalogic nodes (Oracle Linux and Oracle Solaris) allow enforcing separation of duties as described below. In Oracle Linux sudo is recommended for all privileged operations. Here are several recommendations for using sudo in Oracle Linux: •

Configure /etc/sudoers file so that users with administrative responsibilities on the operating system will have access to the appropriate commands used to fulfill those responsibilities.



Do not use the ALL keyword when configuring /etc/sudoers, be specific about the rights you grant to certain users.



Use a separate file for logging sudo events; do not mix sudo messages with other system messages. Use logfile directive for that purpose.



Use groups instead of individual users to simplify the management of privileged operations.



Use the secure_path directive to make sure you execute commands from the trusted path.



If your system has SELinux configured sudo can use its roles in /etc/sudoers file.

In systems where Oracle Solaris is the base operating system, sudo can be used as well. Additionally, Solaris has a flexible Role Base Access Control (RBAC) subsystem. RBAC is deeply integrated into the Solaris kernel which makes it very robust from a security standpoint. Solaris RBAC uses concept of roles to avoid executing commands as root user as much as possible. In Solaris 11 default installations root exists only as a role, i.e., one cannot login as root. These security features eliminate the anonymous execution of privileged commands and access to system files.

18

Exalogic Security – An Introduction

Oracle Virtual Machine

Oracle VM is an enterprise class server virtualization solution that allows organizations to separate applications and operating system instances from one another on the same physical machine. Oracle VM delivers virtualization through the use of a hypervisor that enables the support of multiple domains within which an organization can isolate and run their applications. The hypervisor runs directly on the hardware serving as the abstraction layer for all hardware operations from the guest OS such as CPU, I/O, and disk requests. By separating the guest VMs from the hardware, the hypervisor is able to run multiple operating systems securely and independently. This has the security benefit of ensuring the isolation of data and processes such that only those users, applications and other entities that are authorized to access specific data and processes can do so. Organization that desire to comply with PCI for example, and as illustrated in diagram 3, benefit from using Oracle VM to enable separation of their PCI applications from other non-PCI applications. Note that only the Exalogic guest base image for Oracle Linux UEK 5.6 64 bit is currently supported.

Additional Operational Considerations

If an organization desires more robust operational security there are additional recommendations that can be considered such as: •

Display an appropriate login banner prior to allowing any login actions.



Lock user accounts after a reasonable number (e.g., 3) failed login attempts.



Lock terminals after a period (e.g., 15 minutes) of inactivity and a password should be used to reactivate the terminal.



If any applications are continuously in use, they must not be run as root, any display terminal must be in a controlled access area, and the use of the application must have a written justification.



Regularly scan the installed Exalogic system to ensure that previously unknown threats and vulnerabilities can be discovered.



The ownership, permissions and location of files with the sgid or suid bit set should be documented.



Any world writable directories should be public directories.



The same security standards that apply to one’s production system should also apply to their development systems.



Separate file system partitions should be used for /home, /exporthome and /var where possible and exceptions documented. Rule of thumb: if it’s shared, make it a separate mount-point.

19

Exalogic Security – An Introduction

Storage The Sun 7320 ZFS Storage Appliance (ZFSSA) that is utilized by an Exalogic system offer several security related controls that we recommend. The primary controls that can be leveraged on the storage appliance include administrative controls and share access.

Administrative Controls

Administrative controls include the use of SSL or SSH to protect the communications that a system administrator has with the storage appliance. In addition, as the storage appliance runs Solaris, Solaris based controls such as user and privilege rights management supporting Role Based Access Control (RBAC) can be implemented to provide separation of duties at the administrative level.

Isolation via Shares

Access to shares [shares are filesystems and LUNs that are exported over supported data protocols to clients of the appliance] on the storage appliance can be controlled by IP address, network groups and users to provide compartmentalized data access. Fine-grained access on files and directories is managed via Access Control Lists (ACLs). An ACL describes what permissions are granted, if any, to specific users or groups. This can support the implementation of a need to know access policy and ensures that only authorized users can access specific data. It is recommended that organizations isolate data in storage by controlling access to shares by the specific IP Addresses of their compute nodes as well as through the implementation of ACL's.

Security related configuration settings

The Networking Configuration features permit creation of a variety of advanced networking setups out of physical network ports, including link-aggregations, virtual LANs (VLANs), and multipathing groups.

Diagram 4. The Sun ZFS Storage Appliance Configuration Menu

20

Exalogic Security – An Introduction

Several security related recommendations can be considered such as: •

Access to the ZFSSA is enabled via the Cisco Ethernet management switch – 1GbE management network and physical network connections are in place.



Ensure port 215 on the ZFSSA is open for browser user interface access and to enable the use of the SSH client.



The Sun ZFS Storage 7320 appliance within Exalogic has four 1 Gigabit Ethernet ports. In the current configuration two ports are used for managing the ZFSSA. Optionally ports can be setup for disaster recovery purposes. Disabling the management options on the two ports used for replication ensures the separation of the replication traffic from the management traffic. See Disaster Recovery for Exalogic Elastic Cloud as noted in the reference section for additional details.



The replication control protocol used in ZFSSA is secured with SSH. Data can optionally be protected with SSL as well. Always enable SSL when replication is across a wide-area-network.



Any user on the operating system of an Exalogic compute node should have the same user ID as the user created on the storage appliance while creating a new file system. For example, one can use account “weblogic” to perform WebLogic Server product installation and configuration tasks. Do not perform these tasks as a root user. The user “weblogic” should have read-write permissions to relevant shares.



Ensure that the shares created on ZFSSA are mounted using the nfsv4 protocol. Mount options to mount file systems are specified by /etc/fstab entries. Recommended settings need to be as detailed in Oracle Exalogic Enterprise Deployment Guide.



Ensure DNS service is online on ZFSSA to allow mapping NFSv4 user and group identities based on DNS domain name. See the diagram below for the recommended directory and system settings.

Diagram 5. Exalogic Directory and System Settings



Setup of an appropriate directory server such as Active Directory or LDAP and access to these servers from ZFSSA need to be secured. Alternately, Network Information Service (NIS) name service for centralized management can be setup. If used, the NIS server must be setup on Exalogic

21

Exalogic Security – An Introduction

compute nodes to allow for file permissions to be reflected correctly with user and group permission on ZFSSA shares. •

The ZFSSA also supports Kerberos network authentication mechanism. The NTP service must be configured before configuring Kerberized NFS. After setting NFS properties for Kerberos, change the Security mode on the shares to a mode using Kerberos.



To secure your storage shares ensure that FTP & HTTP share modes are set to none (neither read only nor read/write).



Ensure that NTP server system setting on ZFSSA specifies NTP authentication keys. These keys are not used to encrypt traffic, and they are not used to authenticate the client; they are only used by the NTP client (i.e., the appliance) to authenticate the NTP server. To associate a private key with an NTP server, the private key must first be specified.



After the keys have been specified, an NTP server can be associated with a particular private key. For a given key, all of the key number, key type and private key values must match between client and server for an NTP server to be authenticated.

Systems Management

The systems management controls noted in this section play a support role for security on an Exalogic system. These should be considered when implementing Exalogic to ensure that it is implemented, managed and maintained in a secure state.

Operational Security

A comprehensive change control and patch management process should be implemented to ensure that an Exalogic system has patches and changes applied in a timely manner. It is assumed that an organization's existing change control and patch management capabilities would be leveraged. The use of an automated enterprise management system such as the Oracle Enterprise Manager in conjunctions with Oracle Ops Center are useful for implementing change control and patch management. Note that a change control and patch management process as well as other operational processes should exist within a security governance framework such as those described in ISO or ITIL. For examples the ISO standards 27001 recommends an Information Security Management System (ISMS) as the vehicle for designing, implementing and managing an organization’s security policies and procedures.

22

Exalogic Security – An Introduction

Monitoring and Management

Monitoring and managing an Exalogic environment should be done in a holistic and integrated fashion. It is recommended that you set up and use a monitoring and management system such as Oracle Enterprise Manager to more efficiently monitor and manage operating systems, software components, including Oracle WebLogic domains, application deployments, Coherence Clusters, and hosts. If used, Oracle Enterprise Manager Grid Control requires an Oracle Enterprise Management Agent and the Oracle Management Service (OMS). A single Oracle Enterprise Management Agent, required as Master Agent, is installed on the Sun ZFS Storage 7320 appliance. This master agent, which is on the shared storage, is used by all compute nodes in the Oracle Exalogic machine. To ensure that controls are applied in a consistent and comprehensive manner, Enterprise Manager and Oracle Ops Center (or equivalents) are recommended to be used to monitor and manage hardware, automate patch management and support configuration and compliance reporting. This is especially important as controls such as those applied to the different operating system instances across multiple nodes can be managed much more effectively and efficiently using these facilities.

Patch Management

Patch management is a key element of any organization’s best practices for their application deployments. It is important to apply recommended patches periodically; recommended patches typically contain critical bug fixes including updates that address security vulnerabilities. A number of independently patchable hardware and software components come together in an Exalogic rack, all engineered to work together in an optimized manner. To ensure that the Exalogic system continues to perform optimally, Oracle provides comprehensive and well-tested patches to the system as a whole periodically. An Exalogic Patch Set Update (EL PSU) is released quarterly with the following features: •

The patch set update is a single download that contains patches for all Exalogic components (firmware/software/OS) as necessary



The patch set update is a highly recommended update for all Exalogic customers



In addition to patches/updates for the Exalogic Infrastructure components (on-node components such as Operating System, ILOM, InfiniBand and RAID controller cards, and off-node components such as InfiniBand switches and ZFS Storage Appliance), patches for middleware components (WLS, Coherence, JDK) are included as well.

Exalogic customers should ensure that they align their systems with Oracle’s Exalogic releases and recommended patch levels and should refrain from applying patches which are outside of recommendations for Exalogic. For instance, if a new version of the ZFS Storage Appliance software is released and is not part of an Exalogic recommended patch or PSU, customers should not uptake it for their racks, since it may adversely affect not only functionality but also performance of the Exalogic Engineered System.

23

Exalogic Security – An Introduction

Oracle Traffic Director

The Oracle Traffic Director (OTD) is a layer 7 load balancer. It can be used to front end application and web servers in an Exalogic environment as illustrated in diagram 3 above. OTD also support SSL and can be used as the primary landing or termination point for encrypted network traffic. The recommended implementation for OTD is in a high availability or HA configuration. From a security standpoint OTD currently offers two primary features: Reverse proxy. By serving as an intermediary between clients outside the network and servers in the back end, Oracle Traffic Director masks the names of servers in the back end and provides a single point for tracking client access to multiple servers in the back end. A reverse proxy functions as a forwarding agent and provides the benefit of essentially hiding the Exalogic internal network from outside of its perimeter. Support for SSL 3.0 and TLS 1.0. You can configure SSL/TLS-enabled HTTP listeners for Oracle Traffic Director instances, using either certificates issued by commercial CAs such as VeriSign or RSA- and ECCtype self-signed certificates with key sizes of up to 4096 bits. SSL and TLS provide for the confidentiality of data transiting the network through the use of encryption.

Conclusion As delivered, Exalogic is a robust system that has a great deal of inherent security. Such security allows Exalogic to be used for mission critical applications and the processing of sensitive information. This paper has provided the introduction of security as a critical component of an Exalogic system. Organizations should consider their current security maturity level, their current threat profile and trust model to determine if their existing security architectures is satisfactory and how an Exalogic system would exist in that environment; and then apply additional security as is warranted.

24

Exalogic Security – An Introduction

References

1.

Oracle Fusion Middleware Exalogic Machine Owner's Guide EL X2-2

2.

Oracle Fusion Middleware Exalogic Enterprise Deployment Guide EL X2-2

3.

Sun ZFS Storage 7000 Appliance Installation Guide

4.

Sun ZFS Storage 7000 Appliance Administration Guide

5.

Sun Network QDR InfiniBand Gateway Switch Administration Guide

6.

The Center for Internet Security: Security Configuration Benchmark for Red Hat Enterprise Linux 5 V 1.1.2, 2009

7.

The Center for Internet Security: Security Configuration Benchmark for Solaris 10 11/06 through 10/09 V 5.0.0, 2010

8.

Defense Information Systems Agency UNIX Security Technical Implementation Guide, Version 5, Release 1, 2006

9.

National Security Agency (NSA) Guide to Secure Configuration of Red Hat Enterprise Linux 5 Revision 4.1, 2011

10. Oracle Exalogic Elastic Cloud: A Brief Introduction, 2010 11. Oracle VM 3: Architecture and Technical Overview, 2011

25

Exalogic Security

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. This document is provided for information purposes only and the

June, 2012

contents hereof are subject to change without notice. This document is not warranted to be error-free, nor subject to any other

Author: Joel Weise

warranties or conditions, whether expressed orally or implied in law, including implied warranties and conditions of merchantability or fitness for a particular purpose. We specifically disclaim any liability with respect to this document and no contractual obligations are

Contributors: Teju Ajani, Pavel Anni, Latha Krishnaswamy, Dev Prabhu, Richard Wark

formed either directly or indirectly by this document. This document may not be reproduced or transmitted in any form or by any means, electronic or mechanical, for any purpose, without our prior written permission.

Version: 1.0 Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners. Oracle Corporation World Headquarters

AMD, Opteron, the AMD logo, and the AMD Opteron logo are trademarks or registered trademarks of Advanced Micro Devices.

500 Oracle Parkway

Intel and Intel Xeon are trademarks or registered trademarks of Intel Corporation. All SPARC trademarks are used under license

Redwood Shores, CA 94065

and are trademarks or registered trademarks of SPARC International, Inc. UNIX is a registered trademark licensed through X/Open

U.S.A.

Company, Ltd. 1010

Worldwide Inquiries: Phone: +1.650.506.7000 Fax: +1.650.506.7200 oracle.com

Suggest Documents