jueves, 25 de febrero de 2021

Subnetear IPv4, determinar el rango de subred al que pertenece una IP

 Enter the valid host range for the network that the ip address 10.11.169.130 255.255.248.0 is a part of: ?

Resolución:

Paso 1: escribimos la máscara de subred en binario para obtener la parte host y utilizar la fórmula 2^n, donde n es el número de host.

255.255.11111000.0

Solamente se escribe en binario el tercer octeto por comodidad, vemos que el número de ceros son 3, entonces n=3.

Paso 2: miramos el salto

2^3=8

Paso 3: aproximamos el tercer octeto para encontrar la ip de subred

10.11.0.0, 10.11.8.0, 10.11.16.0, ... 10.11.168.0, ahí esta esa ip que nos plantean y la siguiente subred es 10.11.176.0

Paso 4: encontramos el rango el cual es:
Primera ip válida es una ip más que la ip de subred, entonces 10.11.168.1

La ip de broadcast que pertenece a la subred que nos interesa es 10.11.175.255, una ip en host menos es la última ip válida 10.11.175.254

Nota: el número de host se calcula tomando todos los ceros del tercer octeto y el cuarto de la máscara de subred.

2^11=2048, donde se incluye a la ip de red y de broadcast, tenemos que restar 2 para obtener las ips utilizables, 2046.

miércoles, 17 de febrero de 2021

Subnetear paso a paso IPv4, determinar los hosts válidos en un segmento de subred dado

 Enter the last valid host on the network 192.168.206.84/30:

Solución:
192.168.206.01010100
255.255.255.11111100

128 64 32 16 8 2 1

Fórmula: 2^n, donde n es el número de hosts (en negrita de la máscara de subred)

Primera forma
Miramos la máscara de subred /30, entonces hay 2^2=4 hosts y el salto de subred en subred es de 4 en 4 y se observa que va asi, 0,2,4,8,10,12,14,16,18,20...80,84; nos damos cuenta que 84 es la IP de subred y la IP de broadcast es 87, porque la otra subred es 88, por lo tanto una IP menos que la IP de broadcast es 86 y esa es la respuesta: 192.168.206.86.

Segunda forma
Ponemos en binario la parte que nos interesa
192.168.206.01010100
255.255.255.11111100

Para la IP de subred cambiamos todo cero de host a 0, enonces queda
192.168.206.01010100, que es equivalente a 192.168.206.84
Para la IP de broadcast cambiamos en la IP todo cero de host a 1
192.168.206.01010111, que es equivalente a 192.168.206.87, entonces la última IP válida es una IP menos que la IP de Broadcast, 192.168.206.86

Tercera forma
Realizando la operación and
192.168.206.01010100
255.255.255.11111100
--------------------
192.168.206.84 --> IP de subred
El salto es 4 para esa subred
192.168.206.87 es la IP de broadcast, entonces una IP menos es la última IP válida, 192.168.206.86

192.168.206.88 es la siguiente subred

Nota: en mi canal de youtube tengo el video explicado paso a paso Aquí

domingo, 7 de febrero de 2021

Habilitar telnet en RHEL

 Como sabemos telnet es un protocolo no seguro, donde al realizar la conexión desde una terminal y autenticarse los datos viajan en texto plano, no se cifra. En el presente tutorial nosotros habilitaremos porque nos vamos a conectar exclusivamente desde nuestra red interna, (zone=internal), también de paso aprendemos a añadir telnet a la zona interna y con firewallD podemos restringir solamente conexiones para nuestros segmentos de subred internos.

Telnet no se añade por defecto en una instalación limpia en derivados RHEL, entonces necesitamos agregar el equipamiento lógico.

Paso 1: instalamos el servicio.

#yum install telnet-server telnet

Paso 2: nos damos cuenta que no es un típico servicio que termina en service al consultar con systemctl, consultamos los sockets

#systemctl list-unit-files --type socket --all

observas que está habilitado o dehabilitado

Puedes consultar los servicios con el siguiente comando

#systemctl list-units --type service --all

Solamente servicios activos con

#systemctl list-units --type service

Paso 3: procedemos a iniciar en tiempo de inicio e iniciamos el socket

#systemctl enable telnet.socket

#systemctl start telnet.socket

#systemctl status telnet.socket

Paso 4: agregamos el socket a nuestros segmentos internos, sino hacemos esto con firewallD no se podrá conectar de la terminal interna al server.

#firewall-cmd --add-service=telnet --zone=internal --permanent

Paso 5: con un cliente como podría ser putty podemos conectarnos al puerto 23, que es el número por defecto para telnet.

Servidor DHCP en Linux (CentOS, Fedora, Springdale Linux, Scientific Linux, Oracle Linux, AlmaLinux, RockyLinux)

 Nuestro escenario:


Nosotros tenemos dos redes internas clase C como son 192.168.2.0/24 y 192.168.3.0/24; nuestra red de cara al router es 192.168.1.0/24 (interfaz externa), con puerta de enlace 192.168.1.1.

Nombres que adoptan nuestras interfaces en Fedora: para la externa es enp0s3, para las redes internas son enp0s8, enp0s9

