最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用Nginx代理MySQL連接并限制可訪問(wèn)IP配置

 更新時(shí)間:2023年08月29日 09:42:53   作者:fkjavaer  
這篇文章主要為大家介紹了如何使用Nginx代理MySQL連接并限制可訪問(wèn)IP配置示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

1.前言

我們的生產(chǎn)環(huán)境基本上都部署在云服務(wù)器上,例如應(yīng)用服務(wù)器、MySQL服務(wù)器等。如果MySQL服務(wù)器直接暴露在公網(wǎng),就會(huì)存在很大的風(fēng)險(xiǎn),為了保證數(shù)據(jù)安全,MySQL服務(wù)器的端口是不對(duì)外開(kāi)放的。

好巧不巧,線上業(yè)務(wù)遇到bug了,開(kāi)發(fā)的小伙伴需要遠(yuǎn)程連接MySQL來(lái)查看數(shù)據(jù),那應(yīng)該怎么辦呢?

我們可以通過(guò)Nginx代理(“跳板機(jī)”)來(lái)進(jìn)行連接。

推薦一個(gè)開(kāi)源免費(fèi)的 Spring Boot 實(shí)戰(zhàn)項(xiàng)目:

https://github.com/javastacks/spring-boot-best-practice

2.Nginx代理連接

要實(shí)現(xiàn)對(duì)連接的代理轉(zhuǎn)發(fā),我們需要一臺(tái)服務(wù)器并安裝Nginx,且與MySQL服務(wù)器處于一個(gè)內(nèi)網(wǎng)之中,內(nèi)網(wǎng)之間可以訪問(wèn)。

其次,我們需要用到ngx_stream_core_module模塊,該模塊不是默認(rèn)構(gòu)建的,我們需要在configure時(shí)添加--with-stream來(lái)進(jìn)行構(gòu)建。

添加過(guò)程可以參照【Nginx基本命令&不停機(jī)版本升級(jí)】一文進(jìn)行,我們這里不再贅述。

既然要用到ngx_stream_core_module模塊,首當(dāng)其沖,是看看其提供的指令,我們才知道怎么來(lái)進(jìn)行配置。

1)stream

該指令定義了stream服務(wù)器。與http塊平級(jí),定義在main塊中。

  • 作用域:main
  • 語(yǔ)法:stream {...}

示例:

stream {
     server {
         ......
     }
 }

2)server

該指令定義一個(gè)虛擬主機(jī),與http塊中的server類似。我們可以在stream塊中定義多個(gè)server塊。

  • 作用域:stream
  • 語(yǔ)法:server {...}
stream {
     server {
         ......
     }
     server {
         ......
     }
 }

3)listen

該指令定義虛擬主機(jī)server要監(jiān)聽(tīng)的socket的地址和端口。

  • 作用域:server
  • 語(yǔ)法:listen address:port;

示例:

listen 127.0.0.1:3306;
 listen *:3306;
 # 效果與listen *:3306一樣
 listen 3306;
 listen localhost:3306;

4)配置示例

MySQL服務(wù)器,端口3306(單機(jī)環(huán)境)

stream  {
     server {
         listen 3306;
         proxy_pass 192.168.110.101:3306;
     }
 }

MySQL服務(wù)器,端口3306(集群環(huán)境)

stream  {
     upstream mysql_socket {
         server 192.168.110.101:3306;
     }
     server {
             listen 3306;
             proxy_pass mysql_socket;
     }
 }

此時(shí),我們就可以通過(guò)例如Navicat等客戶端進(jìn)行連接。

3.限制訪問(wèn)IP

實(shí)現(xiàn)了對(duì)連接的代理,所有人都可以通過(guò)訪問(wèn)Nginx來(lái)連接MySQL服務(wù)器,解決了外網(wǎng)無(wú)法連接的問(wèn)題。

為了更進(jìn)一步的縮小訪問(wèn)范圍,保證數(shù)據(jù)安全,我們可以限制只有公司網(wǎng)絡(luò)的IP地址可以通過(guò)Nginx進(jìn)行連接。

