Zoneminder su Raspberry pi 3 B+ Raspbian Stretch

 

Zoneminder su Raspberry pi 3 B+ Raspbian Stretch

Zoneminder su Raspberry pi 3 B+ Raspbian Stretch

Con l'arrivo del nuovo Raspberry pi 3 B+ nella mia collezione, ho deciso di dedicarlo alla video sorveglianza installando Zoneminder. Per avere delle ottime performance, è necessrio avere una sd card performante, io ho optato per una SanDisk Extreme PRO 64GB, MicroSDXC Classe 10. Si può anche utilizzare un ssd esterno come capiente storage. Tutti i comandi sotto saranno eseguiti come root:

# apt update; apt upgrade -y
# apt install -y build-essential openssh-server apache2 mysql-server mysql-client bison flex php php7.0-curl php7.0-cli php7.0-mysql php-pear php7.0-gd curl sox libncurses5-dev libssl-dev mpg123 libxml2-dev libnewt-dev sqlite3 libsqlite3-dev libasound2-dev libogg-dev libapache2-mod-php7.0 sendmail ffmpeg vlc vlc-data zoneminder
# rm -rf /etc/mysql/my.cnf
# cp /etc/mysql/mariadb.conf.d/50-server.cnf /etc/mysql/my.cnf
# nano /etc/mysql/my.cnf

ed aggiungere:

sql_mode = NO_ENGINE_SUBSTITUTION

come sotto:

# * Basic Settings
#
user            = mysql
sql_mode = NO_ENGINE_SUBSTITUTION
pid-file        = /var/run/mysqld/mysqld.pid
socket          = /var/run/mysqld/mysqld.sock
port            = 3306
basedir         = /usr
datadir         = /var/lib/mysql
tmpdir          = /tmp
lc-messages-dir = /usr/share/mysql
skip-external-locking

 

# systemctl restart mysql

mettere in sicurezza mysql

# mysql_secure_installation
# service mariadb restart
# systemctl status mariadb.service

Creazione del database:

# mysql -uroot -p < /usr/share/zoneminder/db/zm_create.sql
# mysql -uroot -p -e "grant all on zm.* to 'zmuser'@localhost identified by 'zmpass';"
# mysqladmin -uroot -p reload
# chmod 740 /etc/zm/zm.conf
# chown root:www-data /etc/zm/zm.conf
# adduser www-data video
# a2enmod cgi
# a2enconf zoneminder
# a2enmod rewrite
# systemctl restart apache2
# chown -R www-data:www-data /usr/share/zoneminder/
# systemctl enable zoneminder
# service zoneminder start

per evitare errori modificare il file php.ini aggiungendo Europe/Rome nella sezione Module Settings:

# nano /etc/php/7.0/apache2/php.ini

date.timezone = Europe/Rome

# systemctl restart apache2

a questo punto zoneminder sarà raggiungibile all'indirizzo http://ip_seerver/zm

Per utilizzare un ssd esterno come storage, bisogna configurare /etc/fstab per il montaggio automatico:

# systemctl stop zoneminder
# mkdir -p /ssd/zoneminder/events/
# rm -rf /var/cache/zoneminder/events/
# nano /etc/fstab

ed aggiungere qualcosa del genere:

/dev/sdX1 /ssd ext4 defaults 0 2
/ssd/zoneminder/images /var/cache/zoneminder/images none defaults,bind  0 2
/ssd/zoneminder/events /var/cache/zoneminder/events none defaults,bind 0 2

per poter scrivere sul nuovo storage:

# chown -R www-data:www-data /ssd/zoneminder/
# reboot

Zoneminder su Raspberry pi 3 B+ Raspbian Stretch

al riavvio tutto dovrebbe funzionare, e si potrà procedere alla configurazione di Zoneminder

enjoy πŸ˜‰

Configurazione Trunk PJSIP Messagenet Freepbx 14

 

Configurazione Trunk PJSIP Messagenet e Freepbx 14

Configurazione Trunk PJSIP Messagenet Freepbx 14

