`
guochongcan
  • 浏览: 326968 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

通过SQLNET.ora文件实现地址访问限制

阅读更多

在Oracle数据库中,我们可以通过SQLNET.ora文件实现地址访问限制。

在SQLNET.ora文件中设置以下参数可以实现IP访问限制:

tcp.validnode_checking=yes 

#允许访问的IP
tcp.invited_nodes=(ip1,ip2......) 

#禁止访问的IP
tcp.excluded_nodes=(ip1,ip2......)


在未设置这些参数前,测试数据库可以正常访问:

D:\>tnsping eygle

TNS Ping Utility for 32-bit Windows: Version 10.2.0.3.0 - Production on 28-1月 -2008 14:52:52

Copyright (c) 1997, 2006, Oracle.  All rights reserved.

已使用的参数文件,:
C:\oracle\10.2.0\network\admin\sqlnet.ora

已使用 TNSNAMES 适配器来解析别名
Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.33.11)(PORT = 1521))) (CONNECT_DATA = (SERVICE_NAME = eygle)))
OK (30 毫秒)


当设置参数之后:

[oracle@jumper admin]$ cat sqlnet.ora
# SQLNET.ORA Network Configuration File: /opt/oracle/product/9.2.0/network/admin/sqlnet.ora
# Generated by Oracle configuration tools.

NAMES.DIRECTORY_PATH= (TNSNAMES, ONAMES, HOSTNAME)

tcp.validnode_checking=yes
tcp.invited_nodes=(172.16.33.11,172.16.34.89)


重新启动监听器使设置生效:

[oracle@jumper admin]$ lsnrctl start

LSNRCTL for Linux: Version 9.2.0.4.0 - Production on 28-JAN-2008 14:42:01
Copyright (c) 1991, 2002, Oracle Corporation.  All rights reserved.
Starting /opt/oracle/product/9.2.0/bin/tnslsnr: please wait...

TNSLSNR for Linux: Version 9.2.0.4.0 - Production
System parameter file is /opt/oracle/product/9.2.0/network/admin/listener.ora
Log messages written to /opt/oracle/product/9.2.0/network/log/listener.log
Trace information written to /opt/oracle/product/9.2.0/network/trace/listener.trc
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=172.16.33.11)(PORT=1521)))

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=172.16.33.11)(PORT=1521)))
STATUS of the LISTENER
------------------------
Alias                    LISTENER
Version                  TNSLSNR for Linux: Version 9.2.0.4.0 - Production
Start Date                28-JAN-2008 14:42:01
Uptime                    0 days 0 hr. 0 min. 0 sec
Trace Level              support
Security                  ON
SNMP                      OFF
Listener Parameter File  /opt/oracle/product/9.2.0/network/admin/listener.ora
Listener Log File        /opt/oracle/product/9.2.0/network/log/listener.log
Listener Trace File      /opt/oracle/product/9.2.0/network/trace/listener.trc
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=172.16.33.11)(PORT=1521)))
Services Summary...
Service "eygle" has 1 instance(s).
  Instance "eygle", status UNKNOWN, has 1 handler(s) for this service...
Service "julia" has 1 instance(s).
  Instance "eygle", status UNKNOWN, has 1 handler(s) for this service...
The command completed successfully


我们再来看客户端的访问:

D:\>tnsping eygle

TNS Ping Utility for 32-bit Windows: Version 10.2.0.3.0 - Production on 28-1月 -2008 14:53:19
Copyright (c) 1997, 2006, Oracle.  All rights reserved.

已使用的参数文件:
C:\oracle\10.2.0\network\admin\sqlnet.ora


已使用 TNSNAMES 适配器来解析别名
Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.33.11)(PORT = 1521))) (CONNECT_DATA = (SERVICE_NAME = eygle)))
TNS-12547: TNS: 丢失连接


需要注意的是一定要将本地地址,或者Cluster群集其他节点的地址都加入到允许列表,否则监听器可能无法启动。
修改参数之后,重启监听器设置即可生效。

通过监听器的限制,通常属于轻量级,比在数据库内部通过触发器进行限制效率要高。

分享到:
评论

相关推荐

    linux上的sqlnet.ora限制IP访问[借鉴].pdf

    Oracle提供了限制IP访问的功能,通过配置sqlnet.ora文件来实现。这项功能类似于防火墙的功能,限制或允许特定的IP或主机名通过Oracle Net来访问数据库。 sqlnet.ora文件通常位于$ORACLE_HOME/network/admin/目录下...

    linux上的sqlnet.ora限制IP访问.pdf

    通过配置 sqlnet.ora 文件,可以实现轻量级的访问限制,效率高于在数据库内部通过触发器进行限制。下面是配置 sqlnet.ora 文件的详细步骤: 1. 在 sqlnet.ora 文件中增加以下记录: tcp.validnode_checking = yes ...

    oracle中的sqlnet.ora+tnsnames.ora+listener.ora

    在Oracle数据库环境中,`sqlnet.ora`、`tnsnames.ora`和`listener.ora`三个文件起着至关重要的作用,分别位于Oracle安装目录下的`$HOME/network/admin`文件夹内。这三个配置文件对于建立客户端与服务端之间的通信至...

    oracle 限制IP访问.txt

    本文将详细介绍如何通过修改 `sqlnet.ora` 文件中的配置来实现这一功能。 #### 一、Oracle 数据库限制 IP 访问概述 在 Oracle 数据库中,可以通过设置 `sqlnet.ora` 配置文件来控制哪些 IP 地址可以访问数据库实例...

    oracle限制ip访问[参考].pdf

    在Oracle 9i及更高版本中,实现这一目标的关键配置文件是`sqlnet.ora`,而不是之前的`protocol.ora`。`sqlnet.ora`文件位于Oracle网络配置目录下,通常为`$ORACLE_HOME/network/admin`。 在`sqlnet.ora`文件中,有...

    oracle限制ip访问宣贯.pdf

    在Oracle 9i及更高版本中,主要通过修改`sqlnet.ora`文件来实现这一功能。本文将详细阐述如何设置和验证这一限制。 首先,我们要明白`sqlnet.ora`文件的作用。它是Oracle网络配置的一部分,用于定义客户端和服务器...

    Oracle禁用操作系统认证方式登陆及SYS远程登录

    除了禁用操作系统认证和禁止SYS远程登录外,还可以通过修改`sqlnet.ora`配置文件来限制能够连接数据库的IP地址,从而进一步提高数据库的安全性。 **具体步骤如下:** 1. **创建或修改`sqlnet.ora`文件**:如文中所...

    Oracle9i的init.ora参数中文说明

    说明: 允许数据库管理员指定 PL/SQL 文件 I/O 许可的目录。使用多个 UTL_FILE_DIR 参数即可指定多个目录。请注意所有用户均可读取或写入 UTL_FILE_DIR 参数中指定的所有文件。 值范围: 任何有效的目录路径。 ...

    Oracle配置文件详解

    此外,`sqlnet.ora`中的设置可以增强网络安全性,比如通过指定特定的认证服务来限制未经授权的访问。 在实际操作中,根据企业的具体需求,这些配置文件可能需要进行更复杂的定制,比如添加SSL加密、设置连接超时、...

    Listener知识

    监听器的配置文件主要包括`listener.ora`、`sqlnet.ora`和`tnsnames.ora`,它们位于`$ORACLE_HOME/network/admin`目录下。 1. `listener.ora`:这是监听器的主配置文件,定义了监听器要监听的网络服务名、端口和...

    ORACLE 网络 整理的资料

    2. 授权和认证:使用网络安全策略,限制非授权访问,例如通过RADIUS或LDAP实现外部认证。 总之,Oracle网络配置是数据库管理员必须掌握的关键技能之一。理解和熟练运用上述知识点,将有助于提升数据库的可用性、...

    Oracle数据库监听配置浅析与故障定位.pdf

    4. **安全性和性能配置**:通过`sqlnet.ora`文件调整客户端和服务端的安全性和性能设置,比如加密选项、最大连接数等。 #### 四、常见故障及其解决方法 ##### 4.1 连接失败 **原因分析**:客户端无法连接到数据库...

    Oracle数据库网络与安全之FAQ汇集

    对于Oracle 9i版本,可以直接编辑`sqlnet.ora`文件来实现这一目标。 **具体步骤如下:** 1. **登录触发器和CMGW:** - 登录触发器可以在用户尝试登录时执行自定义的逻辑。 - CMGW则是一个中间件层,可以过滤请求...

    配置oracle客户端

    sqlnet.ora文件控制Oracle网络通信的行为。在ORACLE_HOME/network/admin目录下编辑此文件,可以配置认证方式、超时等参数。例如,设置默认的认证方式为TCP/IP: ``` SQLNET.AUTHENTICATION_SERVICES = (NTS) NAMES....

    congos常见问题解答.pdf

    要解决这个问题,需要检查tnsnames.ora文件是否存在且配置正确,没有重复的sqlnet.ora文件,如果使用域名,确保sqlnet.ora文件包含NAMES.DEFAULT_DOMAIN参数。如果这些都确认无误,可能需要在连接字符串中显式指定...

    oralce 64bit客户端.rar

    1. **tnsnames.ora文件结构**:`tnsnames.ora`文件由多个条目组成,每个条目定义一个连接描述符,包括一个易于记忆的别名(ALIAS),以及一组连接参数。格式如下: ``` ALIAS = (DESCRIPTION = (ADDRESS = ...

    congos问题

    - 如果使用了域名,确认 sqlnet.ora 文件中包含 NAMES.DEFAULT_DOMAIN 参数。若不存在,必须在连接字符串中指定域名。 - 如果不使用域名且 NAMES.DEFAULT_DOMAIN 参数存在,则删除或注释掉该参数。 5. **检查登录...

    oracle远程连接服务器数据库图文教程

    - 为安全起见,建议使用SSL加密连接,这可以通过配置`sqlnet.ora`和`listener.ora`文件来实现。 4. **测试连接**: - 使用Oracle的SQL Developer或命令行工具SQL*Plus尝试远程连接。在SQL Developer中,创建一个...

    限制ip访问Oracle数据库的方法步骤

    本文将详细介绍三种方法来实现这一目标:通过`sqlnet.ora`配置、使用`/etc/hosts.deny`和`/etc/hosts.allow`文件以及利用`iptables`防火墙规则。 二、通过`sqlnet.ora`文件进行限制 1. 首先,关闭数据库服务器的...

    instantclient_12_2

    - TNSNAMES.ORA文件配置服务名,将易于记忆的名称映射到实际的网络连接信息,如主机、端口和服务标识符(SID)。 3. **安装与配置**: - 解压文件到指定目录,确保环境变量TNS_ADMIN指向包含tnsnames.ora的目录。...

Global site tag (gtag.js) - Google Analytics