Crear y configurar un droplet en Digital Ocean
En este tutorial aprenderemos a crear un droplet (gota) en Digital Ocean y a hacer algunas configuraciones básicas. En primer lugar debemos tener una cuenta, y luego ir a «CREATE». Nos pedirá el nombre, y también el tamaño y ubicación del droplet.
Una vez elegido podremos elegir el SO para el servidor (Ubuntu, CentOS, Fedora, Debian o CoreOS, todos en variadas versiones), y luego hacemos clic en «CREATE DROPLET» y al cabo de menos de un minuto (a veces puede demorar más) ya tendremos los accesos SSH para nuestro droplet recién creado (son enviados vía correo electrónico).
Ingresar por SSH al servidor
En Windows pueden utilizar la aplicación Putty, y en Linux y Mac la terminal. La información que utilizaremos ya sea para configurar Putty o escribir la línea para conectarnos al servidor está en el correo electrónico que nos envió Digital Ocean hace algunos instantes, que se vería así:
ssh root@IP
Nos pedirá la contraseña, y una vez colocada ya estaremos conectados a nuestro servidor.
Cambiar la contraseña de root
Por cuestiones de seguridad, sería importante que cambiemos la contraseña del usuario root. Para ello sólo debemos tipear «passwd» y luego ingresar dos veces la nueva contraseña (pueden generar una desde Strong Password Generator).
Agregar otro usuario
Una buena práctica consiste en no utilizar más al usuario root. Entonces, además de elegir una complicada contraseña, no sería mala idea deshabilitar el acceso por SSH para root. Colocamos «nano /etc/ssh/sshd_config», buscamos la línea con «PermitRootLogin yes» y la seteamos en no.
Para agregar el nuevo usuario debemos hacer uso de «/usr/sbin/adduser newuser» (reemplazar newuser por el nombre de usuario que deseemos). Luego nos pedirá la contraseña dos veces, y listo. En caso de querer cambiar la contraseña de este usuario simplemente debemos tipear «passwd newuser».
Ahora es necesario darle los privilegios necesarios a este usuario, utilizando «/usr/sbin/visudo». Buscamos la entrada «# User privilege specification» y agregamos una línea para que nos quede igual que root. Por ejemplo:
# User privilege specification
root ALL=(ALL:ALL) ALL
danilo ALL=(ALL:ALL) ALL
Además de tener privilegios, este nuevo usuario debe tener acceso vía SSH. Vamos con «nano /etc/ssh/sshd_config» a agregar una nueva línea como la siguiente:
AllowUsers danilo
Cambiar el puerto de SSH
Para agregarle una pizca adicional de seguridad se recomienda cambiar el puerto por defecto de SSH. Para tal tarea tipeamos «nano /etc/ssh/sshd_config», y buscamos la línea con «Port 22». Allí, reemplazamos el 22 (puerto por defecto de SSH) por un nuevo puerto que puede ubicarse entre 49152 y 65535. Es importante tomar nota tanto del puerto como de la contraseña del nuevo usuario porque luego del paso siguiente si no tenemos esa información podemos perder el acceso a nuestro servidor (y no sería nada gracioso).
NOTA 1: Una vez hechos todos los cambios de configuración SSH (sean todos los descriptos o sólo algunos) es necesario reinicar el servidor SSH con «/etc/init.d/sshd reload» o «service ssh restart» (dependiendo de la distribución elegida).
NOTA 2: Hay que tener en cuenta que para ingresar al servidor ahora debemos determinar el puerto por el cual lo haremos con «ssh -p PUERTO root@IP».