firewall casero con gnu/linux (ubuntu server 14.04)

Post on 12-Jun-2015

1.997 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

Slide del taller "Firewall Casero con gnu/linux (ubuntu server 14.04) realizado el 30 de septiembre de 2014 dentro del marco de las actividades del Congreso Internacional de Ingenierías Computacionales e Informática. CIICI 3. 2014. efectuado en el Instituto Tecnológico de Coatzacoalcos. ITESCO en la Cd. de Coatzacoalcos, Verazcruz.

TRANSCRIPT

FIREWALL CASERO CON GNU/LINUX (UBUNTU SERVER 14.04)

Coatzacoalcos, Veracruz a 30 de septiembre de 2014)

Remigio Salvador Sánchez

UN POSIBLE ESCENARIO UN POSIBLE ESCENARIO

INGREDIENTES

• Ubuntu server para nuestro caso la versión 14.04 • 2 tarjetas de red (previamente configuradas) • SQUID • DHCP • DNS • IPTABLES

INGREDIENTES

UBUNTU SERVER

CONFIGURACIÓN POST INSTALACIÓN

Tarjeta de red 1 (eth0). Será la que nos de acceso a internet, dejar como DHCP Tarjeta de red 2 (eth1). Será la que nos de acceso a la red. Agregar las siguientes líneas al archivo interfaces. vi /etc/network/interfaces -----------------------------AQUI EMPIEZA------------------------------------------------------ auto eth1 iface eth1 inet static address 192.168.2.1 netmask 255.255.0.0 -----------------------------AQUI TERMINA----------------------------------------------------- Reiniciar la red

De ser necesario activar la interfaces

Actualizar el gestor de paquetes: apt-get update

RCCONF Programa que permite arranque de servicios

OPEN SSHD (Open Secure Shell Demon)

Para instalar:

Reinicar el servicio

La primera vez que conectas con una máquina nueva a la que no has conectado antes al servidor de SSH, te aparece el mensaje donde tendrás que responder que SI

DHCP (Dynamic Host Configuration Protocol)

En algunos casos puede ser que funcione dhcp3-server (obsoleto) en vez de isc-dhcp-server Lo que sigue es configurar la interfaz por la cual vamos a ‘’disparar’’ las direcciones ip’s a nuestros clientes

Ahora debemos configurar los parámetros del servicio DHCP, para eso vamos a /etc/dhcp y antes de nada hacemos un respaldo del archivo dhcpd.conf

vi /etc/dhcp/dhcpd.conf

Hacer una reserva #Comentario para colocar lo que gusten host algun_nombre { hardware ethernet 00:1d:60:96:53:85; fixed-address 192.168.2.13; option routers 192.168.2.1; option domain-name "inf01.server.public"; } Reinicar el servicio

SQUID (Caching proxy for the Web)

Para configurar:

Para instalar:

acl localhost src 127.0.0.1/32 ::1 acl to_localhost dst 127.0.0.0/8 0.0.0.0/32 ::1 acl palabras url_regex "/etc/squid3/palabras" acl SSL_ports port 443 acl Safe_ports port 80 # http acl Safe_ports port 21 # ftp acl Safe_ports port 443 # https acl Safe_ports port 70 # gopher acl Safe_ports port 210 # wais acl Safe_ports port 1025-65535 # unregistered ports acl Safe_ports port 280 # http-mgmt acl Safe_ports port 488 # gss-http acl Safe_ports port 591 # filemaker acl Safe_ports port 777 # multiling http acl CONNECT method CONNECT http_access allow manager localhost http_access deny manager http_access deny palabras http_access deny !Safe_ports http_access deny CONNECT !SSL_ports acl mi_red src 192.168.2.0/24

http_access allow mi_red http_access allow localhost http_access deny all http_port 192.168.2.1:3128 transparent cache_mem 256 MB maximum_object_size_in_memory 512 KB cache_swap_low 90 cache_swap_high 95 access_log /var/log/squid3/access.log squid coredump_dir /var/spool/squid3 refresh_pattern ^ftp: 1440 20% 10080 refresh_pattern ^gopher: 1440 0% 1440 refresh_pattern -i (/cgi-bin/|\?) 0 0% 0 refresh_pattern (Release|Packages(.gz)*)$ 0 20% 2880

