树莓派实现远程网络监控

写在前面

我这里用的是树莓派zero w,外加500万像素摄像头,其他型号类似。本教程共分为两部分:

  • 树莓派摄像头配置,实现内网监控功能
  • 网络穿透,实现远程跨网络监控

所需准备

  • 树莓派+摄像头。系统以及摄像头安装自行配置,这里默认已经调通。
  • 拥有公网ip的服务器。树莓派没有公网ip,所以不能跨网访问,实现真正意义上的远程需要准备一个公网ip,我这里用的是阿里云的服务器,带有公网ip,用于实现内网穿透。

树莓派配置

  • 安装motion
sudo apt-get install motion
  • 修改配置文件

    • 打开 motion daemon 守护进程,让他可以一直在后台运行
    sudo vi /etc/default/motion
    
    #把文本里的no修改成yes:
    start_motion_daemon=yes
    
    • 修改motion的配置文件:

      sudo vim /etc/motion/motion.conf
      
      #deamon off 改成 on
      deamon on
      #设置分辨率
      width 800
      height 600
      #关闭 localhost 的限制
      webcam_localhost off
      
  • 运行motion

sudo motion

如果摄像头指示灯亮起说明开启成功,浏览器访问http://内网ip:8081即可看到画面。

内网穿透

如果上述步骤完成,说明内网内已经实现网络监控。现在实现远程网络监控。

服务器端

  • 下载适合你服务器系统的frp软件,我这里是用的是阿里云64位Ubuntu16.04
https://github.com/fatedier/frp/releases
  • 解压
tar -zxvf frp_0.20.0_linux_386.tar.gz
  • 修改frps.ini :(注意名称)
[common]

bind_port = 7000

dashboard_port = 7500

dashboard_user = user #设置用户名

dashboard_pwd = pass  #设置密码

vhost_http_port = 8181

  • 修改完后执行
./frps -c ./frps.ini

如果提示无权限,可以用chmod升一下,具体自行百度。使用摄像头时该程序需要一直运行,可以调用nohup命令。

  • 注意:

以上涉及所有端口需要去服务器后台自行开启,否则无法访问。

树莓派端

  • 同样下载frp
wget https://github.com/fatedier/frp/releass/download/v0.20.0/frp_0.20.0_linux_arm.tar.gz
  • 解压
tar -zxvf frp_0.20.0_linux_arm.tar.gz
  • 修改frpc.ini:(注意名称)
[common]

server_addr = 自己的服务器ip

server_port = 7000

[ssh]              (ssh穿透)

type = tcp

local_ip = 127.0.0.1

local_port = 22

remote_port = 6000

[camara]                      

type = tcp

local_ip = 127.0.0.1

local_port = 8081

remote_port = 8081
  • 保存后运行
./frpc -c ./frpc.ini

以上所有端口同样需要服务器端后台开启。

此时访问http://服务器ip:8081即可看到画面,此时可以实现跨网络访问。

同时可以通过ssh使用服务器的6000端口连接树莓派进行远程操作。

关于断电程序中断问题可以使用autostart开机自启,具体配置百度都有。

你可能感兴趣的:(单片机,监控程序,网络,linux,单片机)