Տնային տեսահսկում. Տեսաարխիվի պահպանման սխեման առանց տնային ձայնագրիչի

Ես վաղուց էի ուզում հոդված գրել DVRIP արձանագրության միջոցով տեսախցիկի հետ աշխատելու սցենարի մասին, բայց քննարկումը կապված էր վերջին լուրերի հետ. Xiaomi ինձ դրդեց նախ խոսել այն մասին, թե ինչպես եմ կարգավորել տեսահսկումը տանը, այնուհետև անցնել սցենարներին և այլ բաներին:

Մենք ունեինք 2 փաթեթ... Այսպիսով, սպասեք, սա նույն պատմությունը չէ։
Մենք ունեինք 2 երթուղիչ TP-LINK-ից, ինտերնետ հասանելիություն NAT պրովայդերի հետևում, Partizan տեսախցիկ, չեմ հիշում ինչ մոդելի (ցանկացած IP տեսախցիկ, որը աջակցում է RSTP-ին TCP-ի կամ DVRIP-ի միջոցով) և էժան VPS 4 եվրոյով բնութագրերը՝ 2 միջուկային պրոցեսոր 2.4 ԳՀց, 4 ԳԲ օպերատիվ հիշողություն, 300 ԳԲ HDD, 100 Մբիթ/վրկ պորտ: Եվ նաև սրանից բացի որևէ բան գնելու դժկամությունը, որը կարժենա ավելի շատ, քան կարկատանի լարը:

Նախաբան

Հասկանալի պատճառներով, մենք չենք կարող պարզապես փոխանցել տեսախցիկի պորտերը երթուղիչի վրա և վայելել կյանքը, բացի այդ, նույնիսկ եթե կարողանանք, մենք չպետք է դա անենք:

Ես անսպասելիորեն լսեցի, որ կան որոշ տարբերակներ IPv6 թունելավորման հետ, որտեղ թվում է, թե ամեն ինչ կարելի է անել, որպեսզի ցանցի բոլոր սարքերը ստանան արտաքին IPv6 հասցե, և դա մի փոքր կպարզեցնի ամեն ինչ, չնայած դա դեռ թողնում է անվտանգությունը: խնդրո առարկա իրադարձության վերաբերյալ, և այս հրաշքի աջակցությունը ստանդարտ TP-LINK որոնվածում ինչ-որ կերպ տարօրինակ է: Թեև հավանականություն կա, որ նախորդ նախադասության մեջ ես լրիվ անհեթեթություն եմ ասում, ուստի ընդհանրապես ուշադրություն մի դարձրեք դրան։

Բայց, բարեբախտաբար, մեզ համար, ցանկացած երթուղիչի գրեթե ցանկացած որոնվածը (իրականում բավականին անհիմն հայտարարություն) պարունակում է PPTP/L2TP հաճախորդ կամ դրա հետ հատուկ որոնվածը տեղադրելու հնարավորություն: Եվ սրանից մենք արդեն կարող ենք կառուցել ինչ-որ վարքագծի ռազմավարություն։

Տոպոլոգիա

Ջերմության ժամանակ իմ ուղեղը ծնեց այս միացման սխեմայի նման մի բան.

և մեկ այլ հարձակման ժամանակ ես նկարեցի այն Հաբրում տեղադրելու համարՏնային տեսահսկում. Տեսաարխիվի պահպանման սխեման առանց տնային ձայնագրիչի

169.178.59.82 հասցեն ստեղծվել է պատահականորեն և ծառայում է միայն որպես օրինակ

Դե, կամ եթե բառերով, ապա.

  • Ուղղորդիչ TP-LINK 1 (192.168.1.1), որի մեջ մտցված է մալուխ, որը դուրս է մնում պատից։ Հետաքրքրասեր ընթերցողը կկռահի, որ դա այն մատակարարի մալուխն է, որով ես մուտք եմ գործում ինտերնետ: Տնային տարբեր սարքեր միացված են այս երթուղիչին կարկատալի կամ Wi-Fi-ի միջոցով: Սա ցանցն է 192.168.1.0
  • Ուղղորդիչ TP-LINK 2 (192.168.0.1, 192.168.1.200), որի մեջ մտցված է մալուխ, որը դուրս է մնում TP-LINK 1 երթուղիչից։Այս մալուխի շնորհիվ TP-LINK 2 երթուղիչը, ինչպես նաև դրան միացված սարքերը, հասանելի են նաև ինտերնետին։ Այս երթուղիչը կազմաձևված է PPTP կապով (10.0.5.100) 169.178.59.82 սերվերի հետ: IP Camera 192.168.0.200-ը նույնպես միացված է այս երթուղղիչին և փոխանցվում են հետևյալ պորտերը
    • 192.168.0.200:80 -> 49151 (webmord)
    • 192.168.0.200:34567 -> 49152 (DVRIP)
    • 192.168.0.200:554 -> 49153 (RTSP)
  • Սերվեր (169.178.59.82, 10.0.5.1), որին միացված է TP-LINK 2 երթուղիչը: Սերվերն աշխատում է pptpd, shadowsocks և 3proxy, որոնց միջոցով կարող եք մուտք գործել 10.0.5.0 ցանցի սարքեր և այդպիսով մուտք ունենալ TP-LINK 2 երթուղիչ:

