本教程适合于CPU是X64,arm64平台的openwrt系统
wget -O cpolar-public.key http://openwrt.cpolar.com/releases/public.key
opkg-key add cpolar-public.key
echo "src/gz cpolar_packages http://openwrt.cpolar.com/releases/packages/$(. /etc/openwrt_release ; echo $DISTRIB_ARCH)" >> /etc/opkg/customfeeds.conf
opkg update
opkg install luci-app-cpolar
opkg install luci-i18n-cpolar-zh-cn
前言
本次教程我们将在OpenWRT上安装SFTP服务,并结合cpolar内网穿透,创建安全隧道映射22端口,实现在公网环境下远程OpenWRT SFTP,安全地传输文件,比如备份文件、配置文件等。
更新包管理器
opkg update
然后安装SFTP 服务
opkg install vsftpd openssh-sftp-server
接下来加入开机启动
/etc/init.d/vsftpd enable
启动
/etc/init.d/vsftpd start
我们打开连接工具,这里以Filezilla 工具为例,填写局域网ip地址,用户名,密码,端口号:22 ,点击连接,即可成功
通过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内网穿透
点击进去后即可看到cpolar界面
登录cpolar官网,如果没有注册账号,可以先注册账号,然后点击左侧的验证
,查看自己的认证token
cpolar官网:https://www.cpolar.com
之后将官网查看的token复制到openwrt cpolar服务界面的Auth Token里,设置后点击保存
保存成功后点击界面里的 打开Web-UI界面
,即可看到cpolar web ui 界面
使用我们官网注册的账号登陆,登陆后即可对隧道进行管理,安装就完成啦
浏览器打开cpolar 管理界面,我们点击左侧仪表盘的隧道管理——创建隧道,由于SFTP连接默认的是22端口,因此我们要来创建一条tcp隧道,指向22端口:
点击创建
创建成功后我们点击左侧在线隧道列表查看创建的公网地址
我们再次打开连接工具,这里还是以Filezilla 工具为例,填写上面我们看到的ip地址,地址前面加上sftp://
,然后输入用户名和密码,端口号输入上面公网地址对应的端口号,点击连接,即可成功
上面通过cpolar建立的临时TCP数据隧道,不过,此时的TCP数据隧道还是随机临时TCP隧道,每个24小时端口号就会发生变化。如果想要让不同设备间的数据隧道长期稳定存在,我们还需要进一步的设置(由于固定TCP隧道会长期占用cpolar服务器资源,因此不得不将此服务列入VIP项目中(专业版套餐))。现在,就让我们来设置一条能长期稳定存在的TCP数据隧道吧。
要建立一条稳定的TCP数据隧道,我们首先要登录cpolar官网,进入仪表台的“预留”界面
在预留界面中,找到“保留的TCP地址”项目。在这个项目下,我们填入一些必要信息,如识别数据隧道的隧道名称、隧道使用区域等。
在这些信息填入后,点击右侧的“保留”按钮,将cpolar官网后台的隧道固定下来。此时cpolar会生成一个隧道tcp地址端口
接着我们回到浏览器cpolar界面,打开“隧道列表”,找到之前创建的随机临时TCP隧道,进入“编辑”页面,
将我们在cpolar官网获得的隧道端口粘贴进“预留的TCP地址”栏中,然后点击下方的“更新”按钮.
然后再次查看在线隧道列表,发现SFTP的隧道对应的公网地址变成了我们官网保留的固定地址
我们再次打开连接工具,这里还是以Filezilla 工具为例,填写上面我们固定的ip地址,地址前面加上sftp://
,然后输入用户名和密码,端口号输入上面固定公网地址对应的端口号,点击连接,即可成功
简单几步实现在公网环境下远程访问openWRT web 管理界面,使用cpolar内网穿透创建安全隧道映射openWRT web 界面面板443端口,无需公网IP,无需设置路由器。
通过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内网穿透
点击进去后即可看到cpolar界面,接下来配置cpolar Authtoken
登录cpolar官网,如果没有注册账号,可以先注册账号,然后点击左侧的验证
,查看自己的认证token,
cpolar官网:https://www.cpolar.com
之后将官网查看的token复制到openwrt cpolar服务界面的Auth Token
里,设置后点击save
保存
保存成功后点击界面里的 打开Web-UI界面
,即可看到cpolar web ui 管理界面
使用我们官网注册的账号登陆,登陆后即可对隧道进行管理,安装就完成啦
我们点击左侧仪表盘的隧道管理——创建隧道,openWRT web 界面面板的端口是443
,因此我们要来创建一条http隧道,指向443端口:
点击创建
创建成功后打开在线隧道列表,可以看到公网访问的地址,有两种公网地址访问方式,一种是http,一种是https
然后我们使用其中一种https方式地址在浏览器访问,即可看到我们的openWRT web界面,这样这个远程访问就配置好了,非常简单.
前面我们创建隧道时使用的是免费随机临时地址,它所生成的公网地址会在24小时内变化,为了方便长久稳定连接,我们可以固定访问地址,在cpolar中叫固定二级子域名,或者您也可以配置使用您自己的域名来访问。这里我们以cpolar子域名为例
需升级至基础套餐或以上才支持配置二级子域名
登录cpolar官网后台,点击左侧仪表盘的预留
,找到保留二级子域名
,为http隧道保留一个二级子域名。
本例保留一个名称为openwrtweb
的二级子域名。子域名保留成功后,我们将子域名复制下来,接下来需要将其配置到隧道中去。
打开cpolar web ui管理界面。点击左侧仪表盘的隧道管理
——隧道列表
,找到需要配置二级子域名的隧道,点击右侧的编辑
修改隧道信息,将二级子域名配置到隧道中:
二级子域名
openwrtweb
)修改完成后,点击更新
隧道更新成功后,点击左侧仪表盘的状态
——在线隧道列表
,可以看到隧道的公网地址,已经更新为二级子域名了.
然后我们使用其中一种https方式地址在浏览器访问,即可看到我们的openwrt界面,这样一个固定不变的远程访问openWRTweb 界面就配置好了
前言
uhttpd 是 OpenWrt/LuCI 开发者从零开始编写的 Web 服务器,目的是成为优秀稳定的、适合嵌入式设备的轻量级任务的 HTTP 服务器,并且和 OpenWrt 配置框架非常好地集成在一起。它是管理 OpenWrt 的默认的 Web 服务器,还提供了现代 Web 服务器所有的 功能 。
下面我们将在openwrt上部署uhttpd搭建web服务器,同时使用cpolar将其安全暴露到公网上,让公网用户也可以正常访问到openwrt下的web服务器。
正常版本下,如果可以在浏览器访问openWRT web控制台界面,表示已经安装了uhttpd,同样,我们可以在根目录下面看到一个名称为www
的目录,这样表示已经安装了uhttpd.
既然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 控制台界面位置.
此时我们在外部浏览器使用openWRT局域网ip地址加资源路径/meditation-app-master/index.html
即可看到我们下载部署的站点。如果不加资源路径,默认会跳转过去openWRT web 界面,此时我们一个静态站点就已经配置好了。
下面我们安装cpolar内网穿透来实现在公网环境下也可以远程访问这个web站点。
通过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内网穿透
点击进去后即可看到cpolar界面,接下来配置cpolar Authtoken
登录cpolar官网,如果没有注册账号,可以先注册账号,然后点击左侧的验证
,查看自己的认证token,
cpolar官网:https://www.cpolar.com
之后将官网查看的token复制到openwrt cpolar服务界面的Auth Token里,设置后点击save保存
保存成功后点击界面里的 打开Web-UI界面
,即可看到cpolar web ui 界面
使用我们官网注册的账号登陆,登陆后即可对隧道进行管理,安装就完成啦
在cpolar web ui管理界面中,我们点击左侧仪表盘的隧道管理
——创建隧道
,uhttpd由于部署在了openWRT Web管理界面,设置了SSL,所以端口使用443,因此我们要来创建一条http隧道
,指向443端口
:
点击创建
创建成功后打开在线隧道列表,可以看到公网访问的地址,有两种公网地址访问方式,一种是http,一种是https
然后我们使用其中一种http方式公网地址,并且加上资源路径:/meditation-app-master/index.html
在浏览器访问,即可看到我们的站点界面,这样这个远程访问就配置好了.
前面我们创建隧道时使用的是免费随机临时地址,它所生成的公网地址会在24小时内变化,为了方便长久稳定连接,我们可以固定访问地址,在cpolar中叫固定二级子域名,或者您也可以配置使用您自己的域名来访问。这里我们以cpolar子域名为例
需升级至基础套餐或以上才支持配置二级子域名
登录cpolar官网后台,点击左侧仪表盘的预留
,找到保留二级子域名
,为http隧道保留一个二级子域名。
本例保留一个名称为websitewrt
的二级子域名。子域名保留成功后,我们将子域名复制下来,接下来需要将其配置到隧道中去。
打开cpolar web ui管理界面。点击左侧仪表盘的隧道管理
——隧道列表
,找到需要配置二级子域名的隧道,点击右侧的编辑
修改隧道信息,将二级子域名配置到隧道中:
二级子域名
修改完成后,点击更新
隧道更新成功后,点击左侧仪表盘的状态
——在线隧道列表
,可以看到隧道的公网地址,已经更新为二级子域名了.
然后我们使用其中一种http方式地址在浏览器访问,即可看到我们的站点界面,这样一个固定不变的远程访问个人站点配置好了
简单几步实现openWRT结合cpolar内网穿透工具实现远程连接
cpolar是一个非常棒的跨平台
、内网穿透工具
,可以通过安全隧道将NAT或防火墙后面的本地服务器,暴露给公共互联网。
通过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内网穿透
点击进去后即可看到cpolar界面
登录cpolar官网,如果没有注册账号,可以先注册账号,然后点击左侧的验证
,查看自己的认证token,
https://www.cpolar.com
之后将官网查看的token复制到openwrt cpolar服务界面的Auth Token里,设置后点击保存
保存成功后点击界面里的 打开Web-UI界面
,即可看到cpolar web ui 界面
使用我们在cpolar官网注册的邮箱账号登陆,登陆后即可对隧道进行管理,安装就完成啦
浏览器打开cpolar web UI管理界面,我们点击左侧仪表盘的隧道管理
——创建隧道
,由于ssh连接默认的是22端口
,因此我们要来创建一条tcp隧道,指向22端口:
点击创建
创建好后打开在线隧道列表,查看生成的随机公网tcp地址,复制公网地址,注意无需复制tcp://
打开连接工具,输入生成的公网地址,tcp://
不需要输入,端口号是cpolar公网地址后面的公网端口号,点击连接
然后出现输入用户名和密码,即可登陆成功
同样 使用命令行也是连接成功
ssh -p 公网端口号 username@公网地址
这里需要注意,由于我们的本地22端口到了公网被映射到了12807端口(您的公网端口可能不一样),所以,ssh命令需要加-p参数,后面加公网端口号
上面使用cpolar建立的临时TCP数据隧道,成功通过ssh连接上了openWRT系统。不过,此时的TCP数据隧道还是随机临时TCP隧道,每隔24小时端口号就会发生变化。
如果想要让不同设备间的数据隧道长期稳定存在,我们还需要进一步的设置(由于固定TCP隧道会长期占用cpolar服务器资源,因此不得不将此服务列入VIP项目中)。
要建立一条稳定的TCP数据隧道,我们首先要登录cpolar官网,进入仪表台的预留
界面
在预留界面中,找到保留的TCP地址
项目。在这个项目下,我们填入一些必要信息,如识别数据隧道的隧道名称、隧道使用区域等。
在这些信息填入后,点击右侧的保留
按钮,将cpolar官网后台的隧道固定下来,此时cpolar会生成一个隧道tcp端口
接着我们回到浏览器cpolar界面,打开隧道列表
,找到之前创建的随机临时TCP隧道,进入编辑
页面,
将我们在cpolar官网获得的隧道端口粘贴进预留的TCP地址
栏中,然后点击下方的更新
按钮.
然后再次查看在线隧道列表,发现ssh的隧道对应的公网地址变成了我们官网保留的固定地址
打开连接工具,创建一个连接,输入固定的公网地址,tcp://
不需要输入,端口号是公网地址后面的端口号,然后点击连接
然后输入用户名和密码,我们可以看到连接成功
同样,我们使用命令行模式连接也是成功的,现在这个公网地址是固定的了,不会再随机变化,只要保持隧道可以正常在线,我们在公网环境下就可以通过这个公网地址来ssh远程内网的openwrt。