Nginx提供了ngx_stream_access_module模塊,其指令非常簡(jiǎn)單,僅包含allow和deny指令。

1)allow

該指令設(shè)置指定的IP允許訪問(wèn)。可以和deny指令配合使用

  • 作用域:stream, server
  • 語(yǔ)法:allow address | CIDR | unix: | all;

示例:

# 允許192.168.110.1訪問(wèn)
 allow 192.168.110.1;
 
 # 允許192.168.110.1到192.168.255.254
 allow 192.168.110.0/16;
 
 # 允許192.168.110.1到192.168.110.254
 allow 192.168.110.0/24;
 
 # 允許所有的IP訪問(wèn)
 allow all;

2)deny

該指令設(shè)置指定的IP禁止訪問(wèn)??梢院蚢llow指令配合使用。

  • 作用域:stream, server
  • 語(yǔ)法:deny address | CIDR | unix: | all;
# 禁止192.168.110.1訪問(wèn)
 deny 192.168.110.1;
 
 # 禁止192.168.110.1到192.168.255.254
 deny 192.168.110.0/16;
 
 # 禁止192.168.110.1到192.168.110.254
 deny 192.168.110.0/24;
 
 # 禁止所有的IP訪問(wèn)
 deny all;

3)配置示例

禁止所有的IP訪問(wèn),192.168.110.100除外。

allow 192.168.110.100;
 deny all;

 Tips:如果指定了allow,需要配合deny使用,否則就是允許所有的IP地址訪問(wèn)。

4.綜合案例

只允許192.168.110.100通過(guò)Nginx連接MySQL服務(wù)器。

stream  {
     allow 192.168.110.100;
     deny all;
     server {
         listen 3306;
         proxy_pass 192.168.110.101:3306;
     }
 }

