Videosurveglianza in casa. Schema di mantene un archiviu video senza un registratore di casa

Aghju vulutu scrive un articulu nantu à un script per travaglià cù una camera via u protocolu DVRIP dapoi un bellu pezzu, ma a discussione in relazione cù e recenti nutizie nantu à Xiaomi m'hà incitatu à parlà prima di cumu aghju stallatu a sorveglianza video in casa, è poi passà à i scripts è altre cose.

Avemu avutu 2 pacchetti... Allora, aspetta, ùn hè micca a listessa storia.
Avemu avutu 2 routers da TP-LINK, accessu à Internet daretu à u fornitore NAT, una camera di sorveglianza Partizan ùn ricordu micca chì mudellu (qualsiasi camera IP chì supporta RSTP sopra TCP o DVRIP farà) è un VPS economicu per 4 euro cù u caratteristiche: CPU 2 core 2.4GHz, 4GB RAM, 300GB HDD, portu 100 Mbit/s. È ancu a riluttanza di cumprà qualcosa in più di questu chì costaria più di un patch cord.

Prélude

Per ragioni evidenti, ùn pudemu micca solu trasmette i porti di a camera nantu à u router è gode di a vita, in più, ancu s'ellu pudemu, ùn duvemu micca fà.

Aghju intesu da u turchinu chì ci sò parechje opzioni cù tunneling IPv6, induve pare chì tuttu pò esse fattu per chì tutti i dispositi in a reta ricevenu un indirizzu IPv6 esternu, è questu simplificà e cose un pocu, ancu s'ellu abbanduneghja sempre a sicurità. di questu avvenimentu in quistione, è u sustegnu di stu miraculu in u firmware standard TP-LINK hè in qualchì manera stranu. Ancu s'ellu ci hè una pussibilità chì in a sentenza precedente parlu un scioccu cumpletu, ùn fate micca a vostra attenzione à tuttu.

Ma, per furtuna per noi, quasi ogni firmware per ogni router (una dichjarazione piuttostu infundata in fattu) cuntene un cliente PPTP / L2TP o a capacità di installà un firmware customizatu cun ellu. È da questu pudemu digià custruisce un tipu di strategia di cumpurtamentu.

Topulugia

In un attaccu di frebba, u mo cervellu hà datu nascita à qualcosa cum'è questu schema di cablaggio:

è durante un altru attaccu l'aghju attiratu per postà nantu à HabrVideosurveglianza in casa. Schema di mantene un archiviu video senza un registratore di casa

L'indirizzu 169.178.59.82 hè statu generatu aleatoriu è serve com'è esempiu solu

Ebbè, o se in parolle, allora:

  • Router TP-LINK 1 (192.168.1.1), in quale hè inseritu un cable chì spunta fora di u muru. Un lettore curiosu duvinerà chì questu hè u cable di u fornitore attraversu quale accede à Internet. Diversi dispositi di casa sò cunnessi à stu router via patch cord o Wi-Fi. Questu hè a reta 192.168.1.0
  • Router TP-LINK 2 (192.168.0.1, 192.168.1.200), in u quale hè inseritu un cable chì spunta fora di u router TP-LINK 1. Grazie à questu cable, u router TP-LINK 2, è ancu i dispositi cunnessi à questu, anu ancu accessu à Internet. Stu router hè cunfiguratu cù una cunnessione PPTP (10.0.5.100) à u servitore 169.178.59.82. A Camera IP 192.168.0.200 hè ancu cunnessa à stu router è i porti seguenti sò trasmessi
    • 192.168.0.200:80 -> 49151 (webmord)
    • 192.168.0.200:34567 -> 49152 (DVRIP)
    • 192.168.0.200:554 -> 49153 (RTSP)
  • Servitore (169.178.59.82, 10.0.5.1), à quale hè cunnessu u router TP-LINK 2. U servitore corre pptpd, shadowsocks è 3proxy, attraversu quale pudete accede à i dispositi in a reta 10.0.5.0 è cusì avè accessu à u router TP-LINK 2.

Cusì, tutti i dispositi di casa nantu à a reta 192.168.1.0 anu accessu à a camera via TP-LINK 2 à 192.168.1.200, è tutti l'altri ponu cunnette via pptp, shadowsocks o socks5 è accede à 10.0.5.100.

cutter