Ho deciso di aggiornare il mio centralino, passando da Raspbian Jessie a Raspbian Stretch, e quindi a Freepbx 14, e di passare da chan_sip a chan_pjsip, sia per quanto riguarda i Trunk che per l'estensioni. Per quanto riguarda la creazione del trunk pjsip con Messagenet, ho notato che è meno intuitivo rispetto al chan_sip di una mia vecchia guida, Ad ogni modo condividerò di seguito gli screenshots di una configurazione di un trunk Messagenet funzionante:

I parametri dell'esempio saranno:

Sip server: sip.messagenet.it
Porta: UDP 5061
Username Messagenet:5XXXXXXXXX
Password Messagenet: NXXXXXX
Numero geografico: 02XXXXXXXX

General:

Configurazione Trunk PJSIP Messagenet Freepbx 14

match pattern:

Configurazione Trunk PJSIP Messagenet  Freepbx 14

pjsip setting general:

Configurazione Trunk PJSIP Messagenet Freepbx 14

pgsip setting advanced:

Configurazione Trunk PJSIP Messagenet Freepbx 14

pjsip setting advanced 2:

Configurazione Trunk PJSIP Messagenet Freepbx 14

queste configurazioni vanno a modificare i files:

pjsip.registration.conf:

[Messagenet02]
type=registration
transport=0.0.0.0-udp
outbound_auth=Messagenet02
retry_interval=60
max_retries=10
expiration=3600
line=yes
endpoint=Messagenet02
auth_rejection_permanent=yes
contact_user=02XXXXXXX
server_uri=sip:sip.messagenet.it:5061
client_uri=sip:54XXXXXXXX@sip.messagenet.it:5061


pjsip.endpoint.conf:

[Messagenet02]
type=endpoint
transport=0.0.0.0-udp
context=from-pstn
disallow=all
allow=ulaw,alaw
aors=sip:sip.messagenet.it:5061
language=it
outbound_auth=Messagenet02
from_domain=sip.messagenet.it
from_user=54XXXXXXXX
t38_udptl=no
t38_udptl_ec=none
fax_detect=no
trust_id_inbound=no
t38_udptl_nat=no
direct_media=no
rewrite_contact=yes
rtp_symmetric=yes
message_context=incoming
dtmf_mode=auto


pjsip.auth.conf:

[Messagenet02]
type=auth
auth_type=userpass
password=NXXXXXXXXX
username=54XXXXXXXX

pjsip.aor.conf:

[Messagenet02]
type=aor
qualify_frequency=60
contact=sip:54XXXXXXXX@sip.messagenet.it:5061


pjsip.identify.conf:

[Messagenet02]
type=identify
endpoint=Messagenet02
match=sip.messagenet.it

Configurazione Trunk PJSIP Messagenet Freepbx 14

a questo punto con un Trunk PJSIP funzionante si potrà passare alla creazione delle Exstension, Inbound Route e Outbound Route.

enjoy πŸ˜‰

 

 

Systemback 1.9.3 per Debian 9 Ubuntu 17-10 18-04

Systemback 1.9.3 per Debian 9 Ubuntu 17-10 18-04

Systemback 1.9.3 per Debian 9 Ubuntu 17-10 18-04

Nuovo aggiornamento per Systemback che arriva alla versione 1.9.3, aggiungendo i pacchetti e la compatibilità con Ubuntu 17-10 ed Ubuntu 18-04. In questa versione, oltre a qualche vezzo, ed alcuni bug fix, ho aggiunto anche il supporto per SSD NVMe, anche se al momento funziona meglio se si ha già una partizione pronta all'uso. Tenendo conto che è un lavoro che faccio a tempo perso ogni feed e commento saranno bene accetti.

DOWNLOAD SYSTEMBACK-1.9.3

DOWNLOAD SOURCE

poi:

$ cd Downloads/
$ tar xvf systemback-install_pack-1.9.3.tar.xz
$ cd systemback-install_pack-1.9.3/
$ sudo ./install.sh

Systemback 1.9.3 per Debian 9 Ubuntu 17-10 18-04

enjoy πŸ˜‰

 

Teamviewer 13 su Debian Stretch e Buster

 

Teamviewer 13 su Debian Stretch e Buster

