溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

配置數(shù)據(jù)庫監(jiān)聽白名單

發(fā)布時間:2020-08-10 16:07:07 來源:ITPUB博客 閱讀:183 作者:樸所羅門 欄目:關(guān)系型數(shù)據(jù)庫

一、背景:

2020年伊始,我們的工作中多了一個詞"護(hù)網(wǎng)行動",之前聞所未聞;這是一個從國家層面提出的安全概念,目的是為了保障信息安全。各個組織機(jī)構(gòu)會定期組織安防演練。咱們數(shù)據(jù)庫層面為了應(yīng)對這次安防演練也提出了自己的思想,數(shù)據(jù)庫白名單策略限制非法設(shè)備對數(shù)據(jù)庫進(jìn)行訪問。這是這次配置監(jiān)聽白名單的整個背景。

二、技術(shù)策略:

編輯sqlnet.ora文件

#開啟ip限制功能

1
tcp.validnode_checking= yes

#允許訪問數(shù)據(jù)庫的IP地址列表,多個IP地址使用逗號分開

1
tcp.invited_nodes=(192.168.1.5,192.168.1.6,10.10.10.2)

#禁止訪問數(shù)據(jù)庫的IP地址列表,多個IP地址使用逗號分開

1
tcp.excluded_nodes=(192.168.1.1,10.10.10.1)

注:

1、需要重啟監(jiān)聽器生效。

2、這個方式只是適合TCP協(xié)議,適用于9i以上版本。在9i之前的版本使用文件protocol.ora。

3、第二行和第三行任寫一行即可,如果tcp.invited_nodes與tcp.excluded_nodes都存在,以tcp.invited_nodes為主。

4、不要禁止服務(wù)器本機(jī)的IP地址,否則通過lsnrctl將不能啟動或停止監(jiān)聽,因為該過程監(jiān)聽程序會通過本機(jī)的IP訪問監(jiān)聽器。

三、操作步驟

3.1 從監(jiān)聽日志中獲取層級訪問的設(shè)備地址:

1
2
3
4
5
6
7
grep  HOST listener.log | awk  -F  'HOST='  '{print $3}'  | awk  '{print  $1}'  | awk  -F  ')'  '{print $1}'  | grep  - v  jdbc| sort | uniq  | wc  -l &&  grep  HOST listener.log | awk  -F  'HOST='  '{print $3}'  | awk  '{print  $1}'  | awk  -F  ')'  '{print $1}'  | grep  - v  jdbc| sort | uniq
5
192.168.1.1
192.168.1.2
192.168.1.3
192.168.1.4
192.168.1.71

3.2 地址格式化

1
2
tr  -s  "\n"  ","  <ip.txt;  echo
192.168.1.1,192.168.1.2,192.168.1.3,192.168.1.4,192.168.1.71

3.3 編輯sqlnet.ora

1
2
3
[oracle@TestDB /u01/app/oracle/product/11 .2.0 /db_1/network/admin ]$ cat  sqlnet.ora 
tcp.validnode_checking= yes
tcp.invited_nodes=(192.168.1.1,192.168.1.2,192.168.1.3,192.168.1.4,192.168.1.71)

3.4 關(guān)閉監(jiān)聽

1
2
3
4
5
[oracle@TestDB /u01/app/oracle/product/11 .2.0 /db_1/network/admin ]$lsnrctl stop
LSNRCTL  for  Linux: Version 11.2.0.4.0 - Production on 28-JUL-2020 19:30:20
Copyright (c) 1991, 2013, Oracle.  All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=TestDB)(PORT=1521)))
The  command  completed successfully

3.5 重新啟動監(jiān)聽

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
[oracle@TestDB /u01/app/oracle/product/11 .2.0 /db_1/network/admin ]$lsnrctl start
LSNRCTL  for  Linux: Version 11.2.0.4.0 - Production on 28-JUL-2020 19:30:25
Copyright (c) 1991, 2013, Oracle.  All rights reserved.
Starting  /u01/app/oracle/product/11 .2.0 /db_1/bin/tnslsnr : please wait...
TNSLSNR  for  Linux: Version 11.2.0.4.0 - Production
System parameter  file  is  /u01/app/oracle/product/11 .2.0 /db_1/network/admin/listener .ora
Log messages written to  /u01/app/oracle/diag/tnslsnr/TestDB/listener/alert/log .xml
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=TestDB)(PORT=1521)))
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=TestDB)(PORT=1521)))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR  for  Linux: Version 11.2.0.4.0 - Production
Start Date                28-JUL-2020 19:30:25
Uptime                    0 days 0 hr. 0 min. 0 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Listener Parameter File    /u01/app/oracle/product/11 .2.0 /db_1/network/admin/listener .ora
Listener Log File          /u01/app/oracle/diag/tnslsnr/TestDB/listener/alert/log .xml
Listening Endpoints Summary...
   (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=TestDB)(PORT=1521)))
   (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
The listener supports no services
The  command  completed successfully

3.6 手工注冊監(jiān)聽

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
[oracle@TestDB /u01/app/oracle/product/11 .2.0 /db_1/network/admin ]$sqlplus / as sysdba
SQL*Plus: Release 11.2.0.4.0 Production on Tue Jul 28 19:30:29 2020
Copyright (c) 1982, 2013, Oracle.  All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> alter system register;
System altered.
SQL> !lsnrctl status
LSNRCTL  for  Linux: Version 11.2.0.4.0 - Production on 28-JUL-2020 19:30:36
Copyright (c) 1991, 2013, Oracle.  All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=TestDB)(PORT=1521)))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR  for  Linux: Version 11.2.0.4.0 - Production
Start Date                28-JUL-2020 19:30:25
Uptime                    0 days 0 hr. 0 min. 11 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Listener Parameter File    /u01/app/oracle/product/11 .2.0 /db_1/network/admin/listener .ora
Listener Log File          /u01/app/oracle/diag/tnslsnr/TestDB/listener/alert/log .xml
Listening Endpoints Summary...
   (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=TestDB)(PORT=1521)))
   (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
Services Summary...
Service  "ORCL"  has 1 instance(s).
   Instance  "ORCL1" , status READY, has 1 handler(s)  for  this service...
Service  "ORCL1XDB"  has 1 instance(s).
The  command  completed successfully

原文鏈接:http://blog.itpub.net/20674423/viewspace-2707617/

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI