Configuración y configuraciones iniciales del servidor en RHEL 7

Configuración y configuraciones iniciales del servidor en RHEL 7

En este tutorial discutiremos los primeros pasos de configuración que debe ocuparse después de una nueva instalación de Red Hat Enterprise Linux 7 en un servidor de metal desnudo o en un servidor privado virtual.

Requisitos

  1. RHEL 7 Instalación mínima

Importante: Los usuarios de CentOS 7 pueden seguir este artículo para hacer una configuración de servidor inicial en CentOS 7.

Actualizar el sistema RHEL 7

En el primer paso, inicie sesión en su Rhel Consola del servidor con una cuenta con privilegios raíz o directamente como root y ejecute el siguiente comando a continuación para actualizar completamente los componentes de su sistema, como los paquetes instalados, el kernel o aplicar otros parches de seguridad.

# Yum Check-Update # yum actualización 

Para eliminar todos los paquetes descargados localmente y otros cachés Yum relacionados, ejecute el siguiente comando.

# yum limpio todo 

Instalar utilidades del sistema en RHEL 7

Estas siguientes utilidades pueden ser útiles para la administración del sistema diario: nano (Editor de texto para reemplazar el editor VI), wget, rizo (Utilidades utilizadas para descargar paquetes a través de la red principalmente) toallas de red, LSOF (Utilidades para la gestión de redes locales) y Bash-Completion (línea de comando autocompletar).

Instalarlos todos en un solo disparo ejecutando el siguiente comando.

# yum instalación Nano Wget Curl Net-Tools LSOF BASH-COMPLETIÓN 

Configuración de redes en RHEL 7

Rhel 7 tiene una amplia gama de herramientas que se pueden usar para configurar y administrar redes, desde editar manualmente el archivo de configuración de red hasta usar comandos como IP, Ifconfig, nmtui, nmcli o ruta.

La utilidad más fácil que un principiante puede usar para administrar y cambiar las configuraciones de red es nmtui línea de comando gráfica.

Para cambiar el nombre de host del sistema a través de nmtui utilidad, ejecutar nmtui-hostname comando, configure el nombre de host de su máquina y presione DE ACUERDO Para terminar, como se ilustra en la siguiente captura de pantalla.

# nmtui-hostname 
Establecer nombre de host en RHEL 7

Para manipular una interfaz de red, ejecute nmtui edit Comando, elija la interfaz que desea editar y seleccionar editar en el menú correcto, como se muestra en la siguiente captura de pantalla.

Configurar la red en RHEL 7

Una vez que esté en la interfaz gráfica proporcionada por nmtui Utilidad Puede configurar la configuración IP de la interfaz de red como se ilustra en la siguiente captura de pantalla. Cuando termines, navegue a DE ACUERDO usando [pestaña] clave para guardar la configuración y renunciar.

Configuración de la dirección IP de la red

Para aplicar la nueva configuración de la interfaz de red, ejecute nmtui-conexión comando, seleccione la interfaz que desea administrar y presionar Desactivar/activar Opción de desmantelar y aumentar la interfaz con la configuración de IP, como se presenta en las capturas de pantalla a continuación.

# nmtui-conexión 
Interfaz de red activa

Para ver la configuración de la interfaz de red, puede inspeccionar el contenido del archivo de interfaz o puede emitir los siguientes comandos.

# ifconfig enp0s3 # ip a # ping -c2 google.comunicarse 
Verificar la configuración de la red

Otras utilidades útiles que se pueden utilizar para administrar la velocidad, el estado de enlace u obtener información sobre las interfaces de red de la máquina son Ethool y mante.

# ETHTOOL ENP0S3 # MII-TOOL ENP0S3 
Verifique la conexión de red

Crear una nueva cuenta de usuario

En el siguiente paso, mientras se registra como root en su servidor, cree un nuevo usuario con el siguiente comando. Este usuario se utilizará más tarde para iniciar sesión en su sistema y realizar tareas administrativas.

# adduser tecMint_user 

Después de agregar el usuario usando el comando anterior, configure una contraseña segura para este usuario emitiendo el siguiente comando.

# PASSWD TECMINT_USER 

En los casos en que desea obligar a este nuevo usuario a cambiar su contraseña en el primer intento de inicio de sesión, ejecute el siguiente comando.

# CHAGE -D0 TECMINT_USER 

