日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

本机器禁止访问mysql服务器_限制指定机器IP访问oracle数据库

發布時間:2023/12/8 数据库 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 本机器禁止访问mysql服务器_限制指定机器IP访问oracle数据库 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

通過使用數據庫服務器端的sqlnet.ora文件可以實現禁止指定IP主機訪問數據庫的功能,這對于提升數據庫的安全性有很大的幫助,與此同時,這個技術為我們管理和約束數據庫訪問控制提供了有效的手段。

下面是實現這個目的的具體步驟僅供參考:

1.默認的服務器端sqlnet.ora文件的內容

# sqlnet.ora Network Configuration File: D:\Server\Oracle\Product\11.2.0\dbhome_1\network\admin\sqlnet.ora

# Generated by Oracle configuration tools.

# This file is actually generated by netca. But if customers choose to

# install "Software Only", this file wont exist and without the native

# authentication, they will not be able to connect to the database on NT.

SQLNET.AUTHENTICATION_SERVICES= (NTS)

NAMES.DIRECTORY_PATH= (TNSNAMES)

2.確認客戶端的IP地址:

C:\Documents and Settings\Administrator>ipconfig

3.在客戶端分別使用tnsping命令和sqlplus命令來驗證數據庫的連通性:

C:\Documents and Settings\Administrator>tnsping irmdb

C:\Documents and Settings\Administrator>sqlplus /nolog

到這里說明在客戶端兩種方式都證明的數據庫的可連通性。

4.限制客戶端IP地址9.123.112.16對當前irmdb數據庫的訪問:

我們只需要在服務器端的sqlnet.ora文件中添加下面的內容即可。

# sqlnet.ora Network Configuration File: D:\Server\Oracle\Product\11.2.0\dbhome_1\network\admin\sqlnet.ora

# Generated by Oracle configuration tools.

# This file is actually generated by netca. But if customers choose to

# install "Software Only", this file wont exist and without the native

# authentication, they will not be able to connect to the database on NT.

SQLNET.AUTHENTICATION_SERVICES= (NTS)

NAMES.DIRECTORY_PATH= (TNSNAMES)

tcp.validnode_checking=yes

tcp.invited_nodes=(9.123.112.34)

tcp.excluded_nodes=(9.123.112.16)

第一行的含義:開啟IP限制功能;

第二行的含義:允許訪問數據庫的IP地址列表,多個IP地址使用逗號分開,此例中我們寫入數據庫服務器的IP地址;

第三行的含義:禁止訪問數據庫的IP地址列表,多個IP地址使用逗號分開,此處我們寫入欲限制的IP地址9.123.112.16。

5.重新啟服務器端listener后生效(這里也可以通過lsnrctl reload方式實現):

C:\Documents and Settings\Administrator>lsnrctl stop

1)在9i中真正起作用的是sqlnet.ora文件,我們修改sqlnet.ora其實是最好最快的方法。

在soracle\product\10.2.0\db_1\network\ADMIN\qlnet.ora中增加如下部分

tcp.validnode_checking=yes

#允許訪問的IP

tcp.invited_nodes=(ip1,ip2……)

#禁止訪問的IP

tcp.excluded_nodes=(ip1,ip2……)

之后重新啟動監聽器即可

需要注意的地方:

1、tcp.invited_nodes與tcp.excluded_nodes都存在,以tcp.invited_nodes為主

2、一定要許可或不要禁止服務器本機的IP地址,否則通過lsnrctl將不能啟動或停止監聽,因為該過程監聽程序會通過本機的IP訪問監聽器,而該IP被禁止了,但是通過服務啟動或關閉則不影響。

3、修改之后,一定要重起監聽才能生效,而不需要重新啟動數據庫

4、任何平臺都可以,但是只適用于TCP/IP協議

(2)第二種方法使用觸發器實現

1、這個觸發器實現了192.168.137開始的IP不能訪問test用戶的功能

create or replace trigger chk_ip

after logon on test.schema

declare

ipaddr VARCHAR2(30);

begin

select sys_context('userenv', 'ip_address') into ipaddr from dual;

if ipaddr like ('192.168.137.%') then

raise_application_error('-20001', 'you can not logon by test');

end if;

end ;

/

過對oracle9i參數文件的設置,可以控制訪問計算機的ip地址。

在172.28.65.13這臺機器上的配置文件$ORACLE_HOME/network/sqlnet.ora中增加:

#開啟對ip地址的檢查

tcp.validnode_checking=yes

#允許訪問的ip

tcp.invited_nodes=(172.28.65.13)

#禁止訪問的ip

ip.excluded_nodes= (172.27.65.15)

重啟監聽!

$ lsnrctl reload

LSNRCTL for Solaris: Version 9.2.0.4.0 - Production on 14-DEC-2005 16:59:19

Copyright (c) 1991, 2002, Oracle Corporation.? All rights reserved.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC0)))

The command completed successfully.

在172.28.65.15這臺機器上編輯$ORACLE_HOME/network/admin/tnsnames.ora文件:

此處可以添加新的服務(dsf):

dsf =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(Host= 172.28.65.13)(Port = 1521))

(CONNECT_DATA = (SID = ORCL))

)

在15上進行tnsping測試:

$ tnsping dsf

TNS Ping Utility for Solaris: Version 9.2.0.4.0 - Production on 14-DEC-2005 17:04:02

Copyright (c) 1997 Oracle Corporation.? All rights reserved.

Used parameter files:

Used TNSNAMES adapter to resolve the alias

Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(Host= 172.28.65.13)(Port = 1521)) (CONNECT_DATA = (SID = ORCL)))

TNS-12537: TNS:connection closed

連接測試:

$ sqlplus wacos/oss@dsf

SQL*Plus: Release 9.2.0.4.0 - Production on Wed Dec 14 17:04:24 2005

Copyright (c) 1982, 2002, Oracle Corporation.? All rights reserved.

ERROR:

ORA-12537: TNS:connection closed

-------------------------------------------------------------------------------------------------------------------

TCP.VALIDNODE_CHECKING,這個參數必須設置,值也必須是YES,否則就是不啟用

TCP.VALIDNODE_CHECKING=YES

白名單的設置參數,這個地址列表中必須包含本機的地址,不然監聽可能要啟動失敗

TCP.INVITED_NODES=(10.10.2.100,10.10.2.101)

黑名單的設置參數:

TCP.EXCLUDED_NODES=(10.10.1.100)

總結

以上是生活随笔為你收集整理的本机器禁止访问mysql服务器_限制指定机器IP访问oracle数据库的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。