My girlfriend is be very interested in putting Blink (Amazon) cameras up around our property. I am not interested in paying Amazon to keep our security footage.
What I'd like to do is have motion activated internet connected cameras around the property that somehow send footage to a server (I don't know if that's the correct term, I'm kind of an idiot) that I keep on the property.
So I have three questions:
is this the right forum to be asking about self hosting security footage?
does anyone here have experience doing this and would they be willing to send some pointers my way?
is this a feasible DIY project or am I better served paying for a service?
I've done a little digging into self hosting and it's not cheap, but I think it will be cheaper than paying a subscription. And safer too, which is rad.
Reolink cameras look like they check all of your boxes. They can be self contained systems with a "recorder box" (actual term is NVR) that you keep on your property out of harms way or it can be a DIY PC with a program called Blue Iris. There is a variety of cameras to choose from with different features like Wifi, POE, PTZ, solar powered, etc. Spend as little or as much as you want. As you mentioned in your post, this will be pricey up front but will be cheaper in the long run.
Reolink is a Chinese company. Not known for their privacy. My experience with their cameras is the quality is meh and their software is even more meh. It amazes me how often they get recommended. I guess it's due to their cheapness.
Their quality is adequate for the price and they are open enough to be used with any NVR.
If you are worried about privacy you should segment the cameras onto their own network (VLAN) or at the very least block them on the firewall from accessing the internet, which you should do anyway.
It's more because they provide an ONVIF interface or an RTSP stream that makes them self-hosting darlings. Them being Chinese white-labels and cheap is mainly a side-bonus.
You're not wrong about reolinks, amcrest, hikvision, etc but their price:quality can't be beat and they work well with many different NVR software suites, which makes them popular.
If you're concerned about how they call home (they do, I've sniffed packets on my network to test the rumors and seen it on every one of them), you need to isolate the cameras off of the internet so they are blocked from the outside connection. This can end up being mildly tricky to very complicated depending on your network equipment, the way your LAN is set up at home, whether you want to view your cameras remotely, etc, but it's the most cost effective long term option that is not subscription/cloud based.
I use blue iris on an old computer. It works great. I have unifi network gear, and I tried some of their cameras out but they're not really ONVIF compliant and they're extremely expensive for an equivalent Chinese brand. That's the made in USA price, and tbh Unifi cameras aren't even that expensive, they're more "prosumer" for small business deployments or nerds at home. They have a walled garden ecosystem that I dipped my toe into and didn't care for some of it, but I still use their access points, routers, and switches because they're great quality and really easy to config.
But, if you have never done any of that, you might just want to go with an off the shelf solution or be willing to spend a lot of time reading. You DON'T want to mess up your network security trying to install local cameras if you're not sure what you're doing.
One thing that hasn't been mentioned yet is an RF/analogue camera kit. It's not as easy to set up as POE (two cords to each camera and they're way bigger so running them through walls will do more damage that you have to patch later) you can get an all-in-one NVR+4/8/12/16 etc camera kit with as many bells and whistles as you want. It will be cheaper as well and you don't have to worry about network bandwidth issues because it's analog. The feeds are super nice.
While Reolink hardware is perfect for Blue Iris and other self-hosted solutions, I try to warn everyone that Reolink's own Android app now captures your device's clipboard whenever accessed. The same may be true for their desktop or iOS apps, I don't know.
I have several Reolink cameras and I've been happy with their overall image quality and capabilities, but I do not trust their software whatsoever and recommend keeping them isolated from the internet entirely.
I have been using Reolink RC-522s outside in the harsh Canadian cold winters. Even at -40 they kept working and their quality hasn't degraded.
I tried out q few options for NVR software, and I've settled on Frigate NVR, it was pretty painless to setup and "just worked".
Shinobi I found worked at first but three times it shit the bed, silently failed one day, and just stopped working. I'd wipe and re-install and it'd just fail after awhile. Frigate has never had this issue so far.
I use Power over Ethernet for the cameras, so i only had to run 1 single cable (ethernet) to each camera outside, no need to run high voltage which makes it way easier to install.
I use a small mini itx PC as the NVR with a 960ti installed in it for transcoding.
I have a fancy managed 48 port gigabit poe switch which is overkill for just cameras (I have tonnes of other PoE devices on my network as well justifying it), but any "dumb" gigabit poe switch will work for you, as long as you have enough ports for your cameras.
I personally use kubernetes for my machines running self hosted apps, but for most folks that's overkill abd you can just use docker compose!
Second for Reolink. I'm just using local SDcard storage atm, but might consider something like Frigate, just hasn't been needed yet. Got 3 cameras and 2 doorbells, all hooked into Home Assistant.
Another brand you might want to look into is Reolink. Whether it's just for the cameras (with something like frigate & home assistant) or cameras and NVR combo.
Ubiquiti is good, if you have the money. I have an 8TB HDD in my UDM-PRO recording 24/7 the footage from 6 cameras. It isn’t a cheap solution but it works and it’s local.
Most cameras that can support RTSP streaming can be used for self-hosting, then you just need a good video recording / storage system. I used a mix of 3 different types of cameras, streaming RTSP to be recorded by Zoneminder.
You can research the different NVR / recording systems to find what suits you.
Indeed. I've been using ZM for personal and commercial camera setups (for up to 32 cameras) since around 2006. Great piece of software - does what it does quietly and without fuss and is completely free.
You can do object detection and recording with Frigate. Notifications and actions on events with Home Assistant.
You can use just about any camera with Frigate in general, but I prefer Dahua because that's what's tested by the frigate team... and the new PTZ features work great with the Dahua cameras. So a camera can watch a normal area... and if it detects a person (or whatever object you set) will lock onto that person and follow them around until it can't any longer then return to the original "normal" position. It's great.
The downfall is that this requires a lot of initial configuration effort on your end, but the software is all free, with no requirements to pay for anything at all outside of the hardware. Something else to keep in mind is that if you're self-hosting... and the device you host on is stolen, the footage goes with it. There's lots of little boxes on amazon that run Frigate really well. Anything with an N100 for instance will run many streams just fine (I have 3 cameras setup on the little guy for my grandfather to keep an eye on him, using about 1/8th the total resources, so could probably handle up to 10-12 cameras quite easily.)
On a related topic, Insecam is a website that shows live streams from insecure cameras. It's a great example on why privacy matters in every aspect of your life, even if you don't think it affects you personally.
Unfortunately, even if you're okay with accepting the sunk cost of purchasing a cloud camera with the foreknowledge that it might stop working in the future, there are still huge privacy and security concerns. Just recently, SwitchBot announced people were accidentally accessing each other's cameras. Whoops.
If you're looking for something that doesn't need the cloud to work, I would recommend IP cameras. That's the term you would look for. There's open source software to manage them too. Of course, you need to be decent at security yourself. Unfortunately. So perhaps those cloud companies still have a little bit of a leg up on the average person.
My cheap and cheerful, but not very secure homebrew solution is a used smartphone, then load any of the motion-detection apps onto it, plus an FTP server app. Then place the phone anywhere within Wi-Fi reach. Run a script once a day on my home server that downloads and deletes the videos from the phone via FTP, and also deletes that footage after 30 days. So the "system" can run indefinitely without running out of memory. The old phones just need to be rebooted once in a while for some odd reason.
Phones and their batteries aren't made for this. Trying to run a phone 24/7 will likely result in the phone dying very quickly and raise the chances of it exploding.
My oldest "security camera" of this type has been online 24/7 since June 2019 and permanently connected to a charger of the smallest type I could find at that time. The battery still holds a charge when I take the phone down for cleaning. Not sure how old the phone itself is (a small Kyocera), probably a 2014 or 2015 model. So, for my requirements, I'd say, it's reasonably reliable.
OTOH, you may be right, and they don't make them like they used to in the olden days, haha.
I'm using a bunch of wyze cam 3 cameras with the wzmini custom firmware installed and outside connections turned off. They took a while to figure out how to set up since I'd never had to deal with ssh keys before but after set up they are pretty bulletproof.
Came to recommend Synology; I've worked on small systems (4 cameras) and large (30+ cameras). For home use you can probably get away with their smallest NAS which includes free CCTV software (Surveillance Station) which itself includes 2 camera licenses. Adding more cameras beyond those will require a one-time license purchase. While this is not the cheapest route they are easy to setup, manage and use.
First of all, you can operate a fully FOSS firmware on your cameras: see OpenIPC (it needs some soldering tho).
Second, you can try Frigate or ZoneMinder as NVR.
Yo I was just thinking about writing something like this. I want to use WebDAV as a backend, so you can just download whatever segment you want. And I think it would be possible to put videos of events in a different directory that it doesn’t purge.
I have thought about this from time to time. I want good surveillance, but I also don't want to lose control of the video.
I think that the solution that I favor right now is a Wyze cam V2 or similar flashed with openmiko. edit:(I had to buy wyze v2 cameras from the US on ebay to get v2 versions, user:@ashok36@ashok36@lemmy.world suggests in this comment to use v3 and Wyzemini firmware - this might do the job. clarification: the point is to replace the manufacturer's firmware which will phone home with something open source that you could audit)
These can be attached via USB or wifi interface to a server with zoneminder (https://zoneminder.com/) From there you could think about offsite records too and motion detection etc. [edit: wifi is useful as I don't want to rewire the house - though could be blocked (or the router could be unplugged!) if you are expecting technically savvy criminals. A solution here would be to use an old router on a separate wifi network, put somewhere where most of the property would have been traversed before it could be accessed (e.g. upstairs).]
Having said this, the setup is just fiddly enough that I keep to finding myself finding other stuff to do. [edit: 'Fiddly' is the wrong word, I think its pretty simple, I just find myself wanting more features until the project doesn't happen at all. I'd be clear that this is a feasible DIY project, so long as you accept that 'done' is better than 'perfect']
[edit: One last note - if you host the video yourself, you take responsibility for the security - this means keeping zoneminder and the OS up to date and offsite backups/networks/cameras secure. This is possibly something that a company is better at (but don't bet on it!). However, you are also a smaller attack target (because bad actors only get your video) so blackmailing you with whatever you do in your surveilled place is less valuable than having the same data for 1000s of people. Also, if someone has access to your home network - they can set up man-in-the-middle attacks and steal your bank details - you have to be doing something interesting in front of those cameras for it to be worth more than the contents of your bank account.]
I wanted to add that while Zoneminder isn't going to be as easy or feature-rich as some of the commercial solutions recommended in this thread, this is the only solution that you can trust will remain privacy-respecting. GPL software isn't going to sell you out.
All that can be said about the rest is that they haven't sold their customers out yet.