模擬搭建私網訪問外網、外網訪問服務器服務的實踐操作

目錄

實驗環境

實踐要求

一、準備工作

1、準備四臺虛擬機,分別標號

2、 防火墻額外添加兩塊網卡,自定義網絡連接模式

3、 關閉虛擬機的圖形管理工具

4、關閉防火墻

?5、分別配置四臺虛擬機的IP地址,此處舉一個例子(使用的臨時分配地址)

?6、開啟防火墻路由轉發功能并驗證

7、配置內網機和服務器的網關地址

8、?給服務器安裝nginx服務

9、測試各個主機之間的連接情況

?二、內部網絡中的pc1采用SNAT訪問外部互聯網,但是無法ping到內部網關。

三、內部網絡服務器s1通過DNAT發布服務到互聯網。

四、互聯網主機pc2能夠訪問DMZ區域的服務器,但是不能夠進行ping和ssh連接。


實驗環境

  • 內部PC1位于內網區域,地址段為: 192.168.1.0/24,pc1地址為:192.168.1.1/24,網關地址為:192.168.1.254/24

  • 服務器S1位于服務器區域,地址段為: 192.168.2.0/24,pc1地址為:192.168.2.1/24,網關地址為:192.168.2.254/24

  • PC2位于互聯網區域,模擬外部互聯網,地址段為:10.0.0.0/8,pc2地址為:10.0.0.1/8

  • Linux防火墻的三塊網卡為別連接不同的網絡區域,地址分別為 :ens33 192.168.1.254/24;ens34 10.0.0.100/8;ens35 192.168.2.254/24

?

實踐要求

  • 內部網絡中的pc1采用SNAT訪問外部互聯網,但是無法ping到內部網關。

  • 內部網絡服務器s1通過DNAT發布服務到互聯網。

  • 互聯網主機pc2能夠訪問DMZ區域的服務器,但是不能夠進行ping和ssh連接。

一、準備工作

1、準備四臺虛擬機,分別標號

2、 防火墻額外添加兩塊網卡,自定義網絡連接模式

3、 關閉虛擬機的圖形管理工具

systemctl stop NetworkManager

4、關閉防火墻

systemctl stop firewalld.service 

?5、分別配置四臺虛擬機的IP地址,此處舉一個例子(使用的臨時分配地址)

ifconfig  ens160  192.168.1.1/24

?6、開啟防火墻路由轉發功能并驗證

echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf
sysctl -p

7、配置內網機和服務器的網關地址

route add -net 0/0 gw 192.168.1.254 dev ens160
route add -net 0/0 gw 192.168.2.254 dev ens160

8、?給服務器安裝nginx服務

配置本地倉庫源后安裝nginx
yum -y install nginx
echo "hello!" > /usr/share/nginx/html/index.html

9、測試各個主機之間的連接情況

  • 測試內網機和防火墻的通聯性
[root@localhost network-scripts]# ping 192.168.1.254
PING 192.168.1.254 (192.168.1.254) 56(84) bytes of data.
64 bytes from 192.168.2.254: icmp_seq=1 ttl=64 time=0.453 ms
  • 測試服務器和防火墻的通聯性
[root@localhost network-scripts]# ping 192.168.2.254
PING 192.168.2.254 (192.168.2.254) 56(84) bytes of data.
64 bytes from 192.168.2.254: icmp_seq=1 ttl=64 time=0.273 ms
64 bytes from 192.168.2.254: icmp_seq=2 ttl=64 time=0.266 ms
^X^C
  • ?測試內網機和服務器的通聯性
[root@nei ~]# ping 192.168.2.1
PING 192.168.2.1 (192.168.2.1) 56(84) bytes of data.
64 bytes from 192.168.2.1: icmp_seq=1 ttl=64 time=18.2 ms
64 bytes from 192.168.2.1: icmp_seq=2 ttl=64 time=5.04 ms
^C
  • 外網機沒有網關地址,所以和其他三臺主機之間必然不通

二、內部網絡中的pc1采用SNAT訪問外部互聯網,但是無法ping到內部網關。

  • ?在防火墻上書寫規則
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o ens256 -j MASQUERADE 
iptables -A INPUT  -s 192.168.1.1 -d 192.168.1.254 -p icmp --icmp-type 8 -j DROP
  • 驗證
##內網機ping外網機
[root@nei ~]# ping 10.0.0.1
PING 10.0.0.1 (10.0.0.1) 56(84) bytes of data.
64 bytes from 10.0.0.1: icmp_seq=1 ttl=63 time=36.6 ms
64 bytes from 10.0.0.1: icmp_seq=2 ttl=63 time=4.72 ms
64 bytes from 10.0.0.1: icmp_seq=3 ttl=63 time=8.38 ms
^C
--- 10.0.0.1 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2010ms
rtt min/avg/max/mdev = 4.715/16.549/36.550/14.221 ms##內網機ping內部網關
[root@nei ~]# ping 192.168.1.254
PING 192.168.1.254 (192.168.1.254) 56(84) bytes of data.
^C
--- 192.168.1.254 ping statistics ---
6 packets transmitted, 0 received, 100% packet loss, time 5117ms

