Sanchezmolinaharveyrodrigo Fortificacion Entorno Linux1

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 20

Asignatura Datos del alumno Fec

ha
Apellidos: ORTEGA CHECA
Seguridad en
10/06/2021
Sistemas
Nombre: JEFFERSON SANTIAGO
Operativos

MÁSTER UNIVERSITARIO EN SEGURIDAD INFORMÁTICA

SEGURIDAD EN SISTEMAS OPERATIVOS


Fortificación de un Sistemas Linux

Integrantes:

▸ Ortega Checa, Jefferson


jeffersonsantia.ortega035@comunidadunir.net

2021 – 2022

TEMA 2 – Actividades
Asignatura Datos del alumno Fec
ha
Apellidos: ORTEGA CHECA
Seguridad en
10/06/2021
Sistemas
Nombre: JEFFERSON SANTIAGO
Operativos

CONTENIDO

1. ACTIVIDAD.....................................................................................................3
2. CONFIGURACION MAQUINA VIRTUAL.......................................................3
3. CONFIGURACION CARPETA /home............................................................4
4. CONFIGURACION DISCO DURO...................................................................5
5. CREACION DE USUARIO..............................................................................5
6. CONFIGURACION GRUB...............................................................................6
7. SECURIZACION SUDO/SU.........................................................................10
8. INSTALACION OPENSSH SERVER.............................................................12
9. CONFIGURACION PUERTO SSH( 2 2 ).......................................................13
10. INSTALACION SERVIDOR PROXY(SQUID) ..............................................14
1 1. REGLA DE RESTRICION A CORREOS.......................................................14
1 2. REGLA DE RESTRICCION DE HORAS......................................................16
1 3. CONFIGURACION LOG DE SQUID............................................................17
1 4. CONFIGURACION FIREFOX.....................................................................18
1 5. CONCLUSIONES ........................................................................................19

TEMA 2 – Actividades
1. Actividades: Fortificación de un sistema Linux

1.1 Descripción

La misma empresa de la actividad anterior nos ha contactado nuevamente para


solicitarnos la instalación y configuración segura de una máquina virtual basada en
VirtualBox y cuyo sistema operativo sea Ubuntu.

Los requisitos que nos ha establecido la empresa para la instalación y configuración


de la máquina son:

2. La máquina virtual debe tener 4GB de RAM, 10GB de disco duro y una interfaz de
red en modo NAT.

Ejecutamos VirtualBox:

 Haz clic en el botón “Nueva”


 En la ventana que nos aparece llenamos los campos Nombre (nombre
que se le piensa dar a esa máquina virtual que se va a instalar o montar
ej.: windows7 o Ubuntu), Tipo (seleccione el tipo de sistema operativo a
instalar), Versión (versión del sistema a 64/32bits) y damos clic en
Siguiente.
 En la ventana que nos aparece seleccionamos el tamaño de memoria
RAM para nuestro caso 4GB y damos clic en Siguiente.
 Seleccionamos el tamaño de disco duro 10GB y clic en Crear.
 Siguiente, Siguiente, Siguiente y Crear.
 Para la configuración de la interfaz de red NAT, nos vamos a configuración
de la máquina que acabamos de crear para nuestro ejemplo Ubuntu y damos
clic Aceptar.

3. El espacio de usuario, /home, debe estar en un volumen lógico separado.


 Una vez inicializada y preparada la máquina virtual, en la ventana de
bienvenida seleccionamos “Español” damos clic en “Instalar Ubuntu”.

En la ventana de Tipo de Instalación creamos las tablas de particiones de disco


seleccionamos “Más opciones” y luego damos clic “Nuevas tabla de particiones” y clic en
“Continuar”.

Lo primero que se debe de configurar es la partición boot (arranque del sistema


operativo Linux), damos clic derecho en “espacio libre” y luego en “añadir”, luego
seleccionamos el tamaño de la partición, el tipo de la partición “Primaria”, el sistema de
fichero “ext4” y punto de montaje “/boot”. Nota: (Este paso se repite para la creación de
todas las demás particiones swap, home, etc.) Para nuestro caso nos solicita la
configuración de la partición /home, seleccionamos el tamaño, el tipo de partición es
“Lógica”, sistema de fichero “ext4” y punto de montaje “/home”.
4. Disc0 disco duro debe estar cifrado con la clave: disc0Unir