Teamviewer 13 su Debian Stretch e Buster

Per installare Teamviewer 13 su Debian 9 Stretch e Debian 10 Buster, eseguire  i seguenti comandi:

# su
# apt update; apt upgrade -y
# cd /tmp
# wget -c https://download.teamviewer.com/download/linux/teamviewer_amd64.deb
# apt install ./teamviewer*.deb

Teamviewer 13 su Debian Stretch e Buster

enjoy πŸ˜‰

 

Systemback 1.9.2 su Debian Stretch

 

Systemback 1.9.2 su Debian Stretch

Systemback 1.9.2 su Debian Stretch

Nuova versione di Systemback, con alcuni bug fix. Purtroppo non avendo molto tempo a disposizione, man mano che lo uso e mi accorgo di qualche bug, proverò a risolverlo. Ogni feed sarà ben accetto.

Download systemback-1.9.2

poi:

$ tar xvf systemback-1.9.2-x86-x64.tar.xz
$ cd systemback-1.9.2-x86-x64/
$ sudo ./install.sh

Systemback 1.9.2 su Debian Stretch

enjoy πŸ˜‰

Systemback 1.9.1 compatibile con Debian Stretch

Systemback 1.9.1 compatibile con Debian Stretch

Systemback 1.9.1 compatibile con Debian Stretch

Come avevo scritto un po' di tempo fa, avevo in mente di prendere in mano Systemback non piu supportato, e farlo funzionare bene su Debian 9 Stretch. Dopo un primo approccio "leggero" da parte mia, alcuni utenti mi hanno segnalato l'errore "can't mount live image ..installation aborted", che in effetti si presenta nel momento in cui si cerca d'installare il sistema dalla Debian Live creata, Avendo avuto un po' di tempo, mi ci sono messo sotto con più impegno e credo di aver risolto il problema, ed adesso Systemback-1.9.1 è totalmente compatibile con Debian 9.4. A questo proposito chiedo qualche feed da chi vorrà utilizzarlo.

Download systemback-1.9.1

poi:

$ tar xvf systemback-1.9.1-x86-x64.tar.xz
$ cd systemback-1.9.1-x86-x64/
$ sudo ./install.sh

Systemback 1.9.1 compatibile con Debian Stretch

enjoy πŸ˜‰

 

Debian Stretch Live UEFI-BIOS Persistente Sicura

Debian Stretch Live UEFI-BIOS Persistente Sicura

Debian Stretch Live UEFI-BIOS Persistente Sicura

Ho fatto diverse guide su come costruirsi una Debian Live personalizzata, creando anche una categoria dedicata. Le ultime due sono state: Creare una Debian Stretch Live Custom persistente Sicura  e Creare una Debian Live personalizzata con live build. Questa guida invece sarà quella definitiva, dove la chiavetta costruita sarà un mix di sicurezza e personalizzazione, il tutto avviabile sia da UEFI che da Legacy BIOS, con partizione cryptata con LUKS. La guida sotto è per utenti avanzati, dato che non spiegherò ogni singolo passaggio, quindi attenzione a fare copia ed incolla senza capire quello che si andrà a fare, e sopratutto attenzione ad identificare con certezza il device usb. Questa guida si può adattare anche utilizzando una Debian Live scaricata direttamente dal sito, ma il problema è che non si può cryptare la partizione dato che cryptsetup non è installato di default, da qui l'esigenza di creare una Debian Live di base con cryptsetup installato, dopodichè successivamente si potrà installare tutto il resto.

Installazione tools:

$ sudo apt install -y debootstrap grub-common grub-pc-bin grub-efi-amd64-bin efibootmgr syslinux squashfs-tools live-build live-tools live-boot cryptsetup

Preparazione Debian Base:

$ mkdir live; cd live
$ lb config --distribution stretch --binary-images iso-hybrid --architectures amd64 --archive-areas main contrib non-free --debian-installer-gui true debian-installer live --mirror-bootstrap http://ftp.it.debian.org/debian/ --mirror-binary http://ftp.it.debian.org/debian --bootappend-live boot=live components persistence persistence-encryption=luks timezone=Europe/Rome locales=en_GB.UTF-8 keyboard-layouts=it hostname=Debian-Custom username=user noeject autologin

