天天看点

利用cpolar-内网穿透家中的树莓派,并开机自启动

本教程介绍如何在树莓派中安装cpolar,并且设置成开机自启动,这样就可以远程任意地方内网穿,访问家中的树莓派。

1. 首先从官网下载最新的cpolar

wget https://www.cpolar.com/static/downloads/cpolar-stable-linux-arm.zip      

2. 解压缩

unzip cpolar-stable-linux-arm.zip      

3. 将cpolar命令移到 /usr/local/bin目录

sudo mv cpolar /usr/local/bin      

4. cpolar进行token认证

登录到cpolar后台,获取到自己的token值,然后复制到命令中,替换xxxxxxxx

cpolar authtoken xxxxxxxxxxxxxxxxxxxxxxx      

配置文件会保存在 /home/pi/.cpolar/cpolar.yml,记录下该

路径

5. 前台测试

cpolar http 8080      

如下图,就说明已经配置好了

利用cpolar-内网穿透家中的树莓派,并开机自启动

命令参数说明

http 意思是创建一个http协议的隧道

8080 指定内网web站点的8080端口

按ctrl+C可退出。

6. 安装及配置vim

如果还没有安装vim,可以先安装

sudo apt install vim      

7. 配置vim

我们先对vim做基本配置,目的是为了以防止稍后编辑时,多出TAB键。

vim ~/.vimrc      

在配置文件末尾添加如下内容:

set tabstop=2

set softtabstop=2

set shiftwidth=2

set expandtab

8.在cpolar配置文件中,添加ssh内网穿透隧道

除了在cpolar命令行中,我们还可以在配置文件中添加多个隧道。这样多个隧道可以同时启动。

本例中,我们添加一个web隧道,一个ssh隧道

编辑cpolar的配置文件

vim ~/.cpolar/cpolar.yml      

在文件下面,我们编辑成如下内容:

authtoken: YzNmYmUzOTctODMxNyxxxxxxxxxxxxxxxxxTZkNjczOGM3

tunnels:
  web:
    addr: 8080
    proto: http
    region: cn_vip
  ssh:
    addr: 22
    proto: tcp
    region: cn_vip      

参数说明:

authtoken: xxxxx #认证token

tunnels:
  web:              #隧道名称,用户可以自定义,但多隧道时,不可重复
    addr: 8080      #本地Web站点端口
    proto: http     #协议http
    region: cn_vip  #地区,cn_vip,可选:us,hk,cn,cn_vip
  ssh:              #隧道名称,表示ssh,名称可以自定义
    addr: 22        #端口号为22
    proto: tcp      #协议tcp
    region: cn_vip  #地区,cn_vip,可选:us,hk,cn,cn_vip      

注:这里的配置文件是yaml格式,每一级的参数前面,会缩进两个空格,不能使用TAB键,不能使用TAB键,不能使用TAB键。(重要说三遍)

9.测试是否配置成功

cpolar start-all      
利用cpolar-内网穿透家中的树莓派,并开机自启动

如上图,则配置成功,如果提示某行错误,请根据行号及报错信息修改。

10. 后台运行cpolar

nohup cpolar start-all -config=/home/pi/.cpolar/cpolar.yml -log=stdout &      

11. 验证后台是否运行正常

ps -aux | grep cpolar | grep -v grep      
利用cpolar-内网穿透家中的树莓派,并开机自启动

根据后台的进ID,杀掉后台运行的cpolar进程,本例如图中的28440,即为cpolar的后台进程ID

杀掉cpolar后台进程

kill 28440      

12. 配置开机自启动脚本

编辑开机脚本

sudo nano /etc/rc.local      

在exit 0前面,加入

nohup cpolar start-all -config=/home/pi/.cpolar/cpolar.yml -log=stdout &      

如图:

利用cpolar-内网穿透家中的树莓派,并开机自启动

13. 重启树莓派

sudo reboot      

14. 重启后查看是否成功

ps -aux | grep cpolar | grep -v grep      

15. 查看在线的隧道