Այսպիսով, 192.168.1.0 ցանցի բոլոր տնային սարքերը տեսախցիկին մուտք ունեն TP-LINK 2-ի միջոցով՝ 192.168.1.200 հեռախոսահամարով, իսկ մնացած բոլոր սարքերը կարող են միանալ pptp-ի, shadowsocks-ի կամ socks5-ի միջոցով և մուտք գործել 10.0.5.100:

հարմարեցում

Առաջին քայլը բոլոր սարքերը միացնելն է վերը նշված նկարի գծապատկերի համաձայն:

  • TP-LINK 1 երթուղիչի կարգավորումը հանգեցնում է TP-LINK 192.168.1.200-ի համար 2 հասցեի ամրագրմանը: Ցանկության դեպքում, եթե ձեզ անհրաժեշտ է ֆիքսված հասցե 192.168.1.0 ցանցից մուտք գործելու համար: Իսկ ցանկության դեպքում դրա համար կարող եք վերապահել 10-20 Մբիթ (10-ը բավարար է մեկ 1080 վիդեո հոսքի համար)։
  • Դուք պետք է տեղադրեք և կարգավորեք pptpd սերվերի վրա: Ես ունեմ Ubuntu 18.04 և քայլերը մոտավորապես հետևյալն էին (դոնորը օրինակ էր blog.xenot.ru/bystraya-nastrojka-vpn-servera-pptp-na-ubuntu-server-18-04-lts.fuck):
    • Տեղադրեք անհրաժեշտ փաթեթները.
      sudo apt install pptpd iptables-persistent
    • Մենք այն բերում ենք հետևյալ ձևին

      /etc/pptpd.conf

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

    • Մենք խմբագրում ենք

      /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
      
    • Հավատարմագրերի ավելացում

      /etc/ppp/chap-secrets

      # Secrets for authentication using CHAP
      # client	server	secret			IP addresses
      username pptpd password *
    • Ավելացնել

      /etc/sysctl.conf

      net.ipv4.ip_forward=1

      և վերաբեռնել sysctl

      sudo sysctl -p
    • Վերագործարկեք pptpd և ավելացրեք այն գործարկմանը
      sudo service pptpd restart
      sudo systemctl enable pptpd
    • Մենք խմբագրում ենք

      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

      Եվ խնայեք

      sudo netfilter-persistent save
      sudo netfilter-persistent reload
      
  • TP-LINK 2-ի կարգավորում
    • Մեր տեսախցիկի համար վերապահում ենք 192.168.0.200 հասցեն.

      DHCP -> Հասցեի ամրագրում — MAC հասցե — տեսախցիկ MAC, կարելի է դիտել DHCP -> DHCP հաճախորդների ցանկում
      — Պահպանված IP հասցե — 192.168.0.200

    • Փոխանցման նավահանգիստներ.
      Վերահղում -> Վիրտուալ սերվերներ — Ծառայության նավահանգիստ՝ 49151, Ներքին պորտ՝ 80, IP հասցե՝ 192.168.0.200, Արձանագրություն՝ TCP
      — Ծառայության նավահանգիստ՝ 49152, Ներքին պորտ՝ 34567, IP հասցե՝ 192.168.0.200, Արձանագրություն՝ TCP
      — Ծառայության նավահանգիստ՝ 49153, Ներքին պորտ՝ 554, IP հասցե՝ 192.168.0.200, Արձանագրություն՝ TCP
    • VPN կապի կարգավորում.

      Ցանց -> WAN — WAN կապի տեսակը՝ PPTP
      — Օգտվողի անուն. օգտանուն (տես /etc/ppp/chap-secrets)
      — Գաղտնաբառ՝ գաղտնաբառ (տես /etc/ppp/chap-secrets)
      — Հաստատեք գաղտնաբառը՝ գաղտնաբառը (տես /etc/ppp/chap-secrets)
      - Դինամիկ IP
      — IP հասցե/Սերվերի անուն՝ 169.178.59.82 (ակնհայտորեն, ձեր սերվերի արտաքին IP)
      — Միացման ռեժիմ. Միացեք ավտոմատ կերպով

    • Ընտրովի, մենք թույլ ենք տալիս հեռահար մուտք դեպի երթուղիչի վեբ դեմք
      Անվտանգություն -> Հեռակառավարում - Վեբ կառավարման պորտ՝ 80
      — Հեռակառավարման IP հասցե՝ 255.255.255.255
    • Վերագործարկեք TP-LINK 2 երթուղիչը

