如何在OpenWRT軟路由系統部署uhttpd搭建web服務器實現遠程訪問——“cpolar內網穿透”

文章目錄

  • 前言
    • 1. 檢查uhttpd安裝
    • 2. 部署web站點
    • 3. 安裝cpolar內網穿透
    • 4. 配置遠程訪問地址
    • 5. 配置固定遠程地址

前言

uhttpd 是 OpenWrt/LuCI 開發者從零開始編寫的 Web 服務器,目的是成為優秀穩定的、適合嵌入式設備的輕量級任務的 HTTP 服務器,并且和 OpenWrt 配置框架非常好地集成在一起。它是管理 OpenWrt 的默認的 Web 服務器,還提供了現代 Web 服務器所有的 功能 。

下面我們將在openwrt上部署uhttpd搭建web服務器,同時使用cpolar將其安全暴露到公網上,讓公網用戶也可以正常訪問到openwrt下的web服務器。

1. 檢查uhttpd安裝

正常版本下,如果可以在瀏覽器訪問openWRT web控制臺界面,表示已經安裝了uhttpd,同樣,我們可以在根目錄下面看到一個名稱為www的目錄,這樣表示已經安裝了uhttpd.

image-20230523130756649

2. 部署web站點

既然uhttpd已經安裝好了,我們就可以直接使用,我們只需要把我們的站點拷貝進去www文件夾下面即可。接下來主要介紹html網站部署,使用一個免費站點進行演示

進入www文件夾

cd /www

使用wget下載站點,ftp上傳文件也可以

wget https://www.cpolar.com/static/downloads/meditation-app-master.tar.gz

下載好后解壓

tar xzf meditation-app-master.tar.gz

解壓后我們可以看到一個名稱為meditation-app-master的文件夾,這里還可以看到一個名稱為cgi-bin的文件夾,這個就是openWRT web 控制臺界面位置.

image-20230523131916555

此時我們在外部瀏覽器使用openWRT局域網ip地址加資源路徑/meditation-app-master/index.html即可看到我們下載部署的站點。如果不加資源路徑,默認會跳轉過去openWRT web 界面,此時我們一個靜態站點就已經配置好了。

下面我們安裝cpolar內網穿透來實現在公網環境下也可以遠程訪問這個web站點。

image-20230523132258910

3. 安裝cpolar內網穿透

通過ssh連接操作openwrt, 下載公鑰:

wget -O cpolar-public.key http://openwrt.cpolar.com/releases/public.key

下載完成后添加公鑰

opkg-key add cpolar-public.key

添加cpolar的opkg倉庫源

echo "src/gz cpolar_packages http://openwrt.cpolar.com/releases/packages/$(. /etc/openwrt_release ; echo $DISTRIB_ARCH)"  >>  /etc/opkg/customfeeds.conf

更新倉庫

opkg update

然后開始安裝cpolar,分別執行下面三個安裝命令安裝三個包:

opkg install cpolar
opkg install luci-app-cpolar
opkg install luci-i18n-cpolar-zh-cn

安裝完成后,打開openwrt Web管理界?,我們可以看到有個service,點擊后,即可看到我們cpolar內網穿透

image-20230426172304148

點擊進去后即可看到cpolar界面,接下來配置cpolar Authtoken

登錄cpolar官網,如果沒有注冊賬號,可以先注冊賬號,然后點擊左側的驗證,查看自己的認證token,

cpolar官網:https://www.cpolar.com

20230111103532

之后將官網查看的token復制到openwrt cpolar服務界面的Auth Token里,設置后點擊save保存

image-20230426174954224

保存成功后點擊界面里的 打開Web-UI界面 ,即可看到cpolar web ui 界面

使用我們官網注冊的賬號登陸,登陸后即可對隧道進行管理,安裝就完成啦

4. 配置遠程訪問地址

在cpolar web ui管理界面中,我們點擊左側儀表盤的隧道管理——創建隧道,uhttpd由于部署在了openWRT Web管理界面,設置了SSL,所以端口使用443,因此我們要來創建一條http隧道,指向443端口

  • 隧道名稱:可自定義,注意不要重復
  • 協議:http
  • 本地地址:443
  • 域名類型:選擇隨機域名
  • 地區:選擇China VIP

點擊創建

image-20230523140759808

創建成功后打開在線隧道列表,可以看到公網訪問的地址,有兩種公網地址訪問方式,一種是http,一種是https

image-20230523140850963

然后我們使用其中一種http方式公網地址,并且加上資源路徑:/meditation-app-master/index.html在瀏覽器訪問,即可看到我們的站點界面,這樣這個遠程訪問就配置好了.

