可以通过修改sqlnet.ora文件来限制某些IP地址的访问,修改完成后,可能需重启监听生效。(可以lsnrctl reload)
如果$ORACLE_HOME/network/admin/目录下没有sqlnet.ora文件,可以从samples目录下拷贝个sqlnet.ora或者直接vi
注意:第一次新生成sqlnet.ora文件后,必须重启监听才会生效,之后再修改可以使用lsnrctl reload就能生效。
多个监听环境下先要查看监听并且在监听的start/stop/reload后加上监听的名字
查看监听名字:ps -ef|grep tns
查看监听状态:lsnrctl status 输出的HOST=后边对应的IP必须要出现在白名单中(如果使用白名单的话)
1、编辑sqlnet.ora
内容为:
NAMES.DIRECTORY_PATH= (TNSNAMES,EZCONNECT)
ADR_BASE = /oracle/app/oracle -------这个指定的是对应的日志输出目录
###########二选一##############
#允许访问的IP(白名单)
TCP.INVITED_NODES=(192.168.1.211,192.168.56.109,ip2,ip3,..,..本地IP..)若使用白名单,必须有本地IP,否则监听会起不来
#不允许访问的IP(黑名单)
#TCP.EXCLUDED_NODES=(192.168.56.101)
#检测上述参数的设置
TCP.VALIDNODE_CHECKING=yes (这个参数是必须的)
2、重启监听或者reload
第一次配置:停:lsnrctl stop(多监听 lsnrctl stop LISTENER_NAME)
启:lsnrctl start (多监听 lsnrctl start LISTENER_NAME)
非第一次配置:lsnrctl reload (多监听 lsnrctl reload LISTENER_NAME)
3、测试:再被隔离的IP主机上或者允许的IP主机测试
TNSNAMES方式: sqlplus zhoushuai/zhoushuai@orcl11g_t
EZCONNECT方式: sqlplus zhoushuai/zhoushuai@192.168.1.211:1521/orcl11g (语法:sqlplus user/passwd@IP:port/service_name)
HOSTNAME方式: sqlplus zhoushuai/zhoushuai@db2:1521/orcl11g
NOTE:
1、#允许访问的ip tcp.invited_nodes =(ip1,ip2,……)
#不允许访问的ip tcp.excluded_nodes=(ip1,ip2,……)
TCP.INVITED_NODES:设置允许访问数据库的IP地址列表,当这个参数和TCP.EXCLUDED_NODES设置的地址相同的时候将覆盖TCP.EXCLUDED_NODES设置。
也可以指定相应的IP段可以访问或者不能访问。如tcp.invited_nodes =(192.168.56.*,192.168.1.*)
2、 NAMES.DIRECTORY_PATH= (TNSNAMES,EZCONNECT) --Default: TNSNAMES,ONAMES,HOSTNAME。
tnsname指定客户端的先找tnsnames.ora的配置,其他不配也能好使(至少我实验是可以的)
3、TCP.VALIDNODE_CHECKING=yes (这个参数是必须的)#检测上述参数的设置
4、ADR_BASE = /oracle/app/oracle --Default: $ORACLE_HOME ($ORACLE_HOME=/oracle at customer site) 个人感觉不用配置默认就行
需要注意的问题(转改):
1、 需要设置参数为YES,这样才能激活。
2、 建议设置允许访问的IP,因为IP地址有可能被随意修改,就不能起到自己的目的。
3、 TCP当参数TCP.INVITED_NODES和TCP.EXCLUDED_NODES设置的地址相同的时候将覆盖TCP.EXCLUDED_NODES设置。
4、 第一次配置需要重启监听器才能生效。
5、 这个方式只是适合TCP协议。
6、 这个配置适用于9i以上版本。在9i之前的版本使用文件protocol.ora。
7、 在服务器上直接连接数据库不受影响。
8、 这种限制方式是通过监听器来限制的。
9、 这个限制只是针对IP检测,对于用户名检测事不支持的。
10、使用触发器(通过监听器的限制,通常属于轻量级的,比在数据库内部通过触发器进行限制效率要高)
11、注意RAC的时候注意监听的路径是grid下的
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/31043804/viewspace-2120952/
,如需转载,请注明出处,否则将追究法律责任。