91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

三種方法教你限制某個(gè)IP或IP段訪問(wèn)Oracle數(shù)據(jù)庫(kù)

如意 ? 來(lái)源:ITPUB ? 作者:佚名 ? 2020-09-03 10:16 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

01概述

本文將給大家介紹如何限制某個(gè)ip或某個(gè)ip段才能訪問(wèn)Oracle數(shù)據(jù)庫(kù)

通過(guò)sqlnet.ora

通過(guò)/etc/hosts.deny和/etc/hosts.allow

通過(guò)iptables

02正式實(shí)驗(yàn)

本次實(shí)驗(yàn)環(huán)境是Centos6.10 + Oracle 11.2.0.4單實(shí)例,數(shù)據(jù)庫(kù)服務(wù)器ip地址為192.168.31.71

1. 通過(guò)sqlnet.ora

a. 關(guān)閉數(shù)據(jù)庫(kù)服務(wù)器上的防火墻,修改sqlnet.ora文件該文件放在$ORACLE_HOME/network/admin下,如果沒(méi)有就在該目錄下創(chuàng)建一個(gè)即可添加以下兩行

tcp.validnode_checking = yes

tcp.invited_nodes = (192.168.31.71, 192.168.31.77)

這里需要注意的是必須把本機(jī)ip地址加進(jìn)來(lái)(不能寫成localhost和127.0.0.1),否則監(jiān)聽(tīng)啟動(dòng)會(huì)報(bào)錯(cuò)。

b. 重啟監(jiān)聽(tīng),讓sqlnet.ora的修改生效

lsnrctl stop

lsnrctl start

設(shè)置之后就只有這兩個(gè)ip地址192.168.31.71, 192.168.31.77能訪問(wèn)數(shù)據(jù)庫(kù),其它ip地址訪問(wèn)會(huì)報(bào)ORA-12547: TNS:lost contact錯(cuò)誤

tcp.invited_nodes的意思是開(kāi)通白名單,不在白名單中的一律拒絕訪問(wèn),它也可以寫成(192.168.31.*, 192.168.31.0/24)等方式,表明這個(gè)網(wǎng)段都能訪問(wèn)。

另外還有個(gè)參數(shù)tcp.excluded_nodes,表示黑名單,這里不做介紹,有興趣的可以自己去做做實(shí)驗(yàn)。

2. 通過(guò)/etc/hosts.deny和/etc/hosts.allow

sqlnet.ora屬于數(shù)據(jù)庫(kù)層面的限制,但如果一個(gè)ip能夠使用root或者oracle,ssh到這臺(tái)數(shù)據(jù)庫(kù)服務(wù)器的話,那么它依然能夠訪問(wèn)數(shù)據(jù)庫(kù)。為了避免這種情況,這時(shí)就需要通過(guò)/etc/hosts.allow和/etc/hosts.deny去限制某個(gè)ip或者ip段才能ssh訪問(wèn)數(shù)據(jù)庫(kù)服務(wù)器先刪除前面實(shí)驗(yàn)添加的sqlnet.ora,然后重啟監(jiān)聽(tīng)

lsnrctl stop

lsnrctl start

a. 修改/etc/hosts.deny

在文件尾部添加一行

all:all:deny

第一個(gè)all表示禁掉所有使用tcp_wrappers庫(kù)的服務(wù),舉例來(lái)說(shuō)就是ssh,telnet等服務(wù)。

第二個(gè)all表示所有網(wǎng)段。

b. 修改/etc/hosts.allow

在前面一步中我禁掉所有的網(wǎng)段,所以在這一步中要開(kāi)通指定的網(wǎng)段。

修改/etc/hosts.allow,在文件尾部添加

all:192.168.31.71:allow a

ll:192.168.31.47:allow

格式與hosts.deny一樣,第一行表示把本機(jī)放開(kāi),第二行表示給.47開(kāi)通白名單

下面用我另外一臺(tái)機(jī)器(即不在allow中的)ssh或telnet連接71這個(gè)機(jī)器,就會(huì)出現(xiàn)如下報(bào)錯(cuò)

三種方法教你限制某個(gè)IP或IP段訪問(wèn)Oracle數(shù)據(jù)庫(kù)

連數(shù)據(jù)庫(kù)卻不受影響,因?yàn)閿?shù)據(jù)庫(kù)服務(wù)不歸hosts.deny和hosts.allow管

三種方法教你限制某個(gè)IP或IP段訪問(wèn)Oracle數(shù)據(jù)庫(kù)

其中ip地址也可以換成以下的寫法

通配符的形式 192.168.31.*表示192.168.31這個(gè)網(wǎng)段

