ProHoster > Blog > Administración > Videovixilancia doméstica. Esquema para manter un arquivo de vídeo sen un gravador doméstico
Videovixilancia doméstica. Esquema para manter un arquivo de vídeo sen un gravador doméstico
Levo bastante tempo querendo escribir un artigo sobre un guión para traballar cunha cámara a través do protocolo DVRIP, pero a discusión estaba relacionada coas novas recentes sobre Xiaomi levoume a falar primeiro de como configuro a videovixilancia na casa e despois pasar aos guións e outras cousas.
Tiñamos 2 paquetes... Entón, espera, esta non é a mesma historia.
Tiñamos 2 enrutadores de TP-LINK, acceso a Internet detrás do provedor NAT, unha cámara de vixilancia Partizan non recordo que modelo (calquera cámara IP que admita RSTP sobre TCP ou DVRIP servirá) e un VPS barato por 4 euros co características: CPU de 2 núcleos 2.4 GHz, 4 GB de RAM, 300 GB de disco duro, porto de 100 Mbit/s. E tamén a reticencia a comprar algo ademais disto que custaría máis que un cable de conexión.
Prefacio
Por razóns obvias, non podemos simplemente reenviar os portos da cámara no enrutador e gozar da vida, ademais, aínda que puidésemos, non deberíamos facelo.
Oín de repente que hai algunhas opcións co túnel IPv6, onde parece que todo se pode facer para que todos os dispositivos da rede reciban un enderezo IPv6 externo, e iso simplificaría un pouco as cousas, aínda que aínda deixa a seguridade. deste evento en cuestión, e o soporte para este milagre no firmware estándar TP-LINK é estraño. Aínda que existe a posibilidade de que na frase anterior estou a falar de un despropósito completo, así que non lle prestes atención en absoluto.
Pero, afortunadamente para nós, case calquera firmware para calquera enrutador (unha afirmación bastante infundada de feito) contén un cliente PPTP/L2TP ou a posibilidade de instalar firmware personalizado con el. E a partir diso xa podemos construír algún tipo de estratexia de comportamento.
Topoloxía
Nun ataque de febre, o meu cerebro deu a luz algo así como este diagrama de cableado:
e durante outro ataque debuxeno para publicar en Habr
O enderezo 169.178.59.82 xerou aleatoriamente e só serve como exemplo
Ben, ou en palabras, entón:
Router TP-LINK 1 (192.168.1.1), no que se introduce un cable que sobresae da parede. Un lector curioso adiviñará que este é o cable do provedor a través do cal accedo a Internet. Varios dispositivos domésticos están conectados a este enrutador mediante un cable de conexión ou wifi. Esta é a rede 192.168.1.0
Router TP-LINK 2 (192.168.0.1, 192.168.1.200), no que se introduce un cable que sobresae do router TP-LINK 1. Grazas a este cable, o router TP-LINK 2, así como os dispositivos conectados a el, tamén teñen acceso a Internet. Este enrutador está configurado cunha conexión PPTP (10.0.5.100) ao servidor 169.178.59.82. A cámara IP 192.168.0.200 tamén está conectada a este enrutador e envíanse os seguintes portos
192.168.0.200:80 -> 49151 (webmord)
192.168.0.200:34567 -> 49152 (DVRIP)
192.168.0.200:554 -> 49153 (RTSP)
Servidor (169.178.59.82, 10.0.5.1), ao que está conectado o enrutador TP-LINK 2. O servidor executa pptpd, shadowsocks e 3proxy, a través dos cales se pode acceder aos dispositivos da rede 10.0.5.0 e así ter acceso ao enrutador TP-LINK 2.
Así, todos os dispositivos domésticos da rede 192.168.1.0 teñen acceso á cámara a través de TP-LINK 2 no 192.168.1.200, e todos os demais poden conectarse a través de pptp, shadowsocks ou socks5 e acceder a 10.0.5.100.
axuste
O primeiro paso é conectar todos os dispositivos segundo o diagrama da figura anterior.
A configuración do enrutador TP-LINK 1 consiste en reservar o enderezo 192.168.1.200 para TP-LINK 2. Opcional se precisa un enderezo fixo para acceder desde a rede 192.168.1.0. E, se o desexa, pode reservar 10-20 Mbit para iso (10 é suficiente para un fluxo de vídeo de 1080).
sudo netfilter-persistent save
sudo netfilter-persistent reload
Configuración de TP-LINK 2
Reservamos o enderezo 192.168.0.200 para a nosa cámara:
DHCP -> Reserva de enderezos — Enderezo MAC — cámara MAC, pódese ver en DHCP -> Lista de clientes DHCP
— Enderezo IP reservado — 192.168.0.200
Portos de reenvío: Redirección -> Servidores virtuais — Porto de servizo: 49151, Porto interno: 80, Enderezo IP: 192.168.0.200, Protocolo: TCP
— Porto de servizo: 49152, Porto interno: 34567, Enderezo IP: 192.168.0.200, Protocolo: TCP
— Porto de servizo: 49153, Porto interno: 554, Enderezo IP: 192.168.0.200, Protocolo: TCP
Configurar unha conexión VPN:
Rede -> WAN — Tipo de conexión WAN: PPTP
— Nome de usuario: nome de usuario (consulte /etc/ppp/chap-secrets)
— Contrasinal: contrasinal (consulte /etc/ppp/chap-secrets)
— Confirme o contrasinal: contrasinal (consulte /etc/ppp/chap-secrets)
- IP dinámica
— Enderezo IP/Nome do servidor: 169.178.59.82 (obviamente, a IP externa do seu servidor)
— Modo de conexión: Conéctase automaticamente
Opcionalmente, permitimos o acceso remoto á cara web do enrutador Seguridade -> Xestión remota - Porto de xestión web: 80
— Dirección IP de xestión remota: 255.255.255.255
Reinicie o enrutador TP-LINK 2
En lugar de PPTP, podes usar L2TP ou, se tes firmware personalizado, o que queiras o teu corazón. Elixín PPTP, xa que este esquema non se construíu por razóns de seguridade e pptpd, segundo a miña experiencia, é o servidor VPN máis rápido. Ademais, realmente non quería instalar firmware personalizado, o que significaba que tiña que escoller entre PPTP e L2TP.
Se non cometín un erro en ningún lugar do manual, e fixeches todo correctamente e tiveches sorte, despois de todas estas manipulacións
en primeiro lugar
ifconfig
mostrará a interface ppp0 inet 10.0.5.1 netmask 255.255.255.255 destination 10.0.5.100,
Должен обнаружить стрим. Podes atopar o porto rtsp, o inicio de sesión e o contrasinal na documentación da túa cámara
Conclusión
En principio, isto non está mal, hai acceso a RTSP, se o software propietario funciona a través de DVRIP, entón podes usalo. Podes gardar a emisión usando ffmpeg, acelerar o vídeo 2-3-5 veces, dividilo en anacos dunha hora de duración, cargalo todo en Google Drive ou redes sociais e moito, moito máis.
Non me gustou RTSP sobre TCP, porque non funcionaba moi estable, pero si sobre UDP, polas razóns de que non podemos (ou podemos, pero non quero facelo) reenviar o rango de portos. a través do cal RTSP impulsará o fluxo de vídeo, non funcionará, escribín un script que arrastra un fluxo por TCP mediante DVRIP. Resultou máis estable.
Unha das vantaxes do enfoque é que podemos tomar algo que admita un asubío 2G en lugar do enrutador TP-LINK 4, alimentalo todo xunto coa cámara desde un SAI (que sen dúbida necesitará un moito menos espazoso que cando usando unha gravadora), ademais, a gravación transmítese case ao instante ao servidor, polo que aínda que os intrusos penetran no teu sitio, non poderán aproveitar o vídeo. En xeral, hai marxe de manobra e todo depende só da túa imaxinación.
PD: sei que moitos fabricantes ofrecen solucións na nube preparadas, pero en prezo son case o dobre que o meu VPS (do que xa teño 3, polo que teño que destinar recursos nalgún lugar), proporcionan moito menos control e tamén calidade non moi satisfactoria.