Ich wollte schon seit einiger Zeit einen Artikel über ein Drehbuch für die Arbeit mit einer Kamera über das DVRIP-Protokoll schreiben, aber die Diskussion über die neuesten Nachrichten über
Xiaomi veranlasste mich, zuerst darüber zu sprechen, wie ich die Videoüberwachung zu Hause eingerichtet habe, und dann über Drehbücher und mehr.
Wir hatten 2 Pakete ... Also, hör auf, das ist nicht die Geschichte.
Wir hatten 2 TP-LINK-Router, Internetzugang für den Anbieter NAT, eine Überwachungskamera von Partizan, an das ich mich nicht erinnern kann, welches Modell (jede IP-Kamera, die RTSP über TCP oder DVRIP unterstützt, funktioniert) und billiges VPS für 4 Euro mit den Merkmalen: 2 Core CPU 2,4 GHz, 4 GB RAM, 300 GB Festplatte, 100-Mbit / s-Port. Und auch die Zurückhaltung, etwas anderes zu kaufen, das mehr kosten würde als ein Patchkabel.
Vorwort
Aus offensichtlichen Gründen können wir nicht nur die Kameraanschlüsse des Routers weiterleiten und das Leben genießen, auch wenn wir dies könnten, sollten wir dies nicht tun.
Aus meinem Ohr hörte ich, dass es beim IPv6-Tunneling einige Optionen gibt, bei denen Sie anscheinend alles so einstellen können, dass alle Geräte im Netzwerk eine externe IPv6-Adresse erhalten. Dies würde die Dinge ein wenig vereinfachen, lässt jedoch die Sicherheit dieses Ereignisses in Frage , und auch die Unterstützung in der Standard-TP-LINK-Firmware für dieses Wunder ist irgendwie komisch. Obwohl es wahrscheinlich ist, dass ich im vorigen Satz Unsinn spreche, schenken Sie ihm doch überhaupt keine Beachtung.
Aber zum Glück enthält fast jede Firmware für einen Router (eine ziemlich unbegründete Aussage) einen PPTP / L2TP-Client oder die Möglichkeit, eine benutzerdefinierte Firmware mit dessen Vorhandensein zu installieren. Und daraus können wir bereits eine Verhaltensstrategie entwickeln.
Topologie
In einem Anfall von Fieber gebar mein Gehirn so etwas wie dieses Verbindungsschema,
und während eines weiteren Angriffs zog er ein Geek-Magazin auf Die Adresse 169.178.59.82 wird zufällig generiert und dient nur als Beispiel.Na ja, oder wenn in Worten, dann:
- TP-LINK 1 Router (192.168.1.1) , in den ein Kabel eingesteckt ist, das aus der Wand herausragt. Ein neugieriger Leser wird vermuten, dass dies ein Anbieterkabel ist, über das ich Zugang zum Internet erhalte. Eine Vielzahl von Heimgeräten ist über ein Patchkabel oder WLAN mit diesem Router verbunden. Dies ist ein Netzwerk 192.168.1.0
- Der TP-LINK 2- Router (192.168.0.1, 192.168.1.200) , in den das Kabel eingesteckt ist, das aus dem TP-LINK 1-Router herausragt. Dank dieses Kabels haben auch der TP-LINK 2-Router und die daran angeschlossenen Geräte Zugriff auf das Internet. Auf diesem Router ist die PPTP-Verbindung (10.0.5.100) zum Server 169.178.59.82 konfiguriert. Die IP-Kamera 192.168.0.200 ist ebenfalls an diesen Router angeschlossen und die folgenden Ports werden weitergeleitet
- 192.168.0.200:80 -> 49151 (Webmord)
- 192.168.0.200 ∗ 4567 -> 49152 (DVRIP)
- 192.168.0.200/1054 -> 49153 (RTSP)
- Server (169.178.59.82, 10.0.5.1) , an den der TP-LINK 2-Router angeschlossen ist: Pptpd, Shadowsocks und 3proxy drehen sich auf dem Server, über den Sie auf 10.0.5.0-Netzwerkgeräte zugreifen und somit Zugriff auf den TP-LINK 2-Router haben .
Somit haben alle Heimgeräte im 192.168.1.0-Netzwerk über TP-LINK 2 unter 192.168.1.200 Zugriff auf die Kamera, und alle anderen können über pptp, shadowsocks oder socks5 eine Verbindung herstellen und auf 10.0.5.100 zugreifen.
Anpassung
Der erste Schritt besteht darin, alle Geräte gemäß dem Diagramm in der obigen Abbildung anzuschließen.
- Wenn Sie den TP-LINK 1-Router einrichten, müssen Sie die Adresse 192.168.1.200 für TP-LINK 2 reservieren. Optional, wenn Sie eine feste Adresse für den Zugriff über das Netzwerk 192.168.1.0 benötigen. Und falls gewünscht, können Sie dafür 10-20 Mbit reservieren (10 ist genug für einen Videostream in 1080 mit einem Kopf).
- Sie müssen pptpd auf dem Server installieren und konfigurieren. Ich habe Ubuntu 18.04 und die Aktionen waren ungefähr wie folgt (das Beispiel war blog.xenot.ru/bystraya-nastrojka-vpn-servera-pptp-na-ubuntu-server-18-04-lts.fuck ):
- Installieren Sie die erforderlichen Pakete:
sudo apt install pptpd iptables-persistent
- Wir bringen zum folgenden Formular
/etc/pptpd.conf option /etc/ppp/pptpd-options bcrelay eth0 # , logwtmp localip 10.0.5.1 remoteip 10.0.5.100-200
- Richtig
/ etc / ppp / pptpd-Optionen 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
- Fügen Sie Anmeldeinformationen zu hinzu
/ etc / ppp / chap-secrets # Secrets for authentication using CHAP # client server secret IP addresses username pptpd password *
- Hinzufügen zu
und neu laden sysctl
sudo sysctl -p
- Starten Sie pptpd neu und fügen Sie es dem Start hinzu
sudo service pptpd restart sudo systemctl enable pptpd
- Richtig
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
Und sparen
sudo netfilter-persistent save sudo netfilter-persistent reload
- Konfigurieren Sie TP-LINK 2
- Wir reservieren die Adresse 192.168.0.200 für unsere Kamera:
DHCP -> Adressreservierung- MAC-Adresse - MAC-Kameras können unter DHCP -> DHCP-Client-Liste angezeigt werden
- Reservierte IP-Adresse - 192.168.0.200
- Wir leiten Ports weiter:
Weiterleitung -> Virtuelle Server- Service-Port: 49151, Interner Port: 80, IP-Adresse: 192.168.0.200, Protokoll: TCP
- Service-Port: 49152, Interner Port: 34567, IP-Adresse: 192.168.0.200, Protokoll: TCP
- Service-Port: 49153, Interner Port: 554, IP-Adresse: 192.168.0.200, Protokoll: TCP
- VPN-Verbindung konfigurieren:
Netzwerk -> WAN- WAN-Verbindungstyp: PPTP
- Benutzername: Benutzername (siehe / etc / ppp / chap-secrets)
- Passwort: Passwort (siehe / etc / ppp / chap-secrets)
- Passwort bestätigen: Passwort (siehe / etc / ppp / chap-secrets)
- Dynamische IP
- IP-Adresse / Servername: 169.178.59.82 (offensichtlich die externe IP Ihres Servers)
- Verbindungsmodus: Automatisch verbinden
- Optional können Sie den Remotezugriff auf den Router-Webmord zulassen
Sicherheit -> Fernverwaltung- Web Management Port: 80
- IP-Adresse der Fernbedienung: 255.255.255.255
- Starten Sie den TP-LINK 2-Router neu
Anstelle von PPTP können Sie L2TP verwenden oder, wenn Sie eine benutzerdefinierte Firmware haben, alles, was Ihr Herz begehrt. Ich habe mich für PPTP entschieden, da dieses Schema nicht aus Sicherheitsgründen erstellt wurde, sondern nach meiner Erfahrung pptpd der schnellste VPN-Server ist. Außerdem wollte ich wirklich keine benutzerdefinierte Firmware installieren, was bedeutet, dass ich mich zwischen PPTP und L2TP entscheiden musste.Wenn ich in der Anleitung nirgendwo einen Fehler gemacht habe und Sie alles richtig gemacht haben und Glück hatten, dann nach all diesen Manipulationen
Fazit
Im Prinzip ist es schon nicht schlecht, es gibt Zugriff auf RTSP, wenn die proprietäre Software über DVRIP funktioniert, dann können Sie es verwenden. Sie können den Stream mit ffmpeg speichern, das Video 2-3-5 Mal beschleunigen, stundenweise in Teile zerlegen, alles auf googledisk oder soziale Netzwerke hochladen und vieles mehr.
Ich mochte RTSP nicht über TCP, weil es irgendwie nicht sehr stabil funktionierte, sondern über UDP, da wir den Bereich der Ports, über die RTSP den Videostream verschiebt, nicht weiterleiten können (oder können, aber ich möchte dies nicht tun) Ich kann es nicht verwenden. Ich habe ein Skript geschrieben, mit dem ein Stream über TCP über DVRIP übertragen wird. Es stellte sich heraus, dass es stabiler war.
Von den Vorteilen des Ansatzes können wir etwas nehmen, das die 4G-Pfeife anstelle des TP-LINK 2-Routers unterstützt, und alles zusammen mit der Kamera von der USV mit Strom versorgen (was zweifellos weniger Platz benötigt als bei Verwendung des Rekorders). Außerdem wird die Aufzeichnung fast augenblicklich übertragen Selbst wenn Eindringlinge in Sie eindringen, können sie das Video nicht entfernen. Im Allgemeinen gibt es Spielraum und alles hängt von Ihrer Vorstellungskraft ab.
PS: Ich weiß, dass viele Hersteller fertige Cloud-Lösungen anbieten, aber sie kosten fast das Doppelte des Preises meiner Luftwaffe (von der ich bereits 3 habe, also muss ich Ressourcen irgendwo platzieren), bieten viel weniger Kontrolle und auch sehr zufriedenstellende Qualität.