Debe estar conectado para participar
Buscar en los foros:


 






Uso de Comodín:
*    coincide cualquier número de caracteres
%    coincide exactamente un caracter

Guia como compartir internet de ubuntu a wndows..

No hay Etiquetas
Entrada
Extreme Level

conrado

entradas: 1186

19:17 18/07/2007

1

Como muchas veces tenemos en casa más de una PC que accede a través del nuestro a internet con la conexión compartida de windows xp, y queremos hacer lo mismo con linux para que los demás puedan seguir conectandose a internet mientras usemos linux.

Lo primero q debemos hacer es instalar samba..

Que es samba??
Según wikipedia: es una implementación libre del protocolo de archivos compartidos de Microsoft Windows (antiguamente llamado SMB, renombrado recientemente a CIFS) para sistemas de tipo UNIX. De esta forma, es posible que ordenadores con Linux o Mac OS X se vean como servidores o actúen como clientes en redes de Windows. Samba también permite validar usuarios haciendo de Controlador Principal de Dominio (PDC), como miembro de dominio e incluso como un dominio Active Directory para redes basadas en Windows; aparte de ser capaz de servir colas de impresión, directorios compartidos y autenticar con su propio archivo de usuarios.

Para instalar samba vamos a:

Sistema > Administración > Carpetas Compartidas

Ahí automáticamente si no tenemos instalado los paquetes de samba nos va a decir q los instalemos… damos todo ok.. instala y cerramos..

Ahora bien.. una vez q instalamos samba seguimos los siguientes pasos..

1.- Abrimos una consola y creamos un nuevo archivo que vamos a editar:

$ sudo gedit /etc/init.d/iptablesconf

2.- Ahora copiamos y pegamos el siguiente script en el editor de texto, sólo tenemos que modificar las 5 cadenas que están en negrita, donde pone eth1 y eth0 lo revisaremos para ver si efectivamente eth1 y eth0 son nuestros dispositivos de red conectados a internet y a la red local respectivamente.

Lo siguiente es por si queremos redigir cierto puerto a un ordenador de la red (que llamaremos pc2) local para que pueda por ejemplo usar el emule o tener activo un servidor ftp, etc.. , se supone que en el ejemplo redirigiremos en puerto 7778 tcp y 7779 udp al pc con la ip 192.168.0.2
Si no estamos interesados en redirigir puertos podemos borrar/comentar esas 3 variables..

#### SCRIPT DE CONFIGURACION DE IPTABLES ####
#!/bin/bash

# Dispositivo de red de internet
EXIF="eth1"
# Dispositivo de red local
INIF="eth0"

# Puertos tcp que se desean redirigir (separados por espacios)
puertosTCP="7778"
# Puertos udp que se desean redirigir (separados por espacios)
puertosUDP="7779"
# ip a la que se le redirigen los puertos
pc2="192.168.0.2"

fail=0

[ -f /etc/default/rcS ] && . /etc/default/rcS
. /lib/lsb/init-functions

log_begin_msg "Aplicando Reglas de Firewall…"

## Borrado de reglas anteriores
iptables -F || fail=1
iptables -X || fail=1
iptables -Z || fail=1
iptables -t nat -F || fail=1

## Establecemos politica por defecto
iptables -P INPUT ACCEPT || fail=1
iptables -P OUTPUT ACCEPT || fail=1
iptables -P FORWARD DROP || fail=1
iptables -t nat -P PREROUTING ACCEPT || fail=1
iptables -t nat -P POSTROUTING ACCEPT || fail=1

# Marcar paquetes salientes con su ip de origen
iptables -t nat -A POSTROUTING -o $EXIF -j MASQUERADE || fail=1
# Reenvio de IP
echo 1 > /proc/sys/net/ipv4/ip_forward || fail=1

# Aceptar paquetes para reenviar procedentes de la red local
iptables -A FORWARD -i $INIF -o $EXIF -j ACCEPT || fail=1
# Aceptar paquetes para reenviar procedentes de internet de conexiones ya establecidas
iptables -A FORWARD -i $EXIF -o $INIF -m state –state RELATED,ESTABLISHED -j ACCEPT || fail=1

##Se redirigen los puertos configurados arriba

for puerto in $puertosTCP
do
iptables -A FORWARD -i $EXIF -o $INIF -p tcp –dport $puerto -j ACCEPT || fail=1
iptables -t nat -A PREROUTING -i $EXIF -p tcp –dport $puerto -j DNAT –to $pc2:$puerto || fail=1
done

