недеља, 7. децембар 2014.

Bezbednost video obezbeđenja?



Savremeni sistemi video obezbeđenja se uglavnom oslanjaju na uređaje bazirane na IP, odnosno računarskim mrežama. Istorijski gledano, ovom temom  su se uglavnom bavili stručnjaci sa podužim stažom u oblasti informacionih tehnologija. No, sa napretkom tehnologije i "uvezivanja" sve većeg broja ljudi na globalnu računarsku mrežu, javila se potreba za edukacijom umrežene populacije u bezbenom ponašanju na Internetu.
Internet je mreža svih mreža, a TCP/IP je njen jezik. IP je mrežni deo TCP/IP protokola koji omogućava uređajima u mreži da "pričaju" jedni sa drugima. U IP spada adresiranje, prenošenje paketa informacija, rutiranje i slične aktivnosti, koje omogućavaju uređajima Internet konektivnost i pronalaženje međusobnih puteva.
IP mreže su, svojim dizajnom, otvorene za mnoge napade. Osnovni razlog za to je činjenica da IP protokol ne poseduje mehanizam autentifikacije, odnosno verifikacije izvorišne adrese paketa. Primer je tzv. IP Spoofing tj. napad lažiranjem IP adrese, gde jedan od uređaja na mreži "tvrdi" da ima adresu nekog drugog uređaja, pa se ka njemu usmerava sav mrežni saobraćaj namenjen legitimno adresiranom uređaju. Na taj način napadač dolazi u posed podataka namenjenih žrtvi.
Video strim sa IP kamera je  jedna od informacija koja na ovaj način može biti presretnuta i usmerena na neželjenu lokaciju. Obzirom da je ovde reč o bezbednosnim sistemima, gde je potencijalna šteta usled probijanja u mrežu nemerljiva, bezbednost IP mreže je jedan od segmenata kome treba posvetiti punu pažnju.
Prvi nivo bezbednosti je autorizacija i autentifikacija. Korisnik se na udaljeni mrežni uređaj prijavljuje korisničkim imenom i lozinkom, koje taj uređaj verifikuje kao ispravne i dozvoljava prijavu.
Dodatna bezbednost se postiže enkripcijom razgovora između korisničkog i udaljenog uređaja korišćenjem neke od standardnih metoda enkripcije – HTTPS (SSL/TLS), ili VPN i kod bežičnih mreža WEP i WPA.
IEEE 802.1x je standard koji specificira način autorizacije i autentifikacije mrežnog uređaja na nivou porta sviča na koji je uređaj zakačen, odnosno na nivou bežičnog access pointa na koji se bežično povezuje uređaj. Primena ovog standarda u mrežnom okruženju onemogućava tzv. „napad preuzimanjem porta“, tj. povezivanje neželjenog računara na zaštićenu mrežu unutar, ili izvan objekta. Implementacija IEEE 802.1x je prilično jednostavna, pa se često koristi u aplikacijama  mrežnog videa, gde se IP kamere postavljaju na javnim mestima i njihov mrežni priključak predstavlja bezbednosni rizik.
Princip rada IEEE 802.1x autorizacije i autentifikacije se zasniva na „međusobnom razgovoru“ tri uređaja:

  •  klijentu, odnosno računaru koji pristupa nekom mrežnom resursu
  • serveru – uređaju odgovornom za potvrdu kredencijala klijenta za pristupanje mreži, često se naziva i RADIUS server (Remote Authentication Dial-In User Server)
  • uređaju u sredini – obično je u pitanju mrežni svič, čija je funkcija prenošenje kredencijala i zabrana/dozvola priključenja uređaja na svoj port

Znači, da bi se obavila autentifikacija na nivou porta sviča, dotična mreža mora biti opremljena RADIUS serverom, mrežnim svičem koji podržava IEEE 802.1x  i, naravno, uređajem koji se autentifikuje (u našem slučaju kamerom), a da podržava IEEE 802.1x standard.


четвртак, 13. новембар 2014.

Easy MySQL database backup



