Sei sulla pagina 1di 10

Capítulo 3: Configuración de DMZ, Instalación de servidor CentOS 7 en DMZ,

Administración de CentOS 7, Configuración de Red, Hostname, yum, ssh


***********************************************************************************
**************************

1.- Configurar DMZ en Sophos


======================================================================
Nos vamos a Configurar --> RED
En la tarjeta 3 activamos la interfaz
Zona: DMZ
IP: 192.168.3.1 (100 menos que la IP de LAN)
Mascara: 24

2.- Natear todos los puertos de la IP pública hacia el sophosXG


====================================================================
Vamos a natear todos los puertos de la IP pública, excepto los puertos
22 (ssh) y 3389 (rdp)

Nos conectamos al Ubuntu principal


$> sudo su -
$> vim firewall.sh
-----------------------------------------------------------------------
#!/bin/bash
echo "borrando las reglas"
iptables -F
iptables -F -t nat

echo "poniendo politicas en ACCEPT"


iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT

echo "habilitando el forwarding de paquetes"


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

# nat de salida
echo "realizando nat fuente para dar salida a internet a red interna (wan sophos)"
iptables -t nat -A POSTROUTING -o ens18 -s 192.168.X.0/24 -j MASQUERADE

# nat de entrada
#echo "natear puertos 10443 y el 9443 para administración del sophosXG"
#iptables -t nat -A PREROUTING -i ens18 -p tcp -d 51.68.161.X -m multiport --dports
10443,9443 -j DNAT --to 192.168.X.2

echo "Nat total de puertos, excepto ssh y rdp"


iptables -t nat -A PREROUTING -i ens18 -d 51.68.161.X -j DNAT --to 192.168.X.2
iptables -I INPUT -i ens18 -p tcp -d 51.68.161.X --dport 22 -j ACCEPT
iptables -I INPUT -i ens18 -p tcp -d 51.68.161.X --dport 3389 -j ACCEPT
-----------------------------------------------------------------------------------
-
$> ./firewall.sh

3.- Instalar Servidor Web con CentOS 7 en DMZ


======================================================================
Descargar el CentOS ISO Minimal https://www.centos.org/download

3.1.- Crear VM webserver en Virtualbox


----------------------------------------------------------------------------------
Crear una nueva vm
Nombre: webserver
Tipo: Linux
Versión: Red Hat (64 bit)
Tamaño de la memoria
1024M
Disco Duro
Crear disco virtual ahora
Tipo de archivo de disco duro
VDI
Almacenamiento en Unidad de disco duro física
Reservado dinámicamente
Ubicación del Archivo y Tamaño
10.00 GB
Crear

Click en "Configuración"
Almacenamiento
Click en CD vacío
Click en ícono CD derecha
Seleccione archivo de disco óptico virtual
"CentOS7-x86_64-Minimal-1804.iso"
Abrir
Aceptar
Red
Adaptador 1
Habilitar adaptador de red
Conectado a: No conectado

3.2.- Agregar VM CentOS a GNS3


-----------------------------------------------------------------------
Abrir el GNS3
Edit ---> Prefences
- Virtualbox
VirtualBox VMs ---> bajar el scroll de la Derech
New
VM List: webserver
Finish
Apply, OK

Click en ícono de aplliance y arrastar CentOS VM al panel central


Change hostname: webserver

Conectar cable
webserver: e0 ---> switchDMZ: e1

3.3.- Instalar CentOS 7


-------------------------------------------------------------------------
Click derecho en ícono webserver ---> Start

Iniciar la instalación de CentOS con el iso del minimal


Seleccionar Install CentOS
Welcome to CentOS
Spanish ---> Español (País donde te encuentres)
Continuar
Resumen de la Instalación

KDUMP
Quitar el check "Habilitar Kdump"
Listo

DESTINO DE LA INSTALACIÓN
Otras Opciones de Almacenamiento
Check en "Voy a configurar las particiones"
Discos estandares locales
doble click en el disco (fondo azul y en check)
Listo

