前言
在局域网中远程控制树莓派的方法很多,如SSH、VNC、远程桌面连接等,可以查看我这一篇博文。
有时候需要在外网控制树莓派怎么办?以下介绍两种方法。
1. 利用cpolar和putty在外网以命令行控制树莓派
cpolar是一种安全的隧道服务,利用它可以实现外网访问树莓派。
1.1. 注册cpolar帐号
使用你的电脑,前往www.cpolar.com注册帐号,注册完成后会跳转到以下界面,保留此页面,之后需要用到图中③中的authtoken。
1.2. 树莓派下载和安装cpolar
在树莓派的命令行中执行以下指令下载cpolar:
sudo wget https://www.cpolar.com/static/downloads/cpolar-stable-linux-arm.zip
下载时的样子:
下载完成后,可以在树莓派的文件管理器中看到所下载的文件:
执行以下指令解压,即完成cpolar的安装过程。
sudo unzip cpolar-stable-linux-arm.zip
执行以下指令将authtoken嵌入到树莓派中:
./cpolar authtoken <yourauthtoken>
1.3. 启动cpolar服务
在树莓派命令行中执行以下指令,来启用从远程访问Putty终端:
./cpolar tcp 22
执行后,可以看到命令行显示以下内容:
图中红框就是我们输入在putty中的主机地址和端口号了。在外网中的电脑上,打开putty(putty的下载和安装方法查看此文),将主机地址和端口号输入进去,按“打开”:
弹出的警告框按“是”,用树莓派的帐号密码登录,即可控制树莓派了:
2. 利用teamviewer在外网以图形界面控制树莓派
通过命令行控制树莓派对小白不太友好,现在树莓派官方提供的raspbian buster系统支持图形界面,用起来舒服很多。通过在树莓派上安装teamviewer,我们在外网也可以愉快地以图形界面控制树莓派啦。
2.1. 树莓派下载和安装teamviewer
在teamviewer官网下载适用于树莓派的安装程序:
所下载的文件是.deb文件,我们将它放在树莓派/home/pi路径下。
为了安装.deb格式的软件,我们首先需要在树莓派命令行中执行以下指令来下载gdebi:
sudo apt-get install gdebi
完成后就可以通过gdebi来在树莓派中安装teamviewer了:
sudo gdebi teamviewer_linux_x64.deb
安装完成后,就可以在树莓派中看到teamviewer了:
点开teamviewer,进入设置,选择将设备(树莓派)分配到你的teamviewer账户。
这样,大家就可以在外网中,通过登录了同个账户的teamviewer客户端来远程控制树莓派啦:
成功访问树莓派:
现版本的teamviewer的使用会遇到“TeamViewer连接要等待伙伴确认请求”的问题,
解决办法是:在外网电脑的teamviewer上,进入TeamViewer选项 – 高级 – 到其他计算机的连接高级设置 – 访问控制: 选"择完全访问"。
(这是一个很奇怪的设定)