nginx進行端口轉(zhuǎn)發(fā)的實現(xiàn)
使用場景
1、內(nèi)網(wǎng)有一臺服務器的端口需要映射到外網(wǎng)(舉例外網(wǎng)的服務器申請了一個域名,然后給該域名做了一個nignx的配置,然后配置中需要訪問一個內(nèi)網(wǎng)的http的服務)
2、內(nèi)網(wǎng)服務器沒有外網(wǎng)訪問權限,全部內(nèi)網(wǎng)中只有一臺服務器有外網(wǎng)權限,可用于曲線救國版內(nèi)網(wǎng)穿透
3、虛擬機只有NAT網(wǎng),且虛擬機只配備了內(nèi)網(wǎng)localhost轉(zhuǎn)發(fā)到宿主機localhost,此時想外網(wǎng)或者其他內(nèi)網(wǎng)(非宿主機)想訪問虛擬機端口
4、將代理機作為堡壘機(跳板機),用于防止內(nèi)部系統(tǒng)被人隨意訪問,此時堡壘機配置端口轉(zhuǎn)發(fā),通過堡壘機訪問內(nèi)部系統(tǒng)。
解決方案
nginx配置文件位置參考
- Linux:在/etc/nginx/conf.d/中,修改default.conf文件
- Windows:在 nginx安裝目錄\Nginx\conf中,修改nginx.conf
注意原本的nginx.conf中沒有stream模塊(據(jù)說v1.8.x以后的版本才有,我的是v1.5.11就沒有),需要自行添加。且它的層級和http模塊是同級的
# 編譯nginx的時候要添加stream模塊 ?./configure –with-stream # 這個模塊實現(xiàn)了網(wǎng)絡層和傳輸層的的轉(zhuǎn)發(fā)、代理、負載均衡等 ? # stream與http配置同級 stream { ? ?server { ? ? ? ?listen 3306; ? ? ? ?proxy_pass 192.168.8.168:3306; ? ? ? ?# 有了這個server配置,你就可以通過代理機ip+3306端口訪問內(nèi)網(wǎng)的mysql庫了 ? ?} ? ? ?server { ? ? ? listen 8080; ? ? ? proxy_pass 192.168.8.168:8080; ? ? ? # 有了這個配置,你就可以直接訪問代理機ip+8080端口,訪問你的內(nèi)網(wǎng)web服務了 ? } ? # 還可以設置指定的客戶端IP訪問(白名單設置) ? # 自己百度更多功能吧 } ? #直接復制可能有問題,幾行代碼就自己打吧
到此這篇關于nginx進行端口轉(zhuǎn)發(fā)的實現(xiàn)的文章就介紹到這了,更多相關nginx 端口轉(zhuǎn)發(fā)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
keepalived結合nginx實現(xiàn)nginx高可用的方法
這篇文章主要介紹了keepalived結合nginx實現(xiàn)nginx高可用的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-03-03使用nginx方式實現(xiàn)http轉(zhuǎn)換為https的示例代碼
這篇文章主要介紹了使用nginx方式實現(xiàn)http轉(zhuǎn)換為https的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-09-09