image-20230523141202524

5. 配置固定遠程地址

前面我們創建隧道時使用的是免費隨機臨時地址,它所生成的公網地址會在24小時內變化,為了方便長久穩定連接,我們可以固定訪問地址,在cpolar中叫固定二級子域名,或者您也可以配置使用您自己的域名來訪問。這里我們以cpolar子域名為例

需升級至基礎套餐或以上才支持配置二級子域名

登錄cpolar官網后臺,點擊左側儀表盤的預留,找到保留二級子域名,為http隧道保留一個二級子域名。

  • 地區:選擇服務器地區
  • 名稱:填寫您想要保留的二級子域名(可自定義)
  • 描述:即備注,可自定義填寫

image-20230523142316564

本例保留一個名稱為websitewrt的二級子域名。子域名保留成功后,我們將子域名復制下來,接下來需要將其配置到隧道中去。

image-20230523142403980

打開cpolar web ui管理界面。點擊左側儀表盤的隧道管理——隧道列表,找到需要配置二級子域名的隧道,點擊右側的編輯

修改隧道信息,將二級子域名配置到隧道中:

  • 域名類型:改為選擇二級子域名
  • *Sub Domain:填寫我們剛剛所保留的二級子域名

修改完成后,點擊更新

image-20230523142620625

隧道更新成功后,點擊左側儀表盤的狀態——在線隧道列表,可以看到隧道的公網地址,已經更新為二級子域名了.

然后我們使用其中一種http方式地址在瀏覽器訪問,即可看到我們的站點界面,這樣一個固定不變的遠程訪問個人站點配置好了

image-20230523144012999

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

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

相關文章

docker-compose的介紹與使用

一、docker-compose 常用命令和指令 1. 概要 默認的模板文件是 docker-compose.yml,其中定義的每個服務可以通過 image 指令指定鏡像或 build 指令(需要 Dockerfile)來自動構建。 注意如果使用 build 指令,在 Dockerfile 中設置…

RHEL網絡服務器

目錄 1.時間同步的重要性 2.配置時間服務器 (1)指定所使用的上層時間服務器。 (2)指定允許訪問的客戶端 (3)把local stratum 前的注釋符#去掉。 3.配置chrony客戶端 (1)修改pool那行,指定要從哪臺時間…

Python常見面試知識總結(一):迭代器、拷貝、線程及底層結構

前言: Hello大家好,我是Dream。 今天來總結一下Python和C語言中常見的面試知識,歡迎大家一起前來探討學習~ 【一】Python中迭代器的概念? 可迭代對象是迭代器、生成器和裝飾器的基礎。簡單來說,可以使用for來循環遍歷…

[古劍山2023] pwn

最近這個打stdout的題真多。這個比賽沒打。拿到附件作了一天。 choice 32位,libc-2.23-i386,nbytes初始值為0x14,讀入0x804A04C 0x14字節后會覆蓋到nbytes 1個字節。當再次向v1讀入nbytes字節時會造成溢出。 先寫0x14p8(0xff)覆蓋到nbytes然后溢出寫傳…

初次參加軟考就想報高級,哪個相對容易考?

如果你想第一次參加軟考時就報考高級科目,但是卻不知道該報考高級中的哪個科目好、 ? ?那么今天的這篇文章你一定不要錯過!首先,我們一起來了解一下,軟考高級中的5個科目。 ? ?軟考高級科目 ? 信息系統項目管理師 ? …

記錄一次postgresql臨時表丟失問題

項目相關技術棧 springboot hikari連接池pgbouncerpostgresql數據庫 背景 為了優化一個任務執行的速度,我將任務的sql中部分語句抽出生成臨時表(create temp table tempqw as xxxxxxxxx),再和其他表關聯,提高查詢速…

三翼鳥2023輝煌收官, 定盤2024高質量棋局

最近在不同平臺上接連看到這樣的熱搜話題:用時間膠囊記錄2023的自己、2023年度問答、2023十大網絡流行語公布… 顯然, 2023年進入最后一個月,時間匆匆,這也意味著又到了總結過去和規劃未來的時候。拿到結果、取得成績當然是對202…

算法通關村第十五關 | 白銀 | 海量數據場景下的熱門算法題

1.從 40 個億中產生一個不存在的整數 可以采用位圖存儲數據,申請一個 bit 類型的數組 bitArr ,每個位置只表示 0 或者 1 狀態,可以將占用內存縮小為使用哈希表的 1/32 。 遍歷給定的 40 億個數,遇到數時就將 bitArr 相應位置設置…

短視頻引流獲客系統:引領未來營銷的新潮流

