Come impostare delle regole nell’Iptables

Abbiamo visto cos’è l’Iptables ma non abbiamo ancora visto come impostare delle regole. Beh, come ho specificato nell’articolo precedente, è molto semplice! Aprite il terminale ed eseguite:

sudo iptables -A INPUT -i eth1 -p udp -m udp --dport 53 -j DROP
sudo iptables -A INPUT -i eth1 -p tcp -m tcp --dport 53 -j DROP

Questi due comandi imposteranno delle regole che bloccheranno tutte le richieste di DNS sull’interfaccia eth1 (se non sai cos’è una network interface, leggi qua).

Ovviamente queste regole al prossimo riavvio saranno resettate, nel prossimo articolo vedremo come salvarle permanentemente.

Cos’è l’Iptables

L’Iptables è un firewall installato in quasi tutti i sistemi Linux, molto semplice e intuitivo.

È facilmente gestibile da linea di comando e per ora non sono state trovate falle conclamate. Gestisce in modo semplice le regole di input, output e forward.

Potete leggere la documentazione in italiano sul sito di Ubuntu https://wiki.ubuntu-it.org/Sicurezza/Iptables

Come rimuovere CocoaPods

Dopo aver visto come installarlo e come usarlo, non poteva mancare anche come rimuovere completamente (disintegrare, se proprio vogliamo usare il comando in italiano):

sudo gem install cocoapods-deintegrate cocoapods-clean
pod deintegrate && pod clean
rm Podfile

Ovviamente tutto eseguito da terminale e nel percorso del progetto con all’interno le dipendenze.

Come usare CocoaPods

Dopo aver visto come installare CocoaPods, vediamo come utilizzarlo.

Se avete appena scaricato un progetto da GitHub ma non sapete come eseguirlo perché ha diverse dipendenze gestite con CocoaPods (di solito viene indicato se la documentazione è fatta come si deve), vediamo subito come fare!

Spostatevi nel percorso del progetto e create un file denominato Podfile senza estensione.

sudo nano Podfile

E incollate qualcosa di simile:

source 'https://github.com/CocoaPods/Specs.git'
use_frameworks!
target 'Example app' do
    pod 'Alamofire', '~> 4.7'
end

Salvate ed eseguite:

pod install

.

Attendete il tempo necessario per scaricare tutte le dipendenze e aprite il progetto (normalmente dev’esserci un file .xcworkspace altrimenti il classico file del progetto di Xcode).

Come installare CocoaPods

CocoaPods è un gestore di dipendenze per progetti in Swift e Objective-C. Qualche mese fa abbiamo visto come alleggerirlo, ma non abbiamo mai affrontato l’argomento base, cioè come installarlo.

Installarlo è molto semplice, vi basterà aprire il terminale ed eseguire:

sudo gem install cocoapods

Ovviamente dovete già aver installato Xcode da App Store o scaricato tramite il developer.apple.com.

Come avere una Touch Bar virtuale su Xcode

Se volete provare la nuova Touch Bar disponibile nei nuovi MacBook Pro, vi basterà installare Xcode, aprire un progetto e cliccare nel menu in alto alla voce Window (quella prima di Help) e cliccare su Show Touch Bar.

Menu contestuale su Xcode

Avrete così modo di provarla in modo virtuale anche senza averla fisicamente sul vostro Mac o PC (nel caso di hackintosh).

Touch Bar virtuale

Dove trovare le vecchie versioni di Xcode

State cercando una vecchia versione di Xcode perché non riuscite ad aprire un vecchio progetto con la versione attuale?

Magari state cercando di convertire un progetto da Swift 2 alla 4.2?

Beh ecco a voi il link alla pagina di download:

https://developer.apple.com/download/more/

Potrete scaricare tutte le vecchie versioni di Xcode, comprese quelle non più compatibili con Mojave (avrete bisogno di una macchina virtuale con sopra High Sierra o un Mac con sopra installato macOS 10.13).

3 versioni di Xcode installate (non vi dico quanti GB sprecati)

Come resettare le lampadine IKEA Trådfri

Dopo aver visto come resettare le Hue e le Yeelight, vediamo come resettare quelle di Ikea.

Navigando su internet bisogna fare una procedura simile alle Yeelight (che però a differenza delle Hue usano Zigbee come tecnologia).

bulb off (5sec)

bulb on (0.5sec) bulb off (2 sec)
bulb on (0.5sec) bulb off (2 sec)
bulb on (0.5sec) bulb off (2 sec)
bulb on (0.5sec) bulb off (2 sec)
bulb on (0.5sec) bulb off (2 sec)

bulb on (0.5sec)
bulb off (5 sec)

Se non dovesse funzionarvi, fate un click veloce (meno di un secondo) dallo switch e poi tenete premuto per spegnerla.

Caso estremo in cui non dovesse funzionarvi, seguite la guida ufficiale (che spesso viene aggiornata da Ikea) che potete trovare qui:

https://www.ikea.com/gb/en/customer-service/smart-lighting-support/troubleshooting/

Come emulare il Game Boy Advance su iPhone

Similmente come visto con l’emulatore per Nintendo DS per iPhone, anche per questo emulatore per Game Boy Advance dovrete compilarvelo da soli, semplicemente aggiungendo un certificato:

https://github.com/marcotini/gba4ios

Farlo è molto semplice, cliccate su Clone or download, aprite il progetto con Xcode e cambiate il certificato.
Selezionate il vostro iPhone o iPad come target di destinazione e cliccate su compila!

Importare le ROM è facile e intuitivo quindi non sto a spiegarvelo. Fatemi sapere se avete dei problemi con un commento!

Come emulare il Nintendo DS su iPhone

Dopo aver visto come emulare il Nintendo 3DS e la Nintendo Switch su PC, vediamo come emulare il vecchio Nintendo DS su iPhone.

Purtroppo (o per fortuna) sull’App Store ufficiale di Apple non è possibile scaricare l’emulatore perché non è propriamente legittimo in quanto i giochi scaricati non sono stati veramente acquistati dall’utente.

Detto questo, vi toccherà compilarvi il codice (qui potete avere una guida passo a passo su come fare). Altrimenti potete utilizzare dei servizi come builds.io che però non garantisco, in quanto bisogna pagare una quota annuale.

Nel caso non riuscite, io ho fatto una fork del progetto originale e qui potete trovare tutti i file necessari https://github.com/marcotini/iNDS in cui c’è tutto il progetto. Vi basterà cambiare certificato e installarlo sul vostro iPhone o iPad.

Come emulare i giochi del Nintendo 3DS di Pokémon

Prima di tutto dovete installarvi Citra come ho spiegato in questa guida.

Poi dovete procurarvi la ROM per il gioco che volete giocare e che ovviamente dovete possedere fisicamente (potete acquistare le cartucce qui su Amazon).

Una volta che avete il file .3ds vi basterà aggiungerlo nella cartella di Citra (tasto destro) e avviate il gioco!

Come potete vedere dallo screenshot qui sotto, Pokémon Ultra Luna funziona perfettamente su Windows 10:

E come potete notare in basso a sinistra, riesce persino ad andare a 60fps (cosa che normalmente un Nintendo 3DS raggiunge solo i 30).

Come emulare la Nintendo Switch su PC

A differenza di quanto visto con Citra, che emula perfettamente il Nintendo 3DS, purtroppo con la Nintendo Switch (se volete acquistarlo su Amazon cliccate qui) sono ovviamente un po’ più indietro nella programmazione, quindi se volete contribuire il GitHub è aperto a tutti: https://github.com/yuzu-emu/yuzu

Detto questo, se avete voglia di smanettare un po’ per far funzionare i giochi, ecco a voi Yuzu!

Dove scaricare Yuzu, l’emulatore per Nintendo Switch https://yuzu-emu.org/downloads/

Per ora pochi giochi sono compatibili, però stanno comunque facendo progressi a vista d’occhio, quindi se volete iniziare a provarlo, direi che questo è il momento giusto.

Lista dei giochi compatibili http://yuzu-emu.org/game/

Yuzu è un altro bell’esempio di software open source che non sarebbe stato possibile realizzare senza la possibilità di condividere il codice sorgente tra una community di appassionati.

E ricordatevi che se volete acquistare un Nintendo Switch reale su Amazon: questo è il link giusto!

Come emulare il Nintendo 3DS su PC o Mac

Nello scorso articolo abbiamo visto a grandi linee cosa sono i software open source. Ecco, ora vediamo un bell’esempio di software libero.

Citra è un emulatore per Nintendo 3DS (se volete acquistarlo su Amazon cliccate qui) che non sarebbe stato possibile realizzare senza GitHub e la community che ci sta dietro.

Tutto il codice sorgente di Citra su GitHub https://github.com/citra-emu/citra

Ovviamente Citra, per semplicità, distribuisce anche il codice precompilato e quindi instancabile normalmente da un eseguibile.

Dove scaricare l’eseguibile di Citra https://citra-emu.org/download/

Una volta scaricato e installato, vi basterà aprire il file .3ds e iniziare a giocare!

Il supporto su Windows è ovviamente meglio rispetto a quello su macOS e se vi interessa l’argomento OpenGL ecco a voi una bella lettura che vi farà amare Apple ancora di più per le sue scelte drastiche.

Cos’è un software open source

Con il termine open source di solito ci si riferisce a del software il quale codice sorgente è leggibile e usabile pubblicamente. Viene spesso utilizzato anche per software che magari non sono utilizzabili senza aver compreso bene la licenza per cui vengono rilasciati, però comunque nel termine comune si intendono dei programmi che hanno tutto o quasi il codice sorgente libero.

