当前位置:  数据库>oracle

配置sqlnet.ora 限制IP访问Oracle

    来源: 互联网  发布时间:2017-05-25

    本文导语: --==========================-- 配置sqlnet.ora 限制IP访问Oracle--========================== 与防火墙类似的功能,Oracle 提供限制与允许特定的IP或主机名通过Oracle Net来访问数据库。这个功能由sqlnet.ora配置文件来实现。该文件通常$ORACLE_HOME/network/...

--==========================
-- 配置sqlnet.ora 限制IP访问Oracle
--==========================

与防火墙类似的功能,Oracle 提供限制与允许特定的IP或主机名通过Oracle Net来访问数据库。这个功能由sqlnet.ora配置文件来实现。该文件通常$ORACLE_HOME/network/admin/ 目录下,与tnsnames.ora以及listener.ora位于同一路径。用法也比较简单。通过监听器的限制,实现轻量级访问限制,比在数据库内部通过触发器进行限制效率要高。

1. 实现方式

通过在sqlnet.ora文件中增加下列记录来实现

tcp.validnode_checking = yes                           
tcp.invited_nodes = (hostname1, hostname2,ip1,ip2)   
tcp.excluded_nodes = (10.103.11.17,hostname1,hostname2) 

当使用invited_nodes时,则所有没有包含在invited_nodes值中的IP或主机将无法通过Oracel Net连接到数据库。而如果使用

excluded_nodes时,除了excluded_nodes值中列出的IP和主机不可访问之外,其余的节点都可以访问数据库。通常情况下,更倾向于使

用excluded_nodes参数。

2. 注意事项

使用excluded_nodes与invited_nodes的一些特性
不支持通配符的使用(如hostname不能写为svhs0*,IP地址不能写为10.103.11.*)
excluded_nodes与invited_nodes为互斥方式,要么使用前者,要么使用后者
如果tcp.invited_nodes与tcp.excluded_nodes都存在,则tcp.invited_nodes优先
要将本地地址,或者Cluster群集其他节点的地址都加入到允许列表,否则监听器可能无法启动
修改之后,一定要重起监听或reload才能生效,而不需要重新启动数据库
仅提供对TCP/IP协议的支持

3. 实战演习   

-->使用tnsping demo92,连接正常                                                                         
 C:>tnsping demo92                                                                                   
                                                                                                       
 TNS Ping Utility for 32-bit Windows: Version 11.2.0.1.0 - Production on 25-JUN-2011 18:55:39         
 Copyright (c) 1997, 2010, Oracle.  All rights reserved.                                               
 Used parameter files:                                                                                 
 d:appRobinsonOracle_clientproduct11.2.0client_1networkadminsqlnet.ora                       
                                                                                                       
 Used TNSNAMES adapter to resolve the alias                                                           
 Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 10.103.11.20 
 9)(PORT = 1521))) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = demo92)))                     
 OK (0 msec)                                                                                         
                                                                                                       
-->查看配置文件                                                                                         
 [oracle@test admin]$ more sqlnet.ora                                                                 
 # SQLNET.ORA Network Configuration File: /oracle/92/network/admin/sqlnet.ora                         
 # Generated by Oracle configuration tools.                                                           
                                                                                                       
 NAMES.DIRECTORY_PATH= (ONAMES, TNSNAMES, HOSTNAME)                                                   
                                                                                                       
 #Added by Robinson                                                                                   
 tcp.validnode_checking = yes                                                                         
 tcp.excluded_nodes = (10.103.11.17)                                                                   
                                                                                                       
-->重新reload                                                                                           
 [oracle@test admin]$ lsnrctl reload listener_demo92                                                   
                                                                                                       
 LSNRCTL for Linux: Version 9.2.0.8.0 - Production on 26-JUN-2011 10:03:11                             
                                                                                                       
 Copyright (c) 1991, 2006, Oracle Corporation.  All rights reserved.                                   
                                                                                                       
 Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=test)(PORT=1521)))                           
 The command completed successfully                                                                   
                                                                                                       
-->再次tnsping时,收到TNS-12547错误                                                                     
 C:>tnsping demo92                                                                                   
                                                                                                       
 TNS Ping Utility for 32-bit Windows: Version 11.2.0.1.0 - Production on 25-JUN-2011 19:01:21         
 Copyright (c) 1997, 2010, Oracle.  All rights reserved.                                               
 Used parameter files:                                                                                 
 d:appRobinsonOracle_clientproduct11.2.0client_1networkadminsqlnet.ora                       
                                                                                                       
 Used TNSNAMES adapter to resolve the alias                                                           
 Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 10.103.11.20 
 9)(PORT = 1521))) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = demo92)))                     
 TNS-12547: TNS:lost contact                                                                           
                                                                                                       
-->下面的演示中如果excluded_nodes与invited_nodes都存在,则invited_nodes优先,不再演示                   
 [oracle@test admin]$ more sqlnet.ora                                                                 
 # SQLNET.ORA Network Configuration File: /oracle/92/network/admin/sqlnet.ora                         
 # Generated by Oracle configuration tools.                                                           
                                                                                                       
 NAMES.DIRECTORY_PATH= (ONAMES, TNSNAMES, HOSTNAME)                                                   
                                                                                                       
 #Added by Robinson                                                                                   
 tcp.validnode_checking = yes                                                                         
 tcp.excluded_nodes = (10.103.11.17)                                                                   
 tcp.invited_nodes = (10.103.11.17)                                                                   


    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • C++ Strings(字符串) 成员 get_allocator():返回配置器
  • LINUX如何配置网卡,配置TELNET,急!在线等待!
  • C++ MultiMaps 成员 get_allocator():返回multimap的配置器
  • liunx下配置axis2的环境变量怎么配置
  • C++ Lists(链表) 成员 get_allocator():返回list的配置器
  • centos配置JAVA运行环境在配置JK时出错
  • C++ Maps 成员 get_allocator():返回map的配置器
  • 求xmanager3.0 配置root用户,连接redhat linux 6.0 配置文档
  • C++ Double Ended Queues(双向队列) 成员 get_allocator():返回双向队列的配置器
  • 高分求救!!!怎样在linux下配置tomcat文件?同时配置sqlServer数据库?
  • kohana介绍及安装配置方法
  • EJB配置好了,下次启动weblogic的时候还需要重新配置吗
  • Myeclipse中自带Tomcat的JDBC连接池配置(mysql和mssql)
  • 高手赐教!Tomcat4.02的配置,不知javaBean目录、servlet目录该如何配置?
  • centos6网络配置及网卡设置相关命令及配置文件
  • 请问JDBC 需要配置吗?如要,如何配置??来者送分!!!
  • Linux内核中影响tcp三次握手的一些协议配置
  • 请问该如何配置GTK的字体配置文件??
  • java tomcat实现Session对象的持久化原理及配置方法介绍
  • 何处有 Linux 内核编译配置详细的中文介绍? 我在重新配置编译时老是出错:-(
  • php中内置的mysql数据库连接驱动mysqlnd简介及mysqlnd的配置安装方式
  • 安装linux的最低配置:硬盘,内存,以及cpu的最低配置?多谢赐教!


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,