Está en la página 1de 49

Administración Avanzada Linux

Administración de Red
Ajustes de Red

• NetworkManager es un sistema dinámico de control y


configuración de la red que intenta mantener los
dispositivos de red y las conexiones activos cuando
están disponibles.

• NetworkManager consiste en un daemon, una mini


aplicación de Notificación que proporciona información
sobre el estado de la red y las herramientas de
configuración que pueden crear, editar y eliminar
conexiones e interfaces.

• Systemctl status NetworkManager


systemctl status network
Ajusted de Red
Ajustes de Red
Ajustes de Red

• /etc/hosts
resolver los nombres de host. También se puede usar
para resolver nombres de host en pequeñas redes sin
servidor DNS.
• /etc/resolv.conf
define las direcciones IP de los servidores DNS.
• /etc/sysconfig/network
especifica el enrutamiento y la información del host para
todas las interfaces de red.
• /etc/sysconfig/network-scripts/ifcfg-interfacename
proporcionar información específica de una interfaz de
red: IPADDR, BOOTPROTO,
RED: ficheros ifcfg

• Configuración de Red estática

/etc/sysconfig/network-scripts/ifcfg-eth0

• net.ifnames=0 sin renombrado - parámetro del kernel


RED: ficheros ifcfg

• Configuración de Red dinámica

/etc/sysconfig/network-scripts/ifcfg-em1

PEERDNS=no
DNS1=8.8.8.8
DNS2=8.8.8.9
RED: comandos cli

• El comando ip se puede utilizar para definir los valores


TCP/IP de una interfaz de red

• ip addr add 192.168.51.100/24 dev eth0


• ip addr add 192.168.51.101/24 dev eth0
• ip addr show dev eth0
• ip addr del 192.168.51.101/24 dev eth0
RED: comandos cli
RED: comandos nmcli

• La utilidad nmcli se utiliza tanto en scripts como en


configuraciones realizadas manualmente por el
administrador para interactuar con NetworkManager.

• nmcli c add type ethernet con-name eth0 ifname


eth0
• nmcli d
• nmcli c modify eth0 ipv4.addresses 10.0.0.30/24
• nmcli c modify eth0 ipv4.gateway 10.0.0.1
• nmcli c modify eth0 ipv4.dns 10.0.0.1
• nmcli c modify eth0 ipv4.method manual
• nmcli c down eth0; nmcli c up eth0
RED: bonding

• Bonding combina varias conexiones de red en una única


interfaz lógica.
• Puede incrementar el rendimiento y el ancho de banda
al utilizar un algoritmo de balanceo de carga.
• Puede proporcionar redundancia al trasmitir el control de
la interfaz bonding a una interfaz esclava en caso de
fallo de la maestra.
• Linux permite la creación de esta interfaz de red lógica
gracias a un modulo del kernel denominado bonding.

modprobe bonding
cat /proc/net/bonding/bond0
BONDING: ficheros ifcfg

• /etc/sysconfig/network-scripts/ifcfg-bond0

• BONDING_OPTS=“mode=0”
BONDING: ficheros ifcfg

• /etc/sysconfig/network-scripts/ifcfg-ethN
BONDING: nmcli

• Creación de la interfaz de bonding:

nmcli con add type bond con-name bond0 ifname bond0


mode

• Añadir las interfaces reales:

nmcli con add type bond-slave ifname eth0 master bond0


nmcli con add type bond-slave ifname eth1 master bond0

• Reiniciar el servicio de red:

systemctl restart NetworkManager


RED: rutas y gw por defecto

• Para definir rutas estaticas utilizamos el comando ip:

ip route add 192.168.56.0/24 via 10.0.0.1

• /etc/sysconfig/network-scripts/route-eth0

192.168.56.0/24 via 10.0.0.1


0.0.0.0/0 via 10.0.0.250
firewalld

• Firewalld es la nueva interface (daemon) que sustituye