PPTP-ի փոխարեն կարող եք օգտագործել L2TP կամ, եթե ունեք մաքսային որոնվածը, ապա այն, ինչ ցանկանում է ձեր սիրտը: Ես ընտրեցի PPTP, քանի որ այս սխեման չի ստեղծվել անվտանգության նկատառումներով, և pptpd-ն, իմ փորձով, ամենաարագ VPN սերվերն է: Ավելին, ես իսկապես չէի ուզում տեղադրել հատուկ որոնվածը, ինչը նշանակում էր, որ ես պետք է ընտրեի PPTP-ի և L2TP-ի միջև:

Եթե ​​ես ձեռնարկում որևէ տեղ սխալ չեմ թույլ տվել, և դուք ամեն ինչ ճիշտ եք արել և հաջողակ եք եղել, ապա այս բոլոր մանիպուլյացիաներից հետո

  • նախ
    ifconfig

    ցույց կտա ինտերֆեյսը ppp0 inet 10.0.5.1 netmask 255.255.255.255 destination 10.0.5.100,

  • երկրորդ, 10.0.5.100-ը պետք է պինգ կատարի,
  • և երրորդ
    ffprobe -rtsp_transport tcp "rtsp://10.0.5.100:49153/user=admin&password=password&channel=1&stream=0.sdp"

    Պետք է հայտնաբերի հոսքը:
    Դուք կարող եք գտնել rtsp պորտը, մուտքի մուտքը և գաղտնաբառը ձեր տեսախցիկի փաստաթղթերում

Ամփոփում

Սկզբունքորեն, սա վատ չէ, կա մուտք դեպի RTSP, եթե ֆիրմային ծրագրակազմը աշխատում է DVRIP-ի միջոցով, ապա կարող եք օգտագործել այն: Դուք կարող եք պահպանել հոսքը՝ օգտագործելով ffmpeg, արագացնել տեսանյութը 2-3-5 անգամ, բաժանել այն մեկ ժամ տևողությամբ մասերի, վերբեռնել այդ ամենը Google Drive-ում կամ սոցիալական ցանցերում և շատ ու շատ ավելին:

Ինձ դուր չեկավ RTSP-ն TCP-ի վրա, քանի որ այն շատ կայուն չէր աշխատում, բայց UDP-ով, այն պատճառով, որ մենք չենք կարող (կամ կարող ենք, բայց ես չեմ ուզում դա անել) փոխանցել պորտերի տիրույթը: որի միջոցով RTSP-ն հրում է վիդեո հոսքը, այն չի աշխատի, ես գրել եմ մի սցենար, որը հոսքը քաշում է TCP-ով DVRIP-ի միջոցով: Ավելի կայուն է ստացվել։

Մոտեցման առավելություններից մեկն այն է, որ մենք կարող ենք TP-LINK 2 երթուղիչի փոխարեն վերցնել մի բան, որն աջակցում է 4G սուլիչին, և այդ ամենը միացնել UPS-ի տեսախցիկին (որին, անկասկած, անհրաժեշտ կլինի շատ ավելի քիչ տարողունակ, քան երբ): օգտագործելով ձայնագրիչ), բացի այդ, ձայնագրությունը գրեթե ակնթարթորեն փոխանցվում է սերվերին, այնպես որ նույնիսկ եթե ներխուժողները ներթափանցեն ձեր կայք, նրանք չեն կարողանա գրավել տեսանյութը: Ընդհանրապես մանեւրելու տեղ կա եւ ամեն ինչ կախված է միայն ձեր երեւակայությունից։

Հ.Գ.: Ես գիտեմ, որ շատ արտադրողներ առաջարկում են պատրաստի ամպային լուծումներ, բայց գնով դրանք գրեթե երկու անգամ ավելի թանկ են, քան իմ VPS-ը (որից ես արդեն ունեմ 3-ը, ուստի պետք է ինչ-որ տեղ հատկացնեմ ռեսուրսները), շատ ավելի քիչ վերահսկողություն են ապահովում, ինչպես նաև ոչ այնքան գոհացուցիչ որակ:

Source: www.habr.com

Добавить комментарий