1. cpolar安装教程
本教程适合于CPU是X64,ARM64平台的OpenWrt系统
1.1 SSH登录OpenWrt路由器
可以使用puTTY等工具ssh登录,在Host Name处输入路由器IP地址,点击Open即可。
1.2 在命令行下,添加cpolar插件的仓库源
1.2.1 下载公钥
wget -O cpolar-public.key http://openwrt.cpolar.com/releases/public.key
opkg-key add cpolar-public.key
1.2.2 将cpolar源添加至包管理器
echo "src/gz cpolar_packages http://openwrt.cpolar.com/releases/packages/$(. /etc/openwrt_release ; echo $DISTRIB_ARCH)" >> /etc/opkg/customfeeds.conf
1.2.3 更新包管理器
opkg update
1.3 安装cpolar插件
opkg install cpolar
opkg install luci-app-cpolar
opkg install luci-i18n-cpolar-zh-cn
2. SFTP远程文件传输
前言
本次教程我们将在OpenWrt上安装SFTP服务,并结合cpolar内网穿透,创建安全隧道映射22端口,实现在公网环境下远程OpenWrt SFTP,安全地传输文件、备份文件、配置文件等。
- SFTP是一种安全文件传输协议,它基于SSH协议,提供了加密、认证和数据完整性保护。
- cpolar是一个安全且强大的内网穿透工具,它可以通过安全隧道将NAT或防火墙后面的本地服务器,暴露给公共互联网。用过一段时间后你会发现,它甚至还可以直接在家中实现小型的云服务。
2.1 openssh-sftp-server 安装
更新包管理器
opkg update
然后安装SFTP 服务
opkg install vsftpd openssh-sftp-server
接下来加入开机启动
/etc/init.d/vsftpd enable
启动
/etc/init.d/vsftpd start
我们打开连接工具,这里以Filezilla工具为例,填写局域网ip地址、用户名、密码、端口号:22,点击连接,即可成功
2.2 安装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内网穿透
点击进去后即可看到cpolar界面
登录cpolar官网,如果没有注册账号,可以先注册账号,然后点击左侧的验证
,查看自己的认证token
cpolar官网:https://www.cpolar.com
之后将官网查看的token复制到OpenWrt cpolar服务界面的Auth Token里,设置后点击保存
保存成功后点击界面里的打开Web-UI界面
,即可看到cpolar Web UI界面
使用我们官网注册的账号登陆,登陆后即可对隧道进行管理,安装就完成啦
2.3 配置SFTP远程访问
浏览器打开cpolar管理界面,我们点击左侧仪表盘的隧道管理——创建隧道,由于SFTP连接默认的是22端口,因此我们要来创建一条TCP隧道,指向22端口:
- 隧道名称:可自定义,注意不要重复
- 协议:tcp
- 本地地址:22 ( 默认端口)
- 域名类型:选择随机域名
- 地区:选择China VIP
点击创建
创建成功后我们点击左侧在线隧道列表查看创建的公网地址
我们再次打开连接工具,这里还是以Filezilla工具为例,填写上面我们看到的ip地址,地址前面加上sftp://
,然后输入用户名和密码,端口号输入上面公网地址对应的端口号,点击连接,即可成功
2.4 固定远程连接地址
为了更好地演示,我们在前述过程中使用cpolar生成的TCP数据隧道,其端口号是随机生成的。
这种随机生成的端口号优势在于建立速度快,可以立即使用。然而,它的缺点是由随机字符生成,不容易记忆。另外,这个端口号会在24小时内发生随机变化,更适合于临时使用。
我们一般会使用固定的TCP数据隧道,原因是我们希望将它发送给领导、客户或同事时,它是一个固定的、容易记忆的、更专业的,相比随机TCP隧道更显正式,便于交流协作的地址。
要建立一条稳定的TCP数据隧道,我们首先要登录cpolar官网,进入仪表台的“预留”界面
在预留界面中,找到“保留的TCP地址”项目。在这个项目下,我们填入一些必要信息,如识别数据隧道的隧道名称、隧道使用区域等。
在这些信息填入后,点击右侧的“保留”按钮,将cpolar官网后台的隧道固定下来。此时cpolar会生成一个隧道TCP地址端口
接着我们回到浏览器cpolar界面,打开“隧道列表”,找到之前创建的随机临时TCP隧道,进入“编辑”页面,
将我们在cpolar官网获得的隧道端口粘贴进“预留的TCP地址”栏中,然后点击下方的“更新”按钮.
然后再次查看在线隧道列表,发现SFTP的隧道对应的公网地址变成了我们官网保留的固定地址
我们再次打开连接工具,这里还是以Filezilla工具为例,填写上面我们固定的ip地址,地址前面加上sftp://
,然后输入用户名和密码,端口号输入上面固定公网地址对应的端口号,点击连接,即可成功
3. Web界面实现远程访问
简单几步实现在公网环境下远程访问OpenWrt Web管理界面,使用cpolar内网穿透创建安全隧道映射OpenWrt Web界面面板443端口,无需公网IP,无需设置路由器。
3.1 安装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内网穿透
点击进去后即可看到cpolar界,接下来配置cpolar Authtoken
登录cpolar官网,如果没有注册账号,可以先注册账号。然后点击左侧的验证
,查看自己的认证token
cpolar官网:https://www.cpolar.com
之后将官网查看的token复制到OpenWrt cpolar服务界面的Auth Token
里,设置后点击save
保存
保存成功后点击界面里的打开Web-UI界面
,即可看到cpolar Web UI 管理界面
使用我们官网注册的账号登陆,登陆后即可对隧道进行管理,安装就完成啦
3.2 配置远程访问地址
我们点击左侧仪表盘的隧道管理——创建隧道,OpenWrt Web界面面板的端口是443
,因此我们要来创建一条http隧道,指向443端口:
- 隧道名称:可自定义,注意不要重复
- 协议:http
- 本地地址:443
- 域名类型:选择随机域名
- 地区:选择China VIP
点击创建
创建成功后打开在线隧道列表,可以看到公网访问的地址,有两种公网地址访问方式:一种是http,一种是https
然后我们使用其中一种https方式地址在浏览器访问,即可看到我们的OpenWrt Web界面,这样这个远程访问就配置好了,非常简单。
3.3 固定公网地址
为了更好地演示,我们在前述过程中使用cpolar生成的隧道,其公网地址是随机生成的。
这种随机地址的优势在于建立速度快,可以立即使用。然而,它的缺点是网址由随机字符生成,不容易记忆(例如:3ad5da5.r10.cpolar.top)。另外,这个地址会在24小时内发生随机变化,更适合于临时使用。
我们一般会使用固定的二级子域名,原因是我们希望将网址发送给领导、客户或同事时,它是一个固定的、容易记忆的、更专业的公网地址(例如:openwrt.cpolar.cn),这样与(3ad5da5.r10.cpolar.top)相比更显正式,便于交流协作。
登录cpolar官网后台,点击左侧仪表盘的预留
,找到保留二级子域名
,为http隧道保留一个二级子域名。
- 地区:选择服务器地区
- 名称:填写您想要保留的二级子域名(可自定义)
- 描述:即备注,可自定义填写
本例保留一个名称为openwrtweb
的二级子域名。子域名保留成功后,我们将子域名复制下来,接下来需要将其配置到隧道中去。
打开cpolar Web UI管理界面。点击左侧仪表盘的隧道管理
——隧道列表
,找到需要配置二级子域名的隧道,点击右侧的编辑
修改隧道信息,将二级子域名配置到隧道中:
- 域名类型:改为选择
二级子域名
- Sub Domain:填写我们刚刚所保留的二级子域名(本例为
openwrtweb
)
修改完成后,点击更新
隧道更新成功后,点击左侧仪表盘的状态
——在线隧道列表
,可以看到隧道的公网地址,已经更新为二级子域名了.
然后我们使用其中一种https方式地址在浏览器访问,即可看到我们的OpenWrt界面,这样一个固定不变的远程访问OpenWrt Web界面就配置好了
4. 搭建个人Web站点公网访问
前言
uhttpd是OpenWrt/LuCI开发者从零开始编写的Web服务器,目的是成为优秀稳定的、适合嵌入式设备的轻量级任务的HTTP服务器,并且和OpenWrt配置框架非常好地集成在一起。它是管理OpenWrt 的默认的Web服务器,还提供了现代Web服务器所有的功能。
下面我们将在OpenWrt上部署uhttpd搭建Web服务器,同时使用cpolar将其安全暴露到公网上,让公网用户也可以正常访问到OpenWrt下的Web服务器。
4.1 检查uhttpd安装
正常版本下,如果可以在浏览器访问OpenWrt Web控制台界面,表示已经安装了uhttpd。同样,我们可以在根目录下面看到一个名称为www
的目录,这样表示已经安装了uhttpd。
4.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控制台界面位置。
此时我们在外部浏览器使用OpenWrt局域网ip地址加资源路径/meditation-app-master/index.html
即可看到我们下载部署的站点。如果不加资源路径,默认会跳转过去OpenWrt Web界面,此时我们一个静态站点就已经配置好了。
下面我们安装cpolar内网穿透来实现在公网环境下也可以远程访问这个Web站点。
4.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内网穿透
点击进去后即可看到cpolar界面,接下来配置cpolar Authtoken
登录cpolar官网,如果没有注册账号,可以先注册账号。然后点击左侧的验证
,查看自己的认证token。
cpolar官网:https://www.cpolar.com
之后将官网查看的token复制到OpenWrt cpolar服务界面的Auth Token里,设置后点击save保存
保存成功后点击界面里的打开Web-UI界面
,即可看到cpolar Web UI界面
使用我们官网注册的账号登陆,登陆后即可对隧道进行管理,安装就完成啦
4.4 配置远程访问地址
在cpolar Web UI管理界面中,我们点击左侧仪表盘的隧道管理
——创建隧道
,uhttpd由于部署在了OpenWrt Web管理界面,设置了SSL,所以端口使用443,因此我们要来创建一条http隧道
,指向443端口
:
- 隧道名称:可自定义,注意不要重复
- 协议:http
- 本地地址:443
- 域名类型:选择随机域名
- 地区:选择China VIP
点击创建
创建成功后打开在线隧道列表,可以看到公网访问的地址,有两种公网地址访问方式:一种是http,一种是https
然后我们使用其中一种http方式公网地址,并且加上资源路径:/meditation-app-master/index.html
在浏览器访问,即可看到我们的站点界面,这样这个远程访问就配置好了。
4.5 配置固定远程地址
为了更好地演示,我们在前述过程中使用cpolar生成的隧道,其公网地址是随机生成的。
这种随机地址的优势在于建立速度快,可以立即使用。然而,它的缺点是网址由随机字符生成,不容易记忆(例如:3ad5da5.r10.cpolar.top)。另外,这个地址会在24小时内发生随机变化,更适合于临时使用。
我们一般会使用固定的二级子域名,原因是我们希望将网址发送给领导、客户或同事时,它是一个固定的、容易记忆的、更专业的公网地址(例如:websitewrt.cpolar.cn),这样与(3ad5da5.r10.cpolar.top)相比更显正式,便于交流协作。
登录cpolar官网后台,点击左侧仪表盘的预留
,找到保留二级子域名
,为http隧道保留一个二级子域名。
- 地区:选择服务器地区
- 名称:填写您想要保留的二级子域名(可自定义)
- 描述:即备注,可自定义填写
本例保留一个名称为websitewrt
的二级子域名。子域名保留成功后,我们将子域名复制下来,接下来需要将其配置到隧道中去。
打开cpolar Web UI管理界面。点击左侧仪表盘的隧道管理
——隧道列表
,找到需要配置二级子域名的隧道,点击右侧的编辑
修改隧道信息,将二级子域名配置到隧道中:
- 域名类型:改为选择
二级子域名
- *Sub Domain:填写我们刚刚所保留的二级子域名
修改完成后,点击更新
隧道更新成功后,点击左侧仪表盘的状态
——在线隧道列表
,可以看到隧道的公网地址,已经更新为二级子域名了.
然后我们使用其中一种http方式地址在浏览器访问,即可看到我们的站点界面,这样一个固定不变的远程访问个人站点配置好了。
5. 如何公网SSH远程连接
简单几步实现OpenWrt结合cpolar内网穿透工具实现远程连接
5.1 安装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。
之后将官网查看的token复制到OpenWrt cpolar服务界面的Auth Token里,设置后点击保存
保存成功后点击界面里的打开Web-UI界面
,即可看到cpolar Web UI界面。
使用我们在cpolar官网注册的邮箱账号登陆,登陆后即可对隧道进行管理,安装就完成啦。
5.2 配置SSH远程访问隧道
浏览器打开cpolar Web UI管理界面,我们点击左侧仪表盘的隧道管理
——创建隧道
,由于SSH连接默认的是22端口
,因此我们要来创建一条tcp隧道,指向22端口:
- 隧道名称:可自定义,注意不要重复
- 协议:tcp
- 本地地址:22 (ssh 默认端口)
- 域名类型:选择随机域名(免费)
- 地区:选择China VIP
点击创建
创建好后打开在线隧道列表,查看生成的随机公网tcp地址,复制公网地址,注意无需复制tcp://
5.3 公网远程连接
打开连接工具,输入生成的公网地址,tcp://
不需要输入,端口号是cpolar公网地址后面的公网端口号,点击连接
然后出现输入用户名和密码,即可登陆成功
同样使用命令行也是连接成功
ssh -p 公网端口号 username@公网地址
这里需要注意,由于我们的本地22端口到了公网被映射到了12807端口(您的公网端口可能不一样),所以,ssh命令需要加-p参数,后面加公网端口号
5.4 固定远程连接地址
为了更好地演示,我们在前述过程中使用cpolar生成的TCP数据隧道,其端口号是随机生成的。
这种随机生成的端口号优势在于建立速度快,可以立即使用。然而,它的缺点是由随机字符生成,不容易记忆。另外,这个端口号会在24小时内发生随机变化,更适合于临时使用。
我们一般会使用固定的TCP数据隧道,原因是我们希望将它发送给领导、客户或同事时,它是一个固定的、容易记忆的、更专业的,相比随机TCP隧道更显正式,便于交流协作的地址。
要建立一条稳定的TCP数据隧道,我们首先要登录cpolar官网,进入仪表台的预留
界面
在预留界面中,找到保留的TCP地址
项目。在这个项目下,我们填入一些必要信息,如识别数据隧道的隧道名称、隧道使用区域等。
在这些信息填入后,点击右侧的保留
按钮,将cpolar官网后台的隧道固定下来,此时cpolar会生成一个隧道tcp端口
接着我们回到浏览器cpolar界面,打开隧道列表
,找到之前创建的随机临时TCP隧道,进入编辑
页面,
将我们在cpolar官网获得的隧道端口粘贴进预留的TCP地址
栏中,然后点击下方的更新
按钮。
然后再次查看在线隧道列表,发现ssh的隧道对应的公网地址变成了我们官网保留的固定地址
打开连接工具,创建一个连接,输入固定的公网地址,tcp://
不需要输入。端口号是公网地址后面的端口号,然后点击连接。
然后输入用户名和密码,我们可以看到连接成功。
同样,我们使用命令行模式连接也是成功的,现在这个公网地址是固定的了,不会再随机变化,只要保持隧道可以正常在线,我们在公网环境下就可以通过这个公网地址来SSH远程内网的OpenWrt。
小结
利用cpolar内网穿透软件,可以解决外网不可以访问内网资源的问题,让你轻松分享内网资源。并且cpolar基础套餐及以上的软件版本都带有固定公网TCP地址的功能,这样就可以让你分享的端口号更易记忆、也更加专业,可以让使用者更方便、快捷的与你同享内网资源。