Spesso, tramite l’utilizzo di software open source, è possibile realizzare dei progetti che senza una community attiva, non si potrebbero neanche realizzare. Due esempi, che tratto spesso su questo sito, sono Domoticz e IINA.

La differenza con software che vengono già distribuiti compilati è davvero sostanziale. Se si considera la possibilità di capire e risolvere problemi, piuttosto che personalizzare il codice, è abissale la differenza.

Mi capita di dover ricompilare Domoticz perché c’è qualcosa che non funziona come dovrebbe e questo mi è possibile solo e unicamente perché ho accesso al codice sorgente. Cosa che non posso assolutamente fare sui software di Phillips o Xiaomi. Se c’è un bug me lo tengo e aspetto nella speranza che il prossimo update lo risolva.

Nei prossimi giorni vedremo anche qualche progetto che punta a emulare le vecchie console: cosa assolutamente non realizzabile da singoli programmatori o aziende che puntano al fatturato. Bensì, con community attive di programmatori è possibile realizzare dei progetti importanti come Yuzu o Citra! Ma tutto questo… sarà disponibile nella prossima puntata!

Come resettare le lampadine Yeelight

Abbiamo visto cosa sono le Yeelight e che consumano davvero pochissimo.

Ora vediamo come resettarle: sia se avete il modello white, sia se avete quelle RGB, la procedura è la stessa:

Come resettare le lampadine Yeelight

Dovrete attaccare e staccare la corrente per 5 volte di fila, contano indicativamente 2 secondi accese e 2 secondi spente.

Se avrete effettuato la procedura correttamente, inizieranno a lampeggiare e potrete riconfigurarle con l’app ufficiale Yeelight per connetterle al vostro Wi-Fi.

Vi ricordo il link per acquistarle su GearBest e su Amazon.

Come resettare le lampadine Phillips Hue

A differenza delle Yeelight che sono Wi-Fi, le Phillips Hue (link Amazon) utilizzano la tecnologia Zigbee e i metodi sono due e dipende se avete o meno il bridge.

Se avete il bridge c’è il classico tasto di factory reset sul retro del bridge. Premendolo vi resetterà tutte le lampadine e bridge compreso.
Altrimenti potete rimuoverle dall’app di Hue, verranno dissociate e potrete raggiungerle semplicemente facendole cercare dal bridge (tutto questo, sempre attraverso l’app).

Se invece non avete un bridge ma solo lo switch, la procedura di reset è diversa dalle Yeelight, non vi basterà scollegare la corrente e riattaccarla, dovrete prima dargli corrente, poi premere sia il tasto ON che il tasto OFF contemporaneamente (stando in prossimità della lampadina) per 5 secondi.

Se la procedura ha avuto successo, la lampadina lampeggerà due volte!

Vi ricordo che se volete acquistare delle lampadine, strisce LED o kit di Phillips Hue, potete farlo tramite questo link ad Amazon.

Kit completo di Phillips Hue

Cosa sono le Yeelight

Le Yeelight sono le lampadine di Xiaomi che oltre essere led: bianche o RGB, hanno al loro interno un modulo Wi-Fi che permette di comandarle a distanza, in locale o anche fuori dalla rete di casa.

Sono ovviamente molto comode, danno un bel tono di smart home alla vostra casa, consumano poco e vi permettono d’avere un’illuminazione completamente d’altro livello.

Ci sono davvero tantissime lampadine e strisce LED su Amazon:

Lampadine Yeelight bianche e colorate su Amazon

Invece se siete più da GearBest per risparmiare qualche soldino, qua potete trovarne a decine. Ad esempio quella colorata RGB potete trovarla a 16 euro.

Cos’è un broker MQTT

Un broker MQTT è un applicativo che permette di far comunicare, tramite appunto il protocollo MQTT, i client (che si dividono in publisher e subsciber).

Gestisce il flusso dei dati e permette ai client di iscriversi o pubblicare messaggi.

Un broker MQTT famoso e leggero che è compatibile con tutti i sistemi Unix, Raspberry Pi compreso (vi permetterà ad esempio di usare Homebridge con aggiornamenti istantanei), è Mosquitto.

È stato realizzato dai creatori di Eclipse e potete installarlo facilmente con:

sudo apt install mosquitto

La documentazione intera potete trovarla sul sito ufficiale:

https://mosquitto.org/man/mosquitto-8.html

Cos’è una network interface

Come al solito in informatica si utilizzano nomi inglesi per definire le cose, però vabbè questo è un altro discorso. Detto in modo semplice una network interface è una scheda di rete che risulta disponibile se c’è dell’hardware appropriato.

Nei sistemi attuali, senza andare troppo nel dettaglio, le network interfaces sono principalmente quelle ethernet, quelle Wi-Fi e quelle Bluetooth.

Nella documentazione di Ubuntu potete vedere qualche esempio, come configurare le schede di rete, come attivarle, disattivarle ecc.

http://manpages.ubuntu.com/manpages/trusty/man5/interfaces.5.html