al clásico iptables y maneja el modulo del kernel netfilter

• Principalmente mejora la seguridad permitiendo cambios


de configuración en el cortafuegos sin tener que
interrumpir las conexiones actuals.

• systemctl status firewalld


• firewall-cmd
Firewalld: zonas

• Existe un nuevo concepto de zona: todas las interfaces


de red pueden pertenecer a la misma zona o a
diferentes zonas de acuerdo a los niveles de confianza
definidos, permitiendo restringir el tráfico basandose en
la zona de origen.
• # firewall-cmd --get-zones
block dmz drop external home internal public trusted
work
• # firewall-cmd –get-default-zone
public
• # firewall-cmd --get-active-zones
public
interfaces: eth0
• # firewall-cmd –set-default-zone=work
Firewalld: zonas

• firewall-cmd --zone=block
--change-interface=eth0
• firewall-cmd --get-zone-of-interface=eth0
• firewall-cmd --zone=public --list-all
• firewall-cmd --permanent --new-zone=test
• firewall-cmd --reload
Firewalld: source

• Una zona se asocia a una interfaz de red como hemos


visto o a una subred (source)
• Cualquier paquete de red que pase por la pila de red del
kernel es asociado a una zona según:

- Si el pkt proviene de un source asociado a una zona,


pertenecera a esa zona
- Si no, ¿ el pkt proviene de una interfaz asociada a una
zona ? Si es asi, se le asocia con la zona
-En cualquier otro caso, se asocia con la zona por
defecto.
Firewalld: source

• firewall-cmd --permanent --zone=trusted


--add-source=192.168.2.0/24

• firewall-cmd --permanent --zone=trusted --list-sources

• firewall-cmd --get-active-zones
public
interfaces: eth0
trusted
sources: 192.168.2.0/24
Firewalld: servicios

• firewall-cmd --permanent --zone=internal


--add-service=http

• firewall-cmd --permanent --zone=internal


--remove-service=http

• firewall-cmd --reload

• firewall-cmd --list-services
dhcpv6-client ssh
Firewalld

• firewall-cmd --zone=internal --add-port=443/tcp

• firewall-cmd --zone=internal --list-ports

• firewall-cmd --zone=external --add-masquerade

• firewall-cmd --zone=external
--add-forward-port=port=22:proto=tcp:toport=3753

• firewall-cmd --zone=external --add-forward-


port=port=22:proto=tcp:toport=3753:toaddr=10.0.0.1
NFS

• NFS (Network File System) permite acceder a ficheros y


directorios remotos de la misma forma que se accedería
a ficheros locales
• /etc/exports
FSAEXORTAR [ NOMBREMAQ | DIRIP | METACHARS ] ( OPCIONES )
/home *.dsic.upv.es (rw)
• export –ra
cada vez que se modifique el fichero de configuración,
/etc/exports, debe de ejecutarse este comando
• yum install nfs-utils
NFS

• systemctl enable | start rpcbind


• systemctl enable | start nfs-server
• systemctl enable | start nfs-lock
• rpcinfo –p localhost
• firewall-cmd --permanent--add-service=nfs
• firewalld-cmd --reload

• En el cliente:
yum install nfs-client
mount -t nfs SRV_IP:/home /home
NFS

Opciones /etc/exports
ro Solo lectura
rw El directorio se exporta como un FS
de Lectura/Escritura
root_squash Los accesos desde el cliente con
UID=0 (root) se convierten en el
servidor en accesos con UID de un
usuario anónimo
no_root_squash los accesos de root en el cliente se
convierten en accesos de root en el
servidor.
all_squash Todos los accesos desde el cliente
(con cualquier UID) se transforman en
accesos de usuario anónimo
Usuarios y Grupos
Objetivos

• Aprender a crear, borrar y administrar usuarios y grupos


de un sistema Linux.
• Aprender a definir permisos de acceso a objetos en un
sistema Linux.
• Atributos de protección de los procesos.
• Atributos de protección de los ficheros.
• Aprender las reglas de protección básicas.
La tabla de usuarios