在這個信息爆炸的時代,短視頻已經成為了人們獲取信息的主要渠道之一。而隨著短視頻的火爆,引流獲客系統也逐漸成為了營銷領域的新寵。本文將詳細介紹短視頻引流獲客系統的開發流程以及涉及到的技術,讓我們一起來看看這個引領未來營銷的新潮流…

華清遠見作業第二十四天

使用消息隊列完成兩個進程之間相互通信 代碼 #include<stdio.h> #include<string.h> #include<stdlib.h> #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> #include <sys/ipc.h> #include <sys/msg.h> #in…

k8s一鍵部署uniswap

1、拉取uniswap源碼 github地址 2、編寫Dockerfile并打鏡像 # Set the base image FROM node:18.10.0# WORKDIR /usr/src/app/ WORKDIR /home/gateway# Copy files COPY ./ /home/gateway/# Dockerfile author / maintainer LABEL maintainer"Michael Feng <mikehummi…

Java最全面試題專題---2、Java集合容器(2)

Map接口 說一下 HashMap 的實現原理&#xff1f; HashMap概述&#xff1a; HashMap是基于哈希表的Map接口的非同步實現。此實現提供所有可選的映射操作&#xff0c;并允許使用null值和null鍵。此類不保證映射的順序&#xff0c;特別是它不保證該順序恒久不變。 HashMap的數據…

C語言-枚舉

常量符號化 用符號而不是具體的數字來表示程序中的數字 枚舉 用枚舉而不是定義獨立的const int變量 枚舉是一種用戶定義的數據類型&#xff0c;他用關鍵詞enum以如下語法來聲明&#xff1a; enum枚舉類型名字{名字0&#xff0c;…&#xff0c;名字n}&#xff1b; 枚舉類型名…

外包干了3年,技術退步太明顯了。。。。。

先說一下自己的情況&#xff0c;本科生生&#xff0c;18年通過校招進入武漢某軟件公司&#xff0c;干了差不多3年的功能測試&#xff0c;今年國慶&#xff0c;感覺自己不能夠在這樣下去了&#xff0c;長時間呆在一個舒適的環境會讓一個人墮落!而我已經在一個企業干了四年的功能…

6_CSS布局之浮動的應用

day06_CSS布局之浮動的應用 本課目標&#xff08;Objective&#xff09; 理解什么是浮動掌握浮動的三種機制掌握浮動的案例應用 1 CSS 布局的三種機制 CSS 提供了 3 種機制來設置盒子的擺放位置&#xff0c;分別是普通流&#xff08;標準流&#xff09;、浮動和定位。 普通流…

HarmonyOS開發:回調實現網絡的攔截

前言 基于http封裝的一個網絡庫&#xff0c;里面有一個知識點&#xff0c;在初始化的時候&#xff0c;可以設置請求頭攔截和請求錯誤后的信息的攔截&#xff0c;具體案例如下&#xff1a; et.getInstance().init({netErrorInterceptor: new MyNetErrorInterceptor(), //設置全…

web網絡安全

web安全 一&#xff0c;xss 跨站腳本攻擊(全稱Cross Site Scripting,為和CSS&#xff08;層疊樣式表&#xff09;區分&#xff0c;簡稱為XSS)是指惡意攻擊者在Web頁面中插入惡意javascript代碼&#xff08;也可能包含html代碼&#xff09;&#xff0c;當用戶瀏覽網頁之時&…

關于北京醫學sci論文翻譯

在醫學領域&#xff0c;翻譯論文是一項非常重要的工作。醫學論文的翻譯需要準確、專業、嚴謹&#xff0c;同時也需要考慮到醫學領域的特殊性和復雜性。那么&#xff0c;如何翻譯醫學論文呢&#xff1f;北京醫學SCI論文翻譯哪家好呢&#xff1f; 首先&#xff0c;需要具備專業的…

多目標跟蹤數據集

目錄 DanceTrack數據集 自己改進的可視化代碼: DanceTrack數據集 DanceTrack 是一個大規模的多對象跟蹤數據集。用于在遮擋、頻繁交叉、同樣服裝和多樣化身體姿態條件下對人進行跟蹤。強調運動分析在多對象跟蹤中的重要性。 GitHub地址:https://github.com/DanceTrack/Dan…

python自動化測試實戰 —— 單元測試框架

軟件測試專欄 感興趣可看&#xff1a;軟件測試專欄 自動化測試學習部分源碼 python自動化測試相關知識&#xff1a; 【如何學習Python自動化測試】—— 自動化測試環境搭建 【如何學習python自動化測試】—— 瀏覽器驅動的安裝 以及 如何更…