InicioLinuxUbuntu server + squid proxy server + dhcp + 2 tarjetas de re

Ubuntu server + squid proxy server + dhcp + 2 tarjetas de re

Linux•11/30/2013
Ubuntu server + squid proxy server + dhcp + 2 tarjetas de red + mysql, php, apache, phpmyadmin, + servidor ejabberd + cliente spark

Que tal compañeros les vengo a compartir varios dias de desvelo y conocimiento que he obtenido.

En este post aprenderan a montar squid proxy server mas un servidor ejabber (de mensajeria) con el cual podran conectarse con cuentas que se encuentren fuera de su red (del exterior)

requisitos:
* ubuntu server en mi caso tengo la vercion 12.04
* 2 tarjetas de red
* squid proxy server
* dhcp
* mysql, php y apache
* servidor ejabber
* cliente spark


NOTA: PARA GUARDAR CAMBIOS EN LOS ARCHIVOS QUE SE ABREN CON NANO POR CONSOLA SOLO DEBEN PRECIONAR CTRL + O (ESTO PARA GUARDAR) Y CTRL + X (ESTO PARA SALIR)


OPCIONAL: PARA INSTALAR SSH EJECUTAN LA SIGUIENTE INSTRUCCION

apt-get install openssh-server

una vez instalado pueden descargase el cliente putty de la siguiente pagina:

http://the.earth.li/~sgtatham/putty/latest/x86/putty.exe

una vez descargado lo abren y esciben la ip del servidor ubuntu server y dan enter y les mostrara un mensaje cuando se baia a conectar solo le disen que si y ya tendran la consola del servidor en su pc.


--------------paso numero 1:
* conectar los cables de red en su respectivo lugar.

tenemos 2 tarjetas de red conectadas a la pc con ubuntu server que son, "etho" y "etho1". En la tarjeta "eth0" (la que viene integrada a la tarjeta madre) vamos a conectar un cable que balla de esta tarjeta directa al modem (su routeador de su proovedor de internet) y en la "eth1" vamos a conectar otro cable que balla conectada a un switch y todas sus maquinas que quieran pasar por squid proxy server deberan de estas conectadas al switch.

*Diagrama de red como quedaria ya con las tarjetas conectadas:




------------paso numero 2 configuracion de ips en las tarjetas de red:

escribimos: sudo nano /etc/network/interfaces
aca la imagen como deben quedar configuradas las 2 tarjetas de red, pueden borrar todo el contenido que tiene este archivo y solo dejan esta configuracion



ajecutan la siguiente instruccion: sudo /etc/init.d/networking restart
esto para cargar la nueva configuracion, luego hacen un ifconfig y podran ver que sus tarjetas ya estan configuradas correctamente.



------------paso numero 3: agregar dns

ejecutamos lo siguiente en la consola: sudo nano /etc/resolv.conf
aqui van a dejar la ip que tiene su modem el que les ofrece su provedor de internet por default los de telmex tiene la ip 192.168.1.254.



------------------paso numero 4: instalacion del dhcp

ejecutamos en la consola el siguiente comando:

sudo apt-get install dhcp3-server

esto instalara el servidor dhcp

ahora tendremos que desirle con que interface de red nos va escuchar, para ello ejecutamos la siguiente sentencia:

sudo nano /etc/default/dhcp3-server y al final tenemos que dejar "eth1" como se muestra en la imagen:




---------------------------paso numero 5: configurar el dhcp

ejecutamos la siguiente sentencia: sudo nano /etc/dhcp3/dhcpd.conf

aqui vamos a dejar lo siguiente:

ddns-update-style none;
default-lease-time 3600;
max-lease-time 180000;
log-facility local7;
ddns-update-style interim;
authoritative;
subnet 192.168.2.0
netmask 255.255.255.0{
range 192.168.2.2 192.168.2.253;
option domain-name-servers 192.168.1.254;
option routers 192.168.2.1;
option broadcast-address 192.168.2.255;
}

aqui indicamos la red que vamos a usar el rango de las ips el dns.

reiniciamos el dhcp con el siguiente comando: sudo /etc/init.d/dhcp3-server restart
nos debe de mostrar ok


----------------------------------paso numero 6: instalar squid proxy server

ejecutamos la siguiente instruccion: sudo apt-get install squid3

ya instalado tenemos que activar el forward para ello crearemos un archivo que se ejecutara durante el inicio del servidor esto para no tenerlo que activar cada que se reinicie el server.

pero primero escribiremos unas reglas iptables las cuales nos serviran para que digan que va pasar por la red y por donde va pasar.

ejecutamos la siguiente instruccion: sudo nano /etc/init.d/iptables.cf

