Come configurare Monit con SickRage

sudo nano /etc/monit/conf.d/sickrage

Incollate:

check process SickRage matching "sickrage"
start program = "/etc/init.d/sickrage start"
stop program = "/etc/init.d/sickrage stop"
if failed host 127.0.0.1 port 8081 type TCP for 2 cycles then restart
if 2 restarts within 3 cycles then unmonitor

E poi riavviate Monit con:

sudo monit reload

Come configurare Monit con Samba

Se avete precedentemente installato Monit e avete capito le sue infinite possibilità e volete monitorare il vostro server SMB, ecco come configurarlo perché controlli e nel caso riavvii Samba:

sudo nano /etc/monit/conf.d/smbmonitor

E incollate:

check process Samba with pidfile "/var/run/samba/smbd.pid"
start program = "/etc/init.d/smbd start"
stop program = "/etc/init.d/smbd stop"
if failed host 127.0.0.1 port 139 type tcp for 2 cycles then restart
if 2 restarts within 3 cycles then unmonitor

Poi riavviate Monit con sudo monit reload e andate da browser alla porta 2812 (nel caso non l’abbiate cambiata).

Come gestire cartelle con apostrofi

Nel caso la vostra cartella abbia un apostrofo, il terminale bash (o quello che sia) potrebbe riscontrarvi qualche errore.

Mettete tutto tra parentesi, ad esempio: cd '/cartella(con)/anche/parentesi' per entrare dentro quella cartella.

Come convertire una macchina virtuale da VMware a VirtualBox

Importare una macchina virtuale da VMware a VirtuaBox è un po’ più difficile perché bisognerà riconfigurare tutte le caratteristiche della macchina.

Prima di tutto aprite la cartella in cui è contenuta la macchina virtuale che volete esportare. Di solito dovrebbe essere dentro Documenti, Macchine virtuali. Cliccate con il tasto destro e poi su Mostra contenuto pacchetto. Ora identificate i file i file vmdk e copiateli tutti sul Desktop dentro una cartella.

Ora andate su VirtualBox, configurate una nuova macchina, seguite i passaggi e riconfigurate come quella su VMware. Quando vi verrà chiesto l’Hard disk, spuntate la voce Use existing hard disk e selezionate il primo file .vmdk che avete copiato (sarà quello senza numero identificativo). Andate avanti con la procedura e avviate la macchina!

Semplice no?

Come convertire una macchina virtuale da VirtualBox a VMware

Aprite VirtualBox, selezionate la macchina virtuale e su File in alto, cliccate su Esporta applicazione virtuale, selezionate il formato ova. Salvate e aspettate che finisca il processo.

Ora aprite VMware e cliccate in alto su Archivio e poi su Importa....

Selezionate il file .ova appena creato e andate avanti con i passaggi. Attendete l’importazione e via!

Come provare a difendersi da un attacco DDoS

Parto con un po’ di presupposti perché ovviamente l’argomento è molto vasto e non sarebbe affrontabile in un semplice articolo. I comandi che andrò ad elencarvi dipendono ovviamente da cosa state subendo e sopratutto se avete accesso al vostro server. Ma tenendo conto che avete accesso ma semplicemente siete inondati di richieste, di traffico flood o altre prove di connessioni, richieste di login o comunque qualcosa sulle porte o sulle connessioni, ecco quanto.

Per visualizzare le connessioni in ingresso:

sudo netstat -plan|grep :80|awk {'print $5'}|cut -d: -f 1|sort|uniq -c|sort -nk 1

Nel caso avete https e la porta 443:

sudo netstat -plan|grep :443|awk {'print $5'}|cut -d: -f 1|sort|uniq -c|sort -nk 1

Visualizzare l’elenco completo dell’iptables:

sudo iptables -L --line-numbers

Se volete cancellare ad esempio la seconda regola fate così:

sudo iptables -D INPUT 2

Oppure se volete impostare un limite alle richieste:

sudo iptables -A INPUT -p tcp --syn -m limit --limit 5/s --limit-burst 10 -j DROP

Nel caso anche questo:

sudo iptables -A INPUT -p tcp --tcp-flags SYN,ACK,FIN,RST SYN -m limit --limit 1/s -j DROP

Mentre se in tutto questo avete notato che c’è qualche IP che vi fa migliaia di richieste, ecco come impedirglielo:

iptables -A INPUT -s 8.8.8.8 -j DROP

Le regole nell’iptables vengono a ogni riavvio resettate, quindi se volete salvarle dovete specificarlo.

Come installare nginx su Raspberry Pi

Prima di tutto dovete fare una cosa importantissima, rimuovete Apache:

sudo apt-get remove apache2

Ora che l’avete rimosso e potete iniziare a divertirvi seriamente, installate nginx:

sudo apt-get install nginx

Finito. Ecco sì, finito! Avrà già configurato la cartella che usavate in precedenza e tutto quanto dovrebbe funzionarvi alla perfezione (ovviamente meglio di prima).

Nel caso, configurate quel che vi manca da qua:

sudo nano /etc/nginx/sites-available/default

Posso garantirvi personalmente, che non sentirete la mancanza. E anzi, vi domanderete perché non l’avete fatto prima!

Come installare Headphones su Raspberry Pi

Penso che non abbia bisogno di presentazioni Headphones, allora iniziamo:

sudo git clone https://github.com/rembo10/headphones.git /opt/headphones

Ora create l’utente (nel caso vogliate tenere le cose separate):

sudo touch /etc/default/headphones
sudo adduser --system --no-create-home headphones
sudo chown headphones:nogroup -R /opt/headphones

Per avviare il processo a ogni riavvio del vostro Raspberry Pi:

sudo ln -s /opt/headphones/init-scripts/init.ubuntu /etc/init.d/headphones
sudo update-rc.d headphones defaults
sudo update-rc.d headphones enable

Avviatelo e aspettate che crei il file di configurazione (ci metterà qualche secondo):

sudo service headphones start

Poi stoppatelo con sudo service headphones stop e modificate questo file di configurazione:

sudo nano /opt/headphones/config.ini

Cambiano il campo http_host da localhost a 0.0.0.0 (serve per averlo visibile in tutta la vostra rete locale). Ora quindi andate su http://raspberrypi.local:8181 e voilà.

Come disabilitare IPv6 su Avahi

Come è ben noto IPv6 non è implementato praticamente da nessuna parte (ancora) e nelle reti pubbliche viene impacchettato nella versione 4.

Spesso da più problemi che altro… quindi, perché non disattivarlo?

sudo nano /etc/avahi/avahi-daemon.conf

E alla riga use-ipv6=yes mettete un bel no.

Per gli altri parametri: http://manpages.ubuntu.com/manpages/zesty/man5/avahi-daemon.conf.5.html

Come gestire Homebridge con systemd

Se volete gestire Homebridge come servizio e far si che a ogni riavvio venga gestito direttamente dal sistema operativo, senza il supporto di screen come vi avevo fatto vedere qua, seguite questa semplice guida!

Prima di tutto trovate il percorso di Homebridge con:

which homebridge

Poi modificate sudo nano /etc/default/homebridge e incollate:

# Defaults / Configuration options for homebridge
# The following settings tells homebridge where to find the config.json file and where to persist the data (i.e. pairing and others)
HOMEBRIDGE_OPTS=-U /var/homebridge

# If you uncomment the following line, homebridge will log more 
# You can display this via systemd's journalctl: journalctl -f -u homebridge
# DEBUG=*