If you're storing anything in MySQL databases that you do not want to lose, it is very important to make regular backups of your data to protect it from loss. If database is run under Linux OS, the simplest and fastest way is to dump it into a .sql file and ftp it onto a storage protected by RAID. The automation of this process is achieved with shell scripting.
Here's a simple shell script I'm using to backup our company's database. It's designed to send out a report upon successful/unsuccessful database backup to a set of email addresses. It's assumed that email transport is already set up.
Initially, to set up this script, you need to have root access to your system and also access to your database :) Then, you create a .sh file (mine is called backup.sh):

# vi backup.sh

If you are unfamiliar with vi editor, here's a nifty tutorial.
The following is the code I use, with comments explaining each line and with omitted secret data (colored red and with brackets) :) :

#!/bin/sh
#Backup script for  OTRS
echo "From:
<backup daemon>@<email domain>" > email.text
echo "To: <address of receiver>@<email domain>" >> email.text
echo "Cc: <cc address>@<email domain>" >> email.text
echo "Subject: OTRS backup" >> email.text
echo "Starting db backup on:" `date` >> email.text
#above is for setting up the header of email report. It's written to a file, that will be deleted after being sent.
 
#dump your database to a file
mysqldump -u root -p<db password> otrs > otrs_`date +%Y-%m-%d`.sql
echo -e "\nBackup file created on:" `date` >> email.text
# setting up variables for ftp server. set your host, your user name for ftp and password
HOST='<ip address of ftp host>'
USER='boki' 
PASSWD='<your password>'

# adding some lines for the report
echo -e "\nFTP-ing to backup location started on:" `date` >> email.text
# opening the ftp connection and starting backup
ftp -n -v $HOST << EOT >> email.text
ascii
user $USER $PASSWD
bin
cd otrs_ip
put otrs_`date +%Y-%m-%d`.sql
bye
EOT
# cleaning up after ftp-ing
rm otrs_`date +%Y-%m-%d`.sql
echo -e "\n\nBackup procedure finished. Check above info for errors." >> email.text
echo -e "\n\nFor all the additional info, contact your backup admin." >> email.text
/usr/sbin/sendmail -r "<backup daemon>@<email domain>" -t < email.text
# deleting email file
rm email.text

After successfully editing and saving this script, it's time to make it executable. So, enter as root user following:

# chmod 755 backup.sh

Finally, make your script execute without you needing to intervene - make it execute automatically at a certain time (usually after hours):

# crontab -e

Add a line to the end of your crontab:

00 23 * * * /root/backup.sh

This means that the script will automatically execute at 23:00 every day. Thats it!

среда, 12. новембар 2014.

CCD i CMOS senzori

Putovanje slike kroz sistem uzorkovanja, obrade i skladištenja počinje na senzoru slike. Bilo da je reč o digitalnim ili analognim sistemima, foto-aparatima ili kamerama, senzor slike je zajednički imenitelj, a tehnologije izrade senzora  danas su uglavnom CMOS i CCD. 
Za obe tehnologije, zajedničko je da konvertuju količinu svetlosti koja padne na senzor u električni signal. Potom se ovaj signal konvertuje u broj (korišćenjem A/D konverzije) i prenosi dalje radi procesiranja, odnosno prosleđivanja kroz lanac obrade.
,
Obzirom da senzori slike registruju samo nivoe svetlosti (bez informacije o boji - daltonisti su), za registrovanje informacije o boji se koriste posebni filteri. Najčešće korišćen je tzv. Bayer filter.
 