En la ventana que nos aparece “Tipo de instalación” activamos las casillas “Cifrar
Disco” y “Utilizar LVM” y damos clic en “Instalar Ahora”
 En la siguiente ventana colocamos la clave de cifrado para nuestro caso será
disc0Unir y damos clic en “Instalar Ahora”.
 Damos “Continuar” a la advertencia que nos sale, después damos clic en
“Instalar ahora”.

5. El usuario creado durante la instalación será unir con una clave SSSO0Unir
 En la ventana “¿Quién es usted?” llenamos los campos de identificación con
los datos que nos proporciona la actividad y damos clic en “Continuar”.
 Para ingresar al sistema ingresamos la clave de cifrado de disco duro y damos
Enter.

 Se ingresa con usuarios y contraseña con los datos de la actividad (Usuario:


Unir y Contraseña: SSSOoUnir

6. El grub debe estar protegido. El modo de proteger el Grub será mediante una
contraseña o password. Si aplicamos los pasos detallados en este apartado
conseguiremos los siguientes resultados:
 Bloquear el acceso a la línea de comandos del Grub.
 Bloquear la posibilidad de edición de las entradas del Grub.
 Bloquear la posibilidad de ejecución de todas las entradas del Grub.

Para obtener los resultados que acabamos de mencionar, tenemos que realizar los
siguientes pasos:

Paso No.1: Hacer una copia de seguridad del archivo de configuración del grub
antes de empezar a modificar, para realizar esta actividad abrimos la terminal en
ubuntu y ejecutamos los siguientes comandos:
sudo cp /boot/grub/grub.cfg ~/grub.cfg.old
sudo cp /etc/grub.d/00_header ~/00_header.old sudo cp /etc/grub.d/10_linux
~/10_linux.old
Sudo cp /etc/grub.d/30_os-prober ~/30_os-prober.old

Estos comandos generarán una copia de seguridad de los


archivos grub.cfg, 00_header, 10_linux y 30_os_prober en nuestra partición home.

Paso No.2: Hay que definir las cuentas de usuarios que podrán modificar el GRUB.
Para definir los usuarios y las contraseñas de los usuarios, que podrán usar la línea
de comandos del grub, y ejecutar y editar las entradas del grub, tenemos que abrir
una terminal y ejecutar el siguiente comando: sudo nano /etc/grub.d/00_header.

Una vez abierto el editor de textos nano, vamos al final del archivo y tenemos que
añadir la lista de usuarios y de contraseñas añadiendo el siguiente texto:

cat << EOF


set superusers="root,cesar" password root 1212
password cesar 1515
EOF

Como se puede ver en este texto hemos definido 2 usuarios. El usuario root y
el usuario cesar. Cada uno de estos usuarios tendrá respectivamente las
contraseñas 1212 y 1515. Las partes en color Azul son las que se tienen que adaptar
en función de los usuarios y contraseñas que quieren crear y establecer y una
vez definidos los usuarios y las contraseñas le damos guardar los cambios.

Paso No.3: Cifrar las contraseñas de los usuarios. Las contraseñas de los usuarios
definidas en el paso 2 están disponible en texto plano en el
archivo /etc/grub.d/00_header. Obviamente esto no es lo más aconsejable
para proteger nuestro equipo. Para solucionar este inconveniente vamos a generar
un hash para ocultar las contraseñas que acabamos de crear. Para ello abrimos una
terminal y tecleamos el siguiendo comando: sudo grub-mkpasswd-pbkdf2.

Seguidamente nos saldrá un mensaje en pantalla que nos dirá que introducir la
contraseña que queremos ocultar. En mi caso como quiero ocultar la contraseña del
usuario cesar teclearé:

1515

Seguidamente, al presionar Enter nos volverá a preguntar de nuevo la contraseña.


Por lo tanto vuelvo a teclear:
1515

Después de introducir la contraseña por segunda vez y presionar Enter, obtendremos


el hash de la contraseña del usuario cesar. En mi caso el hash es el siguiente:

grub.pbkdf2.sha512.10000.42E7FEA05CAAD8D1A3F6233E2FFF098AE3FEDB4A
4
5FE6712E06C68999A907312D86FCE0AFE158E5EEAE5EF4B15B1D889F2A4D004
ED2CD206675E1DC1A2847849.53309C627E6DAC144D54F7C159E4EF4DECF7331
9819EAC4CBF993B5E80FB5B2417C993EAB30F8D0C50B02BC1A8470529780CF6
E7776E6A285A5331CB18AFB93A

Repetimos el mismo paso para el usuario root, pero usando la contraseña 1234,
y obtenemos el siguiente hash:

grub.pbkdf2.sha512.10000.4225DF7454926171D5C983990D8ACAB1F274695CA14
06D10C228803A83920D7B6FC7D6C9B6CB4CA27107430D13EBAB783D57CFA713
4A1A97C5577AA346BF0564.383C1F3C341668D08F02B61CD7069C040D34B5762
07AC668D3A859329962FA02B69F39E55FD540313FC1B44704828019648E7C835
9BBDEBBFB4A73C62895F29B

Ahora que hemos obtenido los hash, tan solo tenemos que reemplazar la contraseña
que creamos en el paso 2 por el hash. Para ello abrimos una terminal y ejecutamos el
siguiente comando: sudo nano /etc/grub.d/o0_header
Localizamos las siguientes líneas en el final del archivo:

cat << EOF


set superusers="root,cesar" password root 1212 password cesar 1515
EOF

Una vez localizadas las reemplazamos las contraseñas por los hash del siguiente
modo:

cat << EOF


set superusers="root,cesar"
password_pbkdf2 root
grub.pbkdf2.sha512.10000.4225DF7454926171D5C983990D8ACAB1F274695CA14
06D10C228803A83920D7B6FC7D6C9B6CB4CA27107430D13EBAB783D57CFA713
4A1A97C5577AA346BF0564.383C1F3C341668D08F02B61CD7069C040D34B5762
07AC668D3A859329962FA02B69F39E55FD540313FC1B44704828019648E7C835
9BBDEBBFB4A73C62895F29B
password_pbkdf2 cesar
grub.pbkdf2.sha512.10000.42E7FEA05CAAD8D1A3F6233E2FFF098AE3FEDB4A4
5FE6712E06C68999A907312D86FCE0AFE158E5EEAE5EF4B15B1D889F2A4D004
ED2CD206675E1DC1A2847849.53309C627E6DAC144D54F7C159E4EF4DECF7331
9819EAC4CBF993B5E80FB5B2417C993EAB30F8D0C50B02BC1A8470529780CF6
E7776E6A285A5331CB18AFB93A EOF

Después de esto tan solo tenemos que guardar los cambios realizados, la siguiente
captura de pantalla en la que podrán ver el texto introducido en el
archivo/etc/grub.d/00_header:

Paso No.4: Finalmente se debe Actualizar la configuración del Grub. Para ello en
una terminal ejecutamos el siguiente comando: sudo update-grub2.
7. Securizar los comandos su y sudo

Configuramos sudo para que siempre solicite o pida la contraseña cuando se ejecuta
una aplicación como root en Ubuntu, usando sudo no te pedirá contraseña en
los primeros 15 min, y esto hace que sea una brecha de inseguridad, vamos a
cambiar y ha securizar para que siempre pida la contraseña cuando una aplicación
se ejecute como root:

 Abrir el archivo /etc/sudoers en la terminal de ubuntu y modificar el archivo


agregando el valor de cero en la línea donde dice defaults
timestamp_timeout=0, y guardamos el archivo con esta modificación.

 Abrimos la terminal y probamos los cambios, ejecutamos el comando $ sudo


apt update y nos pide la contraseña.
 Limpiamos pantalla “clear” y ejecutamos el siguiente comando $ sudo apt
upgrade para verificar la securizacion creada anteriormente, por lo cual nos
deberá solicitar nuevamente contraseña.
Adicionalmente para limitar el acceso al comando “sudo” y “su”, se debe realizar la
creación de dos grupos “wheel” y “admin” y añadimos los usuarios a los que se desea
habilitar.

 Pasos para la creación del grupo “wheel” y “admin” utilizamos el siguiente


comando en la terminal:
# addgroup wheel
# addgroup admin

 Añadir el usuario que queremos que pueda ejecutar el comando su al grupo


recién creado con el siguiente comando:
# usermod -a -G admin <nombre_de_usuario>

 Verificar que en el fichero /etc/pam.d/su aparece la siguiente línea:


auth required pam_wheel.so

Para limitar el uso de sudo hay que realizar los siguientes pasos:
 Logarnos como root o utilizar el comando su.
 Probar si el comando sudo está instalado mediante la orden sudo –V que
comprueba la versión. Si no nos muestra la versión del comando, tendremos
que instalarlo.
 Visualizar la lista los grupos que existen en el sistema:
# vi /etc/group
 Todos los usuarios que vayan a usar el comando sudo tendrán que estar en el
grupo admin. Crear el grupo admin si no está creado:
# Addgroup admin
 Para mostrar los grupos a los que pertenece un usuario:
# groups <nombre_de_usuario>
 Para añadir un usuario al grupo admin:
# usermod -a -G admin <nombre_de_usuario>
 Se ha de modificar el fichero /etc/sudoers. Para modificarlo usaremos el
comando:
# visudo
 Añadiremos la línea:
%admin ALL= (ALL) ALL
 Guardaremos los cambios.

8. Se debe tener instalado OpenSSH server


 Primero verificamos que ya tenemos instalado y actualizado todos
nuestros paquetes del sistema ubuntu mediante los comando: $ sudo apt
update y apt upgrade con cuenta administrador.

 Una vez terminado de actualizar, procedemos a instalar el OpenSSH,


mediante el siguiente comando: $ sudo apt install openssh-server y
digitamos la contraseña que nos pide y damos enter, y esperamos que
termine la instalación del servicio
 Una vez terminada la instalacion verificamos que quedo instalado, realizando
un prueba desde la terminal utilizando el comando $ sudo netstat –ltup ó –
ltupn para mirar si podemos escuchar por un puerto “22”

9. Configurar IPTables para que solamente acepte conexiones a OpenSSH a


través del puerto 22.

 Para ello abrimos una terminal en ubuntu, ingresamos con usuario con
privilegios y ejecutamos el siguiendo comando:
#iptables -L

 Para solo permitir conexiones al Puerto SSH(22), ejecutamos los


siguientes comando:
#iptables –A INPUT –p tcp - -dport 22 –m state –state NEW –j ACCEPT
#iptables –A OUTPUT –p tcp - -dport 22 –j DROP
#iptables –A FORWARD –p tcp - -dport 22 –j DROP
10. Por último, se nos solicita montar un servidor proxy Squid con las siguientes
características:

Instalación servidor proxy Squid:

a. Desde la terminal ejecutamos el siguiente comando para instalar y


montar el servidor proxy Squid: $ sudo apt install Squid

Una vez instalado el servicio lo que procedemos a haces es hacer un reset del mismo
para comprobar su correcta instalación.

11. Evitar que los usuarios naveguen por sus correos personales de gmail.com,
hotmail.com, yahoo.com.

 Para este punto se debe de editar el archivo squid.conf que se encuentra en


/etc/squid/ con los siguientes comandos:
Se verifica el puerto por el cual se va a realizar la conexión del proxy, por defecto se
realiza la conexión por el puerto 3128.

En el archivo squid.conf abierto con el editor ya sea nano o geany de ubuntu, vamos a
añadir en los apartado de reglas (línea 992 y 1196) las reglas creadas:

http_acces allow lan


acl blocksite1 dstdomain yahoo.com
acl blocksite2 dstdomain hotmail.com
acl blocksite3 dstdomain gmail.com
http_access deny blocksite1
http_access deny blocksite2
http_access deny blocksite3

Se definen todas las acl que se desea no puedan tener acceso de navegar, en nuestro caso
serán los sitios web de correos electrónicos.
Una vez creada la regla se procede a guardar y actualizar el servicio de squid con el comando: $sudo
/etc/init.d/squid restart

12. Restringir que no se pueda navegar ningún día de la semana entre las 8 y las 10 de la
mañana.

Se realiza todos los procedimientos descrito anteriormente para crear una regla o
restricción, abrimos el archivo de configuración /etc/squid/squid.conf ya sea con el
editor nano o geany de ubuntu creamos la regla para restringir la navegación en el
horario de 8 y 10 de la mañana a los trabajadores:

acl localnet src 192.168.20.0/24


acl matutino time MTWHF 08:00-10:00
http_access allow matutino localnet

 La primer línea de comando determina la red a la cual se va a aplicar la regla


 La segunda línea de comando determina el horario en el cual se va a bloquear
el servicio de navegación
 La tercera línea de comando especificamos la acción que vamos a realizar,
pasando como parámetros a que origen lo vamos a aplicar y en qué tiempos
vamos a aplicarlo.
Realizado estas modificaciones guardamos y reiniciamos el servicio de squid y con
esta configuración es como se restringe en que horarios se puede navegar.

13. Que los logs se almacenen en un fichero que se llame mensajes.log

Los logs del sistema se guardan en el fichero /var/log/messages, pero en este caso
vamos a configurar un nuevo fichero para que almacene logs.

Lo primero que debemos hacer es configurar el archivo /etc/syslog.conf, que se trata de


un archivo de configuración en el que se indica el modo en que los mensajes de los
sistemas son bitacorizados a través de la utilidad syslogd que se instala y se configura
por defecto en todos los sistemas Linux. Debemos añadir al final de este fichero la
siguiente sentencia:

kern.warning /var/log/mensajes.log

Con esto indicamos que se almacenen los mensajes provienen del kernel con prioridad
4 o superior ('warning' es el nivel de prioridad 4) en el archivo
/var/log/mensajes.log y se ignora el resto de prioridad inferior (debug, info y notice
que son del 3 hacía abajo) generalmente irrelevantes, guardamos el fichero y
reiniciamos el servicio:

/etc/init.d/sysklogd restart
Debemos añadir que los mensajes del sistema también seguirán guardándose
en /var/log/messages y en otros ficheros que se encuentren definidos en
/etc/syslog.conf.

14. Instalar y configurar el navegador Firefox para usar el servidor Squid configurado y verificar que se
aplican correctamente las restricciones.

 Ingresamos a Mozilla Firefox, damos clic abrir


enmenú, seleccionamos
preferencias, en la siguiente ventana buscamos la configuración de la
red

 En las propiedades de configuración de acceso proxy e internet seleccionamos la


opción “configuración manual del proxy” ingresamos la dirección de nuestro
servidor y el puerto de conexión, recordemos que el puerto que configuramos es
el 3128, damos clic en el botón aceptar y verificamos que ya podamos navegar.

 Se realiza la prueba de conectividad y de navegación del servicio proxy, por lo


cual ingresamos a una página de búsqueda como Google y se verifica que cargue
correctamente.
15. CONCLUSIONES

 Aprendimos sobre los servicios y funcionalidad de un servidor proxy


(SQUID), lo cual no permite centralizar el tráfico de una red local hacia el
exterior (Internet). Además de restringir el acceso a contenidos de sitios y
páginas web, el establecimiento control y horarios de trabajo para la
navegación que se realiza a través de él, una herramienta muy eficiente y
eficaz para cualquier empresa.

 Concluimos que Linux más que un sistema operativo, es una


herramienta poderosa el día de hoy y por eso su uso en servidores de
internet a nivel mundial va en aumento y ha resultado ser competente
con Microsoft Windows; por esto mismo grandes empresas y compañías
han adoptado este sistema operativo (Linux) entre las que están Apple
que adoptó el kernel como base de su sistema operativo en sus productos
Mac

También podría gustarte