Poi sudo nano /etc/systemd/system/homebridge.service e incollate (cambiando ad ExecStart il percorso che avete trovato precedentemente con il which:

[Unit]
Description=Node.js HomeKit Server 
After=syslog.target network-online.target

[Service]
Type=simple
User=homebridge
EnvironmentFile=/etc/default/homebridge
ExecStart=/usr/bin/homebridge $HOMEBRIDGE_OPTS
Restart=on-failure
RestartSec=10
KillMode=process

[Install]
WantedBy=multi-user.target

Ora create un utente: sudo useradd --system homebridge, create le cartelle con i permessi giusti e abilitate il servizio:

sudo mkdir /var/homebridge
sudo cp ~/.homebridge/config.json /var/homebridge/
sudo cp -r ~/.homebridge/persist /var/homebridge
sudo chmod -R 0777 /var/homebridge
sudo systemctl daemon-reload
sudo systemctl enable homebridge
sudo service homebridge start

E controllate se funziona con: sudo service homebridge status.

Fonte: https://timleland.com/setup-homebridge-to-start-on-bootup/

Come montare automaticamente un server FTP in una cartella

Se volete montare un server FTP e che sia accessibile come un normale drive in una cartella da voi prefissata, installate curlftpfs:

sudo apt-get install curlftpfs

Create la cartella (potete anche metterla in /media volendo), ad esempio (modificando user):

sudo mkdir /home/movies
sudo chmod 775 /home/movies
sudo chown -R user:user /home/movies

Aggiungete al fondo di questo file:

sudo nano /etc/fstab

Modificando user, password e indirizzo IP:

curlftpfs#user:password@192.168.1.1 /home/movies fuse rw,uid=1000,gid=1000,umask=002,user,suid,allow_other,exec,auto,utf8,_netdev  0   0

Se volete tutti i permessi mettete umask=000.

Come far partire i container di Docker automaticamente al reboot

Presupponendo che abbiate già creato il container per Docker e che questo funzioni, andiamo a creare un service di nome appunto container:

sudo nano /etc/systemd/system/container.service

Incollate questo (modificando il nome del container):

[Unit]
Description=Container
Requires=docker.service
After=docker.service

[Service]
Restart=always
ExecStart=/usr/bin/docker start -a container
ExecStop=/usr/bin/docker stop -t 2 container

[Install]
WantedBy=default.target

E attivate il servizio allo startup del sistema con:

sudo systemctl enable container.service

Semplice no?

Come installare LazyLibrarian su Raspberry Pi

Se volete installare LazyLibrarian su Raspberry Pi non vi basta che eseguire questi due semplici comandi:

sudo git clone https://github.com/DobyTang/LazyLibrarian /opt/lazylibrarian
python /opt/lazylibrarian/LazyLibrarian.py -d

Nel caso vogliate farlo andare in background avviate il daemon togliendo la -d, quindi eseguite: python /opt/lazylibrarian/LazyLibrarian.py -daemon

Se volete che si avvii a ogni riavvio e che parta come servizio, quindi gestibile semplicemente con un sudo service lazylibrarian start fate ancora questi due passaggi:

sudo cp /opt/lazylibrarian/init/lazylibrarian.default /etc/default/lazylibrarian
sudo cp /opt/lazylibrarian/init/lazylibrarian.service /etc/systemd/system/lazylibrarian.service
sudo cp /opt/lazylibrarian/init/lazylibrarian.initd /etc/init.d/lazylibrarian

Ora aprite questo file:

sudo nano /etc/default/lazylibrarian

E aggiungete all’inizio del file USER=pi, salvate e aggiornate:

sudo update-rc.d lazylibrarian defaults
sudo systemctl daemon-reload
sudo systemctl enable lazylibrarian

Ora andate su http://raspberrypi.local:5299 e voilà, già fatto!

Come installare Ghost su Docker

Andiamo subito dunque senza spiegare cos’è Docker o Ghost. Presupponendo che avete Ubuntu installato (ma anche Debian va bene) procediamo con l’installazione di Docker:

sudo apt-get install docker

Ora create la cartella in cui verranno salvati i dati del vostro blog:

sudo mkdir /home/ghost

E scaricate semplicemente Ghost con:

sudo docker pull ghost

Aspettate che venga scaricato e… eseguite Ghost:

sudo docker run -d -p 80:2368 /home/ghost:/var/lib/ghost ghost

Ora andate da browser sulla porta 80 (quindi digitando solo localhost o l’indirizzo IP della vostra macchina) ed ecco il vostro blog pronto!

Caso in cui aveste Apache già sulla porta 80, potete o stopparlo con sudo service apache2 stop oppure cambiare la porta nel comando precedente. O eventualmente gestire il tutto con NGINX che sarebbe il top.