Sastoji se iz niza izmenjujućih redova sa plavo-zelenim i crveno-zelenim segmentima. Veći broj zelenih segmenata se pojavljuje usled činjenice da je ljudsko oko osetljivije na zelenu boju nego na bilo koju drugu boju spektra (zelena u ovom slučaju određuje luminancu piksela).
Kod CCD senzora, svetlost pobuđuje svetlosni element na senzoru (piksel). Piksel potom generiše elektronski naboj koji se serijski prenosi kroz senzor, zajedno sa elektronskim nabojima drugih piksela iz iste linije. Naboji se konvertuju u naponske nivoe, pojačavaju se i konvertuju u digitalnu vrednost. Digitalna vrednost se, zatim, prenosi u sistem van senzora radi dalje manipulacije.
CCD senzor je dugo godina u upotrebi i inicijalno je imao prednosti u odnosu na CMOS tehnologiju u vidu bolje svetlosne osetljivosti i manjeg nivoa šuma. Moderna tehnologija izrade CMOS senzora je izjednačila kvalitet generisane slike sa slikom dobijenom iz CCD senzora, pa su se prednosti CCD tehnologije "istopile". Nedostaci, sa druge strane, nisu nimalno zanemarivi. Budući da je CCD senzor analogna komponenta, koja zahteva dodatnu elektroniku za pojačanje i konverziju signala, troškovi izrade su veći, a i potrošnja energije se u velikoj meri povećava. Velika potrošnja disipira veću toplotu u telu kamere, što može dovesti i do smanjenja kvaliteta dobijene slike - ukoliko se generisana toplota adekvatno ne sprovede van tela kamere.
 CMOS tehnologija izrade senzora (nazvana i APS - active pixel senzor) se zasniva na nizu piksel-senzora, koji se sastoje od foto-detektora i aktivnog pojačavača za svaki piksel, ponaosob.

U poređenju sa prethodno pomenutom tehnologijom, CMOS ima bolje mogućnosti integracije, obzirom da je sva neophodna elektronika već integrisana u senzoru. CMOS tehnologija je dosta jeftinija, slika se brže generiše i manje su dimenzije sistema neophodnog za generisanje i transport slike.

Glavni nedostatak je činjenica da se kod CMOS senzora uzorkovanje slike odvija red-po-red, brzinom koja zavisi od brzine osvežavanja. Ovo može dovesti do tzv. "rolling shutter" efekta, gde je slika iskrivljena na levu ili desnu stranu (zavisi od smera kretanja objekta na sceni). Ovaj se efekat pogotovo primećuje kod objekata koji se na sceni kreću velikom brzinom. Kod CCD senzora, ovaj efekat ne postoji, jer se jedan frejm praktično u jednom momentu uzorkuje, pa tek onda kreće procedura obrade.
CMOS senzor omogućava "čitanje" individualnih piksela, što omogućava segmentaciju senzora - delovi senzora se mogu posmatrati kao slika za sebe, pa nije potrebno iščitavati ceo senzor. Na taj način se može postići veća brzina frejmova, digitalni PTZ ("šetanje" slike po senzoru), ili je npr. moguće povlačenje većeg broja strimova sa  različitih delova površine jednog senzora, odnosno simulacija virtuelnih kamera.

уторак, 11. новембар 2014.

Elektronska stabilizacije slike pri mehaničkim vibracijama

Tehnike stabilizacija slike se već dugo vremena koriste u proizvodima široke potrošnje, kao npr. digitalni fotoaparati i video kamere. U praksi postoje dve tehnike stabilizacije slike - optička i elektronska stabilizacija.
Tehnika optičke stabilizacije slike se uglavnom zasniva na korišćenju dodatnih uređaja (žiroskopa, akcelerometara) za detekciju i merenje vibracija na mestu postavljanja kamere. Izmerene vibracije se potom procesiraju i prenose na mehaničke pokretače koji kompenzuju vibracije.
Ova tehnika je veoma uspešna u kompenzaciji vibracija kod objektiva sa velikim žižnim daljinama, a ima i veliku upotrebnu vrednost pri uslovima niske osvetljenosti.
Glavni nedostatak ove tehnike je visoka cena dodatne opreme koja se koristi.
Elektronska stabilizacija slike (često nazivana i digitalna stabilizacija) se zasniva na korišćenju raznih algoritama modeliranja pokreta kamere, koji se potom koriste za korekciju slike. Pikseli koji se nalaze izvan ivice vidljive slike, koriste se da ublaže pokret, a informacije koje se nalaze u ovim pikselima se mogu iskoristiti za pomeranje slike između frejmova – dovoljno da bi se izbalansirao pokret usled vibracije i da bi se formirao stabilan video signal.
Ova tehnika, iako cenovno isplativa (jer nema skupih pokretnih delova), ima svoje nedostatke.  Naime, javljaju se poteškoće prilikom razlikovanja realnog pokreta objekta na sceni i pokreta uzrokovanog vibracijama.

 Mnoge kamere, posebno one sa CMOS senzorom,poseduju tzv. sekvencijalnu blendu. Za razliku od blende kod konvencionalnih kamera/foto aparata (koja se otvori i izloži ceo senzor, odnosno deo filma u jedinici vremena), sekvencijalna blenda „hvata“ sliku u segmentima, liniju po liniju. Drugim rečima, slika nije jednovremeno „uhvaćena“, već je svaka linija slike uzorkovana sa blagim vremenskim pomerajem.  Ovakav način digitalizacije slike izaziva efekat preklopljene slike, a objekti koji se na sceni brzo kreću, takođe odaju utisak kao da se dupliraju.
