1 滲透基礎

目錄

基礎前沿

1 vulhub環境搭建

1 proxychains工具:編輯配置文件

2 docker

docker環境搭建

配置docker的代理:

2 nginx編譯安裝--FPM

1 php.ini

2 php-fpm

3 nginx

4 nginx php-fpm php

1 基本角色分工

2. 請求處理全流程

步驟 1:客戶端發送請求

步驟 2:Nginx 接收請求

步驟 3:Nginx 配置示例

步驟 4:Nginx 與 PHP-FPM 通信

步驟 5:PHP-FPM 處理請求

步驟 6:PHP 腳本執行

步驟 7:結果返回

步驟 8:Nginx 返回響應

總結

3 DNS

命令解釋

1 dig

2 nslookup

DNS的解析過程


基礎前沿

1 vulhub環境搭建

1 proxychains工具:編輯配置文件

vim /etc/proxychains.conf

查看代理端口號:7890

查看本機網卡,一般虛擬機都是vmnet8:

設置配置文件,改代理IP和端口號

測試: proxychains curl http://www.google.com

后面又去訪問了google發現不行了,但是訪問其他的外網可以正常訪問

2 docker

docker環境搭建

需要下載以下的包,如果下載失敗可以先apt upgrade 或者 --fix-missing解決問題

sudo apt-get install --fix-missing docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

配置docker的代理:

先創建配置目錄

mkdir -p /etc/systemd/system/docker.service.d

寫代理:

sudo tee /etc/systemd/system/docker.service.d/proxy.conf <<-'EOF'

[Service]

Environment="HTTP_PROXY=http://192.168.37.1:7890"

Environment="HTTPS_PROXY=http://192.168.37.1:7890"

Environment="NO_PROXY=localhost,127.0.0.1,192.168.37.0/24" # 不代理本地和局域網地址 EOF

測試:拉取環境

docker ps -a

docker rm -f $(docker ps -aq)

docker images

docker rmi $(docker images | awk '{print $3}')

刪除第三列的ID

然后構建鏡像環境:

docker compose up -d

部署完成,查看鏡像和容器:

docker ps -a

docker images

本地訪問查看是否成功:

ok!部署完成

進入容器:

docker exec -it 9b7a360a3476 /bin/bash

這里有一個.dockerenv文件,說明我是在docker容器里面,如果說拿下一個網站有這個說明是在容器里面,并沒有進入真實的物理機(所以有docker逃逸)

因為docker是最小化的安裝,所以他的很多命令都沒有

修改docker文件的方法:

1,直接下載軟件安裝包或者更新源

apt-get upgrade

2,將文件名復制出來,在本地進行修改

docker cp 9b7a360a3476:/var/www/html/color.php /tmp

打開進行修改再復制回去,因為cp是覆蓋

3,vscode直接修改

2 nginx編譯安裝--FPM

1 php.ini

2 php-fpm

3 nginx

進入此配置目錄

修改nginx的配置文件,配置與php聯動的文件

root@yang:/usr/local/nginx/conf#vim nginx.conf

4 nginx php-fpm php

1 基本角色分工
  • Nginx:高性能的 Web 服務器和反向代理服務器,負責接收客戶端請求、靜態文件處理和請求轉發。
  • PHP-FPM:PHP FastCGI 進程管理器,負責管理 PHP 進程池并處理 PHP 腳本的執行。
  • PHP:腳本語言,執行 PHP 代碼并生成動態內容
2. 請求處理全流程
步驟 1:客戶端發送請求

用戶通過瀏覽器或其他客戶端工具(如?curl)訪問網站,例如請? 求?http://example.com/index.php

步驟 2:Nginx 接收請求

Nginx 作為 Web 服務器監聽 80/443 端口,接收到請求后根據配置文件(nginx.conf?中的配置)決定如何處理:

  • 靜態文件請求:直接返回 HTML、CSS、JS、圖片等靜態資源。
  • PHP 腳本請求:通過?fastcgi_pass?指令將請求轉發給 PHP-FPM 處理
步驟 3:Nginx 配置示例

步驟 4:Nginx 與 PHP-FPM 通信