for puerto in $puertosUDP
do
iptables -A FORWARD -i $EXIF -o $INIF -p udp –dport $puerto -j ACCEPT || fail=1
iptables -t nat -A PREROUTING -i $EXIF -p udp –dport $puerto -j DNAT –to $pc2:$puerto || fail=1
done

# Se muestran los resultados
log_end_msg $fail

if [ $fail -eq 0 ]
then
log_success_msg "Verifique que lo que se aplica con: iptables -L -n."
else
log_warning_msg "Se ha producido un error al aplicar alguna de las reglas"
fi

#### FIN SCRIPT DE CONFIGURACION DE IPTABLES ####

3.- Guardamos los cambios y le damos permisos de ejecucion:

$ sudo chmod -v 755 /etc/init.d/iptablesconf

el modo de «iptablesconf» cambia a 0755 (rwxr-xr-x)

Lo ejecutamos:
$ sudo /etc/init.d/iptablesconf

si todo ha ido bien veremos este mensaje:
* Aplicando Reglas de Firewall… [ ok ]
* Verifique la reglas: iptables -L -n.


Ahora utilizamos el siguiente comando para que script se cargue cada vez que arranque el sistema:

$ sudo update-rc.d iptablesconf start 20 2 .

((el punto al final hay q ponerlo!!))

veremos este mensaje:

Adding system startup for /etc/init.d/iptablesconf …
/etc/rc2.d/S20iptablesconf -> ../init.d/iptablesconf

4.- Ahora podemos probar si todo funciona, nos vamos a los otros PCs y configuramos la red con ips estaticas (por ej 192.168.0.2 , 192.168.0.3 , etc..) y su correspondiente mascara de subred (255.255.255.0 para el ejemplo) utilizamos como puerta de enlace el pc que comparte la conexión (192.168.0.1 en el ejemplo) y como servidores dns utilizamos los mismos que tenga configurados el pc que da acceso a internet, que podemos verlos utilizando:

$ cat /etc/resolv.conf

Ahora si todo ha ido bien debería funcionar internet en los otros PCs una vez configurados.

Bueno esto es masomenos una recopilación de unas guias q tenia.. a mi siempre me funciona bien.. espero q les sirva.. Saludos.

[Review] Netbook Acer Aspire 1410 11,6", Intel SU2300 CULV, GMA 4500MHD, 2GB, 160GB WD Scorpio Blue, HDMI, 6 celdas (4400 mAh)..

Mi blogsito Hardsoft Geek

Midle End Level

Zenden

entradas: 406

23:48 18/07/2007

2

gracias x la guia, le va a ser util a mas de 1.

(1994, 1995, 2000, 2001, 2002, 2003, 2004)

Nuevo miembro

sindroide

entradas: 3

14:30 29/10/2007

3

A ver si alguien me puede ayudar con mi problema: tengo una conexion a internet a traves de un modem zxdsl 831 (que esta conectado a un switch y de alli cuelgan las pcs). Una de las pc que esta conectada, la mia, tiene ubuntu, con dos placas de red. La placa de red que sobra la necesito porque quiero compartir internet directamente con un cable cruzado a otra pc.
Los script que andan dando vuelta por ahi no me funcionan y firestarter tampoco, a pesar de hacer todo lo que lei e investigue.

explico un poco mas

modem zxdsl —> switch con 8 salidas—> una llega a ubuntu en eth0 (192.168.1.3)
pero en ubuntu tambien tengo eth1 (192.168.1.4) que va hacia una pc al lado con un cable cruzado… que tiene por ej la ip 192.168.1.5

como le brindo internet a 192.168.1.5
teniendo link y todo no puedo pinguear desde 192.168.1.3 a 192.168.1.5 (que es la pc de al lado) teniendo en cuenta que esta todo bien habilitado icmp

tampoco puedo pinguear desde 192.168.1.5 a 192.168.1.3
ni tampoco de 192.168.1.5 a 192.168.1.4 (que son las dos placas conectadas mediante el cable cruzado) (ni vice versa puedo pinguear)

me da la sensacion de que como 192.168.1.5 que es la pc que no esta conectada al switch. no la ve nadie (inclusive la propia placa de conexion directa).

espero haber sido claro y po favor agradeceria mucho su ayuda

Como le brindo internet