Distorzija slike usled sekvencijalne blende, može se izbeći optičkom stabilizacijom slike – momentalno se kompenzuje pokret. U slučaju elektronske stabilizacije, potrebno je inicijalno uhvatiti (odnosno uzorkovati) barem jednu liniju, da bi digitalna obrada slike počela. U svakom slučaju, ova tehnika je sasvim primenljiva i konstantno se poboljšava.


 U poslednje vreme, primetan je razvoj hibridnih tehnika stabilizacije – kombinacije mehaničkih i elektronskih metoda. Naime, ne kompenzuje se  mehaničko pomeranje senzora mehaničkim putem – već elektronski. Žiroskopi i akcelerometri detektuju pomeraj koji se potom, korišćenjem algoritama digitalne obrade slike, kompenzuje softverskim metodama obrade slike.
Ova metoda se pokazala pouzdanom, čak i pri niskoj osvetljenosti scene, jer se elektronska stabilizacija slike oslanja na informacije dobijene od senzora, pa je moguće razlikovanje pokreta usled vibracije i stvarnog pokreta objekta na sceni.
Snimci sa kamera montiranih na visokim stubovima, na mostovima, planinskim vrhovima i sličnim mestima gde se javljaju vibracije usled naleta vetra, ili velike frekvencije saobraćaja, mogu da budu zamagljeni – nejasni. Ovakva situacija se posebno javlja kod objektiva sa velikim zumom. Iz tog razloga, gotovo da je nemoguće zamisliti kameru sa mogućnošću zumiranja da bude bez nekog načina stabilizacije slike.
Kamere namenje za video nadzor, pored zahteva za kvalitetnom slikom, imaju i dodatne zahteve koji uslovljavaju stabilizaciju slike usled vibracija. Naime, u nekim sistemima video nadzora, javlja se potreba za maskiranjem određenih delova scene. Ukoliko je kamera nekompenzovana na vibracije, preciznost određivanja maskirane scene je u određenom procentu smanjena.
Možda najbitnije na kraju – skladištenje snimak i propusni opseg potreban za prenošenje signala sa kamere. Kamere koje zasnivaju transport svog video signala na IP mrežama koriste tehnike kompresije video signala (H.264) koje se zasnivaju na razlikama scene u odnosu na vremenski trenutak prethodnog uzorkovanja slike. Kod vibracijski nekompenzovane slike, svaki se piksel na sceni razlikuje u odnosu na piksel uzorkovan u prethodnom vremenskom trenutku. Bilo koja kompresija se u ovoj situaciji ne može prilagoditi konstantnoj promeni scene, pa imamo situaciju da kompresija ne postoji. Dobro kompenzovana slika sadrži znatno manji stepen pokreta (osim ako nisu realni pokreti objekata na sceni), pa shodno tome kompresija u velikoj meri pomaže smanjenju video materijala koji kamera generiše.