domingo, 28 de junio de 2015

Configuración Servicio NFS

NFS o Network File System
El servicio del NFS es uno de los servicios que nos permite la compartición de directorios y archivos en los sistemas Unix o Linux.

Para la Instalación y Configuración del servicio del NFS debemos de tener en cuenta las siguientes consideraciones.

Servidor que provee los directorios
Este servidor va a ser el encargado de otorgar permisos de acceso a los demas servidores en la red que van a consumir información. En este equipo se procederá a la configuración para el acceso a equipos o redes o grupos de redes y se puede configurar dependiendo del caso que se pueda hacer solo lectura de los directorios o que estos se puedan modificar.

Servidor que va a consumir los recursos compartidos por el servidor proveedor.
Este servidor sera el cual podrá consumir recursos del servidor que presenta la información en la red.


Configuración del servidor NFS
En un terminal ejecutar lo siguiente:
# yun install -y nfs-utils
# systemctl enable nfs.service
# systemctl start nfs.service

Configuración de directorios a compartir por NFS
Editar el archivo /etc/exports. En este archivo se van a describir los directorios y las direcciones IP de los servidores clientes.

# vim /etc/exports
# La primera regla compartirá el directorio a una la direccion IP en la red.
/home/dark/Isos/ 192.168.0.190/32(rw,sync,no_root_squash)
#La segunda regla compartirá el directorio a una direccion IP pero solo en modo lectura
/home/dark/Isos/ 192.168.0.190/32(ro,sync,no_root_squash)
#La tercera regla compartirá el directorio a toda una red en modo lectura
/home/dark/Isos/ 192.168.55.0/24(ro,sync,no_root_squash)
#La cuarta regla presentara a todas las redes en modo escritura el directorio /home/dark/html
/home/dark/html/ 0.0.0.0/16(rw,sync,no_root_squash)

Grabar y reiniciar el servicio del nfs
# systemctl restart nfs.servicE

Para verificar que directorios y a quienes estoy compartiendo información
#showmount -e

Se tendrá una salida similar a la siguiente.
[root@dark ~]# showmount -e
Export list for dark.soportelibre.com:
/home/dark/Isos 192.168.0.190/16
/home/dark/html 0.0.0.0/16

Configuración del cliente de NFS
En un terminal ejecutar lo siguiente:
# yun install -y nfs-utils
# systemctl enable nfs.service
# systemctl start nfs.service

Para verificar que directorios me estan compartiendo se usa el siguiente comando.

# showmount -e IP_SERVIDOR_NFS

Para montar el directorio compartido.
Crear un directorio donde montar la información.
# mkdir /data_compartida

Montar el directorio compartido en mi equipo.

# mount -t nfs IP_SERVIDOR_NFS:/directorio_compartido directorio_local
# mount -t nfs 192.168.100.213:/home/dark/Isos /data_compartida

Hacer persistente al reinicio del servidor el punto de montaje
# Editar el archivo /etc/fstab

Aumentar la línea 
192.168.100.213:/home/dark/Isos /data_compartida nfs defaults 0 0

Verificar que el montaje esta bien realizado
# mount -a
Si no muestra errores es que la configuración se realizo correctamente.
# df -h

Configuración servicio ftp

Para hacer uso del servicio del ftp en el servidor debemos comprender unos conceptos inicialmente 

Protocolo de Transferencia de Archivos o en ingles File Transfer Protocol "FTP" El servicio usa los puertos 20 y 21 para la transferencia de archivos. EL puerto 20 es usado para el flujo de datos entre el cliente y el servidor. El puerto 21 es usado para el envió de ordenes desde el cliente hacia el servidor 



Instalación del paquete vsftp

yum install vsftpd

Para definir que el servicio este habilitado en el arranque del systema operativo.

# systemctl enable vsftpd.service

Para habilitar el firewall por defecto

# firewall-cmd --permanent --add-service=ftp

Para el servicio del FTP se tienen varias formas en las que se puede configurar vamos analizar las principales.

Archivo de configuración /etc/vsftpd/vsftpd.conf

Configuración del servicio ftp para acceso con usuarios anónimos.

Para que un servicio ftp se permita conexiones en modo anonimo se deben habilitar las siguientes lineas en el archivo de configuración

Permite el acceso con el usuario anónimo.

anonymous_enable=YES

Permite la escritura de archivos con usuario anónimo.

write_enable=YES

Permite la subida de archivos con el usuario anónimo

anon_upload_enable=YES

Habilitar mensaje de inicio a el servidor ftpftpd_banner= Bienvenido al servidor ftp de la empresa xyz.
NOTA: Para cambiar la carpeta por defecto del servicio del ftp se lo realiza de la siguiente manera.Se debe de añadir la siguiente línea en el archivo de configuración.
anon_root=/ruta_para_acceso_del_ftp_anonimo

