Está en la página 1de 7

4/2/2021 Configuracion inicial de un servidor con CentOS 7 - Doc - BlueHosting

Configuración inicial de un servidor con CentOS 7


Actualizado el 28 de septiembre, 2016. Por BlueHosting.

Cuando usted crea un nuevo servidor con la distribución CentOS 7, hay ciertos pasos y criterios
de configuración que debería seguir para establecer una configuración básica. Esto aumentará la
seguridad y facilidad de uso y le dará una base sólida para las acciones posteriores. Este tutorial
explica algunos pasos básicos de configuración para optimizar el uso de su servidor con CentOS
7, siga los pasos en orden.

Primer paso: Inicio de sesión root


Para iniciar sesión en su servidor, deberá saber la dirección IP pública de su servidor y la contraseña
de la cuenta de usuario root. Luego ingrese a su servidor usando su cliente SSH preferido.

Si usted aún no está conectado a su servidor, inicie sesión como usuario root usando el siguiente
comando:

ssh root@123.45.67.8

Recuerde remplazar 123.45.67.8 con la dirección IP real de su servidor. También tenga en cuenta
que este comando se conecta a SSH usando el puerto por defecto (22). Si desea usar otro puerto
agregue el parámetro -p al comando anterior, seguido del número de puerto. Por ejemplo, si se
conecta a su servidor usando SSH en el puerto 1234 use ssh root@123.45.67.8 -p 1234 .

Complete el proceso de inicio de sesión aceptando la advertencia sobre la autenticidad del host si
esta aparece. Esta advertencia simplemente indica el riesgo que puede significar la conexión si no
está seguro de la autenticidad del servidor, para esto muestra la clave pública de dicho servidor con
el fin de comprobar su autenticidad. Una vez que acepte esta advertencia puede proceder e ingresar
sus credenciales para el usuario root.

Sobre el usuario root

El usuario root es el usuario administrador de un entorno Linux y tiene amplios privilegios dentro del
sistema. Debido a los privilegios de la cuenta root, se recomienda no usarla regularmente. Esto se
debe a que parte del poder inherente de una cuenta root es la capacidad de hacer cambios que
podrían ser destructivos, incluso sin intenciones de hacerlos.

El siguiente paso es establecer una cuenta de usuario alternativa con un alcance reducido para poder
hacer operaciones del día a día. Le enseñaremos cómo obtener mayores privilegios en los momentos

https://docs.bluehosting.cl/tutoriales/servidores/configuracion-inicial-de-un-servidor-con-centos-7.html 1/7
4/2/2021 Configuracion inicial de un servidor con CentOS 7 - Doc - BlueHosting

que sean necesarios.

Segundo paso: Crear un nuevo usuario


Una vez que haya ingresado como usuario root, estamos listos para añadir la nueva cuenta de
usuario que usaremos para iniciar sesión de ahora en adelante.

Este ejemplo crea un nuevo usuario llamado "pedro", pero debe remplazarlo con un nombre de
usuario de su preferencia:

adduser pedro

Luego, asigne una contraseña al nuevo usuario (una vez más, sustituya pedro con el nombre del
usuario que creó en el paso anterior):

passwd pedro

Ingrese una contraseña segura y repítala para verificarla.

Tercer paso: Privilegios root


Ya tenemos una nueva cuenta de usuario con los privilegios que se dan a una cuenta regular. Sin
embargo, en algunas ocasiones necesitamos hacer tareas administrativas.

Para evitar tener que cerrar la sesión del usuario normal y volver a iniciar sesión con la cuenta root,
podemos configurar lo que se llama un "superusuario", el cual representa los privilegios root a través
de una cuenta regular. Esto permitirá que nuestro usuario regular pueda ejecutar comandos con
privilegios administrativos colocando la palabra sudo antes de cada comando.

Para añadir estos privilegios a nuestro nuevo usuario, necesitamos añadir el nuevo usuario al grupo
"wheel". De forma predeterminada en CentOS 7, se permite el uso del comando sudo a los usuarios
que pertenecen al grupo wheel .

Desde su cuenta root ejecute este comando para añadir a su nuevo usuario al
grupo wheel (sustituya pedro con el nombre real de su usuario):

gpasswd -a pedro wheel

¡Ahora su usuario puede ejecutar comandos con privilegios de superusuario!

Cuarto paso: Añadir autenticación con clave pública (recomendado)


El próximo paso para asegurar su servidor es establecer la autenticación con clave pública para su
nuevo usuario. Configurar esto aumentará la seguridad de su servidor debido al requerimiento de una
clave privada SSH para poder iniciar sesión.

https://docs.bluehosting.cl/tutoriales/servidores/configuracion-inicial-de-un-servidor-con-centos-7.html 2/7
4/2/2021 Configuracion inicial de un servidor con CentOS 7 - Doc - BlueHosting

