linu上的sqlnet.ora限制IP访问

配置sqlnet.ora限制IP访问Oracle与防火墙类似的功能,Oracle提供限制与允许特定的IP或主机名通过OracleNet来访问数据库。这个功能由sqlnet.ora配置文件来实现。该文件通常$ORACLE_HOME/network/admin/目录下,与tnsnames.ora以及listener.ora位于同一路径。用法也比较简单。通过监听器的限制,实现轻量级访问限制,比在数据库内部通过触发器进行限制效率要高。1.实现通过在sqlnet.ora文件中增加下列记录来实现tcp.validnode_checking=yestcp.invited_nodes=(hostname1,hostname2,ip1,ip2)tcp.excluded_nodes=(10.103.11.17,hostname1,hostname2)当使用invited_nodes时,则所有没有包含在invited_nodes值中的IP或主机将无法通过OracelNet连接到数据库。而如果使用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.实战-->使用tnspingdemo92,连接正常C:\>tnspingdemo92TNSPingUtilityfor32-bitWindows:Version11.2.0.1.0-Productionon25-JUN-201118:55:39Copyright(c)1997,2010,Oracle.Allrightsreserved.Usedparameterfiles:d:\app\Robinson\Oracle_client\product\11.2.0\client_1\network\admin\sqlnet.oraUsedTNSNAMESadaptertoresolvethealiasAttemptingtocontact(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=10.103.11.209)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=demo92)))OK(0msec)-->查看配置文件[oracle@testadmin]$moresqlnet.ora#SQLNET.ORANetworkConfigurationFile:/oracle/92/network/admin/sqlnet.ora#GeneratedbyOracleconfigurationtools.NAMES.DIRECTORY_PATH=(ONAMES,TNSNAMES,HOSTNAME)#AddedbyRobinsontcp.validnode_checking=yestcp.excluded_nodes=(10.103.11.17)-->重新reload[oracle@testadmin]$lsnrctlreloadlistener_demo92LSNRCTLforLinux:Version9.2.0.8.0-Productionon26-JUN-201110:03:11Copyright(c)1991,2006,OracleCorporation.Allrightsreserved.Connectingto(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=test)(PORT=1521)))Thecommandcompletedsuccessfully-->再次tnsping时,收到TNS-12547错误C:\>tnspingdemo92TNSPingUtilityfor32-bitWindows:Version11.2.0.1.0-Productionon25-JUN-201119:01:21Copyright(c)1997,2010,Oracle.Allrightsreserved.Usedparameterfiles:d:\app\Robinson\Oracle_client\product\11.2.0\client_1\network\admin\sqlnet.oraUsedTNSNAMESadaptertoresolvethealiasAttemptingtocontact(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=10.103.11.209)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=demo92)))TNS-12547:TNS:lostcontact-->下面的演示中如果excluded_nodes与invited_nodes都存在,则invited_nodes优先,不再演示[oracle@testadmin]$moresqlnet.ora#SQLNET.ORANetworkConfigurationFile:/oracle/92/network/admin/sqlnet.ora#GeneratedbyOracleconfigurationtools.NAMES.DIRECTORY_PATH=(ONAMES,TNSNAMES,HOSTNAME)#AddedbyRobinsontcp.validnode_checking=yestcp.excluded_nodes=(10.103.11.17)tcp.invited_nodes=(10.103.11.17)4.使用触发器限制单用户或IP段-->限制单用户从单IP登录,下面限制scott用户从客户端的登录CREATEORREPLACETRIGGERdisableloginAFTERlogonONscott.schema-->注意使用方式为username.schemaDECLAREipaddrVARCHAR2(30);BEGINSELECTsys_context('use...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供参考,付费前请自行鉴别。
3、如文档内容存在侵犯商业秘密、侵犯著作权等,请点击“举报”。

常见问题具体如下:

1、问:已经付过费的文档可以多次下载吗?

      答:可以。登陆您已经付过费的账号,付过费的文档可以免费进行多次下载。

2、问:已经付过费的文档不知下载到什么地方去了?

     答:电脑端-浏览器下载列表里可以找到;手机端-文件管理或下载里可以找到。

            如以上两种方式都没有找到,请提供您的交易单号或截图及接收文档的邮箱等有效信息,发送到客服邮箱,客服经核实后,会将您已经付过费的文档即时发到您邮箱。

注:微信交易号是以“420000”开头的28位数字;

       支付宝交易号是以“2024XXXX”交易日期开头的28位数字。

客服邮箱:

biganzikefu@outlook.com

所有的文档都被视为“模板”,用于写作参考,下载前须认真查看,确认无误后再购买;

文档大部份都是可以预览的,笔杆子文库无法对文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;

文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为依据;

如果您还有什么不清楚的或需要我们协助,可以联系客服邮箱:

biganzikefu@outlook.com

常见问题具体如下:

1、问:已经付过费的文档可以多次下载吗?

      答:可以。登陆您已经付过费的账号,付过费的文档可以免费进行多次下载。

2、问:已经付过费的文档不知下载到什么地方去了?

     答:电脑端-浏览器下载列表里可以找到;手机端-文件管理或下载里可以找到。

            如以上两种方式都没有找到,请提供您的交易单号或截图及接收文档的邮箱等有效信息,发送到客服邮箱,客服经核实后,会将您已经付过费的文档即时发到您邮箱。

注:微信交易号是以“420000”开头的28位数字;

       支付宝交易号是以“2024XXXX”交易日期开头的28位数字。

笔杆子文秘
机构认证
内容提供者

为您提供优质文档,供您参考!

确认删除?