三、內部網絡服務器s1通過DNAT發布服務到互聯網。

  • ?在防火墻上書寫規則
iptables -t nat -A POSTROUTING  -p tcp --dport 80 -j DNAT --to-destination 192.168.2.1
  • ?驗證
##外網機訪問服務器
[root@wai ~]# curl 10.0.0.100
hello!

四、互聯網主機pc2能夠訪問DMZ區域的服務器,但是不能夠進行ping和ssh連接。

  • ?在防火墻上書寫規則
iptables -A FORWARD  -p tcp -s 10.0.0.1 -d 192.168.2.1  --dport 22 -j DROP
iptables -A FORWARD  -i ens256 -o ens224 -d 192.168.2.0/24 -p icmp --icmp-type 8 -j DROP
  • 驗證
##測試ssh遠程連接服務器主機
[root@wai ~]# ssh root@10.0.0.100
ssh: connect to host 10.0.0.100 port 22: Connection timed out##測試ping服務器主機
[root@wai ~]# ping 10.0.0.100
PING 10.0.0.100 (10.0.0.100) 56(84) bytes of data.
^C
--- 10.0.0.100 ping statistics ---
21 packets transmitted, 0 received, 100% packet loss, time 20470ms

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/83145.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/83145.shtml
英文地址,請注明出處:http://en.pswp.cn/web/83145.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

刪除遠程已經不存在但本地仍然存在的Git分支

1. 獲取遠程分支列表 首先,確保你獲取了遠程倉庫的最新分支信息: git fetch -p -p 參數會自動清理本地倉庫中那些在遠程已經被刪除的分支的引用。 2. 查看本地分支與遠程分支的對比 運行以下命令來查看哪些本地分支沒有對應的遠程分支: …

GIT(AI回答)

在Git中,git push 命令主要用于將本地分支的提交推送到?遠程倉庫?(如GitHub、GitLab等)。如果你希望將本地分支的改動同步到另一個?本地分支?,這不是 git push 的設計目的。以下是正確的替代方法: 方法1&#xff1…

深入剖析AI大模型:大模型時代的 Prompt 工程全解析

今天聊的內容,我認為是AI開發里面非常重要的內容。它在AI開發里無處不在,當你對 AI 助手說 "用李白的風格寫一首關于人工智能的詩",或者讓翻譯模型 "將這段合同翻譯成商務日語" 時,輸入的這句話就是 Prompt。…

React - 組件通信

組件通信 概念:組件通信就是組件之間數據傳遞,根據組件嵌套關系不同,有不同的通信方法 父傳子 —— 基礎實現 實現步驟 父組件傳遞數據 - 在子組件標簽上綁定屬性子組件接收數據 - 子組件通過props參數接收數據 聲明子組件并使用 //聲明子…

RKNN開發環境搭建2-RKNN Model Zoo 環境搭建

目錄 1.簡介2.環境搭建2.1 啟動 docker 環境2.2 安裝依賴工具2.3 下載 RKNN Model Zoo2.4 RKNN模型轉化2.5編譯C++1.簡介 RKNN Model Zoo基于 RKNPU SDK 工具鏈開發, 提供了目前主流算法的部署例程. 例程包含導出RKNN模型, 使用 Python API, CAPI 推理 RKNN 模型的流程. ??本…

計算機視覺頂刊《International Journal of Computer Vision》2025年5月前沿熱點可視化分析

追蹤計算機視覺領域的前沿熱點是把握技術發展方向、推動創新落地的關鍵,分析這些熱點,不僅能洞察技術趨勢,更能為科研選題和工程實踐提供重要參考。本文對計算機視覺頂刊《International Journal of Computer Vision》2025年5月前沿熱點進行了…

互聯網大廠Java求職面試:云原生與微服務架構的深度探討

互聯網大廠Java求職面試:云原生與微服務架構的深度探討 第一輪提問 面試官: “鄭薪苦,假設我們要設計一個大規模電商平臺的微服務架構,你會如何設計其訂單服務?” 鄭薪苦: “首先,我會采用…

STM32實戰:數字音頻播放器開發指南