網(wǎng)段/掩碼 192.168.31.0/255.255.255.0也表示192.168.31這個(gè)網(wǎng)段

3. 通過(guò)iptables

sqlnet.ora能夠限制數(shù)據(jù)庫(kù)的訪問(wèn),/etc/hosts.deny和/etc/hosts.allow能夠限制ssh的訪問(wèn),那有沒(méi)有辦法既能限制數(shù)據(jù)庫(kù)的訪問(wèn),也能限制ssh的訪問(wèn)呢,答案就是linux自帶的防火墻功能了。為了實(shí)驗(yàn),將前面做的修改全部清除。

使用root執(zhí)行以下命令

service iptables start # 打開(kāi)防火墻服務(wù)iptables -I INPUT -s 192.168.31.0/24 -p tcp --dport 1521 -j ACCEPT # 允許192.168.31網(wǎng)段的ip訪問(wèn)本機(jī)1521端口iptables -I INPUT ! -s 192.168.31.0/24 -p tcp --dport 22 -j DROP # 拒絕非192.168.31網(wǎng)段的ip訪問(wèn)本機(jī)22端口service iptables save # 規(guī)則保存到配置文件/etc/sysconfig/iptables中

這樣就同時(shí)限制了其它ip對(duì)服務(wù)器的ssh和數(shù)據(jù)庫(kù)訪問(wèn)一些擴(kuò)展知識(shí):

iptables -L -n --line-numbers # 查看當(dāng)前系統(tǒng)中的iptablesiptables -D INPUT 2 # 刪除input鏈中編號(hào)為2的規(guī)則,編號(hào)數(shù)字可以通過(guò)上一個(gè)命令得到

03總結(jié)

如果只是限制其它ip對(duì)數(shù)據(jù)庫(kù)的訪問(wèn),使用sqlnet.ora

如果要限制其它ip對(duì)數(shù)據(jù)庫(kù)所在服務(wù)器上的ssh連接,使用/etc/hosts.deny和/etc/hosts.allow

前面兩個(gè)配合起來(lái),基本上就能保證你的數(shù)據(jù)庫(kù)安全了。但是如果你對(duì)linux的iptables很熟悉,那么直接使用iptables去限制。

