su - oracle
cd $ORACLE_HOME/network/admin/
vi sqlnet.ora
#开启ip限制功能
tcp.validnode_checking = yes
#允许访问数据库的IP地址列表,多个IP地址使用逗号分开
tcp.invited_nodes = (192.168.40.220, 192.168.40.221)
#禁止访问数据库的IP地址列表,多个IP地址使用逗号分开
#tcp.excluded_nodes=(192.168.1.111)
重启监听
lsnrctl restart
lsnrctl reload
当不允许访问的客户端连入时,会出现下列错误
sys/oracle@approd.test as sysdba
ERROR:
ORA-12537: TNS:connection closed
Warning: You are no longer connected to ORACLE.
场景2:RAC
配置sqlnet.ora
如果基于root账号与应用账号权限分离,出于oracle设置会更为方便维护,要在oracle数据库层面实现黑白名单进行访问控制,可通过配置sqlnet.ora 文件进行控制,若该文件有则进行编辑,若无则直接新建。