基于STM32的數字音頻播放器/效果器是個很棒的項目!這涉及到多個嵌入式開發的關鍵技術點。下面我為你拆解實現方案和關鍵學習內容: 系統架構概覽 [SD Card] -> [File System (FATFS)] -> [Audio Decoder (WAV/MP3)] -> [DSP Processing (EQ, R…

基于TurtleBot3在Gazebo地圖實現機器人遠程控制

1. TurtleBot3環境配置 # 下載TurtleBot3核心包 mkdir -p ~/catkin_ws/src cd ~/catkin_ws/src git clone -b noetic-devel https://github.com/ROBOTIS-GIT/turtlebot3.git git clone -b noetic https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git git clone -b noetic-dev…

【Vue】scoped+組件通信+props校驗

【scoped作用及原理】 【作用】 默認寫在組件中style的樣式會全局生效, 因此很容易造成多個組件之間的樣式沖突問題 故而可以給組件加上scoped 屬性, 令樣式只作用于當前組件的標簽 作用:防止不同vue組件樣式污染 【原理】 給組件加上scoped 屬性后…

IDEA 中 Maven Dependencies 出現紅色波浪線的原因及解決方法

在使用 IntelliJ IDEA 開發 Java 項目時,尤其是基于 Maven 的項目,開發者可能會遇到 Maven Dependencies 中出現紅色波浪線的問題。這種現象通常表示項目依賴未能正確解析或下載,導致代碼提示錯誤、編譯失敗等問題。本文將詳細分析該問題的常…

把二級域名綁定的wordpress網站的指定頁面

要將二級域名(如 beijing.wodepress.com)綁定到 WordPress 網站的指定頁面(如 wodepress.com/beijing),你需要完成以下步驟: 步驟 1:創建二級域名 登錄你的域名控制面板(如 cPanel、阿里云、騰訊云等)。 找到 DNS 管理 或 域名解析 部分。…

FreeRTOS學習01_移植FreeRTOS到STM32(圖文詳解)

移植FreeRTOS到STM32 1、前言2、獲取 STM32 的裸機工程模板3、下載 FreeRTOS V9.0.0 源碼4、FreeRTOS文件夾內容簡介5、移植FreeRTOS5.1 更改STM32工程模板文件夾名字5.2 提取FreeRTOS最簡源碼5.3 拷貝 FreeRTOSConfig.h 文件到 user 文件夾5.4 添加 FreeRTOS 源碼到工程組文件…

12.找到字符串中所有字母異位詞

🧠 題目解析 題目描述: 給定兩個字符串 s 和 p,找出 s 中所有 p 的字母異位詞的起始索引。 返回的答案以數組形式表示。 字母異位詞定義: 若兩個字符串包含的字符種類和出現次數完全相同,順序無所謂,則互為…

基于Springboot+Vue的辦公管理系統

角色: 管理員、員工 技術: 后端: SpringBoot, Vue2, MySQL, Mybatis-Plus 前端: Vue2, Element-UI, Axios, Echarts, Vue-Router 核心功能: 該辦公管理系統是一個綜合性的企業內部管理平臺,旨在提升企業運營效率和員工管理水…

【磁盤】每天掌握一個Linux命令 - iostat

目錄 【磁盤】每天掌握一個Linux命令 - iostat工具概述安裝方式核心功能基礎用法進階操作實戰案例面試題場景生產場景 注意事項 【磁盤】每天掌握一個Linux命令 - iostat 工具概述 iostat(I/O Statistics)是Linux系統下用于監視系統輸入輸出設備和CPU使…

專業文件比對輔助軟件

軟件介紹 本文介紹一款用于文件內容對比的計算機輔助工具,支持快速識別不同版本文檔間的差異內容。 功能與版本特性 這款工具提供無償使用授權,技術文檔顯示其開發歷程已達近三十年。程序采用獨立封裝設計,無需安裝即可直接運行。 基礎操…

【時時三省】(C語言基礎)變量的存儲方式和生存期

山不在高,有仙則名。水不在深,有龍則靈。 ----CSDN 時時三省 動態存儲方式與靜態存儲方式 從變量的作用域(即從空間)的角度來觀察,變量可以分為全局變量和局部變量。 還可以從另一個角度,即從變量值存在…

記錄:外擴GPIOD訪問報警告

rk提供的rfkill-bt.c驅動訪問外擴GPIO輸出如下警告: [ 4.694993] ------------[ cut here ]------------ [ 4.694994] WARNING: CPU: 7 PID: 582 at drivers/gpio/gpiolib.c:2805 gpiod_get_raw_value0x58/0xd4 [ 4.695003] Modules linked in: [ 4.69…

LangChain面試內容整理-知識點4:工具(Tool)機制與實現

在LangChain中,工具(Tool)是智能體(Agent)、鏈(Chain)或LLM可以調用的外部函數接口。可以將Tool理解為LLM可以使用的能力或插件:通過調用工具,LLM能夠獲取額外的信息或執行特定的動作,比如查詢數據庫、搜索互聯網、做數學計算等comet.compinecone.io。工具賦予了LLM交…