Nginx 通過?FastCGI 協議?將請求轉發給 PHP-FPM:

  • 通信方式
    • TCP 套接字(如?127.0.0.1:9000):適合跨服務器通信或調試。
    • Unix 套接字(如?/run/php/php7.4-fpm.sock):性能更高,適合本地通信。
  • 傳遞參數:Nginx 將請求信息(如?SCRIPT_FILENAMEQUERY_STRINGHTTP_HOST?等)封裝為 FastCGI 參數傳遞給 PHP-FPM。
步驟 5:PHP-FPM 處理請求

PHP-FPM 接收到請求后:

  1. 進程池管理:從空閑進程池中選擇一個 PHP 進程(若沒有則創建新進程,需配置允許)。
  2. 執行 PHP 腳本:PHP 進程讀取并執行指定的 PHP 文件(如?index.php)。
  3. 環境準備:PHP 進程會加載?php.ini?配置,并根據腳本需求加載擴展(如?mysqliredis?等)。
步驟 6:PHP 腳本執行

PHP 解釋器執行腳本,可能涉及:

  • 數據庫查詢(如 MySQL、PostgreSQL)。
  • 文件讀寫。
  • 調用第三方 API。
  • 生成動態內容(如 HTML、JSON)。
步驟 7:結果返回

PHP 執行完成后,將生成的內容(如 HTML 頁面)返回給 PHP-FPM,PHP-FPM 再通過 FastCGI 協議將結果返回給 Nginx。

步驟 8:Nginx 返回響應

Nginx 收到 PHP-FPM 的響應后,添加 HTTP 頭(如?Content-TypeCache-Control),并將內容返回給客戶端瀏覽器。

總結
  • Nginx 負責請求分發:靜態文件自己處理,PHP 腳本轉發給 PHP-FPM。
  • PHP-FPM 管理進程池:提高 PHP 腳本執行效率,避免頻繁創建進程。
  • PHP 專注業務邏輯:執行代碼并生成動態內容。

3 DNS

命令解釋

此節介紹了DNS查詢常用命令nslookup和dig。nslookup可進行正向解析、查詢指定數據類型和TTL值等,支持指定域名服務器;dig能正向、反向解析,查詢特定記錄及追蹤解析過程。nslookup適合基本查詢和診斷,dig功能更強大全面。

1 dig

1.正向解析:使用 dig 域名 @server-ip 的格式,其中server-ip是指定的DNS服務器IP地址。

2.反向解析:使用 dig –x ip @server-ip 的格式,可以查詢指定IP地址對應的域名。

3.查詢特定類型的記錄:使用 dig 域名 type 的格式,其中type是想要查詢的記錄類型,如A、AAAA、MX、NS、SOA等。

4.追蹤解析過程:使用 dig +trace 域名 的格式,可以追蹤域名的解析過程,顯示從根域名服務器開始到最終權威服務器的解析路徑。

2 nslookup

1.正向解析:直接輸入 nslookup 域名,例如 nslookup www.baidu.com,即可查詢指定域名的IP地址。

2.查詢域名制定數據類型:使用 nslookup type=類型 域名 的格式,其中類型可以是A、AAAA、MX、NS、SOA等,用于查詢指定類型的記錄。 3.查詢域名TTL值:使用 nslookup –d 域名 的格式,可以查詢指定域名的TTL值。 此外,nslookup還支持指定域名服務器進行查詢。例如,nslookup server 8.8.8.8 可以將Google的公共DNS服務器8.8.8.8設置為默認服務器進行查詢。

nslookup更適合基本的DNS查詢和網絡診斷,而dig則提供了更為深入和全面的DNS查詢和分析功能。

DNS的解析過程

①客戶機向其本地域名服務器發出DNS請求報文。

②本地域名服務器收到請求后,查詢本地緩存,若沒有該記錄,則以DNS客戶的身份向根域名服務器發出解析請求。

③根域名服務器收到請求后,判斷該域名屬于.com域,將對應的頂級域名服務器dns.com的IP地址返回給本地域名服務器。 ④本地域名服務器向頂級域名服務器dns.com發出解析請求報文。

⑤頂級域名服務器dns.com收到請求后,判斷該域名屬于abc.com域,因此將對應的授權域名服務器dns.abc.com的IP地址返回給本地域名服務器。

⑥本地域名服務器向授權域名服務器dns.abc.com發起解析請求報文。

⑦授權域名服務器dns.abc.com收到請求后,將查詢結果返回給本地域名服務器。