Paso 1: teniendo nuestro sistema operativo instalado y configurado (en mi canal de youtube tengo videos de cómo instalar y configurar las interfaces con ipv4) en sus interfaces de red procedemos a agregar el equipamiento lógico, el paquete binario.

#yum install dhcp

Paso 2: las interfaces enp0s8 y enp0s9 serán donde el protocolo va a funcionar, por defecto no necesita especificar qué interfaces proporcionan dicho servicio en los clones de rhel desde la versión 7 para adelante.

El archivo principal a utilizar está en la ruta /etc/dhcp/dhcpd.conf, por defecto el archivo viene sin ejemlo, entonces debemos copiar el ejemplo que nos "invita" a usar ubicado en la ruta /usr/share/doc/dhcp*/dhcpd.conf

#cp /usr/share/doc/dhcp*/dhcpd.conf /etc/dhcp/dhcpd.conf

Paso 3: modificamos el archivo según nuestro escenario y así quedaría nuestro archivo.

#vi /etc/dhcp/dhcpd.conf

si se desea dar una Ip estática a una terminal específica se tiene que anotar su dirección MAC y asignarle una ipv4, claro su nombre de la terminal también se escribe.


Paso 4: iniciamos el servicio en arranque e iniciamos el servicio.

#systemctl enable dhcpd.service

#systemctl start dhcpd.service

Sino muestra ningún error entonces todo el archivo está bien configurado, puedes verificar con el comando el estado del servicio.

#systemctl status dhcpd

Por defecto en nuestro escenario no es necesario agregar el servicio a firewalld, en los segmentos o zona interna ya recibe los parámetros, recuerden que que el servidor es un enrutador y puerta de enlace para las redes internas.

Puedes mirar las ips asignadas de manera automática a las terminales en los segmentos de red en el archivo.

/var/lib/dhcpd/dhcpd.leases

Es una configuración básica, en el archivo example hay más escenarios y parámetros que se podrían utilizar, restricciones y otros.

viernes, 5 de febrero de 2021

Router doméstico con Fedora server 33 utilizando FirewallD

 En otra entrada anterior hemos realizado un router y un gateway con RHEL y sus clones binarios, hemos anotado los pasos. En esta entrada les presento los pasos que son muy similares, pero para Fedora 33 server, se actualiza los pasos y se indica algunos alcances más, espero que te guste y lo puedas poner en práctica.

Nota: tal vez te preguntes ¿y para que me sirve un enrutador? La respuesta es para salir a otras redes como podría ser internet, ¿te suena algo como Mikrotik? pues si eso puedes hacer, cuando configurabas un RouterBoard en firewall ibas a NAT y en action elegías MASQUERADE, pues eso mismo aquí realizas, pero no necesitas comprar un Router Board, sino con una PC, la imagen iso de Fedora Server puedes realizar dicha tarea y muchos otros servicios puedes añadir.

Nuestro escenario:

 Nosotros tenemos dos redes internas clase C como son 192.168.2.0/24 y 192.168.3.0/24; nuestra red de cara al router es 192.168.1.0/24, con puerta de enlace 192.168.1.1.

Nombres que adoptan nuestras interfaces en Fedora: para la externa es enp0s3, para las redes internas son enp0s8, enp0s9

Paso 1: descargar Fedora server 33 desde su sitio web principal.

Para arquitectura x86_64, aquí

Paso 2: instalar el sistema operativo.

Paso 3: necesitas utilizar a firewalld con su herramienta en cli firewall-cmd

#firewall-cmd --list-all

Con el comando de arriba verificas la zona por defecto en la que trabaja las interfaces, nosotros debemos cambiar a nuestro escenario específico.

Paso 4: cambiamos la interfaz de cara a internet enp0s3 a external (esta zona ya está enmascarada)

#firewall-cmd --list-all --zone=external

Con ese comando miras que ya esta habilitado la opción masquerade y también recordar que esa zona es para realizar enrutador, así dice en la documentación de firewalld.

#firewall-cmd --change-interface=enp0s3 --zone=external --permanent

El comando de arriba es explícito y se agrega permanent para hacer los cambios permanentes.

Paso 5: cambiamos las otras interfaces a la zona interna.

#firewall-cmd --change-interface=enp0s8 --zone=internal --permanent

#firewall-cmd --change-interface=enp0s9 --zone=internal --permanent

 Paso 6: cambiamos la zona default a internal (por defecto esta en public)

#firewall-cmd --set-default-zone=internal

El comando de arriba cambia la zona por defecto y no es necesario la opción permanent.

Eso es todo lo que se tiene que realizar, se guardaran los cambios y ya es un enrutador, puedes probar con clientes en los segmentos de red internos, ya pueden salir a otras redes usando como puerta de enlace a las interfaces internas de Fedora.

Extensiones php en FreeBSD 14 para PhpSysinfo, PhpMyAdmin y Simple Machines Forum

 En FreeBSD 14 ocurre algo especial, por defecto no se activa las extensiones PHP para los softwares como PhpSysinfo, PhpMyAdmin ySimple mac...