Esta nueva cuenta de usuario tiene privilegios de cuenta regulares por ahora y no puede realizar tareas administrativas a través del comando sudo.

Para evitar el uso de la cuenta raíz para realizar privilegios administrativos, otorgue a este nuevo usuario privilegios administrativos agregando al usuario a "rueda"Grupo de sistemas.

Los usuarios que pertenecen al "rueda"El grupo está permitido, de forma predeterminada en RHEL, ejecutar comandos con privilegios raíz utilizando el sudo utilidad antes de escribir el comando necesario para la ejecución.

Por ejemplo, para agregar al usuario "tecmint_user" a "ruedaGrupo, ejecute el siguiente comando.

# usermod -ag wheel tecmint_user 

Posteriormente, inicie sesión en el sistema con el nuevo usuario e intente actualizar el sistema a través de 'actualización de sudo yum'Comando para probar si el usuario tiene poderes raíz otorgados.

# SU - TECMINT_USER $ SUDO YUM ACTUALIZACIÓN 

Configurar la autenticación de la clave pública SSH en RHEL 7

En el siguiente paso para aumentar la seguridad de su servicio Rhel, configure la autenticación de la clave pública SSH para el nuevo usuario. Para generar un par de claves SSH, la clave pública y privada, ejecute el siguiente comando en su consola de servidor. Asegúrese de que haya iniciado sesión en el sistema con el usuario, está configurando la tecla SSH.

# SU -TECMINT_USER $ SSH -KEYGEN -T RSA 

Mientras se genera la clave, se le solicitará que agregue frase Para asegurar la clave. Puedes entrar en un fuerte frase o elija dejar la frase en blanco en blanco si desea automatizar tareas a través del servidor SSH.

Después de generar la tecla SSH, copie el par de claves públicas a un servidor remoto ejecutando el siguiente comando. Para instalar la clave pública al servidor SSH remoto, necesitará una cuenta de usuario que tenga credenciales para iniciar sesión en ese servidor.

$ ssh-copy-id [correo electrónico protegido] 

Ahora debería intentar iniciar sesión a través de SSH al servidor remoto utilizando la clave privada como método de autenticación. Debería poder iniciar sesión automáticamente sin que el servidor SSH solicite una contraseña.

$ ssh [correo electrónico protegido] 

Para ver el contenido de su clave SSH pública si desea instalar manualmente la clave a un servidor SSH distante, emita el siguiente comando.

$ Cat ~/.ssh/id_rsa 

Asegure SSH en RHEL 7

Para asegurar el Daemon SSH y no permitir el acceso remoto SSH a la cuenta raíz a través de la contraseña o la clave, abra el archivo de configuración principal del servidor SSH y realice los siguientes cambios.

$ sudo vi/etc/ssh/sshd_config 

Buscar la línea #Permitrootlogin Sí, desenchufe la línea eliminando el # firma (hashtag) desde el comienzo de la línea y modifique la línea para que se vea como se muestra en el siguiente extracto.

Permitrootlogin no 

Posteriormente, reinicie el servidor SSH para aplicar la nueva configuración y pruebe la configuración tratando de iniciar sesión en este servidor con la cuenta root. El acceso a la cuenta raíz a través de SSH ya debe restringirse.

$ sudo systemctl reiniciar sshd 

Hay situaciones en las que es posible que desee desconectar automáticamente todas las conexiones SSH remotas a su servidor después de un período de inactividad.

Para habilitar esta función en todo el sistema, ejecute el siguiente comando, que agrega el Tmout variable bash a principal bashrc Archivo y obliga a cada conexión SSH a desconectarse o retirarse después de 5 minutos de inactividad.

$ su -c 'echo "tmout = 300" >> /etc /bashrc' 

Ejecute el comando de cola para verificar si la variable se ha agregado correctamente al final de /etc/bashrc archivo. Todas las conexiones SSH posteriores se cerrarán automáticamente después de 5 minutos de inactividad a partir de ahora.

$ cola /etc /bashrc 

En la siguiente captura de pantalla, la sesión remota de SSH desde la máquina Drupal hasta el servidor RHEL ha sido automático después de 5 minutos.

Sesiones de SSH de desconexión automática

Configurar firewall en RHEL 7

En el siguiente paso, configure el firewall para asegurar aún más el sistema a nivel de red. RHEL 7 se envía con la aplicación Firewalld para administrar las reglas de IPTables en el servidor.