refresh_pattern . 0 20% 4320 half_closed_clients off cache_effective_user proxy cache_effective_group proxy memory_pools off

Reinicar el servicio

IPTABLES (Herramienta de cortafuego –firewall-)

#!/bin/sh iptables -F iptables -X iptables -Z iptables -t nat -F iptables -P FORWARD DROP echo "1" > /proc/sys/net/ipv4/ip_forward iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3128 iptables -A FORWARD -p udp --dport 53 -j ACCEPT iptables -A FORWARD -p udp --sport 53 -j ACCEPT iptables -A INPUT -i lo -j ACCEPT iptables -A INPUT -i eth1 -s 192.168.2.0/24 -j ACCEPT iptables -A FORWARD -i eth0 -p tcp -s 192.168.2.1/24 --dport 80 -j ACCEPT iptables -A FORWARD -i eth0 -p tcp -s 192.168.2.1/24 --dport 443 -j ACCEPT iptables -A FORWARD -i eth0 -p tcp -s 192.168.2.1/24 --dport 53 -j ACCEPT iptables -A FORWARD -i eth0 -p udp -s 192.168.2.1/24 --dport 53 -j ACCEPT ufw disable

Crear archivo .sh con el siguiente contenido

Dar permisos de ejecución al archivo. chmod +x nombre_del_archivo.sh Ejecutar con alguna de las siguientes formas: ./nombre_del_script.sh Sh nombre_del_script.sh

SCRIPT AL ARRANCAR EL SISTEMA

Editar el archivo rc.local:

Agregar la siguiente línea

REINICIAR EL SERVIDOR

VSFTPD (VERY SECURITY FTP DEMON)

Para configurar: vi /etc/vsftpd.conf

Para instalar:

listen=YES anonymous_enable=NO local_enable=YES write_enable=YES dirmessage_enable=YES use_localtime=YES xferlog_enable=YES connect_from_port_20=YES secure_chroot_dir=/var/run/vsftpd/empty pam_service_name=vsftpd rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key

Reiniciar el servicio

LAMP (LINUX-APACHE-MYSQL-PHP-PHPMYADMIN)

DEDICADO A MI FAMILIA EN ESPECIAL A DANNA Y ALO

MUCHAS GRACIAS A LOS

ORGANIZADORES POR LAS FACILIDADES PRESTADAS

PREGUNTAS ¿?

remigio.salvador@gmail.com

@remitos vkn-side.blogpost.com

GRACIAS

Paginas que te pueden servir: http://www.javiercarrasco.es/2013/08/01/proxy-transparente-con-squid-dhcp-en-ubuntu-13-04-32-bits/ http://www.ubuntu-es.org/node/152214#.U7xBZlf4JF3 http://mundo-linux-b.blogspot.mx/2013/12/ubuntu-server-squid-proxy-server-dhcp-2.html http://lobobinario.blogspot.mx/2011/03/protegiendo-nuestra-red-con-iptables.html http://www.alvarolara.com/2013/03/20/ejecutar-un-script-al-iniciar-sesion-en-ubuntu/ http://www.cyberciti.biz/faq/ubuntu-start-stop-iptables-service/ http://ubuntulife.wordpress.com/2007/03/15/instalar-un-servidor-ssh/ http://www.ubuntu-guia.com/2013/07/recuperar-usuario-administrador.html http://ingmmurillo.blogspot.mx/2011/05/como-resetear-la-contrasena-del-usuario.html http://soportetecnicocurc.blogspot.mx/2013/03/instalar-apache-php-mysql-y-phpmyadmin.html https://www.digitalocean.com/community/tutorials/how-to-install-linux-apache-mysql-php-lamp-stack-on-ubuntu-14-04

top related