Generar un par de claves

Si todavía no tiene un par de claves SSH, las cuales están compuestas de una clave privada y otra
pública, necesita generarlas. Si usted ya tiene una clave que desee usar, continúe en la
sección Copiar la clave pública.

Para generar una par de claves, ingrese el siguiente comando en el terminal de su máquina local:

ssh-keygen

Asumiendo que su usuario local se llama "usuariolocal", usted podrá ver una salida similar a la
siguiente:

Generating public/private rsa key pair. Enter file in which to save


the key(/Users/usuariolocal/.ssh/id_rsa):

Presione Enter para aceptar la ruta predeterminada o ingrese una nueva ubicación para guardar sus
claves.

Luego, se le pedirá un passphrase o clave de acceso con la cual puede asegurar sus claves. Usted
puede ingresar un passphrase o dejar el campo en blanco.

Si deja el passphrase en blanco, usted podrá usar su clave privada para la autenticación sin
necesidad de ingresar un passphrase. Si usted coloca un passphrase, necesitará tanto la clave
privada como el passphrase para poder iniciar sesión. Asegurar sus claves con un passphrase es
más seguro, pero no es obligatorio. Solo el hecho de usar su par de claves ya es un método más
seguro que una autenticación básica por contraseña.

Se generarán entonces una clave privada, id_rsa y una clave pública, id_rsa.pub , en el
directorio .ssh del directorio home del usuario local. Recuerde que su clave privada no debe ser
compartida con nadie que no requiera acceso a sus servidores.

Copiar la clave pública


Después de generar un par de claves SSH, usted tendrá que copiar su clave pública en su nuevo
servidor. Cubriremos dos formas sencillas de lograrlo.

Opción 1: usando ssh-copy-id

Si su computador local tiene el script ssh-copy-id instalado, puede usarlo para instalar la clave
pública en cualquier usuario para el cual tenga las credenciales de ingreso.

https://docs.bluehosting.cl/tutoriales/servidores/configuracion-inicial-de-un-servidor-con-centos-7.html 3/7
4/2/2021 Configuracion inicial de un servidor con CentOS 7 - Doc - BlueHosting

Ejecute el script ssh-copy-id especificando el usuario y dirección IP del servidor en el cual quiere
instalar la clave, por ejemplo:

ssh-copy-id pedro@123.45.67.8

Después de proporcionar la clave cuando se le solicite, la clave pública será añadida al


archivo .ssh/authorized_keys del usuario remoto. La clave privada correspondiente ahora puede
ser usada para ingresar al servidor.

Opción 2: instalar la clave manualmente

Asumiendo que generó un par de claves SSH usando el paso anterior, utilice el siguiente comando en
el terminal de su máquina local para imprimir su clave pública ( id_rsa.pub ):

cat ~/.ssh/id_rsa.pub

Este comando debe imprimir su clave pública SSH, la cual debe lucir como la siguiente:

ssh-rsa
AAJ3AAB3NzaC1yc2EAAAADAQABAAABAQDSX9eozacNtSpA4quWYt9uq3PyXD+5R8kMwkf787eWfYb5fIWgJKd
usuario@sudominio.com

Seleccione la clave pública y cópiela en su portapapeles.

Añadir la clave pública a un nuevo usuario remoto

Para habilitar el uso de la clave SSH al autenticarse remotamente como el nuevo usuario, usted
tendrá que añadir la clave pública en un archivo especial que se encuentra en el directorio home del
usuario.

En el servidor, como usuario root, ingrese el siguiente comando para cambiar al nuevo usuario
(sustituya con su nombre de usuario real):

su - pedro

Ahora estará en el directorio home de su nuevo usuario.

Cree un nuevo directorio llamado .ssh y restrinja sus permisos con los siguientes comandos:

mkdir .ssh chmod 700 .ssh

Ahora debe abrir el archivo en el directorio .ssh llamado authorized_keys con un editor de texto.
Usaremos el editor vi para este ejemplo:

https://docs.bluehosting.cl/tutoriales/servidores/configuracion-inicial-de-un-servidor-con-centos-7.html 4/7
4/2/2021 Configuracion inicial de un servidor con CentOS 7 - Doc - BlueHosting

vi .ssh/authorized_keys

Ingrese en el modo de inserción, pulsando la tecla i , luego pegue la clave pública (que debería
haber copiado en su portapapeles en los pasos anteriores) en el documento. Luego
presione ESC para salir del modo de inserción.

Para continuar escriba el comando :wq para guardar el archivo y salir.

Ahora restrinja los permisos para el archivo authorized_keys con este comando:

chmod 600 .ssh/authorized_keys

Ingrese este comando una vez para volver al usuario root:

exit

Ahora puede iniciar su sesión SSH con el nuevo usuario, usando la clave privada como forma de
autenticación.

Quinto paso: Configurar el demonio SSH


Ahora que tenemos nuestra nueva cuenta, podemos asegurar nuestro servidor incluso un poco más
al modificar la configuración de su demonio SSH (el programa que nos permite iniciar sesión de forma
remota) desactivando el acceso SSH remoto para la cuenta root.

Comience abriendo el archivo de configuración con su editor de texto como usuario root:

vi /etc/ssh/sshd_config

Aquí, tenemos la opción de desactivar el inicio de sesión root con SSH. En general, se considera que
esto es un ajuste más seguro ya que ahora tendremos que acceder a nuestro servidor usando un
usuario regular y escalar a privilegios elevados solo cuando sea necesario.

Para desactivar los inicios de sesión root necesitamos encontrar una línea que luzca como la
siguiente:

Extracto del archivo: /etc/ssh/sshd_config

#PermitRootLogin yes

Consejo: Para buscar esta línea, escriba /PermitRoot y luego presione Enter. Esto debería llevar
el cursor al carácter "P" de esa línea.

Quite el comentario en la línea borrando el símbolo # (presione Shift + x).

https://docs.bluehosting.cl/tutoriales/servidores/configuracion-inicial-de-un-servidor-con-centos-7.html 5/7
4/2/2021 Configuracion inicial de un servidor con CentOS 7 - Doc - BlueHosting

Ahora mueva el cursor al "yes" presionando w .

Ahora remplace "yes" presionando cw , luego escriba no . Presione Esc cuando termine la edición.
Debería lucir así:

Extracto del archivo: /etc/ssh/sshd_config

#PermitRootLogin no

Para finalizar presione :wq y luego Enter para guardar el archivo y salir.

¡Deshabilitar el inicio de sesión remoto para el usuario es una práctica muy recomendada en
cualquier servidor!

Volver a cargar el servicio SSH

Ahora que hemos realizado nuestros cambios, debemos reiniciar el servicio SSH para que estos
cambios surtan efecto y pueda usar la nueva configuración.

Para reiniciar SSH use el siguiente comando:

systemctl reload sshd

Nota: Antes de cerrar la sesión en el servidor, deberíamos probar nuestra nueva configuración. Esto
se hace para evitar que bloqueemos nuestro propio acceso al servidor. No deberíamos
desconectarnos del servidor hasta que podamos confirmar que las nuevas conexiones pueden ser
establecidas con éxito.

Abra una nueva ventana del terminal en su máquina local. En la nueva ventana, necesitamos iniciar
una nueva conexión con nuestro servidor. Esta vez, en lugar de usar la cuenta root, queremos usar la
nueva cuenta de usuario que creamos.

Para el servidor que configuramos en los pasos anteriores, conéctese usando este comando.
Sustituya su propia información donde sea adecuado:

ssh pedro@123.45.67.8

Nota: Si usted está usando PuTTY para conectarse a sus servidores, asegúrese de actualizar el
número de puerto en la sesión para que coincida con la configuración actual de su servidor.

Se le pedirá el nombre del usuario que configuró. Después de eso, podrá iniciar sesión con el nuevo
usuario.

https://docs.bluehosting.cl/tutoriales/servidores/configuracion-inicial-de-un-servidor-con-centos-7.html 6/7
4/2/2021 Configuracion inicial de un servidor con CentOS 7 - Doc - BlueHosting

Recuerde: si necesita ejecutar un comando con privilegios root debe precederlo con la opción sudo ,
por ejemplo:

sudo comando_root

Si todo resulta bien, puede salir de sus sesiones usando:

exit

Recursos adicionales
En este punto, ya tiene una base sólida en su servidor. Puede instalar cualquier software necesario
de ahora en adelante. Puede consultar los siguientes recursos en busca de información adicional con
respecto a este tema. Aunque este material es provisto esperando que sea útil, tome en cuenta que
no podemos dar fe de la actualidad o precisión de los contenidos externos.

Consulte nuestra plataforma de documentación en donde podrá encontrar guías completamente en


español con instrucciones detalladas según su distribución de Linux.
Mientras comienza a asegurar su servidor con SSH, puede continuar mejorando su seguridad al
instalar programas como Fail2Ban o Deny Hosts, para prevenir ataques de fuerza bruta en el
servidor.
Puede consultar nuestros tutoriales de instalación de la infraestructura LAMP en CentOS
7 e instalación de la infraestructura LEMP en CentOS 7
Wiki o documentación oficial de CentOS.

https://docs.bluehosting.cl/tutoriales/servidores/configuracion-inicial-de-un-servidor-con-centos-7.html 7/7

También podría gustarte