• /etc/passwd
Fichero que registra los usuarios de un sistema Linux.
Cada línea corresponde a un usuario y describe los
atributos del mismo.

root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
usu1:x:1002:2000:Usuario 1:/home/usu1:/bin/bash
La tabla de usuarios

Elemento Significado
Usu1 Nombre de usuario (login name)
X Contraseña cifrada
1002 Identificador del usuario (UID)
2000 Identificador de grupo primario al que
pertenece el usuario (GUID)
Usuario 1 Descripción del usuario
/home/usu1 Directorio de conexión inicial del
usuario
/bin/bash Programa interprete de órdenes (shell)
La extension de la tabla de usuarios

• /etc/shadow

usu1:$1$ZtoHwEykKW/eCLHzSUigg5KAEyxa51
:10989:0:99999:7:-1:-1:134538436

Elemento Significado
Usu1 Login name
$1$ZtoHwEykKW/eCLHzSUigg5KAEyxa51 Contraseña cifrada
:10989:0:99999:7:-1:-1:13453 Información de caducidad de
contraseñas y cuentas
La tabla de grupos

• /etc/group

proy1::65534:usu1,usu2,usu3

Elemento Significado
proy1 Nombre del grupo
Contraseña cifrada (vacía en el ejemplo). De co-
nocerla, un usuario podría cambiar su grupo
primario. Sin embargo, esta funcionalidad está en
desuso
65534 Identificador de grupo (GID)
usu1, usu2, usu3 Lista de usuarios pertenecientes al grupo
Comandos

• Useradd
• Userdel
• Usermod
• Groupadd
• Groupdel
• Groupmod
• Passwd/chpasswd
• chage
Atributos de protección de los procesos

• Identificadores del usuario propietario del proceso

En realidad, cada proceso contiene dos versiones del


identificador de usuario, la denominada versión real (rUID) y
la versión efectiva (eUID).

La versión real siempre corresponde al usuario que creó el


proceso. La versión efectiva corresponde al usuario bajo el
cual se comporta el proceso y es el utilizado en el mecanismo
de protección. Ambos identificadores suelen ser iguales,
salvo que intervenga el denominado bit SETUID en el fichero
ejecutable que está ejecutando el proceso
Atributos de protección de los procesos

• Identificadores del grupo propietario del proceso.

En este caso, el proceso también contiene una versión real


(rGID) y otra efectiva (eGID) del identificador.

La versión real corresponde al grupo primario al que


pertenece el usuario que creó el proceso. La versión efectiva
corresponde al grupo bajo el cual se comporta el proceso y
es el utilizado en el mecanismo de protección. Ambos
identificadores suelen ser iguales, salvo que intervenga el
denominado bit SETGID en el fichero ejecutable que está
ejecutando el proceso.
Atributos de protección de los procesos

• Lista de grupos suplementarios

Es la lista formada por los grupos suplementarios del usuario


que creó el proceso.

• Estos atributos son asignados al proceso en el momento


de su creación, y heredados de su proceso padre. Cada
usuario conectado a un sistema Unix posee un proceso
de atención, el cual puede ser un entorno de ventanas o
un intérprete de órdenes (shell). En cualquiera de ambos
casos, este proceso es el padre de todos los procesos
que el usuario genera.
Atributos de protección de los procesos

• Este proceso shell recibe sus atributos no por herencia,


sino en el momento en el que un usuario se acredita al
sistema mediante su nombre de usuario y contraseña
asociada. Los atributos rUID y rGID se extraen de la
tabla de usuarios /etc/passwd. La lista de grupos
suplementarios es confeccionada a partir de la tabla de
grupos /etc/group. Los atributos eUID y eGID son
asignados a los valores respectivos de rUID y rGID. Un
mandato interesante al respecto es id, el cual muestra
todos estos atibutos.
Atributos de protección de los ficheros

