Vidéo surveillance à domicile. Schéma de maintenance d'une archive vidéo sans registraire à domicile

Pendant un certain temps, j'ai voulu écrire un article sur un script pour travailler avec une caméra via le protocole DVRIP, mais la discussion sur les derniÚres nouvelles à propos de Xiaomi m'a incité à parler d'abord de la façon dont j'ai organisé la vidéosurveillance à la maison, puis à passer à des scripts et plus encore.

Nous avions 2 paquets ... Alors, arrĂȘtez, ce n'est pas l'histoire.
Nous avions 2 routeurs TP-LINK, un accĂšs Internet pour le fournisseur NAT, une camĂ©ra de surveillance Partizan, je ne me souviens pas quel modĂšle (toute camĂ©ra IP prenant en charge RTSP sur TCP ou DVRIP fonctionnera) et un VPS bon marchĂ© pour 4 euros avec des caractĂ©ristiques: 2 cƓurs Processeur 2,4 GHz, 4 Go de RAM, disque dur de 300 Go, port 100 Mbit / s. Et aussi la rĂ©ticence Ă  acheter autre chose qui coĂ»terait plus cher qu'un cordon de brassage.

Préface


Pour des raisons Ă©videntes, nous ne pouvons pas simplement transfĂ©rer les ports de la camĂ©ra sur le routeur et profiter de la vie.En outre, mĂȘme si nous le pouvions, nous ne devrions pas le faire.

De mon oreille, j'ai entendu dire qu'il existe certaines options avec le tunneling IPv6, oĂč il semble que vous pouvez tout faire pour que tous les appareils du rĂ©seau reçoivent une adresse IPv6 externe, et cela simplifierait un peu les choses, tout en laissant la sĂ©curitĂ© de cet Ă©vĂ©nement en question , et la prise en charge du micrologiciel TP-LINK standard pour ce miracle est quelque peu Ă©trange. Bien qu'il soit probable que dans la phrase prĂ©cĂ©dente je parle de bĂȘtises, alors n'y prĂȘtez aucune attention.

Mais, heureusement, presque n'importe quel firmware pour n'importe quel routeur (une déclaration assez infondée en fait) contient un client PPTP / L2TP ou la possibilité d'installer un firmware personnalisé avec sa présence. Et à partir de cela, nous pouvons déjà construire une sorte de stratégie comportementale.

Topologie


Dans une crise de fiÚvre, mon cerveau a donné naissance à quelque chose comme ce schéma de connexion,

et lors d'une autre attaque, il a dessiné pour mettre sur un magazine geek


L'adresse 169.178.59.82 est générée aléatoirement et sert uniquement d'exemple.

Eh bien, ou si en mots, alors:

  • Routeur TP-LINK 1 (192.168.1.1) , dans lequel un cĂąble est insĂ©rĂ©, qui dĂ©passe du mur. Un lecteur curieux devinera qu'il s'agit d'un cĂąble fournisseur via lequel j'ai accĂšs Ă  Internet. Divers appareils domestiques sont connectĂ©s Ă  ce routeur via un cordon de raccordement ou une connexion Wi-Fi. Ceci est un rĂ©seau 192.168.1.0
  • Le routeur TP-LINK 2 (192.168.0.1, 192.168.1.200) , dans lequel le cĂąble est insĂ©rĂ©, qui dĂ©passe du routeur TP-LINK 1. GrĂące Ă  ce cĂąble, le routeur TP-LINK 2, ainsi que les appareils qui y sont connectĂ©s, ont Ă©galement accĂšs Ă  Internet. Sur ce routeur, la connexion PPTP (10.0.5.100) au serveur 169.178.59.82 est configurĂ©e. La camĂ©ra IP 192.168.0.200 est Ă©galement connectĂ©e Ă  ce routeur et les ports suivants sont redirigĂ©s
    • 192.168.0.200:80 -> 49151 (webmord)
    • 192.168.0.200 ∗ 4567 -> 49152 (DVRIP)
    • 192.168.0.200/1054 -> 49153 (RTSP)
  • Serveur (169.178.59.82, 10.0.5.1) , auquel le routeur TP-LINK 2 est connectĂ©. Pptpd, shadowsocks et 3proxy tournent sur le serveur, Ă  travers lequel vous pouvez accĂ©der aux pĂ©riphĂ©riques rĂ©seau 10.0.5.0 et ainsi avoir accĂšs au routeur TP-LINK 2 .