Si nuestro firmware se inició con BIOS o Legacy, nuestra tabla de particiones será
DOS el cual solo
soporta hasta 2 TB de disco y hay que crear particiones para el raíz /, el swap y
el /opt
Al día de hoy, comunmente las máquinas virtuales inician en BIOS.
Particionar Legacy:
Crear Nuevos puntos de Montaje
Combo: Partición estándar

Click en el ícono + abajo a la izquierda


Punto de Montaje: /
Capacidad deseada: 9G
Añadir punto de montaje

Click en el ícono + abajo a la izquierda


Punto de Montaje: swap
Capacidad deseada: 1G
Añadir punto de montaje
Listo

Si tenemos un servidor físico actual, este iniciará por defecto con UEFI, lo único
que se recomienda aquí
es deshabilitar el arranque seguro.
Particionar UEFI:
Crear Nuevos puntos de Montaje
Combo: Partición estándar

Click en el ícono + abajo a la izquierda


Punto de Montaje: /boot/efi
Capacidad deseada: 250M
Añadir punto de montaje

Click en el ícono + abajo a la izquierda


Punto de Montaje: /
Capacidad deseada: 9G
Añadir punto de montaje

Click en el ícono + abajo a la izquierda


Punto de Montaje: swap
Capacidad deseada: 1G
Añadir punto de montaje
Listo
Aceptar Cambios
</pre>

Una vez particionado el disco, seguimos con la instalación


RED NOMBRE DE EQUIPO
Click boton de abajo a la derecha "Configurar"
Ir a a la Pestaña **Ajustes IPv4**
Método: Manual
Click en **Añadir**
Dirección: 192.168.3.2
Mascara de Red: 24
Puerta de Enlace: 192.168.3.1
Servidores DNS: 8.8.8.8
Guardar

Dar click en el botón Ethernet (que se ponga azul)


Listo

Empezar Instalación

Contraseña de root
Que aparezca como robusta
Listo

Una vez que terminó click en Reiniciar

4.- Crear regla para dar salida a Internet al servidor Web


======================================================================
Ir a PROTEGER --> Cortafuegos --> Añadir Regla de Cortafuegos
Usuario/Regla de Red
Nombre de la Regla: Salida Web Server
Origen
Zonas de Origen: DMZ
Dispositivos y Redes de Origen:
Añadir Nuevo Elemento
Crear Nuevo: IP
Nombre: 192.168.3.2_Web_Server
Direccion IP: 192.168.3.2
Guardar
Destino y Servicios
Zona de Destino: WAN
Redes de Destino: Cualquiera
Servicios: Cualquiera

Identidad
Quitar check: Coincidir con usuarios conocidos

Registrar Tráfico
Registrar Tráfico de Cortafuegos

Guardar

4.1.- Crear Nuevo Grupo para servidor Web


-----------------------------------------------------------------------------------
--
Seleccionar regla "Salida Web Server", click en los 3 puntos ...
Add to group
New Group
Nombre de Grupo: Web Server
Mover
5.- Crear una regla de NAT de SSH hacia el servidor CentOS en DMZ
===================================================================================
==========
Ir a PROTEGER --> Cortafuegos --> Añadir Regla
Regla de Aplicación de Empresa
Platilla de Aplicación:
Nombre de Regla: Nat temporal SSH
Origen
Zonas de Origen:
WAN
Redes de Clientes permitidas
Cualquiera
Destino y Servicio
Host/red de destino Port2: 51.68.161.X
Servicios: Elegir en el combo "SSH"
Reenviar a:
Servidores Protegidos:
Click en "Crear Nuevo" ---> Direccion IP
Nombre: 192.168.3.2
Version: IPv4
Tipo: IP
DirecciónIP: 192.168.3.2
Guardar
Zona Protegida:
DMZ
Registro de Trafico
check en "registrar tráfico de cortafuegos"

GUARDAR

Mover al Grupo "Web Server"

6.- Borrar la regla de nat SSH en Ubuntu y Probar conexión remota por SSH o Putty
===================================================================================
======
Conectarse al Ubuntu Principal
$> sudo su -

$> vim firewall.sh


Nos conectamos al Ubuntu principal
$> sudo su -
$> vim firewall.sh
-----------------------------------------------------------------------
#!/bin/bash
echo "borrando las reglas"
iptables -F
iptables -F -t nat

