EDIT 06/08/2015: Articolo aggiornato
Oggi molte persone chiedono se su Android è necessario un software antivirus, beh la risposta è no, noterete consumo maggiore di CPU, RAM e batteria restando in background con un service attivo.
Se scaricate contenuti dal Play Store non dovete preoccuparvi, se invece scaricate da terze parti conviene abilitare lo scanner Google.
Noi andremo a configurare un firewall su Android, nessuno ne parla…
Che cos’è un firewall?
Non è un Antivirus, e serve a “regolare” le connessioni in uscita e in entrata dei nostri devices
Possiamo creare delle regole, ad esempio:
Porta 22: Accetta entrata/uscita
Porta xx: Declina entrata/uscita
(le porte vanno da 1 a 65535)
Condizioni ESTABLISHED o RELATED (Queste condizioni si verificano quando navighiamo nel web, viene stabilita una connessione con il sito web): Accetta entrata/uscita
Se per le altre non è impostata alcuna regola, il firewall rifiuta le connessioni in entrata/uscita quindi altri non saranno in grado di comunicare con noi.
Cosa utilizzeremo?
Innanzi tutto, la guida è compatibile con qualunque dispositivo disponga di kernel Linux >= 2.6, ma ormai credo che è difficile trovare dispositivi con una versione inferiore alla 2.6.x.
Dalla versione 2.6 infatti il kernel Linux dispone nativamente di un tool chiamato iptables che consente di configurare un firewall.
Nel caso di Android utilizziamo un frontend di iptables, se volete configurare su un PC, dovete utilizzare la riga di comando.
Esistono frontend grafici anche per le altre distro ma consiglio sempre la CLI
Per Android: clicca qui
Procedura per PC Desktop con qualunque distro GNU/Linux
Apriamo il nostro terminale (Terminator, gnome-terminal, xfce4-terminal, konsole, urxvt…)
Otteniamo i permessi di root:
$ sudo su
oppure
$ su
Impostiamo le prime due regole:
# iptables -P INPUT DROP
# iptables -P FORWARD DROP
In questo modo stiamo dicendo a iptables di isolarci dal mondo esterno
-A rappresenta la tabella su cui impostare la regola e DROP indica di rifiutare le richieste
Impostiamo la regola per abilitare le comunicazioni interne tramite l’interfaccia lo
# iptables -A INPUT -i lo -j ACCEPT
-i indica un’interfaccia specifica che può essere wlan0, wlp7s0, enp9s0, eth0 o lo o qualunque altra
-j indica che cosa deve fare il firewall
“traducendo”: sulla tabella input, interfaccia lo, accetta richieste
Poi impostiamo la regola che ci consente di permettere le connessioni che hanno stato ESTABLISHED o RELATED
# iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
Ora, le connessioni con stato ESTABLISHED O RELATED sono consentite.
Sostanzialmente, la configurazione base è completa, ma è possibile fare molte altre cose, ad esempio accettare richiesta su una determinata porta (se non si specifica la connessione verrà rifiutata all’infinito)
Ad esempio ho un server SSH quindi voglio permettere la connessione sulla 22 tcp
# iptables -A INPUT -p tcp --dport 22 -j ACCEPT
Infine, per rendere effettive le modifiche
# iptables-save > /etc/iptables/iptables.rules
Abilitiamo il service all’avvio
# systemctl enable iptables
(systemd)
Se state utilizzando OpenRC
# rc-update add iptables default
(OpenRC)
# reboot
Verificate che tutto sia OK dopo il riavvio:
# iptables -L -n
Passiamo ora ad Android
Apriamo Firewall Rules Builder, se è la prima volta che la utilizzate vi guiderà in un tutorial, completatelo e riavviate l’app
Appena aperta l’app, verrà chiesto se impostare le regole di
- Iptables
- Cisco ACL
- RouterOS
Dal menù a tendina selezioniamo Iptables, poi saremo indirizzati verso la seconda activity
Impostiamo le regole:
Chiediamo una nuova POLICY per la tabella INPUT, con regola DROP:
- All’inizio, in command, clicchiamo sul menù a tendina (spinner) e selezioniamo Policy
- In table, sempre dal menù a tendina selezioniamo INPUT
- Alla fine in Target, sempre dal menù a tendina selezioniamo DROP
- Tap sul button: Generate Command
Altra Activity…
Che ci mostra il comando generato, quindi per applicare le modifiche aggiungiamo il comando al database dei comandi clicchiamo su Add to DB
Ripetiamo le operazioni per la tabella FORWARD
Impostiamo le regole per gli stati di connessione ESTABLISHED,RELATED; l’interfaccia lo
Interface lo
- Command: Append
- Table: INPUT
- Protocol: premiamo sulla checkbox “All:”
- In-interface: lo
- Target: ACCEPT
- Genera comando
- Aggiungi al database dei comandi
Stati ESTABLISHED,RELATED
- Command: Append
- Table: INPUT
- Protocol: Checkbox: All
- State: Checkbox (seleziona) ESTABLISHED, RELATED
- Target: Accept
- Genera comando
- Aggiungi al database
Infine, chiediamo di mostrare il database tappando su Show DB, questo è il risultato finale
Il post Impostare firewall con iptables è stato pubblicato su InTheBit - Il Blog sulla Tecnologia che alimenta le tue passioni!.
Leggi il contenuto originale su Linux – InTheBit – Il Blog sulla Tecnologia che alimenta le tue passioni!