⑧本地域名服務器將查詢結果保存到本地緩存,同時返回給客戶機

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

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

相關文章

基于Java+SpringBoot 的榆林特色旅游網站

源碼編號&#xff1a;S678源碼名稱&#xff1a;基于SpringBoot 的榆林特色旅游網站用戶類型&#xff1a;雙角色&#xff0c;用戶、管理員數據庫表數量&#xff1a;22 張表主要技術&#xff1a;Java、Vue、ElementUl 、SpringBoot、Maven運行環境&#xff1a;Windows/Mac、JDK1…

Python設計模式深度解析:單例模式(Singleton Pattern)完全指南

Python設計模式深度解析&#xff1a;單例模式&#xff08;Singleton Pattern&#xff09;完全指南前言什么是單例模式&#xff1f;單例模式的三個關鍵要素基礎實現&#xff1a;異常控制式單例Python中的經典單例實現1. 使用 __new__ 方法實現2. 線程安全的單例實現3. 裝飾器實現…

LVS 原理詳解及部署(包含實驗案例)

一、集群和分布式簡介1.系統性能擴展方式Scale Up&#xff08;向上擴展&#xff09;&#xff1a;通過增強單臺服務器的硬件性能&#xff08;如提升 CPU、內存、存儲等&#xff09;來提高處理能力&#xff0c;適用于業務初期或對單點性能要求高的場景。這種方式簡單易行&#xf…

兩個路由器通過不同的網段互聯

一&#xff0c;實驗拓撲圖&#xff1a;二、實驗說明 &#xff1a;在兩個接口配置好兩個不同網段的的ip地址后是不能相互通信的。經過測試用ospf把兩個網段宣告進area 0 是行不通的。最后我們通過靜態路由來配置&#xff0c;遇到一個最大的問題是&#xff0c;我們的下一跳地址應…

Python趣味算法:冒泡排序——從理論到極致優化

排序算法是程序員的必修課,而冒泡排序是理解算法思維的絕佳起點。本文將深入解析冒泡排序的7種優化技巧,通過可視化演示+多維度性能分析,帶你徹底掌握這一經典算法! 看在每天堅持分享有趣知識的份上,點個關注吧(づ ̄ 3 ̄)づ 關注是我更新的動力 ̄︶ ̄? ̄︶ ̄?) 作者會…

[simdjson] document_stream | iterate_many() | batch_size | 線程加速 | 輕量handle

第七章&#xff1a;文檔流 歡迎回來 在前面的章節中&#xff0c;我們學習了如何使用解析器結合填充字符串獲取表示JSON根節點的文檔&#xff0c;并通過按需API&#xff08;On-Demand API&#xff09;遍歷值、對象和數組&#xff0c;同時使用simdjson_result進行錯誤處理。 到…

【機器學習】向量數據庫選型指南:企業內網部署場景

向量數據庫選型指南&#xff1a;企業內網部署場景一、選型背景與關鍵需求 在企業級機器學習應用中&#xff0c;特別是涉及圖片、視頻等非結構化數據的場景&#xff0c;向量數據庫已成為核心基礎設施。傳統數據庫難以高效處理高維向量的相似度檢索需求&#xff08;如圖片相似性搜…

Django母嬰商城項目實踐(八)- 數據渲染與顯示之首頁