Ainsi, tous les appareils domestiques du réseau 192.168.1.0 ont accÚs à la caméra via TP-LINK 2 à 192.168.1.200, et tous les autres peuvent se connecter via pptp, shadowsocks ou socks5 et accéder à 10.0.5.100.

Personnalisation


La premiÚre étape consiste à connecter tous les appareils selon le schéma de la figure ci-dessus.

  • La configuration du routeur TP-LINK 1 revient Ă  rĂ©server l'adresse 192.168.1.200 pour TP-LINK 2. En option, si vous avez besoin d'une adresse fixe pour accĂ©der au rĂ©seau 192.168.1.0. Et, si vous le souhaitez, vous pouvez lui rĂ©server 10-20 Mbit (10 est suffisant pour un flux vidĂ©o en 1080 avec une tĂȘte).
  • Vous devez installer et configurer pptpd sur le serveur. J'ai Ubuntu 18.04 et les actions Ă©taient approximativement les suivantes (l'exemple Ă©tait blog.xenot.ru/bystraya-nastrojka-vpn-servera-pptp-na-ubuntu-server-18-04-lts.fuck ):
    • Installez les packages nĂ©cessaires:

      sudo apt install pptpd iptables-persistent 
    • Nous apportons au formulaire suivant

      /etc/pptpd.conf
       option /etc/ppp/pptpd-options bcrelay eth0 # ,        logwtmp localip 10.0.5.1 remoteip 10.0.5.100-200 

    • Correct

      / etc / ppp / pptpd-options
       novj novjccomp nologfd name pptpd refuse-pap refuse-chap refuse-mschap require-mschap-v2 #require-mppe-128 #  ,   TP-LINK c    ms-dns 8.8.8.8 ms-dns 1.1.1.1 ms-dns 77.88.8.8 ms-dns 8.8.4.4 ms-dns 1.0.0.1 ms-dns 77.88.8.1 proxyarp nodefaultroute lock nobsdcomp 
    • Ajouter des informations d'identification Ă 

      / etc / ppp / chap-secrets
       # Secrets for authentication using CHAP # client server secret IP addresses username pptpd password * 
    • Ajouter Ă 

      /etc/sysctl.conf
       net.ipv4.ip_forward=1 

      et recharger sysctl

       sudo sysctl -p 
    • RedĂ©marrez pptpd et ajoutez-le au dĂ©marrage

       sudo service pptpd restart sudo systemctl enable pptpd 
    • Correct

      iptables
       sudo iptables -A INPUT -p tcp -m tcp --dport 22 -j ACCEPT sudo iptables -A INPUT -p tcp -m tcp --dport 1723 -j ACCEPT sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE sudo iptables --table nat --append POSTROUTING --out-interface ppp+ -j MASQUERADE sudo iptables -I INPUT -s 10.0.5.0/24 -i ppp+ -j ACCEPT sudo iptables --append FORWARD --in-interface eth0 -j ACCEPT 

      Et Ă©conomisez

       sudo netfilter-persistent save sudo netfilter-persistent reload 
  • Configurer TP-LINK 2
    • Nous rĂ©servons l'adresse 192.168.0.200 pour notre camĂ©ra:

      DHCP -> RĂ©servation d'adresse
      - Adresse MAC - CamĂ©ras MAC, peuvent ĂȘtre consultĂ©es dans DHCP -> Liste des clients DHCP
      - Adresse IP réservée - 192.168.0.200
    • Nous expĂ©dions les ports:
      Transfert -> Serveurs virtuels
      - Port de service: 49151, Port interne: 80, Adresse IP: 192.168.0.200, Protocole: TCP
      - Port de service: 49152, Port interne: 34567, Adresse IP: 192.168.0.200, Protocole: TCP
      - Port de service: 49153, Port interne: 554, Adresse IP: 192.168.0.200, Protocole: TCP
    • Configurer la connexion VPN:

      RĂ©seau -> WAN
      - Type de connexion WAN: PPTP
      - Nom d'utilisateur: nom d'utilisateur (voir / etc / ppp / chap-secrets)
      - Mot de passe: mot de passe (voir / etc / ppp / chap-secrets)
      - Confirmer le mot de passe: mot de passe (voir / etc / ppp / chap-secrets)
      - IP dynamique
      - Adresse IP / Nom du serveur: 169.178.59.82 (Ă©videmment l'IP externe de votre serveur)
      - Mode de connexion: connectez-vous automatiquement
    • Autoriser Ă©ventuellement l'accĂšs Ă  distance au webmord du routeur
      Sécurité -> Gestion à distance
      - Port de gestion Web: 80
      - Adresse IP de la télécommande: 255.255.255.255
    • RedĂ©marrez le routeur TP-LINK 2


Au lieu de PPTP, vous pouvez utiliser L2TP ou, si vous avez un firmware personnalisĂ©, alors tout ce que votre cƓur dĂ©sire. J'ai choisi PPTP, car ce schĂ©ma n'a pas Ă©tĂ© construit pour des raisons de sĂ©curitĂ©, mais pptpd d'aprĂšs mon expĂ©rience est le serveur VPN le plus rapide. De plus, je ne voulais vraiment pas installer de firmware personnalisĂ©, ce qui signifie que je devais choisir entre PPTP et L2TP.

Si je n'ai commis aucune erreur dans le guide, et que vous avez tout fait correctement et que vous avez eu de la chance, aprĂšs toutes ces manipulations
  • d'abord

     ifconfig 

    affichera l'interface ppp0 inet 10.0.5.1 netmask 255.255.255.255 destination 10.0.5.100 ,
  • d'autre part, le 10.0.5.100 devrait rĂ©pondre,
  • et troisiĂšmement

     ffprobe -rtsp_transport tcp "rtsp://10.0.5.100:49153/user=admin&password=password&channel=1&stream=0.sdp" 

    Doit détecter le flux.
    port rtsp, identifiant et mot de passe que vous pouvez trouver dans la documentation de votre appareil photo


Conclusion


En principe, c'est déjà pas mal, il y a accÚs au RTSP, si le logiciel propriétaire fonctionne via DVRIP, alors vous pouvez l'utiliser. Vous pouvez enregistrer le flux à l'aide de ffmpeg, accélérer la vidéo 2-3-5 fois, la diviser en morceaux à l'heure, télécharger le tout sur googledisk ou sur les réseaux sociaux et bien plus encore.

Je n'aimais pas RTSP sur TCP, car cela ne fonctionnait pas trĂšs stable, mais sur UDP, pour la raison que nous ne pouvons pas (ou pouvons, mais je ne veux pas le faire) transmettre la plage de ports sur lesquels RTSP enverra le flux vidĂ©o , Je ne peux pas l'utiliser, j'ai Ă©crit un script qui fait glisser un flux sur TCP via DVRIP. Il s'est avĂ©rĂ© ĂȘtre plus stable.

Parmi les avantages de l'approche - nous pouvons prendre quelque chose qui prend en charge le sifflet 4G Ă  la place du routeur TP-LINK 2, alimenter le tout avec la camĂ©ra de l'onduleur (qui sera sans aucun doute beaucoup moins volumineux que lors de l'utilisation de l'enregistreur), en outre, l'enregistrement est transmis presque instantanĂ©ment au serveur, donc mĂȘme si des intrus vous pĂ©nĂštrent, ils ne pourront pas supprimer la vidĂ©o. En gĂ©nĂ©ral, il y a une marge de manƓuvre et tout dĂ©pend de votre imagination.

PS: Je sais que de nombreux fabricants proposent des solutions cloud prĂȘtes Ă  l'emploi, mais elles coĂ»tent prĂšs du double du prix de mon armĂ©e de l'air (dont j'en ai dĂ©jĂ  3, donc j'ai besoin de mettre des ressources quelque part), offrent beaucoup moins de contrĂŽle, et aussi qualitĂ© trĂšs satisfaisante.

Source: https://habr.com/ru/post/fr482864/


All Articles