Servidores

Pasos iniciales en Ubuntu Server

Los primeros pasos en la configuración de un servidor siempre pueden ser complicados, o tediosos. Es importante tener una configuración inicial del servidor bien hecha para evitar problemas posteriormente. En este post te enseñaré como iniciar bien la adquisición de un servidor ubuntu para empezar a trabajar con él.

Inicio de sesión

Dependiendo de tu proveedor tendrás diferentes maneras de iniciar sesión por primera vez. Muchos proveedores utilizan VNC o algún tipo de interfaz web donde se te permite iniciar sesión en local al servidor.

Aunque la gran mayoría ofrece iniciar sesión a través de SSH con el usuario root, podrás iniciar sesión utilizando el siguiente comando.

ssh root@direccion_ip

Y deberás introducir la contraseña de tu usuario root.

Conexión SSH

El método de conexión SSH es el más utilizado para administrar servidores Linux, es por eso que es muy importante securizar al máximo las conexiones por SSH. Lo primero que deberíamos hacer es crear un nuevo usuario en el sistema.

adduser gabriel

Tendremos que ir rellenando el pequeño asistente para la creación del usuario, y de esta forma habremos agregado un nuevo usuario al sistema. El siguiente paso es darle permisos de administración, por tanto debemos añadirlo al grupo sudo.

usermod -aG sudo gabriel

Y así tendremos nuestro nuevo usuario con permisos de administración para poder acceder por SSH. Una vez creado el usuario de administración es importante denegar el acceso al usuario root por SSH, ya que es el usuario con más permisos del sistema y puede causar problemas. Desactivamos el usuario root abriendo el siguiente fichero.

nano /etc/ssh/sshd_config

Y las siguientes líneas deberán quedar de esta manera.

#LoginGraceTime 2m
PermitRootLogin no
#StrictModes yes
#MaxAuthTries 6
#MaxSessions 10

Con esto establecido, el usuario root no podrá acceder. Otra buena práctica para garantizar la seguridad es cambiar el puerto de uso de SSH que por defecto es 22, lo cambiamos por ejemplo a 2200. Desde el mismo fichero cambiamos el siguiente parámetro.

Port 1312
#AddressFamily any
#ListenAddress 0.0.0.0
#ListenAddress ::

También sería una buena práctica el uso de llaves SSH, que se explican en otro post.

Nombre del servidor

Normalmente si tenemos un servidor, además poseemos también un dominio. Es importante vincular bien nuestro servidor con su nombre. Para hacerlo deberemos modificar dos ficheros, el primero es el siguiente.

sudo nano /etc/hostname

En muchos casos aparecerá un nombre totalmente aleatorio, debemos reemplazarlo e introducir registro A de nuestro dominio que corresponde al servidor, por ejemplo, si nuestro registro identificativo del DNS fuera servidor1.nebula.cat, deberíamos introducir servidor1.

servidor1

Y el otro fichero a modificar es el siguiente.

sudo nano /etc/hosts

Debemos dejar el fichero de la siguiente manera.

127.0.0.1       localhost
127.0.1.1       servidor1.nebula.cat       servidor1

Firewall sencillo

La configuración de un firewall es totalmente necesario para garantizar mínimamente la seguridad de nuestro servidor. Normalmente los servidores utilizan iptables para la creación de un firewall más potente y detallado, en este artículo muestro como funciona UFW, un firewall simple que permite a cualquier usuario saber utilizarlo.

Para ver el estatus del firewall podemos usar:

sudo ufw status

Si no lo hemos tocado anteriormente, nos dirá que está inactivo. Antes de activarlo es importante añadir los puertos que queremos que permanezcan abiertos, en nuestro caso el puerto del SSH o directamente la aplicación.

sudo ufw allow OpenSSH

Y una vez tenemos añadidos los servicios o puertos a los que queremos permitir la conexión activamos ya el firewall.

sudo ufw enable

Y si volvemos a comprobar el estatus del servicio de firewall UFW podremos ver lo siguiente.

sudo ufw status
Status: active

To                         Action      From
--                         ------      ----             
OpenSSH                    ALLOW       Anywhere                        
OpenSSH (v6)               ALLOW       Anywhere (v6)

¿Final?

Esto sería una configuración inicial muy básica de un servidor Ubuntu. Según los servicios que quieras ir ofreciendo desde el servidor deberás ir aumentando la seguridad, añadir funcionalidades y demás.

Para seguir investigando todos los servicios que puedes ofrecer con el servidor puedes leer más artículos o unirte al servidor de discord.

Sin comentarios

Deja tu comentario

Tu correo electrónico no se mostrará, los parámetros con asterisco (*) son obligatorios