以上就是使用Nginx代理MySQL連接并限制可訪問(wèn)IP的詳細(xì)內(nèi)容,更多關(guān)于Nginx代理MySQL連接的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 詳細(xì)nginx多域名配置的方法

    詳細(xì)nginx多域名配置的方法

    Nginx綁定多個(gè)域名,可通過(guò)把多個(gè)域名規(guī)則寫一個(gè)配置文件里實(shí)現(xiàn),也可通過(guò)分別建立多個(gè)域名配置文件實(shí)現(xiàn),為了管理方便,建議每個(gè)域名建一個(gè)文件,有些同類域名則可寫在一個(gè)總的配置文件里。下面這篇文章就來(lái)詳細(xì)看看nginx多域名配置的方法,有需要的朋友們可以參考。
    2016-12-12
  • nginx完全卸載的方法步驟

    nginx完全卸載的方法步驟

    由于現(xiàn)在nginx有版本漏洞,所以很多安裝過(guò)nginx的需要卸載重新安裝,本文主要介紹了nginx完全卸載的方法步驟,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-08-08
  • 基于Nginx+lua實(shí)現(xiàn)簡(jiǎn)單的XSS攻擊攔截

    基于Nginx+lua實(shí)現(xiàn)簡(jiǎn)單的XSS攻擊攔截

    WAF即web應(yīng)用防火墻,Nginx是一個(gè)主流的代理服務(wù),除了本身的Nginx日志,作為用戶肯定也支持對(duì)請(qǐng)求信息進(jìn)行操作,?很多都是通過(guò)在代理服務(wù)器上掛載規(guī)則特征,實(shí)現(xiàn)軟件層面的軟WAF進(jìn)行WEB防護(hù),本文主要給大家介紹了Nginx+Lua實(shí)現(xiàn)一個(gè)簡(jiǎn)單的XSS攻擊攔截,需要的朋友可以參考下
    2024-01-01
  • nginx lua集成kafka的實(shí)現(xiàn)方法

    nginx lua集成kafka的實(shí)現(xiàn)方法

    這篇文章主要介紹了nginx lua集成kafka的實(shí)現(xiàn)方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08
  • Nginx服務(wù)器中414錯(cuò)誤和504錯(cuò)誤的配置解決方法

    Nginx服務(wù)器中414錯(cuò)誤和504錯(cuò)誤的配置解決方法

    這篇文章主要介紹了Nginx服務(wù)器中414錯(cuò)誤和504錯(cuò)誤的配置解決方法,分別對(duì)應(yīng)Request-URI Too Large和Gateway Time-out這樣的錯(cuò)誤提示,需要的朋友可以參考下
    2015-12-12
  • Nginx配置WebSocket代理的示例代碼

    Nginx配置WebSocket代理的示例代碼

    本文提供了關(guān)于Nginx的配置和日志記錄的詳細(xì)指南,介紹了如何使用whereis命令查找Nginx路徑,并通過(guò)man命令查看手冊(cè),同時(shí),詳解了解Nginx訪問(wèn)日志的配置方法及參數(shù)含義,并分享了Nginx代理WebSocket的配置示例,感興趣的可以了解一下
    2024-10-10
  • 啟動(dòng)Nginx.exe出現(xiàn)閃退問(wèn)題的解決方案

    啟動(dòng)Nginx.exe出現(xiàn)閃退問(wèn)題的解決方案

    在做項(xiàng)目時(shí),使用老師給的代碼,點(diǎn)擊Nginx.exe出現(xiàn)閃退的情況,出現(xiàn)這個(gè)問(wèn)題可能出現(xiàn)的情況,端口號(hào)被占用或者logs下文件路徑有問(wèn)題,所以本文小編給大家介紹了啟動(dòng)Nginx.exe出現(xiàn)閃退問(wèn)題的解決方案,需要的朋友可以參考下
    2024-03-03
  • 利用Nginx實(shí)現(xiàn)一個(gè)IP部署多個(gè)網(wǎng)站

    利用Nginx實(shí)現(xiàn)一個(gè)IP部署多個(gè)網(wǎng)站

    文章主要介紹了如何在一個(gè)服務(wù)器/一個(gè)IP地址上部署多個(gè)網(wǎng)站虛擬主機(jī)的方法,主要包括基于域名、端口和IP地址的區(qū)分方式,并詳細(xì)描述了Nginx的虛擬主機(jī)配置結(jié)構(gòu)和匹配優(yōu)先,此外,文章還提供了完整的多站點(diǎn)部署示例、限制方案以及管理命令速查,需要的朋友可以參考下
    2026-05-05
  • nginx的FastDFS分布式存儲(chǔ)模塊測(cè)試方法

    nginx的FastDFS分布式存儲(chǔ)模塊測(cè)試方法

    很長(zhǎng)時(shí)間沒(méi)有關(guān)注FastDFS了,第一次使用FastDFS 是在 08年的時(shí)候11月的時(shí)候,那個(gè)時(shí)候是為了解決公司的數(shù)據(jù)存儲(chǔ)~那時(shí)候可能是對(duì)Fastdfs了解不深,功能還不算太健全,最后選擇了lustre。
    2010-12-12
  • Nginx中的最大連接數(shù)與連接池用法解讀

    Nginx中的最大連接數(shù)與連接池用法解讀

    Nginx的連接數(shù)和連接池配置對(duì)于提升服務(wù)器性能和穩(wěn)定性至關(guān)重要,通過(guò)配置這些參數(shù),可以優(yōu)化Nginx處理并發(fā)請(qǐng)求的能力,減少資源的浪費(fèi),并提高響應(yīng)速度
    2025-12-12

最新評(píng)論

盱眙县| 剑川县| 梨树县| 龙泉市| 梓潼县| 平顶山市| 昆明市| 望江县| 闵行区| 馆陶县| 芷江| 茶陵县| 公安县| 常熟市| 兴义市| 西盟| 丰县| 方城县| 铁岭市| 陕西省| 诸城市| 新乐市| 黎平县| 阿合奇县| 浦县| 武义县| 东乡族自治县| 阳原县| 湛江市| 呼伦贝尔市| 灵寿县| 长丰县| 吉林市| 丰顺县| 临邑县| 丘北县| 巴楚县| 离岛区| 博野县| 和田市| 札达县|