8、數據渲染與顯示 1 概述 Django作為Web框架,需要一種很便利的方法動態地生成HTML網頁,因此有了模板這個概念。模板包含所需HTML的部分代碼以及一些特殊語法,特殊語法用于描述如何將視圖傳遞的數據動態插入HTML網頁中。 Django可以配置一個或多個模板引擎(甚至是0個,如前…

Redis常見線上問題

文章目錄 Redis常見線上問題 引言 報告背景與目的 Redis版本與環境說明 性能瓶頸問題 慢查詢分析與優化 高CPU與網絡延遲 內存管理問題 內存碎片成因與優化 BigKey與內存溢出 數據一致性與高可用問題 主從同步延遲 腦裂問題與解決方案 持久化機制問題 RDB與AOF對比 核心特性對比…

Typecho博客集成阿里云CDN+OSS實現全站加速方案

文章目錄 Typecho博客系統集成阿里云CDN和OSS實現靜態資源加速 引言 一、技術選型與準備工作 1.1 為什么選擇阿里云CDN+OSS組合 1.2 準備工作 二、OSS存儲桶創建與配置 2.1 創建OSS存儲桶 2.2 配置Bucket權限 2.3 配置跨域訪問(CORS) 三、CDN加速配置 3.1 添加CDN域名 3.2 配置…

計算機畢業設計Java網咖管理系統 Java技術實現的網咖綜合管理系統開發 基于Spring Boot框架的網咖運營管理系統設計

計算機畢業設計Java網咖管理系統e0btvq7l &#xff08;配套有源碼 程序 mysql數據庫 論文&#xff09;本套源碼可以先看具體功能演示視頻領取&#xff0c;文末有聯xi 可分享隨著互聯網技術的飛速發展和電子競技的全球興起&#xff0c;網咖作為一種新興的休閑娛樂場所&#xff0…

Kotlin main函數

main() 函數 來仔細看看 main() 函數。實際上&#xff0c;它就是一個很常見的函數&#xff1a;你可以對它做任何你能對普通函數做的事。唯一的不同是&#xff1a;它是程序的入口點&#xff08;entry point&#xff09;。這意味著程序的執行從調用這個函數開始。 我們來拆解一下…

深入理解 Spring:事務管理與事件機制全解析

文章目錄前言一、Spring 事務管理&#xff08;Transaction Management&#xff09;1. 使用 Transactional 管理事務2. 核心屬性說明3. 事務傳播行為詳解&#xff08;Propagation&#xff09;4. 異常回滾策略分析5. 底層原理剖析&#xff08;源碼級&#xff09;二、Spring 事件機…

AWD練習的平臺搭建

ubuntu虛擬機搭建 前提資源準備 進行AWD我們需要在一個獨立的虛擬機 現在就來搭建一個ubuntu的 這里我們使用的VMware是17的 然后下載鏡像的地址&#xff1a;Ubuntu最全的國內鏡像下載地址 - 嗶哩嗶哩 我下載的是中科大的 這里需要準備的前提資源就有了。 創建Ubuntu虛…

C++ 詳談繼承體系下的構造函數和析構函數

前言 前面呢, 我們說了C中實現多態的原理, 其中也說了, 虛函數表和虛函數指針的創建時機, C 詳談多態實現原理-CSDN博客 , 這一節呢, 我們會說說在C中繼承體系下的另一個知識點, 那就是: 繼承體系下的構造函數和析構函數~~, 主要圍繞兩個問題: 執行順序? 虛析構函數的作用? …

PostgreSQL 字段類型速查與 Java 枚舉映射

1. 查詢 SQLSELECTc.table_schema,c.table_name,c.column_name,c.data_type,c.udt_name,CASE-- 數值WHEN c.udt_name IN (int2,int4,int8,float4,float8,numeric,money)THEN NUMERIC-- 布爾WHEN c.udt_name boolTHEN BOOLEAN-- 日期/時間WHEN c.udt_name IN (date,time,timetz…

數據分析綜合應用 30分鐘精通計劃

?? 數據分析綜合應用 30分鐘精通計劃(完整版含輸出) ? 時間分配 5分鐘:數據加載與清洗基礎 10分鐘:探索性數據分析(EDA) 10分鐘:數據分析實戰案例 5分鐘:分析報告生成 ?? 第一部分:數據加載與清洗基礎 (5分鐘) 1. 模擬真實數據集 import pandas as pd import nu…

Python爬蟲實戰:研究psd-tools庫相關技術

一、引言 1.1 研究背景 Adobe Photoshop 是目前最流行的圖像處理軟件之一,其原生文件格式 PSD(Photoshop Document)包含了豐富的圖像信息和編輯歷史。PSD 文件不僅在設計領域廣泛使用,還在數字營銷、版權保護和安全分析等領域具有重要價值。然而,手動分析大量 PSD 文件是…

基于卷積傅里葉分析網絡 (CFAN)的心電圖分類的統一時頻方法

一、研究背景與核心問題??ECG分類的挑戰?&#xff1a;心電圖&#xff08;ECG&#xff09;信號分類在心律失常檢測、身份識別等領域至關重要&#xff0c;但傳統方法難以同時有效整合時域和頻域信息。現有方法包括&#xff1a;?時域分類&#xff08;CNN1D&#xff09;??&am…

Linux——LinuxOS

cd,pwd,mkdir,rm,ls,touch,cat,echo,