per installare un desktop environment ed i programmi di cui si necessita, bisogna editare il file live.list.chroot, ed incollare dentro il necessario:

$ nano config/package-lists/live.list.chroot

incollare dentro:

mate-desktop-environment task-laptop xorg xinit xserver-xorg-input-evdev xserver-xorg-input-libinput xserver-xorg-input-kbd cryptsetup firefox-esr firmware-linux-nonfree firmware-iwlwifi firmware-linux-free

Costruzione Debian Base:

$ sudo lb build

Debian Stretch Live UEFI-BIOS Persistente Sicura

Identificazione device usb e partizioni: nel mio caso userò /dev/sda, ed i comandi eseguiti tutti come root:

# fdisk -l
# umount /dev/sda*
# dd count=1 bs=512 if=/dev/zero of=/dev/sda
# parted -s -- /dev/sda mktable gpt mkpart efi 1 10M
# parted -s -- /dev/sda mkpart live 10M 3G
# parted -s -- /dev/sda mkpart persistence 3G 100%
# parted /dev/sda set 1 msftdata on
# parted /dev/sda set 2 legacy_boot on
# parted /dev/sda set 2 msftdata on
# mkfs.vfat -n EFI /dev/sda1
# mkfs.vfat -F32 -n LIVE /dev/sda2

Creazione partizione cryptata /dev/sda3 persistente:

# cryptsetup --verbose --verify-passphrase luksFormat /dev/sda3
# cryptsetup luksOpen /dev/sda3 sda3_crypt
# mkfs.ext4 -L persistence /dev/mapper/sda3_crypt
# mkdir /mnt/persistence
# mount /dev/mapper/sda3_crypt /mnt/persistence/
# echo "/ union" > /mnt/persistence/persistence.conf
# umount /mnt/persistence/
# cryptsetup luksClose sda3_crypt

Mount partizioni di lavoro:

# mkdir -p /mnt/{efi,live,live-iso}
# mount /dev/sda1 /mnt/efi
# mount /dev/sda2 /mnt/live

Mount Debian Base:

# mount -oro live/live-image-amd64.hybrid.iso /mnt/live-iso
# cp -ar /mnt/live-iso/* /mnt/live
# rm -rf /mnt/live/efi

Grub per UEFI:

# grub-install --removable --target=x86_64-efi --boot-directory=/mnt/live/boot/ --efi-directory=/mnt/efi /dev/sda

Syslinux per legacy BIOS:

# dd bs=440 count=1 conv=notrunc if=/usr/lib/syslinux/mbr/gptmbr.bin of=/dev/sda
# syslinux --install /dev/sda2

Fix grub.cfg

# rm /mnt/live/boot/grub/grub.cfg
# nano /mnt/live/boot/grub/grub.cfg

ed incollare dentro:

set default="0"
set timeout=3

    menuentry "Debian Custom Live" {
        linux /live/vmlinuz-4.9.0-6-amd64 boot=live persistence persistence-encryption=luks keyboard-layouts=it locales=en_US.UTF-8,it_IT.UTF-8
        initrd /live/initrd.img-4.9.0-6-amd64
}

Fix syslinux:

# mv /mnt/live/isolinux /mnt/live/syslinux/
# mv /mnt/live/syslinux/isolinux.bin /mnt/live/syslinux/syslinux.bin
# mv /mnt/live/syslinux/isolinux.cfg /mnt/live/syslinux/syslinux.cfg
# rm /mnt/live/syslinux/menu.cfg
# nano /mnt/live/syslinux/menu.cfg

ed incollare dentro:

LABEL Debian GNU/Linux Live (kernel 4.9.0-6-amd64)
  SAY "Booting Debian GNU/Linux Live (kernel 4.9.0-6-amd64)..."
  linux /live/vmlinuz-4.9.0-6-amd64
  APPEND initrd=/live/initrd.img-4.9.0-6-amd64 boot=live components persistence persistence-encryption=luks keyboard-layouts=it locales=en_US.UTF-8,it_IT.UTF-8

