Newsgroup: it.comp.os.linux.iniziare
Titolo: Firewall e skype

Salve a tutti.
Ho installato skype su linux, e funziona tutto correttamente.
Per proteggere la macchina da attacchi esterni ho usato iptables. In
questo modo skype puo' uscire su internet, ma nessuno puo' entrare.
Il mio problema è: come faccio a dire a iptables di far uscire solo
skype?
Infatti per sua natura skype deve essere aperto verso tutti gli IP e
verso tutte le porte.
A questo punto, pero', se disgraziatamente mi becco uno spyware questo
anche puo' andare su internet dove vuole.
C'è un modo per far filtrare a iptables anche il nome
dell'applicazione? O forse c'è qualche altro software da scaricare?
Grazie in anticipo

 dell'applicazione? O forse c'è qualche altro software da scaricare?
la porta TCP/UDP che apre skype e' specificata nel setaggio che trovi in
ADVANCED->USE PORT.
In alternativa, puo' usare la 80 o 443, vedi flag nella stessa maschera.
Se hai bloccato TUTTO l'incoming con IPTables, come pare di capire, devi
aprire almeno questa determinata porta. Supponiamo che tu setti la porta
numero 60000 (e deflagghi la porta 80/443).
Per aprire questa porta, da shell come root:
# iptables -A INPUT -p tcp -m tcp --dport 60000 -j ACCEPT
# iptables -A INPUT -p udp -m udp --dport 60000 -j ACCEPT

Grazie per la risposta.
Forse mi sono spiegato male, il problema non sono le connessioni in
ingresso ( e quindi la porta che tiene aperta skype) ma quelle in
uscita.
Infatti se lancio skype e poi faccio
netstat -taunp|grep skype
vedo che si collega ad un certo numero di IP su un certo numero di
porte. Tanto gli IP quanto le porte cambiano sempre, anche se vado in
advanced a mettere 60000 e deflaggo la porta 80/443. Infatti questa
impostazione comanda la porta su cui skype si mette in listen, non
quelle alle quali si collega. Queste ultime mi sembrano del tutto
casuali, ed ecco che sono costretto ad aprire la macchina (in uscita)
verso tutto internet.
Per cui la mia cfig di iptables l'ho fatta prima di tutto facendo DROP
per policy per tutte e 3 le catene di iptable:
IPT="/usr/sbin/iptables"
$IPT -P INPUT DROP
$IPT -P FORWARD DROP
$IPT -P OUTPUT DROP
e dopodichè ho fatto ACCEPT per tutti i pacchetti relativi a
connessioni stabilite o ad esse correlate:
$IPT -A INPUT -p ALL -d $MIOIP -m state --state RELATED,ESTABLISHED -j
ACCEPT
Infine ho consentito tutte le connessioni in uscita, ed è questa la
regola che io vorrei che funzionasse solo con il programma skype:
$IPT -A OUTPUT -p ALL -s $MIOIP -m state --state
NEW,RELATED,ESTABLISHED -j ACCEPT
Ora impostando la porta in advanced come dici tu potrebbe essere utile
per modificare la penultima regola, così da aprire il PC alle
connessioni in input soltanto sulla porta 60000.
Ma per quanto riguarda l'ultima regola, quella sono costretto a
tenerla, perchè non so skype a quale porta del server remoto si
connettera', e non so nemmeno a quale IP remoto.  Per questo io vorrei
'limitare i danni' facendo in modo che questa regola sia usata solo da
skype e non da qualsiasi altro spyware che, come skype, crea una
connessione in uscita e non in entrata.
Grazie per l'aiuto.

 verso tutto internet.
beh, sono del casuali.... infatti, ognuno si sceglie la sua porta di
default, proprio come noi abbiamo scelto 60000. Quindi quando tu cerchi
di collegarti con qualcuno, verrai indirizzato a porte non prevedibili.
E si, la macchina va aperta in uscita.... sotto linux non c'e' la
"comodita'" di firewall come zone alarm che, quando un programma si
vuole connettere da qualche parte, chiedono il permesso per farglielo
fare.... cosa che, tra l'altro, io ritenevo noiosissima.
Almeno, io non ne ho ancora trovati.