配置資料庫監聽白名單
一、背景:
2020年伊始,我們的工作中多了一個詞"護網行動",之前聞所未聞;這是一個從國家層面提出的安全概念,目的是為了保障資訊保安。各個組織機構會定期組織安防演練。我們們資料庫層面為了應對這次安防演練也提出了自己的思想,資料庫白名單策略限制非法裝置對資料庫進行訪問。這是這次配置監聽白名單的整個背景。
二、技術策略:
編輯sqlnet.ora檔案
#開啟ip限制功能
1 |
tcp.validnode_checking=
yes |
#允許訪問資料庫的IP地址列表,多個IP地址使用逗號分開
1 |
tcp.invited_nodes=(192.168.1.5,192.168.1.6,10.10.10.2) |
#禁止訪問資料庫的IP地址列表,多個IP地址使用逗號分開
1 |
tcp.excluded_nodes=(192.168.1.1,10.10.10.1) |
注:
1、需要重啟監聽器生效。
2、這個方式只是適合TCP協議,適用於9i以上版本。在9i之前的版本使用檔案protocol.ora。
3、第二行和第三行任寫一行即可,如果tcp.invited_nodes與tcp.excluded_nodes都存在,以tcp.invited_nodes為主。
4、不要禁止伺服器本機的IP地址,否則透過lsnrctl將不能啟動或停止監聽,因為該過程監聽程式會透過本機的IP訪問監聽器。
三、操作步驟
3.1 從監聽日誌中獲取層級訪問的裝置地址:
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 關閉監聽
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 重新啟動監聽
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 手工註冊監聽
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/
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69978212/viewspace-2708050/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle 11g/12c 監聽器白名單的配置Oracle
- oracle 設定監聽白名單,並且怎麼設定白名單地址Oracle
- 啟動資料庫監聽資料庫
- Mysql資料庫監聽binlogMySql資料庫
- 資料庫監聽夯故障分析資料庫
- Firewalld 白名單配置方法
- Canal-監聽資料庫表的變化資料庫
- ORACLE rac資料庫監聽與應用TNS連線串配置與ORA12519Oracle資料庫
- canal同步mysql,監聽單例項,多例項配置MySql單例
- Zabbix5.0 配置 ODBC 監控 Oracle 資料庫Oracle資料庫
- 自定義元件-資料監聽器元件
- 2.5.2. 監聽程式(listener)配置——2.5.2.3. 手工編輯監聽器配置檔案
- modsecurity黑白名單以及規則檢測模式配置模式
- oracle 資料庫lsnrctl監聽的日誌路徑和trace檔案Oracle資料庫
- 成為MySQL DBA後,再看ORACLE資料庫(二、監聽與連線)MySqlOracle資料庫
- [Kogel.Subscribe.Mssql]SQL Server增量訂閱,資料庫變更監聽SQLServer資料庫
- 資料庫無法註冊至監聽服務解決辦法資料庫
- 11g rac監聽配置解析
- Spring框架(一):配置&注入&監聽器Spring框架
- 資料庫配置資料庫
- 精讀《如何利用 Nodejs 監聽資料夾》NodeJS
- Android 監聽生命週期工具庫Android
- 織夢資料庫配置檔案修改資料庫配置方法資料庫
- MySQL之MGR白名單MySql
- Laravel忽略白名單和黑名單Laravel
- 配置session——資料庫Session資料庫
- Oracle資料庫配置Oracle資料庫
- 監聽 watch props物件屬性監聽 或深度監聽物件
- 3天學寫mvvm框架[一]:資料監聽MVVM框架
- WPF 實現檔案/資料夾監聽工具
- 2.5.2. 監聽程式(listener)配置——2.5.2.1. netca
- 2.5.2. 監聽程式(listener)配置——2.5.2.2. netmgr
- Android studio(建立、監聽器intent選單)AndroidIntent
- oracle之 單例項監聽修改埠Oracle單例
- 資料庫監控---PIGOSS BSM資料庫Go
- 監控資料庫活動資料庫
- 資料庫繁忙程度監控資料庫
- 使用SqlDependency監測資料庫SQL資料庫