y pegamos lo siguiente:
[color=#000000]
iptables -X iptables -Z iptables -t nat -F
iptables -P INPUT ACCEPT iptables -P OUTPUT ACCEPT 
iptables -P FORWARD ACCEPT
iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P POSTROUTING ACCEPT
iptables -t nat -A POSTROUTING -s 192.168.2.0/24 -o eth0 -j MASQUERADE
iptables -t nat -A PREROUTING -s 192.168.2.0/24 -d ! 192.168.2.0/24 -p tcp -- dport 80 -j REDIRECT --to-port 3128 
iptables -A INPUT -s 192.168.2.0/24 -i eth1 -j ACCEPT
iptables -A FORWARD -s 192.168.2.0/24 -i eth1 -p tcp --dport 993 –j ACCEPT 
iptables -A FORWARD -s 192.168.2.0/24 -i eth1 -p tcp --dport 110 -j ACCEPT 
iptables -A FORWARD -s 192.168.2.0/24 -i eth1 -p tcp --dport 465 -j ACCEPT 
iptables -A FORWARD -s 192.168.2.0/24 -i eth1 -p tcp --dport 25 -j ACCEPT 
iptables -A FORWARD -s 192.168.2.0/24 -i eth1 -p tcp --dport 80 -j ACCEPT 
iptables -A FORWARD -s 192.168.2.0/24 -i eth1 -p tcp --dport 443 -j ACCEPT 
iptables -A FORWARD -s 192.168.2.0/24 -i eth1 -p tcp --dport 53 -j ACCEPT 
iptables -A FORWARD -s 192.168.2.0/24 -i eth1 -p udp --dport 53 -j ACCEPT 

[/color]


seguido ejecutamos la siguiente instruccion para habilitar el forward:

echo 1 > /proc/sys/net/ipv4/ip_forward


damos permisos de ejecucion al archivo creado con el siguiente comando:

sudo chmod a+x /etc/init.d/iptables.cf


instalaremos un programa para que se ejecute al arranque del servidor con el siguiente comando:

sudo apt-get install rcconf

y lo ejecutamos con la siguiente instruccion:

sudo rcconf

veran la siguiente imagen: aqui seleccionaran iptables.cf
Nota: para seleccionar posicionarce sobre iptables.cf y precionas la tecla espaciadora.



---------------------paso numero 7: configurar squid

borrar el archivo de configuracion de squid para ello ejecutamos el siguiente comando:
sudo rm /etc/squid3/squid.conf

ahora creamos de nuevo el archivo y pegamos lo siguiente con el siguiente comando.
ejecutamos el siguiente comando: sudo nano /etc/squid3/squid.conf

y pegamos lo siguiente:

cache_mem 16 MB
cache_dir ufs /var/spool/squid 700 16 256
ie_refresh on
offline_mode on

#acl all src 0.0.0.0/0.0.0.0
acl red_local src 192.168.2.0/24
acl bloquearip src "/etc/squid3/bloquearip"
acl restringidas src "/etc/squid3/restringidas"
acl libres src "/etc/squid3/libres"

acl localhost src 127.0.0.1/255.255.255.255
acl palabras url_regex "/etc/squid3/palabras"

http_access deny bloquearip
http_access deny restringidas palabras
http_access allow libres
http_access allow red_local
http_access allow localhost
http_access deny all

nota:crearemos 3 archivos con los siguientes comandos
sudo nano /etc/squid3//bloquearip
192.168.2.6
192.168.2.7
192.168.2.8
en este archivo ponemos las ips de las maquinas que no tendran derecho a navegar por internet

sudo nano /etc/squid3/restringidas
en este archivo pondremos las ips que no podran entrar a los sitios que esten registrados en el archivo de abajo que es palabras,
192.168.2.10
192.168.2.11

sudo nano /etc/squid3/libres
squi pondremos las ips de las maquinas que tengan acceso libre a internet
192.168.2.120
192.168.2.121

sudo nano /etc/squid3/palabras
facebook
youtube
taringa
twitter

aqui pondremos palabras comunen, toda pagina que contenga esta palabra en la url sera bloqueada


hasta aqui la configuracion de squid proxy server: dudas las contesto en los comentarios.

------------------------paso numero 8: instalacion php mysql apache.


instalamos lamp (linux, apache, mysql, php) con el siguiente comando:

sudo tasksel install lamp-server

les mostrara la siguiente pantalla, aqui ponen la contraseña que gusten para la base de datos mysql



seguido nos pedira confirmar la contraseña ponemos la misa que la imagen anterior.

ok, hasta aqui ya hemos instalado php mysql y apache, ahora podemos ingresar a nuestro navegador y escribimos la ip de nuestro servidor ubuntu server que en este caso es la 192.168.1.100 y si nos muestra la siguiente pantalla quiere desir que vamos bien.



---------------------paso numero 9: crear cuenta en no-ip.org

ahora creamos un dominio para ello entramos a la pagina https://www.noip.com/sign-up
ya que tenemos la cuenta creada nos logeamos en la siguiente pagina https://www.noip.com/sign-up



una vez dentro escogemos la opcion manage host



luego precionamos donde dise ADD A HOST un boton rojo a la derecha y nos mostrara la siguiente pantalla donde tenemos que escoger un hostame y un dominio como lo muestra la imagen: una vez que escojas un hostname y un dominio precionar add host abajo a la derecha



listo ya tenemos nuestro dominio en no-ip.org esto nos servira para poder ver nuestro servidor de fuera.

ahora abrimos el archivo host para ello ejecutamos la siguiente sentencia:

sudo nano /etc/hosts

y agregamos esta linea al final
192.168.1.100 nuetro nombre de dominio que creamos en no-ip
ejemplo
192.168.1.100 zeok.no-ip.org

aqui ya podemos poner nuestro nombre de dominio en el navegador y nos debe de mostrar el its work de la imagen anterior

-----------------------------------paso 10: instalar phpmyadmin
nota:opcional

sudo aptitude install phpmyadmin

*durante la instalacion nos preguntara para que tipo quiere que adapte la instalacion le decimos que para apache2 y damos aceptar

*nos mostrara un mensaje que dise que ocupa una base de datos para funcionar le desimos que si luego aceptar

*nos pedira una contraseña, aqui tendremos que poner la que pusimos anteriormente al instalar php mysql y apache para la base de datos mysql



ahora phpmyadmin nos pide otra contraseña esta es la que pondremos para poder acceder a el por medio de la web ponemos la que gusten pero qe no se les olvide.



confirman contraseña.

ahora ya pueden acceder al phpmy admin de la siguiente manera:

ingresan al navegador y escriben: 192.168.1.100/phpmyadmin

usuario:root
contraseña: la que pusieron durante la instalacion del php myadmin.

---------------------------------paso numero 11:instalar ejabberd:

ejecutamos la siguiente instruccion: sudo apt-get install ejabberd

una vez instalado paramos el servicio con el siguiente comando

sudo /etc/init.d/ejabberd stop

ahora vamos a configurar el administrador y el host para ello entramos en el siguiente archivo:

sudo nano /etc/ejabberd/ejabberd.cfg

y buscamos las siguientes lineas:

%% Admin user
{acl, admin, {user, "", "localhost"}}.
%% Hostname
{hosts, ["localhost"]}.

y la editamos por esta

%% Admin user
{acl, admin, {user, "admin", "192.168.1.100"}}.
%% Hostname
{hosts, ["192.168.1.100", "localhost", "dominio que creamos en no-ip"]}.



iniciamos el servicio con el siguiente comando:

sudo /etc/init.d/ejabberd start

ahora vamos aconfigurar el usuario administrador que configuramos en el paso anterior que es "admin" para ello ejecutamos la siguiente instruccion
nota:donde dise mypassword va ser su contraseña

sudo ejabberdctl register admin 192.168.1.100 mypassword

ahora ya pueden entrar al administrador por medio del navegador con esta direccion
http://192.168.1.100:5280/admin

usuario:admin
contraseña: la que pusieron en el comando anterior

podremos ver la siguiente pagina: en donde dise 192.168.1.100 crearemos usuarios que esten dentro de nuestra red y en donde esta el nombre de dominio los usuarios que se conectaran de fuera.
para crear usuarios dan click en donde dise 192.168.100 o el nombre de dominio luego precionan donde dise usuarios y ahi puden crearlos.



---------------------------------- paso 12: instalar spark y configurar los clientes en las pcs

instalacion de spark: para ello entramos en la pagina del desarrollador que es la siguiente

http://www.igniterealtime.org/projects/spark/

una vez descargado el programa lo instalamos en nuestras maquinas que tengamos en nuestra red.

una vez instalado agregamos la cuenta de la siguiente forma:

el nombre juan es un nuevo usuario que hice en el administrador de spark http://192.168.1.100:5280/admin si el usuario esta dentro de nuestra red lan crearemos este usuario en el apartado 192.168.1.100
como se muestra en la imagen



y quedaria configurado de la siguiente manera



pero si nuestro usuario que va usar la cuenta esta fuera de nuestra red lan entonces crearemos otra cuenta en el apartado "nombre de dominio" como lo muestra la siguiente imagen



y la configuramos de la siguiente manera



y aqui estan las 2 cuentas funcionando, es una captura de logmein es una maquina que esta en el exterior de mi red es una maquina de mi trabajo.



fin del post. espero este claro, muchas grasias por su visita, compartan sus conocimientos por el bien de todos. grasias.
Datos archivados del Taringa! original
210puntos
671visitas
0comentarios
Actividad nueva en Posteamelo
0puntos
12visitas
0comentarios
Dar puntos:

Dejá tu comentario

0/2000

Autor del Post

s
seok123🇦🇷
Usuario
Puntos0
Posts4
Ver perfil →
PosteameloArchivo Histórico de Taringa! (2004-2017). Preservando la inteligencia colectiva de la internet hispanohablante.

CONTACTO

18 de Septiembre 455, Casilla 52

Chillán, Región de Ñuble, Chile

Solo correo postal

© 2026 Posteamelo.com. No afiliado con Taringa! ni sus sucesores.

Contenido preservado con fines históricos y culturales.