U primu passu hè di cunnette tutti i dispositi secondu u schema in a figura sopra.

  • A cunfigurazione di u router TP-LINK 1 vene à riservà l'indirizzu 192.168.1.200 per TP-LINK 2. Opzionale si avete bisognu di un indirizzu fissu per accessu da a reta 192.168.1.0. È, se vulete, pudete riservà 10-20 Mbit per questu (10 hè abbastanza per un flussu di video 1080).
  • Avete bisognu di stallà è cunfigurà pptpd in u servitore. Aghju Ubuntu 18.04 è i passi eranu circa i seguenti (u donatore era un esempiu blog.xenot.ru/bystraya-nastrojka-vpn-servera-pptp-na-ubuntu-server-18-04-lts.fuck):
    • Installa i pacchetti necessarii:
      sudo apt install pptpd iptables-persistent
    • L'avemu purtatu à a forma seguente

      /etc/pptpd.conf

      option /etc/ppp/pptpd-options
      bcrelay eth0 # Интерфейс, через который ваш сервер ходит в интернеты
      logwtmp
      localip 10.0.5.1
      remoteip 10.0.5.100-200

    • Editemu

      /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
      
    • Aghjunghjendu credenziali à

      /etc/ppp/chap-secrets

      # Secrets for authentication using CHAP
      # client	server	secret			IP addresses
      username pptpd password *
    • Aghjunghjite à

      /etc/sysctl.conf

      net.ipv4.ip_forward=1

      è ricaricà sysctl

      sudo sysctl -p
    • Reboot pptpd è aghjunghje à l'iniziu
      sudo service pptpd restart
      sudo systemctl enable pptpd
    • Editemu

      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

      È salvà

      sudo netfilter-persistent save
      sudo netfilter-persistent reload
      
  • Configurazione di TP-LINK 2
    • Riservemu l'indirizzu 192.168.0.200 per a nostra camera:

      DHCP -> Riserva di indirizzu - Indirizzu MAC - Camera MAC, pò esse vistu in DHCP -> Lista di i clienti DHCP
      - Indirizzu IP riservatu - 192.168.0.200

    • Porti di spedizione:
      Redirezione -> Servitori Virtuali — Portu di serviziu: 49151, Portu internu: 80, Indirizzu IP: 192.168.0.200, Protokollu: TCP
      — Portu di serviziu: 49152, Portu internu: 34567, Indirizzu IP: 192.168.0.200, Protokollu: TCP
      — Portu di serviziu: 49153, Portu internu: 554, Indirizzu IP: 192.168.0.200, Protokollu: TCP
    • Configurazione di una cunnessione VPN:

      Rete -> WAN - Tipu di cunnessione WAN: PPTP
      - Username: username (vede /etc/ppp/chap-secrets)
      - Password: password (vede /etc/ppp/chap-secrets)
      - Cunfirmà a password: password (vede /etc/ppp/chap-secrets)
      - IP dinamica
      - Indirizzu IP / Nome di u servitore: 169.178.59.82 (ovviamente, l'IP esterna di u vostru servitore)
      - Modu di cunnessione: Cunnette automaticamente

    • Opcionalmente, permettemu l'accessu remoto à a faccia web di u router
      Sicurezza -> Gestione remota - Port di gestione Web: 80
      — Indirizzu IP di gestione remota: 255.255.255.255
    • Riavvia u router TP-LINK 2

Invece di PPTP, pudete aduprà L2TP o, sè vo avete un firmware customizatu, allora ciò chì u vostru core desidera. Aghju sceltu PPTP, postu chì stu schema ùn hè statu custruitu per ragioni di sicurezza, è pptpd, in a mo spirimintà, hè u servitore VPN più veloce. Inoltre, ùn aghju micca veramente vulutu installà un firmware persunalizatu, chì significava chì aghju avutu à sceglie trà PPTP è L2TP.

Se ùn aghju micca sbagliatu in ogni locu in u manuale, è avete fattu tuttu bè è avete furtunatu, dopu tutte queste manipulazioni

  • in u primu locu
    ifconfig

    mostrarà l'interfaccia ppp0 inet 10.0.5.1 netmask 255.255.255.255 destination 10.0.5.100,

  • secondu, 10.0.5.100 deve ping,
  • è terzu
    ffprobe -rtsp_transport tcp "rtsp://10.0.5.100:49153/user=admin&password=password&channel=1&stream=0.sdp"

    Deve detectà u flussu.
    Pudete truvà u portu rtsp, login è password in a documentazione per a vostra camera

cunchiusioni

In principiu, questu ùn hè micca male, ci hè accessu à RTSP, se u software pruprietariu travaglia via DVRIP, allora pudete aduprà. Pudete salvà u flussu utilizendu ffmpeg, accelerà u video 2-3-5 volte, rompe in pezzi d'ora, caricate tuttu in Google Drive o in e rete suciale è assai, assai di più.

Ùn mi piaceva micca RTSP sopra TCP, perchè ùn hà micca travagliatu assai stabile, ma sopra UDP, per i mutivi chì ùn pudemu micca (o pudemu, ma ùn vogliu micca fà) trasmette a gamma di porti. attraversu quale RTSP spingerà u flussu di video, ùn hà micca travagliatu, aghju scrittu un script chì trascina un flussu nantu à TCP via DVRIP. Hè risultatu più stabile.

Unu di i vantaghji di l'approcciu hè chì pudemu piglià qualcosa chì sustene un fischiu 2G in u locu di u router TP-LINK 4, alimentà tuttu cù a camera da un UPS (chì senza dubbitu avarà bisognu di una assai menu capiente di quandu. aduprendu un registratore), in più, a registrazione hè trasmessa quasi istantaneamente à u servitore, cusì ancu s'è l'intrusi penetranu in u vostru situ, ùn puderanu micca piglià u video. In generale, ci hè spaziu per a manuvra è tuttu dipende solu da a vostra imaginazione.

PS: Sò chì parechji pruduttori offrenu solu solu solu pronti, ma in u prezzu sò quasi duie volte più caru chì u mo VPS (di quale aghju digià 3, per quessa, aghju bisognu di attribuisce risorse in un locu), furnisce assai menu cuntrollu, è ancu. ùn hè micca una qualità assai satisfactoria.

Source: www.habr.com

Add a comment