Descargar la presentación
La descarga está en progreso. Por favor, espere
Publicada porFrancisco José Santos Arroyo Modificado hace 8 años
1
Redes en gnuLinex Configuración de servicios Antonio Durán
2
Modelo cliente-servidor ● Modelo básico para el funcionamiento de Internet ● Un ordenador actúa como cliente y accede a los servicios proporcionados por otro ordenador, denominado servidor. – El servidor ofrece servicios. Ej: servidor web – El cliente accede a esos servicios. Ej: navegador web.
3
Modelo cliente-servidor ● La distinción entre cliente y servidor no siempre es tan clara – Red Emule de intercambio de archivos ● Todos los usuarios son clientes, porque se conectan para descargar archivos ● Todos los usuarios son servidores, ya que otros usuarios se conectan a ellos para descargar archivos ● Al mismo tiempo, un ordenador funciona a la vez como cliente y servidor
4
Configuración de servicios ● Dos tipos de servicios de red: – Stand alone ● Funcionan independientemente como cualquier otro programa ● Se inician al arrancar el sistema o cuando lo hagamos manualmente – Gestionados por inetd ● No están siempre funcionando ● El demonio inetd los “despierta” cuando alguien quiere acceder a ellos ● Configuración: /etc/inetd.conf
5
Configuración de servicios ● Servicios Stand alone – Se inician al arrancar el sistema o cuando lo hagamos manualmente ● Scripts para lanzar los servicios en /etc/init.d – /etc/init.d/ssh (start|stop|restart) ● Servicios lanzados automáticamente en el arranque en /etc/rc*.d/ – Cada número representa un nivel de ejecución ● Arranque gráfico = Nivel 5 -> /etc/rc5.d/ – Contienen enlaces a los scripts de /etc/init.d/
6
Configuración de servicios ● Fichero /etc/inetd.conf – Una linea por servicio. Formato: ● Nombre TipoSocket Protocolo wait/nowait usuario programa args – Servicios internos atendidos por el propio inetd: ● echo dgram udp wait root internal – Servicios atendidos por programas externos: ● talk dgram udp wait nobody /usr/sbin/in.talkd in.talkd
7
Configuración de servicios ● Fichero /etc/inetd.conf – TCP Wrappers: ● netbios-ssn stream tcp nowait root /usr/sbin/tcpd /usr/sbin/smbd ● TCP Wrappers provee de un sistema de seguridad para controlar el acceso a los servicios manejados por inetd, pudiendo indicar desde que direcciones se autorizan las conexiones. – Está en desuso desde la llegada de los cortafuegos
8
Configuración de servicios ● Configuración TCP wrappers: – Fichero /etc/hosts.allow ● Acceso permitido si se encuentra la entrada – ALL: 172.21.232.2, 172.21.232.3 – SSH: 172.19.232.7 – WWW: ALL – Fichero /etc/hosts.deny ● Acceso denegado si se encuentra la entrada – ALL: ALL – Si la entrada no se encuentra, se permite.
9
Configuración de servicios ● Otra forma de restringir accesos: iptables – Diferente de tcp wrappers: ● Funciona a nivel IP, por lo que también puede filtrar ICMP y otros protocolos. ● Deniega las conexiones antes de que estas lleguen a producirse: los wrappers las aceptan, y, a continuación, las cierran si no se aceptan. ● Pueden especificarse reglas mucho más elaboradas: incluir nombres de máquina, comodines, etc. ● Lo veremos más adelante
10
Configuración de servicios ● Diagnóstico – netstat ● Lista las conexiones actuales de la máquina y los servicios que tiene escuchando. También muestra información sobre sockets Unix (funcionamiento interno, no relacionados con IP). – Listar todas los sockets conectados: ● $netstat – Listar sólo los sockets TCP/IP conectados: ● $netstat --inet – Incluir los puertos en los que hay demonios escuchando: ● $netstat –inet -a
11
Configuración de servicios ● Diagnóstico – netstat – No hacer resolución de nombres: ● $netstat -n – Mostrar los procesos a los que pertenece cada socket. Debe ejecutarse como superusuario. ● #netstat -p – Mostrar sólo los sockets que escuchan: ● $netstat -l
12
Práctica ● Activación de un servicio deshabilitado en inetd.conf – Quitar los comentarios de las líneas de echo – Reiniciar el servicio inetd – Comprobar que se ha activado el servicio ● $netstat –inet -l ● $telnet localhost echo
13
Acceso remoto ● Necesidad de acceso a máquinas remotas: – Objetivo: No usar el servidor como estación de trabajo. – Antes: telnet. Sesión interactiva de linea de comandos con un sistema Unix. Principal problema: uso de claves en texto plano. – Ahora: ssh. Mismo concepto, pero la comunicación se cifra para preservar la confidencialidad de los datos.
14
Acceso remoto ● Programas relacionados – Programa servidor: sshd. Escucha en el puerto 22. – Programa cliente: ssh. – Otros programas cliente de la suite ssh: scp, sftp
15
Acceso remoto ● Uso del cliente ssh: – Acceso como el mismo usuario que tenemos en la máquina local: ● ssh aula-pro – Acceso como otro usuario: ● ssh -l profesor_prueba aula-pro ● ssh profesor_prueba@aula-pro
16
Acceso remoto ● Configuración del servidor sshd: – Fichero /etc/ssh/sshd_config. Algunas opciones: ● Port 22 ● Protocol 2 ● X11Forwarding yes ● IgnoreRhosts yes – Fichero /etc/ssh/ssh_host_rsa_key.pub ● Almacena la clave de host. Usada para evitar suplantaciones.
17
Acceso remoto ● Configuración ssh: – Fichero ~/.sshd/known_hosts ● Guarda las claves de hosts para todos los hosts a los que el usuario ha accedido. ● Si cambia una clave de host de una máquina conocida e intentamos acceder a ella, ssh dará un error advirtiéndonos de que el certificado ha cambiado. ● Para evitarlo, borrar la entrada correspondiente a esta máquina.
18
Acceso remoto ● Protección contra ataques Man in the Middle – Proporciona medios para comprobar la identidad de la máquina a la que estamos conectando – No hay entidades certificadoras externas, por lo que la gestión queda íntegramente en manos del administrador
19
Práctica ● Pasos al conectar a una máquina a la que no hemos conectado antes: – ssh IP_PROFESOR ● Al no tener registrado este host con su clave, nos pregunta si deseamos continuar ● Si decimos que sí, nos informa de que la clave de host se ha añadido a la lista de hosts conocidos ● Por último, debemos introducir la clave del usuario con el que estamos conectando ● En siguientes conexiones no tendremos que aceptar ya la clave de host
20
Práctica ● Conectamos a una máquina que ha cambiado su clave de host – Por ejemplo, reconfiguramos ssh para que genere una nueva clave – Al conectar por ssh, da un error, informando de que la clave ha cambiado – Para conectar, borrar la entrada de ~/.ssh/known_hosts y volver a conectar – Antes, averiguar por qué ha cambiado
21
Acceso remoto ● X Forwarding – ssh da acceso a consola de texto – Necesidad de ejecutar aplicaciones gráficas en remoto ● X Forwarding a través de ssh; las aplicaciones automáticamente se muestran en el escritorio actual: – #ssh -X 172.21.232.2 ● Ahora al ejecutar una aplicación gráfica obtendremos la salida en nuestro escritorio.
22
Práctica ● Realizar una conexión ssh con el ordenador del profesor – Usuario: test – Contraseña: test ● Usar X-Forwarding para lanzar herramientas gráficas – Una vez conectados, ejecutar: ● $eog logo.png
23
Transferencia de archivos ● Necesidad de mover archivos entre máquinas remotas ● Desde siempre: ftp ● Mas reciente: – sftp ● Reemplazo, más seguro, de ftp. – scp ● Transferencia de archivos con sintaxis parecida al comando cp.
24
Transferencia de archivos ● Cliente SCP – Parte del paquete ssh – Utiliza conexiones ssh cifradas para la transmisión de archivos. – Sintaxis de uso muy parecida al comando cp: ● #scp [[user@]host]:file1 [[user@]host]:file2 ● Copiar el archivo /tmp/test de la maquina local al directorio /home/ de la máquina remota aula-pro: – #scp /tmp/test aula-pro:/home
25
Transferencia de archivos ● Cliente SCP ● Copiar el archivo /tmp/test de la maquina local al directorio /home/ de la máquina remota aula-pro: – #scp /tmp/test aula-pro:/home ● Copiar el archivo /tmp/test de la maquina remota aula-pro al directorio /home/ de la máquina local: – #scp aula-pro:/tmp/test /home ● Copiar el archivo /tmp/test de la maquina remota aula-pro al directorio /home/ de la máquina remota aula-o01: – #scp aula-pro:/tmp/test aula-o01:/home
26
Práctica ● Copiar un archivo al ordenador del profesor – #scp archivo test@IP:/home/test ● Conectar por ssh para comprobar que el archivo se transmitió correctamente
27
Archivos en red ● Inconvenientes de los anteriores métodos de transferencia de archivos: – Incómodos: conectar primero y luego transferir archivos. – Acceso no uniforme: las aplicaciones deben saber donde residen los datos físicamente.
28
Archivos en red ● Solución: Montar sistemas de archivos remotos: – Se añade un sistema de archivos remoto a la estructura de directorios del sistema local. – Las aplicaciones no saben que los datos son remotos.
29
Archivos en red: NFS ● Características: – NFS = Network File System – Sistema nativo de Unix/Linux. – Funciona a través de RPC (Remote Procedure Call). – Un servidor exporta un directorio. – El cliente monta ese directorio.
30
Archivos en red: NFS ● Configuración del servidor. – Paquetes necesarios: ● nfs-common ● nfs-kernel-sever – Ficheros de configuración: ● /etc/exports – Logs ● /var/log/messages
31
Archivos en red: NFS ● Configuración del servidor. – /etc/exports ● Es la lista de control de acceso para los sistemas de archivos que pueden ser montados por clientes NFS. ● Cada línea contiene un punto de exportación y una lista de clientes a los que se permite montar el sistema. ● Cada cliente puede incluir entre paréntesis las opciones específicas para ese cliente.
32
Archivos en red: NFS ● Configuración de una carpeta compartida para la red – /etc/exports ● /compartida 172.21.232.*(ro) 172.21.232.10 (rw) – Opciones: ● ro: modo lectura/escritura ● rw: modo lectura ● sync, async: funcionamiento síncrono/asíncrono ● root_sqash: asigna el uid 0 a otro uid
33
Archivos en red: NFS ● uids de usuario – El control de acceso de nfsd se basa en los uid y gid proporcionados en cada petición – Para que un usuario pueda acceder a los ficheros en la carpeta compartida del mismo modo que en local, los uids de cliente y servidor deben coincidir – Normalmente, no se quiere que el root del cliente se convierta en root de la carpeta compartida ● Por defecto se activa root_sqash
34
Archivos en red: NFS ● uids de usuario – Otras opciones relacionadas: ● no_root_squash: no convierte al usuario root del cliente en el usuario invitado ● all_squash: Convierte a todos los usuarios en el usuario invitado. Útil por ejemplo para directorios públicos. ● #exportfs -a – Exporta de nuevo todos los directorio, releyendo el fichero de configuración
35
Archivos en red: NFS ● Configuración de los clientes en los I.E.S. – Montar a mano el /home del servidor en el directorio /home local: ● #mount -t nfs 172.21.232.2:/home /home – Fichero /etc/fstab: ● 172.21.232.2:/home /home nfs rsize=1024,wsize=1024,timeo=20,retrans=10,intr,auto,rw 0 0
36
Archivos en red: NFS ● Diagnóstico – Para que nfs funcione debe estar funcionando el portmapper tanto en el servidor como en el cliente. En el servidor, además, debe funcionar mountd. – Comprobación de servicios ofrecidos por el portmapper local: ● #rpcinfo -p
37
Archivos en red: NFS ● Diagnóstico – Comprobación de servicios ofrecidos por el portmapper remoto: ● #rpcinfo -p 172.21.232.2
38
Práctica ● Crear un directorio donde montar el sistema de archivos remoto ● Montar la carpeta compartida del ordenador del profesor – mount IP:/compartida compartida ● Comprobar que podemos poner nuevos ficheros y ver los de otros compañeros
39
Práctica ● Montar un servidor NFS y compartir una carpeta para que la monten los compañeros – apt-get install nfs-kernel-server nfs-common – Crear una carpeta y configurar /etc/exports para exportarla – Montar la carpeta del compañero para comprobar que se ha hecho todo correctamente
40
Archivos en red: SAMBA ● Características: – Sistema que implementa el protocolo SMB en sistemas Unix/Linux. – Creado para compartir archivos entre sistemas Unix y Windows. – También válido para compartir impresoras. – El servidor exporta directorios. – Los clientes montan los directorios exportados.
41
Archivos en red: SAMBA ● Programas del lado servidor: – smbd ● Es el demonio que proporciona servicios de compartición de archivos e impresión a clientes Windows. – nmbd ● Servidor de nombres NetBIOS para proporcionar servicios de nombres NetBIOS sobre IP a los clientes. – \\nombre_equipo\\c
42
Archivos en red: SAMBA ● Programas del lado cliente: – smbclient ● Cliente parecido al ftp para acceder a recursos SMB en los servidores. – #smbclient //172.21.232.2/trastero – #smbclient //172.21.232.2/trastero -U linex – mount ● Montar sistemas compartidos por SAMBA casi igual que si fuesen NFS: – mount -t smbfs //172.21.232.2/trastero /mnt/ – mount -t smbfs //172.21.232.2/trastero /mnt/ -o username=linex
43
Archivos en red: SAMBA ● Configuración del servidor: /etc/samba/smb.conf – Formato del fichero: ● Secciones: – [seccion] ● Parámetros: – nombre = valor – Descripción de las secciones: ● Cada sección (menos [global]) define un recurso compartido. El nombre de la sección es el nombre del recurso y los parámetros dentro de la sección definen los atributos de los recursos compartidos.
44
Archivos en red: SAMBA ● Configuración del servidor: /etc/samba/smb.conf – Sección [global]: ● workgroup = elbrocense.ex ● load printers = yes ● guest account = linex ● log file = /var/log/samba/log.%m ● smb passwd file = /etc/samba/smbpasswd ● null passwords = yes
45
Archivos en red: SAMBA ● Configuración del servidor: /etc/samba/smb.conf – Descripción de algunos parámetros: ● browseable – Controla si este recurso se ve en la lista de recursos disponibles. ● comment – Comentario descriptivo que aparece junto al revurso. ● guest ok – No se necesita contraseña para acceder al servicio. Los privilegios serán los de la cuenta de invitado. ● Read Only – Acceso en modo sólo lectura.
46
Archivos en red: SAMBA ● Configuración del servidor: /etc/samba/smb.conf – Descripción de algunos parámetros: ● path – Directorio al que se dará acceso al usuario del servicio. En caso de servicios de impresión es donde se almacenará los datos a imprimir antes de enviarlos a la impresora. ● writable – Sinónimo invertido de Read Only. ● printable – Si está activo, los clientes pueden abrir, escribir y enviar ficheros de spool en el directorio especificado para el servicio.
47
Archivos en red: SAMBA ● Configuración del servidor: /etc/samba/smb.conf – Sección [homes]: ● Si existe esta sección, se pueden crear al vuelo servicios conectando a los clientes a sus directorios personales. ● Cuando se recibe una petición se comprueban todas las secciones existentes. Si ninguna de ella coincide se trata el nombre de sección dado como nombre de usuario y se busca en el fichero de contraseñas local.
48
Archivos en red: SAMBA ● Configuración del servidor: /etc/samba/smb.conf – Sección [homes]: ● Si se encuentra el usuario y la contraseña es correcta, se crea un nuevo recurso compartido clonado la sección [homes]. ● #mount -t smbfs //172.21.232.2/linex /mnt/ -o username=linex
49
Archivos en red: SAMBA ● Configuración del servidor: /etc/samba/smb.conf – Sección [printers]: ● Esta sección funciona parecido a la de [homes], pero con impresoras. ● Si esta sección existe, los usuarios pueden conectar a cualquier impresora definida en el fichero printcap local. ● Cuando se recibe una petición se comprueban todas las secciones. Si ninguna coincide se trata el nombre dado como un nombre de impresora y se busca en el fichero printcap. ● Esta sección debe ser “printable”.
50
Archivos en red: SAMBA ● Configuración del servidor: /etc/samba/smbpasswd – Contiene los usuarios y contraseñas definidos para acceder a recursos SAMBA ● Añadir los usuarios existentes al fichero de contraseñas de SAMBA – smbpasswd -a educacion ● Añade el usuario educacion a la BD de SAMBA – smbpasswd educacion ● Para cambiar la contraseña
51
Práctica ● Montar el directorio /trastero del profesor, mediante SMB ● mount -t smbfs //172.21.232.2/trastero /mnt/ -o username=linex ● Acceder al mismo directorio remoto, usando smbclient ● #smbclient //172.21.232.2/trastero -U linex
52
Práctica ● Compartir por SAMBA la carpeta que creamos para compartir por NFS – Añadir sección en /etc/samba/smb.conf – Reiniciar samba – Comprobar, con la ayuda de un compañero, que se puede montar la carpeta desde otros ordenadores
Presentaciones similares
© 2025 SlidePlayer.es Inc.
All rights reserved.