Primero, asegúrese de que el firewall se esté ejecutando en su sistema emitiendo el siguiente comando. Si se detiene el Daemon Firewalld, debe comenzar con el siguiente comando.

$ sudo systemctl status firewalld $ sudo systemctl iniciar firewalld $ sudo systemctl habilitar firewalld 

Una vez que el firewall está habilitado y ejecutado en su sistema, puede usar el firewall-cmd Utilidad de línea de comandos para establecer la información de la política de firewall y permitir el tráfico a algunos puertos de red específicos, como SSH Daemon, conexión realizada a un servidor web interno u otros servicios de red relacionados.

Porque en este momento solo estamos ejecutando un demonio SSH en nuestro servidor, podemos ajustar la política de firewall para permitir el tráfico para el puerto de servicio SSH emitiendo el siguiente comando.

$ sudo firewall-cmd --add-service = ssh --permanent $ sudo firewall-cmd--Reload 

Para agregar una regla de firewall en la marcha, sin aplicar la regla la próxima vez que se inicie el servidor, use la sintaxis del comando a continuación.

$ sudo firewall-cmd --add-service = sshd 

Si instala otros servicios de red en su servidor, como el servidor HTTP, un servidor de correo u otros servicios de red, puede agregar reglas para permitir las conexiones específicas de la siguiente manera.

$ sudo firewall-cmd --Permanent --add-service = http $ sudo firewall-cmd --Permanent --add-service = https $ sudo firewall-cmd --Permanent --add-service = smtp 

Para enumerar todas las reglas de firewall, ejecute el siguiente comando.

$ sudo firewall-cmd --Permanent --list-all 

Eliminar servicios innecesarios en RHEL 7

Para obtener una lista de todos los servicios de red (TCP y UDP) que se ejecutan en su servidor RHEL de forma predeterminada, emita el ss Comando, como se ilustra en la muestra a continuación.

$ sudo ss -tulpn 

El ss El comando revelará algunos servicios interesantes que se inician y se ejecutan de forma predeterminada en su sistema, como el Sufijo Servicio maestro y el servidor responsable del protocolo NTP.

Si no planea configurar este servidor un servidor de correo, debe detener, deshabilitar y eliminar el demonio postfix emitiendo los comandos a continuación.

$ sudo systemctl stop postfix.servicio $ sudo yum eliminar postfix 

Recientemente, se ha informado algunos ataques DDoS desagradables sobre el protocolo NTP. En caso de que no planee configurar su servidor RHEL para que se ejecute como servidor NTP para que los clientes internos sincronicen el tiempo con este servidor, debe deshabilitar por completo y eliminar el Daemon Chrony emitiendo los comandos a continuación.

$ sudo systemctl stop Chronyd.Servicio $ sudo yum eliminar Chrony 

De nuevo, corre ss Comando para identificar si otros servicios de red se están ejecutando en su sistema y deshabilitarlos y eliminarlos.

$ sudo ss -tulpn 

Para proporcionar el tiempo preciso para su servidor y sincronizar el tiempo con un servidor de pares de tiempo superior, puede instalar el ntpdate Tiempo de utilidad y sincronización con un servidor NTP público, ejecutando los comandos a continuación.

$ sudo yum instalación ntpdate $ sudo ntpdate 0.Reino Unido.piscina.NTP.organizar 

Para automatizar el ntpdate El comando de sincronización de tiempo se ejecutará todos los días sin ninguna intervención del usuario, programen un nuevo trabajo de CRONTAB para ejecutarse a la medianoche con el siguiente contenido.

$ sudo crontab -e 

Extracto de archivo CRONTAB:

@daily/usr/sbin/ntpdate 0.Reino Unido.piscina.NTP.organizar 

Eso es todo! Ahora, su servidor RHEL está preparado para instalar un software adicional necesario para servicios o aplicaciones de red personalizadas, como instalar y configurar un servidor web, un servidor de base de datos, un servicio compartido de archivos u otras aplicaciones específicas.

Para asegurar y endurecer aún más el servidor RHEL 7, consulte estos artículos siguientes.

  1. La mega guía para endurecer y asegurar RHEL 7 - Parte 1
  2. La mega guía para endurecer y asegurar RHEL 7 - Parte 2

Si planea implementar sitios web en este sistema RHEL 7, aprenda cómo configurar y configurar la pila de lámparas o Lemp Stack.