通过ZeroTier One实现内网穿透连接树莓派

  1. 注册

官方网站:https://www.zerotier.com/

没有账号先到https://accounts.zerotier.com/auth/realms/zerotier/login-actions/registration?client_id=zt-central&tab_id=xEyBt9X5vAo 注册一个。

注册之后点击邮件里的确认链接,可以直接进入自己的账户看到一些基本信息。免费一百个设备,个人使用完全够了。

  • 创建网络
  • 配置网络
  • 客户端安装

树莓派上运行:

 curl -s https://install.zerotier.com | sudo bash

安装完成后执行下列命令加入刚才创建的网络:

sudo zerotier-cli join <网络ID>

Windows客户端下载地址:https://www.zerotier.com/download/

安装完成后右键点击图标选择Join Network, 填入网络ID就行了。

进入刚才的配置网络界面,就可以看到加入网络的两个设备了。

Managed IPs没有出现不要着急,过一会儿就有了。

然后两台机器就等于在同一个内网了。连接一下试试吧。

通过在树莓派上安装softether VPN实现动态DNS

通过在树莓派上安装softether VPN实现动态DNS

1.从http://www.softether-download.com/下载软件。

2. 上传软件到树莓派,并进入该目录解压文件。

tar zxfv softether-vpnserver-v4.19-9605-beta-2016.03.06-linux-arm_eabi-32bit.tar.gz

3.进入vpnserver目录进行安装。

./.install.sh

一路选1后安装完毕。

4.启动软件。

./vpnserver start – Simplified Chinese

5.设置密码。

./vpncmd   //输入1,敲打三次回车。
ServerPasswordSet

6.下面就可以使用windows端管理软件来进行配置了。软件同样从http://www.softether-download.com/下载。解压后运行vpnsmgr.exe,点击“新设置”添加连接文件。5 6 7 8 9

至此,动态DNS功能就实现了。

如果还需要继续设置VPN连接的话,可以参考下面charli大神写的文章。

http://forum.lemaker.org/cn/thread-581-1-1-.html

 

树莓派通过RDP远程连接Windows系统

树莓派通过RDP远程连接Windows系统

需求:树莓派通过RDP远程连接Windows服务器也就是windows的远程桌面

1.安装RDP客户端软件, 这里推荐用remmina
sudo apt-get update
sudo apt-get install remmina

2.运行remmina

安装完成后菜单里就会出现remmina的图标,点击运行。

1

只有填入自己要连接的Windows服务器信息就可以连接了。

2

通过树莓派和BTSync搭建个人云存储

一般情况我们会使用现成的网盘,可是,各种内置的后门多的数不过来,不知道那天就被请去喝咖啡了,怎么才能私密一点?很多人都发现了,放在百度网盘的小电影都变成8秒短片了,呵呵。。。然后,催生了我们的新式分享工具—-BTSync

BTSync是免费跨平台文件同步软件。不需第三方服务器即可在多台电脑之间同步和共享文件,全程AES加密。它采用基于类似BT下载的P2P分布式技术而来,速度快而且可通过密钥文件共享,可设置完整权限同步或者让接收方只读,还可以发送 24 小时有效期的密钥,过期作废。

也就是说,你发布一个密钥,其他人就可以同步你共享的文件,更可以做到增量式(差异)同步,同步的人越多速度越快,和BT下载一个道理。
Btsync支持超多的系统,从桌面系统到嵌入式、手机等等,最好的莫过于有ARM-linux版

访问 https://www.getsync.com/platforms/desktop 下载ARM版

btsync1

然后解压到你的橘子派的某一目录下

进入目录,输入命令

./btsync –webui.listen 0.0.0.0:8888

btsync2

OK,成功运行!
在你的电脑上打开浏览器,地址栏输入  树莓派的IP:8888设置一个账户和密码就可以开始用了。

btsync3

可以通过一下设置改成中文界面。

btsync4

btsync5

改完以后刷新一下页面就变成中文界面了。

btsync6

添加要共享的文件夹,生成密钥

在电脑或手机上安装BTSync客户端,在程序选项里–输入密钥,就可以在电脑或手机上与树莓派同步文件了。

 

 

通过SSH反向代理连接内网的树莓派

通过SSH反向代理连接内网的树莓派

 

场景:

在办公室有一台树莓派,当我回家了或者在外面用手机网络无法进入内网,所以访问不到了。如果这个时候我需要 SSH 进去做一下设置,那么怎么解决这个问题呢?本文将给出一种使用 SSH 的代理功能的解决方案。

 

目的:通过一台公网linux机器连接内网的树莓派。

 

材料:

  1. 一台公网linux机器,这里用的是DigitalOcean的VPS。
  2. 树莓派

 

机器状况

机器 IP 用户名 备注
树莓派 192.168.0.A usr_a 目标服务器,在局域网中,可以访问 树莓派
VPS B.B.B.B usr_b 代理服务器,在外网中,无法访问 树莓派
手机等Client 可以直接访问 VPS,无法直接访问 树莓派

 

解决方案

在树莓派上做到 VPS的反向代理;在 VPS上做正向代理本地端口转发

 

环境需求

每台机器上都需要 SSH 客户端

树莓派、VPS上需要 SSH 服务器端。通常是 openssh-server。

在 Ubuntu 上安装过程为

 

sudo apt-get install openssl-server

 

实施步骤

 

建立 树莓派 到 VPS 的反向代理【树莓派 上操作】

ssh -fCNR <port_b1>:localhost:22 usr_b@B.B.B.B

<port_b1> 为 VPS 上端口,用来与 树莓派 上的22端口绑定。

 

建立 VPS 上的正向代理,用作本地转发。做这一步是因为绑定后的 端口只支持本地访问【VPS 上操作】

ssh -fCNL *:<port_b2>:localhost:<port_b1> localhost

<port_b2> 为本地转发端口,用以和外网通信,并将数据转发到 <port_b1>,实现可以从其他机器访问。

其中的*表示接受来自任意机器的访问。

现在在 Client 机器上可以通过 VPS ssh 到树莓派。

ssh -p <portb2> usra@B.B.B.B

至此方案完成。

同理,也可以建立反向代理通过VNC来连接内网树莓派的图形界面。

 

附:

 

SSH 参数解释

-f 后台运行

-C 允许压缩数据

-N 不执行任何命令

-R 将端口绑定到远程服务器,反向代理

-L 将端口绑定到本地客户端,正向代理