per verificare la versione del kernel:

# ls live/chroot/boot/

output:

root@debianbox:/home/edmond# ls live/chroot/boot/
config-4.9.0-6-amd64  initrd.img-4.9.0-6-amd64    vmlinuz-4.9.0-6-amd64
grub              System.map-4.9.0-6-amd64

Smontaggio e pulizia:

# umount /mnt/efi /mnt/live /mnt/live-iso
# rmdir /mnt/efi /mnt/live /mnt/persistence /mnt/live-iso

a questo punto basta riavviare e fare il boot in modalità uefi oppure legacy, in entrambi i casi ad un certo punto del boot verrà chiesto la password, senza la quale il sistema operativo non si avvierà. Successivamente si potranno installare tutti i programmi di cui si necessiterà, e fare le proprie personalizzazioni. In più si possono conservare files in modo sicuro poichè la pen drive  è inaccessibile senza password.

Debian Stretch Live UEFI-BIOS Persistente Sicura

ps: in caso di password complicate, fare attenzione al layout, poiche in fase di boot è quello di grub

enjoy πŸ˜‰

 

TorBrowser su Debian 9 Stretch

 

TorBrowser su Debian 9 Stretch

TorBrowser su Debian 9 Stretch

Tor (acronimo di The Onion Router) è un sistema di comunicazione anonima per Internet basato sulla seconda generazione del protocollo di rete di onion routing. Tramite l'utilizzo di Tor è molto più difficile tracciare l'attività Internet dell'utente; difatti l'uso di Tor è finalizzato a proteggere la privacy degli utenti, la loro libertà e la possibilità di condurre delle comunicazioni confidenziali senza che vengano monitorate.  Per installare TorBrowser su Debian Stretch si possono utilizzare due strade:

Repository Backports:

# printf "deb http://deb.debian.org/debian stretch-backports main contrib" > /etc/apt/sources.list.d/stretch-backports.list
# apt update
# apt install torbrowser-launcher -t stretch-backports

Repository torproject:

# printf "deb http://deb.torproject.org/torproject.org stretch main" > /etc/apt/sources.list.d/tor.list
# gpg --keyserver keys.gnupg.net --recv A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89
# gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-key add -
# apt-get install tor deb.torproject.org-keyring

avviare tor e partirà l'installazione. Nel caso si bloccasse su "signature verification", avviare dal menu Tor Browser Launcher Settings e cambiare server.

TorBrowser su Debian 9 Stretch

enjoy πŸ˜‰

 

Telegram Messenger su Debian 9 Stretch

 

Telegram Messenger su Debian 9 Stretch

Telegram Messenger su Debian 9 Stretch

Per installare Telegram Messenger su Debian 9 Stretch ci sono diversi modi, ma quello più pulito è quello di scaricare direttamente dal sito il tarball e poi:

$ tar xvf tsetup*
$ cd Telegram/
$ ./Telegram

Telegram Messenger su Debian 9 Stretch

enjoy πŸ˜‰

 

Systemback su Debian Stretch

 

Systemback su Debian Stretch

Systemback su Debian Stretch

Systemback è una applicazione indispensabile, che permette in modo grafico di effettuare un gran numero di cose. Da quello che ho letto non è più supportata, e siccome reputo questo tool valido, ho deciso di riprenderlo in mano e fare delle modifiche allo script per poterlo utilizzare su Debian 9 Stretch. Con Systemback si è in grado di ottenere:

  • Backup di sistema
  • Installazione dell'identico sistema con user e password diversi su altra partizione
  • Ripristino parziale o totale de backup
  • Creazione di immagine Live del proprio sistema
  • Creazione di immagini iso del proprio sistema

Scaricare Systemback

poi:

$ tar xvf Systemback_Debian_Stretch.tar.xz
$ cd Systemback_Debian_Stretch/
$ sudo ./install.sh

il programma andrà lanciato come root, ed in Mate sarà presente nel menu System Tools oppure da terminale:

$ systemback-sustart

 

Systemback su Debian Stretch

Systemback su Debian Stretch

enjoy πŸ˜‰