Para la configuración del servicio del ftp como Very Secure ftp o por sus siglas vsftp es el metodo de autenticacion con usuarios ya definidos en el sistema operativo.
Para esta configuración se debe cambiar las líneas mencionadas previamente de la siguiente forma
Configuración del servicio ftp para acceso con usuarios de sistema operativo "vsftp"
anonymous_enable=NO
anon_upload_enable=NO

Para habilitar que los usuarios se mantengan en los directorios del Home definidos para cada uno de ellos se debe agregar las siguientes lineas en el archivo de configuración.

chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list

Para cambiar el puerto por defecto se debe aumentar esta línea en el archivo de configuración.

listen_port=10021

Configuración del servicio ftp para acceso con aprobación de certificados SSL/TLS de sistema operativo "ftps"

Para hacer la configuración de un ftps debe realizarse con la creación de certificados digitales como se muestra a continuación.

En un terminal ejecutar lo siguiente:
# yum -y install openssl
# cd /etc/pki/tls/
# openssl req -sha256 -x509 -nodes -daus 1825 -neykey rsa:4096 -keyout private/vsftpd.key -out certs/vsftpd.crt

El comando anterior nos permite generar un certificado digital en el servidor y que este tenga una valides de 5 años.

Es importante agregar las direciones de estos archivos en el archivo de configuración del servicio del vsftp.

Habilita el soporte de TLS/SSL
ssl_enable=YES
Fuerza a utilizar SSL/TLS para las conexiones que se estableceran con el servicio del ftps

force_local_data_ssl=YES
force_local_logins_ssl=YES

Dirección del certificado y de la firma digital
rsa_cert_file=/etc/pki/tls/certs/vsftpd.crt
rsa_private_key_file=/etc/pki/tls/private/vsftpd.key

Habilitar el servicio con soporte para el algoritmo de cifrado 3DES-CBC-SHA
ssl_ciphers=HIGH


Compatibilidad con otros clientes de ftp.
require_ssl_reuse=NO

Para conectarse a un servidor de vsftp desde un equipo cliente por terminal.
Para conexion con ftp anónimo.
[dark@dark ~]$ ftp localhost 10021
Trying ::1... ftp: connect to address ::1Conexión rehusada Trying 127.0.0.1... Connected to localhost (127.0.0.1). 220 Ftp Banner dark Name (localhost:dark): anonymous 331 Please specify the password. Password: 230 Login successful. Remote system type is UNIX. Using binary mode to transfer files.
ftp> ls
227 Entering Passive Mode (127,0,0,1,118,96).
150 Here comes the directory listing.
drwxr-xr-x    2 0        0            4096 Aug 19  2014 pub
226 Directory send OK.
ftp> 
Para subir información al servidor ftp 
# put Wallpaper_favorito.jpg
Para descargar información del servidor ftp.
# get mp3_mi_balada_favorita.mp3


Para mas opciones del ftp y sus comando revisar la documentación con el comando man.

domingo, 14 de junio de 2015

Configuración de servidor de logs

Para realizar el monitoreo de un grupo de servidores se lo puede hacer mediante la configuración de un servidor centralizado de logs para lo cual vamos a ver como se realiza esta configuración.

1.- Configuración servidor de logs

Instalación del servidor de monitoreo.
[root@dark ~]# yum install rsyslog

Modificar el archivo de configuración  al rededor de la linea 14
[root@dark ~]# vim /etc/rsyslog.conf

Contenido del archivo rsyslog

# Provides UDP syslog reception
$ModLoad imudp
$UDPServerRun 514

# Provides TCP syslog reception
$ModLoad imtcp
$InputTCPServerRun 514

Reiniciar el servidor de logs 
[root@dark ~]# systemctl restart rsyslog.service

Modificación del firewall del servidor de logs.

[root@dark ~]#firewall-cmd --permanent --zone=public --add-port=514/tcp
[root@dark ~]#firewall-cmd --permanent --zone=public --add-port=514/udp
[root@dark ~]#firewall-cmd --reload

Para monitorear los logs se lo puede ver a través de el siguiente log.

[root@dark ~]# tailf /var/log/messages

Para configurar un directorio por cada servidor monitoreado se debe realizar el siguiente cambio en el archivo /etc/rsyslog.conf

$template RemoteLogs,"/var/log/%HOSTNAME%/%PROGRAMNAME%.log" *
*.*  ?RemoteLogs
& ~

*.info,mail.none,authpriv.none,cron.none    ?RemoteLogs


2.- Configuración en los servidores monitoreados.

Instalar el rsyslog si para poder configurarlo como cliente del servidor de monitoreo.

Modificar el archivo de configuración
Al final del archivo /etc/rsyslog.conf aumentar las siguientes líneas.

# Dirección IP del servidor de logs

# Para monitorear los servicios principales
*.info;mail.none;authpriv.none;cron.none   @192.168.1.234
# Para monitorear todos los servicios
*.*   @192.168.1.234



Reiniciar el servidor de logs 
[root@cliente ~]# systemctl restart rsyslog.service