• OwnerUID:
Identificador del usuario propietario del fichero

• OwnerGID:
Identificador del grupo propietario del fichero

• Bits de permiso:
Un total de 12 bits que expresan las operaciones del fichero
que son permitidas en función del proceso que acceda a este
fichero.
Atributos de protección de los ficheros
Bit Significado
11 SETUID
10 SETGID
9 Sticky
8 Lectura para el propietario
7 Escritura para el propietario
6 Ejecución para el propietario
5 Lectura para el grupo
4 Escritura para el grupo
3 Ejecución para el grupo
2 Lectura para el resto de usuarios
1 Escritura para el resto de usuarios
0 Ejecución para el resto de usuarios
Atributos de protección de los ficheros

• El significado de los bits de lectura, escritura y ejecución


es diferente en función del tipo de archivo que los defina
• Para ficheros regulares, su significado es el esperable,
permiten leer, modificar y ejecutar el fichero
respectivamente
• el bit de ejecución sólo tiene sentido si el fichero es un
ejecutable o contiene un shellscript
• En un directorio, el significado de estos tres bits es el
siguiente:
Atributos de protección de los directorios

Permiso Significado
Lectura Puede listarse el contenido del directorio
Escritura Permite la creación, eliminación o renombrado de
ficheros o directorios dentro del directorio al cual se
aplica este bit
Ejecución Permite la utilización del directorio al cual se aplica
este bit para formar parte de un nombre de ruta, es
decir, puede utilizarse el directorio para nombrar un
fichero
Las reglas de protección básicas

• Si el eUID del proceso es 0 se concede el permiso


(estamos en el caso en el que el proceso pertenece al
superusuario). Si no...

• Si el eUID del proceso es igual al ownerUID del fichero,


se autoriza la operación si está permitida en el grupo de
bits 6 al 8, los que corresponden al propietario. Si no...
Las reglas de protección básicas

• Si el eGID del proceso o alguno de los grupos


suplementarios del proceso es igual al ownerGID del
fichero, se autoriza la operación si está permitida en el
grupo de bits 3 al 5, los que corresponden al grupo.

• En cualquier otro caso, se autoriza la operación si está


permitida en el grupo de bits 0 al 2, los que
corresponden al resto de usuarios.
Cambio de atributos de protección en ficheros

• Cambio en los bits de permiso


sólo el superusuario o el propietario de un fichero
pueden modificar sus bits de permiso.

• Cambio de propietario
El cambio de propietario de un fichero puede realizarlo
tan sólo el superusuario.

• Cambio de grupo propietario


lo realiza el superusuario, o bien, lo realiza el propietario
del fichero, siempre que el nuevo ownerGID del fichero
sea igual a alguno de los grupos de dicho usuario.
SETUID - SETGID

• Estos bits se emplean para permitir que un programa se


ejecute bajo los privilegios de un usuario distinto al que
lanza la ejecución del programa.
• Si el fichero ejecutable tiene el bit SETUID activo, el
eUID del proceso que ejecuta el fichero es igual al
ownerUID del fichero.
• Si el fichero ejecutable tiene el bit SETGID activo, el
eGID del proceso que ejecuta el fichero es igual al
ownerGID del fichero.
SETGID directorio

• Este bit facilita el trabajo en grupo cuando varios


usuarios deben acceder a una colección común de
ficheros y directorios.
• si un directorio, D, tiene el bit SETGID activo, entonces:

- si se crea un fichero dentro del directorio D, el


ownerGID del nuevo fichero es hecho igual al ownerGID
del directorio D.
- si se crea un directorio dentro de D, el ownerGID del
nuevo directorio es hecho igual al ownerGID del
directorio D y su bit SETGID es activado.
Comandos

• chmod 755 f1 (ejecucion para todos)


• chmod 4755 f2 (setuid activo)
• chmod 2755 d1 (setgid activo en directorio)
• chown
• chgrp

También podría gustarte