9.4.3 Managing Oracle Net Listener Security
By default, Oracle Net Listener permits only local administration for security reasons. As a policy, the listener can be administered only by the user who started it. This is enforced through local operating system authentication.
lsnrctl
For example, if user1
starts the listener, then only user1
can administer it. Any other user trying to administer the listener gets an error. The super user is the only exception.
Oracle recommends that you perform listener administration in the default mode (secure by means of local operating system authentication), and access the system remotely using a remote login. Oracle Enterprise Manager Cloud Control can also be used for remote administration.
Connections coming to listener on an IP (TCP, TCPS, and SDP) based endpoint with firewall functionality enabled, go through service ACL validation. The listener after receiving the service name validates the connection IP with ACL list.
A new attribute FIREWALL is added in the endpoint to enable firewall functionality.
(ADDRESS=(PROTOCOL=TCP)(HOST=)(PORT=1521)(FIREWALL=ON))
You can configure the FIREWALL
parameter as follows:
-
(FIREWALL=ON)
is explicitly set in endpoint: This enables strict ACL validation of all connections coming on this endpoint. If no ACLs are configured for a service, all connections are rejected for that service. -
FIREWALL
is not set in endpoint: This implies relaxed validation. If ACL is configured for a service, validation is done for that service. In the absence of ACLs, no validation is done and all connections for that service are accepted. -
(FIREWALL=OFF)
is set in endpoint: No validation is done and all connections are accepted from this endpoint.
The server also enforces the ACLs.
The DBMS_SFW_ACL_ADMIN
package provides interfaces for administering and managing the access control policies.
Related Topics
Parent topic: Customizing Oracle Net Listener Configuration
9.4.3.1 Specifying Valid Nodes and Subnets
Listener registration should be restricted to valid nodes and subnets. Valid nodes and subnets can be specified for registration, and excluded nodes can also be specified for registration. By default, every incoming connection for registration at the listener is subjected to IP-based filtering. A connection is only allowed if it originates from the local machine. If the other nodes and subnets are specified for registration, then the local machine and the ones specified are allowed. The following parameters can be set in the listener.ora
file to specify valid and restricted nodes and subnets:
-
REGISTRATION_INVITED_NODES_listener_name
: Specifies the nodes that can register with the listener. The list can be host names, or CIDR notation for IPv4 and IPv6 addresses. Presence of a host name in the list results in all IP addresses mapped to it being invited. -
REGISTRATION_EXCLUDED_NODES_listener_name
: Specifies the nodes that cannot register with the listener. Nodes not specified on the list are allowed to register with the listener.
If both parameters are set, then REGISTRATION_EXCLUDED_NODES_listener_name
is ignored.
By default, the SCAN listener agent sets REMOTE_ADDRESS_REGISTRATION_listener_name
to a private IP endpoint. The SCAN listener accepts registration requests only from the private network. Remote nodes that are not accessible to the private network of the SCAN listener must be included in the list of valid nodes by using the registration_invited_nodes_alias
parameter in the listener.ora
file, or by modifying the SCAN listener using the command-line interface, SRVCTL.
Note:
Starting with Oracle Grid Infrastructure 12c, for a SCAN listener, if theVALID_NODE_CHECKING_REGISTRATION_listener_name
and REGISTRATION_INVITED_NODES_listener_name
parameters are set in the listener.ora
file, then the listener agent overwrites these parameters.
If you use the SRVCTL utility to set the invitednodes
and invitedsubnets
values, then the listener agent automatically sets VALID_NODE_CHECKING_REGISTRATION_listener_name
to SUBNET and sets REGISTRATION_INVITED_NODES_listener_name
to the specified list in the listener.ora
file.
For other listeners managed by CRS, the listener agent sets VALID_NODE_CHECKING_REGISTRATION_listener_name
to be SUBNET in the listener.ora
file only if it is not already set in the listener.ora
file. The SRVCTL utility does not support setting the invitednodes
and invitedsubnets
values for a non-SCAN listener. The listener agent does not update REGISTRATION_INVITED_NODES_listener_name
in the listener.ora
file for a non SCAN listener.
See Also:
Oracle Database Net
Services Reference for more information about the VALID_NODE_CHECKING_REGISTRATION_listener_name
, REGISTRATION_INVITED_NODES_listener_name
, and REGISTRATION_EXCLUDED_NODES_listener_name
parameters
Parent topic: Managing Oracle Net Listener Security