autossh穿透内网(树莓派)

之前树莓派使用ssh建立反向连接的时候不稳定,长时间不使用连接就会自动释放, 这个时候就得有一个帮手帮你维持这个连接,那就是autossh。

如何使用?

安装完autossh之后,可以用如下命令启动autossh

$ autossh -M 5678 -NR 1234:localhost:22 user@123.123.123.123 -p 222

上面几个参数的含义说明一下

-M 5678 这个表示是监控端口,检测到这个端口不通会重新连接

1234:localhost:22  1234表示需要在远程主机上开启的端口,22表示本地的ssh端口

user@123.123.123.123 -p222  user为vps上面的用户,222为vps ssh端口

避免输入密码

如果你不是用的sshkey,那么建立反向连接是需要输入密码的。为我们之后的加入开机启动带来了障碍。

生成sshkey

ssh-keygen -t rsa

由于我们不需要密码,所以一路回车,生成的id_rsa.pub文件在~/.ssh/文件夹里面。之后就可以将这个key推送到vps,使用如下命令进行推送

ssh-copy-id -i ~/.ssh/id_rsa.pub vps用户@vps主机地址 -p 端口/

(更多…)

穿透内网访问你的树莓派

前几天入手了一个树莓派3,然而不幸的是家中的网没有公网IP,直接访问肯定是没戏了,这时候突然想到了打洞这个词,我想ssh打洞肯定是可以的。

经过一番搜索,答案找到了,实现非常简单,步骤如下。

1.原料

实现内网穿透,你首先需要一台在公网的vps,哪个国家的都无所谓。

2.VPS配置

vps开启SSHD的GatewayPorts选项,开启方式如下:

vim /etc/ssh/sshd_config
# 找到GatewayPorts选项,将其变为yes

GatewayPorts yes
# 重启sshd服务
service sshd restart

3.树莓派配置

假设VPS的IP为1.1.1.1,远程转发的端口号为11111(端口号最好高于1024,否则需要使用root权限),远程服务器的ssh端口为22,登陆用户为username;
继续假设本地路由器需要转发的端口为22,路由器的在LAN中的IP地址为192.168.1.1。

当我们确认好了各个数字的意义后,就可以开始替换下面的命令了。 (更多…)