使用/etc/hosts.deny和iptables時(shí)一定要保證自己的操作機(jī)能連到服務(wù)器,不然很容易就把自己鎖死在外面了。
責(zé)編AJX

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • IP
    IP
    +關(guān)注

    關(guān)注

    5

    文章

    1862

    瀏覽量

    155793
  • 數(shù)據(jù)庫(kù)
    +關(guān)注

    關(guān)注

    7

    文章

    4018

    瀏覽量

    68326
  • Oracle
    +關(guān)注

    關(guān)注

    2

    文章

    302

    瀏覽量

    38219
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    labview訪問(wèn)數(shù)據(jù)庫(kù)的若干種方法

    本帖最后由 eehome 于 2013-1-5 09:44 編輯 本文分析了labview中訪問(wèn)數(shù)據(jù)庫(kù)的幾種方法的優(yōu)缺點(diǎn),重點(diǎn)討論了應(yīng)用ADO技術(shù),labsql,labview sql
    發(fā)表于 02-24 10:14

    labview查看本機(jī)ip三種方法

    做TCP通訊的時(shí)候,有時(shí)候需要知道自己的IP雖然知道自己電腦ip可以不用這么麻煩,但是有時(shí)候就想用自己所學(xué)來(lái)獲得自己所需,職業(yè)病 咳咳這里給出得到本地IP三種方法。源程序,在附件里。
    發(fā)表于 11-27 17:17

    labview如何遠(yuǎn)程訪問(wèn)oracle數(shù)據(jù)庫(kù)

    本地訪問(wèn)oracle數(shù)據(jù)庫(kù)已經(jīng)做到了。由于不想通過(guò)labview之間的網(wǎng)絡(luò)通信達(dá)到遠(yuǎn)程訪問(wèn)oracle,只想在局域網(wǎng)內(nèi)直接去
    發(fā)表于 02-12 10:42

    labview 如何遠(yuǎn)程訪問(wèn)Oracle數(shù)據(jù)庫(kù)

    ?它是服務(wù)器端的設(shè)置還是我電腦的設(shè)置?最后那個(gè)orcl是oracle里的一個(gè)實(shí)例,那是不是代表我要連接的數(shù)據(jù)庫(kù)的名稱?數(shù)據(jù)庫(kù)所在的共享文件夾是不是必須填寫?還望做過(guò)的朋友指導(dǎo)一下{:12:}
    發(fā)表于 07-15 16:24

    Labview三種方法讀寫SQL server數(shù)據(jù)庫(kù)

    Server數(shù)據(jù)庫(kù)LabVIEW通過(guò)LabSQL第數(shù)據(jù)庫(kù)訪問(wèn)工具包,基于建立ODBC連接的方法訪問(wèn)
    發(fā)表于 07-28 22:06

    labview遠(yuǎn)程訪問(wèn)oracle數(shù)據(jù)庫(kù)

    電腦系統(tǒng):64位win7旗艦版;labview:32位2015版;oracle客戶端:ODAC112040XCOPY_64BIT我使用這個(gè)程序訪問(wèn)數(shù)據(jù)庫(kù),現(xiàn)在數(shù)據(jù)鏈接測(cè)試成功,但是程序
    發(fā)表于 04-10 10:08

    C語(yǔ)言中使用嵌入式SQL訪問(wèn)Oracle數(shù)據(jù)庫(kù)方法

    (Oracle Call Interface簡(jiǎn)稱OCI),通過(guò)調(diào)用一系列OCI函數(shù)即可訪問(wèn)數(shù)據(jù)庫(kù)。我在這里介紹的是前一種方法。另外,在本文中,我重點(diǎn)介紹的是利用C語(yǔ)言開(kāi)發(fā)
    發(fā)表于 12-15 06:35

    Oracle數(shù)據(jù)庫(kù)網(wǎng)絡(luò)安全訪問(wèn)機(jī)制

    本文主要分析了Oracle 客戶端通過(guò)Net8 訪問(wèn)數(shù)據(jù)庫(kù)服務(wù)器過(guò)程,闡述了Oracle 數(shù)據(jù)庫(kù)的網(wǎng)絡(luò)
    發(fā)表于 08-29 10:20 ?20次下載

    訪問(wèn)集成Xilinx模數(shù)轉(zhuǎn)換器的三種方法介紹

    了解訪問(wèn)集成Xilinx模數(shù)轉(zhuǎn)換器(XADC)的三種方法; 通過(guò)直接連接到PS,作為PSMicroblaze的AXI外設(shè),作為邏輯的IP
    的頭像 發(fā)表于 11-20 06:16 ?3204次閱讀

    linux查找ip地址的三種方法

    在 Linux 系統(tǒng)中,經(jīng)常需要查找 IP 地址以進(jìn)行網(wǎng)絡(luò)配置、故障排除安全管理。無(wú)論是查找本地主機(jī)的 IP 地址還是查找其他設(shè)備的 IP 地址,本文將介紹
    發(fā)表于 08-02 09:53 ?1019次閱讀
    linux查找<b class='flag-5'>ip</b>地址的<b class='flag-5'>三種方法</b>

    oracle數(shù)據(jù)庫(kù)如何連接

    所述,我們將介紹幾種常見(jiàn)的數(shù)據(jù)庫(kù)連接方法。 一、使用SQL*Plus連接Oracle數(shù)據(jù)庫(kù) SQL*Plus是Oracle提供的一個(gè)基于文本
    的頭像 發(fā)表于 08-28 17:09 ?1.2w次閱讀

    oracle三種連接方式 oracle數(shù)據(jù)庫(kù)怎么連接呢?oracle連接失敗怎么辦?

    oracle三種連接方式 oracle數(shù)據(jù)庫(kù)怎么連接呢?oracle連接失敗怎么辦? Oracle
    的頭像 發(fā)表于 10-25 15:02 ?6983次閱讀

    oracle數(shù)據(jù)庫(kù)的使用方法

    Oracle數(shù)據(jù)庫(kù)是一關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),它由Oracle公司開(kāi)發(fā)和維護(hù)。它提供了安全、可靠和高性能的
    的頭像 發(fā)表于 12-06 10:10 ?2277次閱讀

    Oracle數(shù)據(jù)恢復(fù)—Oracle數(shù)據(jù)庫(kù)delete刪除的數(shù)據(jù)恢復(fù)方法

    刪除Oracle數(shù)據(jù)庫(kù)數(shù)據(jù)一般有以下2方式:delete、droptruncate。下面針對(duì)這2
    的頭像 發(fā)表于 09-11 11:45 ?1346次閱讀

    適用于Oracle的Python連接器:可訪問(wèn)托管以及非托管的數(shù)據(jù)庫(kù)

    適用于 Oracle 的 Python 連接器 適用于 Oracle 的 Python 連接器是一可靠的連接解決方案,用于從 Python 應(yīng)用程序訪問(wèn)
    的頭像 發(fā)表于 01-14 10:30 ?919次閱讀