echo "poniendo politicas en ACCEPT"


iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT

echo "habilitando el forwarding de paquetes"


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

# nat de salida
echo "realizando nat fuente para dar salida a internet a red interna (wan sophos)"
iptables -t nat -A POSTROUTING -o ens18 -s 192.168.X.0/24 -j MASQUERADE
# nat de entrada
#echo "natear puertos 10443 y el 9443 para administración del sophosXG"
#iptables -t nat -A PREROUTING -i ens18 -p tcp -d 51.68.161.X -m multiport --dports
10443,9443 -j DNAT --to 192.168.X.2

echo "Nat total de puertos, excepto rdp"


iptables -t nat -A PREROUTING -p tcp -i ens18 -d 51.68.161.X --dport 1:3388 -j DNAT
--to 192.168.X.2
iptables -t nat -A PREROUTING -p tcp -i ens18 -d 51.68.161.X --dport 3390:65535 -j
DNAT --to 192.168.X.2
-----------------------------------------------------------------------------------
-

$> ./firewall.sh

Ahora desde la laptop conectarse por ssh al CentOS en DMZ


En Linux
$> ssh root@51.68.161.X

En windows
abrir con putty 51.68.161.X

7.- Cambiar la forma del prompt en CentOS 7


================================================================================
$> echo "export PS1='\[\033[1;32m\]\u\[\033[1;31m\]@\[\033[1;34m\]\H:\
[\033[1;35m\]\w\[\033[1;31m\]$\[\033[0m\] '" >> /etc/bashrc
$> su -

Ver la versión de CentOS instalada


--------------------------------------------
$> uname -a
$> cat /etc/redhat-release

7.1.- Actualización de la distro e instalar utilidades


------------------------------------------------------------------------
$> yum -y update

Instalar utilitarios para CentOS minimal


$> yum -y install vim net-tools elinks wget mlocate telnet

8.- Configuracion de la Tarjeta de Red por archivos para CentOS.


================================================================================
$> vim /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
TYPE=Ethernet
BOOTPROTO=static
IPV6INIT=no
NAME=eth0
ONBOOT=yes
IPADDR=192.168.3.100
PREFIX=24
GATEWAY=192.168.3.1
DNS1=8.8.8.8
DOMAIN=aulautil.com

TYPE = tipo de interfaz (Ethernet, Bridge, Wireless)


BOOTPROTO = tipo de configuración: estática (none, static)
dinámica (dhcp)
NAME = nombre de la interfaz (ej: eno1, eth0)
IPADDR = IP primario de la tarjeta ( ej: 192.168.3.100)
PREFIX = máscara corta de la ip primaria (24)
GATEWAY = puerta de enlace de la ip primaria (ej: 192.168.3.1)
DNS1 = servidor de nombres primario (ej: 8.8.8.8)
HWADDR = Mac address (ej: 00:1E:90:BB:EA:C7)
DOMAIN = Dominio principal del host

Reiniciar todas las tarjetas la red


--------------------------------------------------
$> systemctl restart network (CentOS minimal)

$> systemctl restart NetworkManager (Modo Grafico)

$> cat /etc/resolv.conf

Reiniciar una sola tarjeta


--------------------------------------------------
Apagar la tarjeta
$> ifdown eth0

Prender la tarjeta
$> ifup eth0

Opcional (Configuracion de Proxy)


----------------------------------------------------------------------------------
$> echo 'export http_proxy="http://usuario:password@IPProxy:3128"'>> /etc/bashrc
$> echo 'export ftp_proxy=$http_proxy'>> /etc/bashrc
$> su -
$> echo $http_proxy

$> yum -y install elinks


$> echo $ftp_proxy
----------------------------------------------------------------------------------

9.- Configurando el nombre del hostname y resolución local de nombres


=============================================================================
Ver el nombre actual del equipo
$> hostnamectl
ó
$> hostname

Ver detalle completo del hostname


$> hostnamectl status

Configurar el nombre del host


----------------------------------------
$> hostnamectl set-hostname vpsX.aulautil.com

