Newsgroup: it.comp.os.linux.iniziare
Titolo: iptables, primo approccio

Vediamo se ho capito bene.
Sulla mia porta 22 voglio
1) accedere da tutti gli lan 
192.168.1.0/24
2) accedere anche da un unico indirizzo ip esterno
3) bloccare il resto del mondo
Da quanto ho capito da man e howt vari, mi pare di aver capito che devo
fare cosě:
iptables -A INPUT -s 
192.168.1.0/24
 -dport 22 -j ACCEPT
iptables -A INPUT -s 198.182.196.56 -dport 22 -j ACCEPT
iptables -A INPUT -s 0/0            -dport 22 -j REJECT
Che dite, ci ho azzeccato?
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 Che dite, ci ho azzeccato?
ci hai azzeccato ... ma e' consigliato fare cosi':
# vieta tutto il traffico
#
iptables -P INPUT DROP
# apri solo quello che ti serve
#
iptables -A INPUT -s 
192.168.1.0/24
 -dport 22 -j ACCEPT
iptables -A INPUT -s 
198.182.196.56/32
 -dport 22 -j ACCEPT
ecc ecc ...
-- 
#include <stdio.h>
int main(void){char c[]={10,65,110,116,111,110,105,111,32,98,97,114,98,111,110,
101,32,60,104,105,110,100,101,109,105,116,64,116,105,115,99,97,108,105,110,101,
116,46,105,116,62,10,10,0};printf("%s",c);return 0;}

 iptables -A INPUT -s 
198.182.196.56/32
 -dport 22 -j ACCEPT
Questo 32 è indispensabile?          ^^^
Grazie!


 Questo 32 è indispensabile?
mi pare di no ... ma io le metto sempre le netmask ... uso anche altri tipi
di firewall (ipfilter/FreeBSD, ipfw/OpenBSD+MacosX) ed e' diventata una
buona abitudine ;-))
ciao ...


 niente "aperto" ...
C'è qualcosa che non quadra:
~# iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination
Chain FORWARD (policy ACCEPT)
target     prot opt source               destination
Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination
Quindi è tutto vuoto. Se proseguo così:
~# iptables -P INPUT -s 
192.168.1.0/24
   -dport 22 -j ACCEPT
iptables v1.3.5: -P requires a chain and a policy
Che vuol dire? non ho specificato la chain INPUT e la policy ACCEPT?
Dove sta l'inghippo?


 C'è qualcosa che non quadra...
BINGO!
ora quadra tutto! Non avevo capito che la Policy generale 
andava in fondo.
Tutto ha funzionato così:
~# iptables -A INPUT -s 
192.168.1.0/24
   --protocol tcp 
--dport 22   -j ACCEPT
~# iptables -A INPUT -s 
198.182.196.56/32
 --protocol tcp 
--dport 22   -j ACCEPT
~# iptables -P INPUT DROP
Anche
~# iptables -L
esce col risultato sperato.
Grazie!

 ~# iptables -P INPUT DROP
Ho incollato queste righe anche in /etc/rc.d/rc.local
Può andare come espediente per riavere il firewall settato 
al riavvio?

 ~# iptables -P INPUT DROP
la policy la puoi mettere anche all'inizio ... e' che specificavi TROPPI
parametri ...
per lo script (io ho la slack), ti consiglio di crearti un file nella
directory ad esempio /etc/rc.d/rc.iptables ...
[SCRIPT]
#!/bin/bash
IPT=/usr/local/sbin/iptables
case "$1" in
"start")
$IPT -F
# policy a DROP
#
$IPT -P INPUT DROP
$IPT -P OUTPUT DROP
$IPT -P FORWARD DROP
# loopback
#
$IPT -A INPUT -i lo -j ACCEPT
$IPT -A OUTPUT -o lo -j ACCEPT
ecc ...
[/SCRIPT]
e poi in rc.local ...
if [ -x /etc/rc.d/rc.iptables ]; then
	echo "Loading iptables rules ..."
	. /etc/rc.d/rc.iptables start
fi


Ultima domanda.
Ora quando dò iptables -L è lentissimo e non mi tradice più 
gli ip in url. Ho aperto la porta 53 (dns) e 43 (whois), ma 
non c'è nulla da fare...
Che servizio usa per tradurre gli IP, e che porte devo aprire?

 url. Ho aperto la porta 53 (dns) e 43 (whois), ma non c'è nulla da fare...
tcp o udp?
-- 
           |Save our planet!
    Ciao   |Save wildlife!
   roberto |For your E-MAIL use ONLY recycled Bytes  !!
           |roberto poggi   
rpo...@softhome.net

 
Ecco cosa ho combinato:
iptables -A INPUT -s 
192.168.1.0/24
     -p tcp --dport 22 
-j ACCEPT # ssh da LAN
iptables -A INPUT -s 
206.161.207.2/32
   -p tcp --dport 22 
-j ACCEPT # ssh da ufficio
iptables -A INPUT -s 
193.204.114.232/31
 -p tcp --sport 123 
-j ACCEPT # ntpdate 
ien.it
iptables -A INPUT -s 
193.204.114.232/31
 -p udp --sport 123 
-j ACCEPT # ntpdate 
ien.it
iptables -A INPUT -s 
208.67.220.220/30
  -p tcp --sport 53 
-j ACCEPT # dns opendns
iptables -A INPUT -s 
208.67.220.220/30
  -p udp --sport 53 
-j ACCEPT # dns opendns
iptables -A INPUT -s 
88.149.128.0/27
    -p tcp --sport 53 
-j ACCEPT # dns ngi
iptables -A INPUT -s 
88.149.128.0/27
    -p udp --sport 53 
-j ACCEPT # dns ngi
iptables -A INPUT -s 0/0                -p tcp --sport 43 
-j ACCEPT # whois
iptables -A INPUT -s 0/0                -p udp --sport 43 
-j ACCEPT # whois
iptables -A INPUT -s 0/0                -p tcp --dport 80 
-j ACCEPT # web per tutti
iptables -P INPUT DROP
Ora sono lentissimi tutti i comandi che cercano di tradurre 
IP in url.
Es.:
netstat -p
iptables -L
...
Tra l'altro, che porte devo aprire perché mi funzioni il ping?
Ciao!

 Ciao!
(ti consiglio di installare wireshark se vuoi capirci qualcosa. o 
perlomeno io ci ho capito qualcosa grazie a wireshark)

 perlomeno io ci ho capito qualcosa grazie a wireshark)
Mi pare di capire che gira su interfaccia grafica. Il mio hw 
  ha troppo poche risorse (64M RAM).
Grazie!