[树莓派公网远程监控]autossh反向代理

/ 树莓派 / 无站内评论 / 186浏览

前言

树莓派上安装摄像头对家里进行远程监控,但是仅限于局域网,于是使用反向代理对腾讯云公网服务器进行代理,就可以通过公网远程访问就家里的监控了。

自带ssh

格式

ssh -fNR 公网服务器端口:localhost:端口 root@公网服务器ip 
#例子
#ssh -fN -R 33335:localhost:8080 root@123.123.123.123 
-f:是指后台运行,不会阻塞shell继续向下执行;
-N:是指建立的ssh连接只用于转发数据,不解析命令; 
-R:是指建立反向隧道,一般我们ssh某个服务器是正向隧道; 
公网服务器ip端口:是公网服务器上的代理端口;
localhost:端口:内网机器ip和端口号(也可以使用127.0.0.1)

交互以及一些问题

1.自带ssh要求输入公网服务器密码

2.会自动断开

autossh

通过一个端口进行“心跳检测”,如果断开会自动连接

配置免密

ssh-keygen
#将密钥复制到公网服务器,要求输入公网服务器密码
ssh-copy-id -i .ssh/id_rsa.pub root@123.123.123.123

安装

sudo yum install autossh
#或
sudo apt-get install autossh

参数

autossh -M 公网服务器检测重连端口 -NR 公网服务器ip端口:localhost:端口 -f root@公网服务器ip

#例子

autossh -M 333338 -NR 33335:localhost:8080 -f root@123.123.123.123 

参数与以上一致

公网服务器配置Nginx

总不能用ip裸奔吧。。。

 server {
    listen 80;
    server_name  域名;
        auth_basic "Please input password";
        auth_basic_user_file /usr/share/nginx/passwd/passwd;
        location / {
            proxy_pass http://127.0.0.1:33335;
            }
         }

配置Nginx访问密码

auth_basic "Please input password";
auth_basic_user_file /usr/share/nginx/passwd/passwd;

第一行是提示

第二行是密码文件

终端设置密码

htpasswd -c [passwfile] [username]
#例子,执行输入密码
htpasswd -c /usr/share/nginx/passwd/passwd san

​ 注意,最后的passwd是一个空文件,使用touch创建

touch passwd

参考

https://www.jianshu.com/p/09fd97f8c43f

https://www.cnblogs.com/xiaobaiskill/p/9803867.html

琼ICP备18000156号

鄂公网安备 42011502000211号