Cerrar la sesión y volver a iniciar la sesión


$> exit
$> su -
$> hostname

10.- Configurar la resolución local de nombres


=================================================================================

Ej: resolviendo la ip local, una ip de la red y un dominio ficticio con


nuestra propia ip

$> vim /etc/hosts


127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.3.X vpsX.aulautil.com vpsX
192.168.3.X www.mocosoft.com

Pruebas
---------------
$> ping vpsX (SQDN)
$> ping vpsX.aulautil.com (FQDN)
$> ping www.mocosoft.com (Dominio Ficticio)

Nota:
#########################################################
Para resolver los nombre de host a nivel de red se usa un servidor DNS
Bind ó dnsmasq

11.- YUM; Gestor de paquetes de CentOS


===================================================================================
=======================
Lista los repositorios configurados (archivos .repo)
$> ls -l /etc/yum.repos.d

configurar repositorios de YUM


$> cd /etc/yum.repos.d

Ver la configuración por defecto del repositorio de CentOS


$> vim CentOS-Base.repo
------------------------------------------------------------------
[base] ====================>>> Nombre del repositorio
name=CentOS-$releasever - Base
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
==================>>>>> Lista de los mirrors
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
gpgcheck=1 =================>>>>> Comprobar firma digital del repo
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 ===> archivo de la clave
publica de la firma digital

#released updates
[updates]
name=CentOS-$releasever - Updates
mirrorlist=http://mirrorlist.centos.org/?
release=$releasever&arch=$basearch&repo=updates
#baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

#additional packages that may be useful


[extras]
name=CentOS-$releasever - Extras
mirrorlist=http://mirrorlist.centos.org/?
release=$releasever&arch=$basearch&repo=extras
#baseurl=http://mirror.centos.org/centos/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

#additional packages that extend functionality of existing packages


[centosplus]
name=CentOS-$releasever - Plus
mirrorlist=http://mirrorlist.centos.org/?
release=$releasever&arch=$basearch&repo=centosplus
#baseurl=http://mirror.centos.org/centos/$releasever/centosplus/$basearch/
gpgcheck=1
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

Instalar un paquete desde los repositorios


$> yum -y install nmap

Buscar paquetes
$> yum search nmap

Obtener informaciòn de un paquete


$> yum info nmap

Verificar que repositorios proveen un paquete; así como sus versiones anteriores
$> yum provides openvpn

Desinstalar un paquete
$> yum remove nmap

Desinstalar un paquete, incluido archivos de configuración


$> yum erase nmap

Nota: Aveces yum se bloquea porque hay un servicio llamado yum-updatesd


o PackageKit; que busca si hay actualizaciones de paquetes y esto proceso bloquea
yum

Sale un mensaje similar a:


----------------------------------------------------------------------
Another app is currently holding the yum lock; waiting for it to exit...
The other application is: PackageKit
Memory : 44 M RSS (1.3 GB VSZ)
Started: Sun Jan 26 11:21:58 2014 - 00:10 ago
State : Sleeping, pid: 3954
------------------------------------------------------------------

Solucion: matar el proceso con el pid indicado


$> kill -9 3954

* Opciones de grupos de paquetes

Listas los grupos de paquetes


$> yum grouplist

Obtner informacion de un grupo


$> yum groupinfo Milkymist

Instalar un grupo de paquete


$> yum -y groupinstall "Eclipse"

Desinstalar un paquete, borrando archivos de configuracion


$> yum erase nmap

Actualizar un paquete
$> yum update alsa-utils

Actualizar todos los paquetes (No ejecutar)


$> yum update

12.- Repositorios Adicionales en YUM


#########################################################################
EPEL (Repositorio comunitario mantenido por Fedora y CentOS)
$> yum -y install epel-release

ELREPO (contiene drivers adicionales de video, wifi y Ethernet)


$> rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
$> rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm

NUXDESKTOP (programas adicionales para mejorar el escritorio CentOS 7)


$> yum -y install epel-release && rpm -Uvh
http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-
5.el7.nux.noarch.rpm

WEBTATIC (php en sus últimas versiones)


$> rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

Potrebbero piacerti anche