Jose Maria:
Me has dejado alucinado. Si esto era lo que Yo debia facilmente desarrollar
te aseguro que no consigo instalar el firewall hasta que las vacas vuelen.
Muchisimas gracias, te debo una cerveza como minimo (en la proxima reunion
en BCN te invito).
Me lo he leido rapido y no lo he digerido. (lo estudiare mas a fondo)
Tengo dos preguntas mas:
1-Me olvide de decirte que tambien he instalado Linux en el resto de PC´s y
a veces concto via NFS. ¿Esta configuracion que me pasas es valida o debo
añadir algun parametro?
2- ¿Como puedo probar que el firewall lo he montado bien? (Si despues de
todo esto creo que tengo un firewall de narices y resulta que en mi
ordenador entra quien quiera, voy fino. Es decir me gustaria chequear la
instalacion para comprobar que he puesto bien los distintos parametros)
Saludos y muchas gracias de nuevo
Alejo
----- Original Message -----
From: "jose maria"
*This message was transferred with a trial version of CommuniGate(tm) Pro* Jose Maria:
Gracias por tu respuesta. (¿Eres informatico o similar?)
Si soy un informaticamente-MEMO, soy informaticamente cuasi-analfabeto.
* Esto es una deduccion tuya no una afirmacion mia.
Cada vez que hablo con vosotros es una cura de humildad pues veo un monton de cosas que desconozco. (no me ha quedado claro un tema. ¿Zone Alarm no es bueno?)
* NO, ni ningun programa cortafuegos a nivel de aplicacion, y que ademas no haga filtrado inteligente de paquetes a nivel de kernel, tipicamente para el mundo windows, suele ser una maquina dedicada, llamese cisco, o de la marca que sea, que suele cargar una variante *bsd o un linux.
El Link http://grc.com/x/ne.dll?rh1dkyd2 ¿Es bueno para testear la seguridad?
* No lo conozco ni esa ni ninguna, pero supongo que comprueba, como puedes hacer tu con nmap, si hay puertos abiertos, y servicios a la escucha, que es como no decir nada, para que los servidores den servicios del tipo que sea, deben estar escuchando.
Respondo tus preguntas: 1- Conexion- tengo dos oficinas. -1a)- 3 ordenadores y un router que me conecta con ADSL. todos los ordenadores conectan directamente. (un PC con w98 otro con XP y el otro con SUSE 9.0).
* Tienes un router en multipuesto haciendo nat, que es la opcion menos segura que hay, nat no es un cortafuegos es todo lo contrario proporciona conectividad de forma transparente, el router es alcanzable desde internet y un router es un aparatillo con un firmware empotrado, que en ningun caso es comparable a un ordenador haciendo de cortafuegos con todo un S.O. los routers que si pueden llamarse cortafuegos, son en realidad esto ultimo, compactado y con un coste que habitualmente supera a una maquina normal en mucho. * El SuSE 9.0 es una maquina cliente en este caso, dispone de una ip interna seguramente servida por el propio router.
-1b)- 2 ordenadores y un modem ADSL. (un PC con XP conectado a internet permitiendo ICS, otro PC con SUSE 9.0 usando internet via el PC con XP)
2- router multipuesto 3- Interfaz externa. (Me has pillado- No lo se, pero si sirve estoy en España con Telefonica)
* La interfaz externa en el caso del linux, no me interesan los windows sera seguramente eth0 , es decir la primera y unica tarjeta de red que tiene, no sirve de gateway es una maquina final y no tiene interfaces internas. * Por tanto. /etc/sysconfig/SuSEfirewall2 * Obviaremos configurarlo como quick mode para cuando tengas que hacer algo mas complejo. # Primera pregunta dificil, indique cual o cuales, pueden ser varias, es su # interfaz externa, los ejemplos del fichero veras que son confusos, en tu # caso que solo tienes una interfaz de red, es aun mas dificil. FW_DEV_EXT="eth0" # # Que interfaz o interfaces sirven a redes internas, en tu caso ninguna puesto # que solo tienes la externa que la que te comunica con todo el mundo, la red # propia e internet, dificil tambien como veras. FW_DEV_INT="" # No tienes ni zonas desmilitarizadas ni nada por el estilo asi que evidentemente: FW_DEV_DMZ="" # # Tu maquina no ejerce de router ni Gateway-bastion asi que: FW_ROUTE="no" # # Tu maquina no emmascara las ips de otras maquinas, es decir no hace nat, en # tu red lo hace el router, por tanto: FW_MASQUERADE="no" # Que interfaz se encargaria de hacer el enmascaramiento en caso de estar # activado, como no esta activado lo que pongas aqui no sera tenido en cuenta, # dejalo como esta. FW_MASQ_DEV="$FW_DEV_EXT" # Set this variable to "0/0" to allow unrestricted access to the internet. # # No tienes activado el enmascaramiento de ip por tanto aqui no tienes que # definir que redes, protocolos, etc les permites salir enmascarados. FW_MASQ_NETS="" # # "yes" is a good choice # Prohibe a las maquinas internas acceder a servicios que corran en el # firewall salvo aquellos explicatamente permitidos, politica por defecto # DROP, obviamente si no ejerces de firewall y no tienes una interfaz interna # es una directiva que afectara a tu red local si defines eth0 tambien como # interfaz interna en la directiva FW_DEV_INT="eth0" recomendable. FW_PROTECT_FROM_INTERNAL="yes" # Choice: "yes" or "no", if not set defaults to "yes" # # lo mismo que lo anterior para las zonas desmilitarizadas. FW_AUTOPROTECT_SERVICES="yes" # # Que puertos al exterior, en tu caso TODO es exterior, los ejemplos son #claros, se puede poner, puerto, rango de puertos o protocolo estandard que #corresponde a puerto, vea el fichero /etc/services, en el ejemplo, se #permite el puerto 4662(mldonkey), smtp (servidor de correo podria poner el #puerto 25 y obtendria el mismo resultado, como se ha explicado #anteriormente, 993 (imaps) 995 (pop3s) 8010 (puerto de configuracion de la #suite integrada de correo CommuniGate, 10000 (webmin) 22 (ssh) 53 (servidor #dns que sirve un dominio), quite los que no le sirvan, ponga los que le #sirvan, y si no quiere ninguno dejelo en blanco, si como afirma usted lo que # sabe es de windows, sabra que puertos e infames protocolos usa ese sistema, # pongalos. FW_SERVICES_EXT_TCP="4662 smtp 993 995 8010 10000 22 53" ## Type: string # Common: domain # udp para dns, el puerto de control de mldonkey y ntp para sincronizar la # hora con un servidor de tiempo, lo mismo quite, ponga, deje en blanco. FW_SERVICES_EXT_UDP="53 4666 ntp" ## Type: string # For VPN/Routing which END at the firewall!! # Para establecer vpn's, en su caso nada FW_SERVICES_EXT_IP="" ## Type: string # # Common: smtp domain # Los servicios accessibles de la dmz, en su caso nada FW_SERVICES_DMZ_TCP="" ## Type: string # Common: domain # Lo mismo que lo anterior, para udp, en su caso nada FW_SERVICES_DMZ_UDP="" ## Type: string # For VPN/Routing which END at the firewall!! # Lo mismo en su caso nada FW_SERVICES_DMZ_IP="" ## Type: string # # Common: ssh smtp domain # puertos abiertos, a la red interna, en su caso nada ya que la red interna en #su caso es lo mismo que la red externa, su maquina es un punto final de la #red. FW_SERVICES_INT_TCP="" ## Type: string # Common: domain syslog # lo mismo para el protocolo UDP, en su caso nada. FW_SERVICES_INT_UDP="" # For VPN/Routing which END at the firewall!! # Todo lo comentado para la interfaz externa ahora para la interna, en su caso # nada. FW_SERVICES_INT_IP="" * Como ya comentamos todo lo relacionado a quickmode en blanco. # QUICKMODE: TCP services open to external networks (InterNet) # (Common: ssh smtp) FW_SERVICES_QUICK_TCP="" ## Type: string # QUICKMODE: UDP services open to external networks (InterNet) # (Common: isakmp) FW_SERVICES_QUICK_UDP="" ## Type: string # QUICKMODE: IP protocols unconditionally open to external networks (InterNet) # (For VPN firewall that is VPN gateway: 50) FW_SERVICES_QUICK_IP="" # # maquinas, redes, protocolos o puertos de destino a los que ciertas maquinas # podrian acceder, tipicamente declarar maquinas confiables, la maquina que # tengo al lado y que tambien administro yo, NO es de mi confianza, usted vera # lo que le interesa: FW_TRUSTED_NETS="" # # Permitir o no acceso de entrada a los puertos altos no privilegiados, lo #correcto es no, y no usar programas que usen puertos aleatorios, si usa un #servidor ftp, use proxys, instale la suite ftp-proxy por ejemplo o delegate #y obligue aunque sea sockificando, a esos servidores a utilizar un rango de #puertos fijo, defina su acceso en FW_SERVICES_EXT_TCP y UDP, procure evitar #protocolos como ftp, use ssh, hay clientes para windows graficos y en linux #gftp soporta ssh si la consola no le gusta. FW_ALLOW_INCOMING_HIGHPORTS_TCP="" ## Type: string # Common: "DNS" or "domain ntp", better is "yes" to be sure ... FW_ALLOW_INCOMING_HIGHPORTS_UDP="" # # Que el sistema detecte automaticamente los servicios no es buena idea, # defina usted los puertos y reglas manualmente, ya ve que tampoco es nada del # otro mundo obtener un firewall decente de forma simple. FW_SERVICE_AUTODETECT="no" # Autodetect the services below when starting ## Type: yesno ## Default: no # If you are running bind/named set to yes. Remember that you have to open # port 53 (or "domain") as udp/tcp to allow incoming queries. # Also FW_ALLOW_INCOMING_HIGHPORTS_UDP needs to be "yes" FW_SERVICE_DNS="no" ## Type: yesno ## Default: no # if you use dhclient to get an ip address you have to set this to "yes" ! # es posible que su maquina obtenga la ip de un servidor dhcp, tipicamente el # router, podria poner esto a yes, o mejor definir el puerto necesario en # FW_SERVICES_EXT_TCP como ya le comente. FW_SERVICE_DHCLIENT="no" ## Type: yesno ## Default: no # set to "yes" if this server is a DHCP server # lo mismo si su maquina fuera el servidor dhcp que otorga las ips al resto de # maquinas FW_SERVICE_DHCPD="no" ## Type: yesno ## Default: no # set to "yes" if this server is running squid. You still have to open the # tcp port 3128 to allow remote access to the squid proxy service. FW_SERVICE_SQUID="no" ## Type: yesno ## Default: no # set to "yes" if this server is running a samba server. You still have to # open the tcp port 139 to allow remote access to SAMBA. # Aqui le dan una pista de windows y alguno de los puertos que usa, mejor # nuevamente definir el puerto en la directiva ya comentada varias veces FW_SERVICE_SAMBA="no" # Definir puertos y maquinas internas no enmascaradas, accesibles desde # internet, en su caso nada, ya que la maquina no ejerce de router. FW_FORWARD="" # # Lo mismo que lo anterior para maquinas enmascaradas, sin ip publica, # pudiendo cambiar el puerto de destino, en su caso nada por la misma razon # que anteriormente citada # FW_FORWARD_MASQ="" # Beware to use this! # # redirigir las llamadas procedentes de donde sea, a donde sea y puerto de #destino que sea, a un puerto dentro de la propia maquina, tipicamente para #obligar a las maquina internas a pasar por un proxy, recuerde que en windows #cualquiera puede cambiar las configuraciones de red, en este caso aunque el #cliente desactive el uso del proxy no podra acceder a lo que usted tenga #prohibido , hay va un ejemplo para la navegacion web, pero en su caso nada, #ya que no ejecte de gateway. FW_REDIRECT="192.168.0.0/24,0/0,tcp,80,3128 * Lo siguiente sera para tratar con los logs via syslog. # Choice: "yes" or "no", if not set FW_LOG_*_CRIT defaults to "yes", and # FW_LOG_*_ALL defaults to "no" # FW_LOG_DROP_CRIT="yes" ## Type: yesno ## Default: no # FW_LOG_DROP_ALL="no" ## Type: yesno ## Default: yes # FW_LOG_ACCEPT_CRIT="yes" ## Type: yesno ## Default: no # FW_LOG_ACCEPT_ALL="no" ## Type: string # # only change/activate this if you know what you are doing! FW_LOG="--log-level warning --log-tcp-options --log-ip-option --log-prefix SuSE-FW" # Choice: "yes" or "no", if not set defaults to "yes" # Descartar paquetes, usados por distintas tecnicas conocidas, normalmente # usadas para ataques de denegacion de servicio por inundacion. FW_KERNEL_SECURITY="yes" # # # Choices "yes" or "no", if not set defaults to "no" # # para que si usa una conexion que use ppp al terminar la conexion, pare el #firewall haciendo un flush de rutas, lo recomendable es añadir al script de #parada de la conexion /etc/ppp/ip-down una llamada a #/etc/init.d/SuSEfirewall2 stop y dejar esto en no FW_STOP_KEEP_ROUTING_STATE="no" # # admitir ping o no al firewall, la dmz, etc. FW_ALLOW_PING_FW="no" # FW_ALLOW_PING_DMZ="no" # FW_ALLOW_PING_EXT="no" # Choice: "yes" or "no", if not set defaults to "no" # # Lo siguiente es para permitir traceroute, icpm, etc, yo lo pondria todo a no #puesto que icpm sourcequench en teoria tampoco lo necesita, ya que esta #maquina no trata con el isp, se necesitaria en el caso que si lo fuera y su #conexion dependiera de que el isp vea, enviando estos paquetes, que estas #"vivo" FW_ALLOW_FW_TRACEROUTE="no" FW_ALLOW_FW_SOURCEQUENCH="no" # # Las maquinas windows generan trafico de broadcast, continuamente aunque no # se este haciendo nada, en muchos casos si estos paquetes "colleja" no llegan # el infame protocolo netbios muere, yo lo pondria a no y si no se ve la red # desde windows, pulse F5 repetidas veces en el entorno de red de windows, # para reanimar el cadaver FW_ALLOW_FW_BROADCAST="no" ## Type: yesno ## Default: yes # FW_IGNORE_FW_BROADCAST="yes" # # definir distintas opciones de routing con varias interfaces, en su caso # nada. FW_ALLOW_CLASS_ROUTING="no" # # SuSEfirewall2 es una interfaz sencilla, decentemente potente, pero muy # limitada para tratar con las extensas capacidades y potentisimo netfilter de # linux, aqui puede definir un fichero, vea el propuesto por defecto, para # incluir directivas usando reglas iptables directamente, no obstante si # necesita contruir un cortafuegos complejo, use un script con reglas iptables # directamente y no SuSEfirewall2. #FW_CUSTOMRULES="/etc/sysconfig/scripts/SuSEfirewall2-custom" FW_CUSTOMRULES="" # # "remitir" a origen los paquetes recibidos tipicamente cuando le hagan un # escaneo de puertos, mi recomendacion es que no, dejelos caer, mejor que el # atacante pueda pensar que alli no hay nada, que le pique la curiosidad y se # tome interes. FW_REJECT="no" # # Una simple equalizacion de la linea, en adiccion con wondershaper, si el # router estuviera en monopuesto y esta maquina fuera el gateway-bastion, en # lineas asincronas es fundamental que las colas de retraso se produzcan, las # controle y las gestione linux y no ese aparatito, sea router o modem adsl, # que no tiene una milesima de la potencia y capacidades de un pc con linux. FW_HTB_TUNE_DEV="" * Tambien tiene el paquete Personal-firewall o algo por el estilo, no lo recuerdo, que es aun menos potente y que es aun mucho mas simple, en su fichero de configuracion, solo debe poner puerto o nombre de servicio equivalente que quiera abrir en su maquina, algo del estilo: ssh, 80, etc, osea mas facil que zone alarm, y no tiene que estar un usuario de guarda-agujas pinchando en aceptar cuando se recibe una peticion. * Si quiere que se ejecute permanentemente y se inicie en el arranque como root , insserv SuSEfirewall2_setup insserv SuSEfirewall2_init insserv SuSEfirewall2_final o habilitelo con yast, cuando cambie una variable del fichero de configuracion, para que tome los cambios, rcSuSEfirewall2 restart, stop para pararlo y start para iniciarlo manualmente a conveniencia. * No parece tan dificil conseguir algo que pueda calificarse de firewall, ¿o si? -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.1 (GNU/Linux) iD8DBQFAQlYSAXFL65CppEIRArssAJwPQdNKh+Mu7VKWHQdg7aCuWiUgFACfc+y6 JTFMYnn5qxKt/sDU9q/Zro4= =lb5J -----END PGP SIGNATURE----- -- Para dar de baja la suscripción, mande un mensaje a: suse-linux-s-unsubscribe@suse.com Para obtener el resto de direcciones-comando, mande un mensaje a: suse-linux-s-help@suse.com