Protezione di un'installazione Debian per uso domestico generale


8

Debian viene fornito con diversi hardenpacchetti, progettati per rendere un computer più sicuro. Le mie esigenze sono molto semplici: elaborazione testi e navigazione Web. Non eseguo server speciali, non utilizzo SSH, telnet, ecc. L'unico software che dovrebbe utilizzare Internet, di cui sono a conoscenza, è iceweasele apt.

  • C'è un modo per garantire che solo questi due software possano accedere a Internet?
  • Qualcuno dei hardenpacchetti è adatto a queste esigenze?

Risposte:


6

In un'installazione utente predefinita, esiste solo ssh come applicazione server installata che puoi semplicemente disinstallare tramite aptitude remove openssh-servero tramite qualsiasi altro gestore di pacchetti che usi.

Limitare l'accesso alla rete per le applicazioni è difficile. {{EDIT : Tuttavia, ora è stato sviluppato Leopard Flower che sembra fornire le funzionalità necessarie (firewall per processo, interfaccia utente interattiva). }} Vedi firewall per processo? per ulteriori informazioni sull'argomento. Senza utilizzare soluzioni complicate, è possibile limitare l'accesso alla rete solo a utenti speciali tramite il ownermodulo iptables .

Come utente normale non è necessario alcun harden-*pacchetto. O entrano in conflitto con pacchetti non sicuri, che probabilmente non sono stati installati in alcun modo, oppure installano pacchetti di sicurezza che sono per sistemi normali troppo complicati da configurare e mantenere, come i sistemi di intrusione di rete.


3

Concordo con l'uso rigoroso di iptables. È un firewall basato su riga di comando molto semplice che utilizza il kernel (nella maggior parte delle distribuzioni).

Un altro suggerimento che vorrei fare è selinux. Non sono sicuro se Debian ora viene fornito con esso per impostazione predefinita. Selinux in breve è un controllo di accesso obbligatorio che significa a livello di kernel governa la comunicazione tra l'applicazione e le risorse esterne (cioè i file e le proprietà di sistema). Come sidenote, è stato sviluppato anche con l'aiuto dell'NSA. Con i profili selinux è possibile impedire alle applicazioni di leggere file oltre il proprio ambito.

In combinazione con le migliori pratiche come la disabilitazione dei demoni non necessari, le buone regole del firewall selinux potrebbero essere l'opzione che stai cercando per rafforzare questa casella.


Questa risposta potrebbe essere migliorata fornendo un esempio di politica selinux che ha dimostrato di fare ciò che l'OP stava chiedendo.
jmtd,

Come richiesto qui è un buon esempio di Cent OS su come rafforzare un accesso apache usando la riga di comando di selinux. wiki.centos.org/HowTos/…
Andrew Munro

2

Sfortunatamente, non sembrano esserci alternative a Linux littlesnitche zonealarm, e la maggior parte dei firewall con interfaccia grafica ti lascerà a desiderare. Ovviamente puoi fare molte cose utili iptablese tracciare le connessioni così.

Un'utilità spesso trascurata è tcpwrappers. Aggiungerei una regola a /etc/hosts.deny:

ALL: PARANOID

Inoltre, disabilita il ping e altre risposte ICMP aggiungendo la seguente riga a /etc/sysctl.conf:

net.ipv4.icmp_echo_ignore_all = 1

EDIT : Sono propenso a concordare con jmtd, ripensandoci ci sono modi migliori per filtrare i ping.


Il problema tcpwrappersè che è opt-in : il programma deve essere collegato alla libreria di wrapper affinché abbia effettivamente effetto. iceweaselnon è. Potresti costringerlo ad essere tramite un LD_PRELOADtrucco se lo desideri.
jmtd

la disabilitazione delle risposte ICMP è vantaggiosa sotto il profilo della sicurezza e non è priva di costi: può rendere le interazioni di rete molto più lente se una risposta attende il timeout, piuttosto che ottenere un rifiuto esplicito. Le risposte con limitazione della frequenza per la protezione da DDoS rappresentano un approccio molto migliore. ICMP-DDoS è un problema quasi inesistente per gli utenti desktop nell'era moderna.
jmtd,

@jmtd tcpwrapper non è LD_PRELOADcapace. I programmi devono supportarlo. Per i programmi collegati statici, LD_PRELOADnon funzionerebbe comunque.
jofel

@jmtd Sono d'accordo, ho modificato la mia risposta. Tuttavia, credo ancora che ignorare i ping sia utile non per la protezione da ICMP-DDoS solo per evitare la scoperta dell'host.
kwarrick,

1

Interrompere tutti i servizi che non si desidera avviare: ssh, smtp, http, qualunque altra cosa non si desideri avviare. Configura i tuoi iptables per bloccare tutto ciò che accede al tuo computer o lascia il tuo computer a parte il software che desideri.

Si noti che non sto dando un intero elenco di comandi da digitare in quanto è fondamentale che uno impari e comprenda le implicazioni di servizi e iptables prima di sbagliare con loro.


1

La base più popolare di filtri di rete / firewall su Linux è iptables, che non funziona su base applicativa. Ciò di cui hai bisogno è un programma di politica di sicurezza che può impedire ai programmi di accedere alle risorse di rete. Due approcci sarebbero SELinux e AppArmor .

Ecco alcune ricette AppArmor di esempio , una delle quali apre l'accesso alla rete per Firefox / Iceweasel.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.