Migrar a producción en vps proyecto laravel y configurando dominio, sub dominios, Certificados SSL Parte 1. Configurando usuario via ssh

in #spanish5 years ago

Anterior

Si vamos al panel de digital ocean podemos ver la ip del droples que creamos anteriormente para iniciar sesion copiamos ese ip, ahora en nuestra terminal  ocupamos el usuario root con la ip y las llaves generadas anteriormente de la siguiente manera.
ssh root@157.245.169.85 -i /home/alfredo/.ssh/laravelapp


Nos authenticamos al servidor remoto esto nos permite confirmar damos yes Ten en cuenta que ocupamos la llave que no tiene .put porque este es la llave privada que no debemos compartir. Ahora por razones de seguridad no se recomienda trabajar directamente con el usuario root por lo que crearemos un usuario 

adduser miusuarioenubuntu este usuario se creó en el directorio /home para verlo ll /home/ (deluser y nombreusuario para eliminar dicho usuario) este usuario no tiene permisos vamos a darle permiso de sudo y haci interactuar con el sistema. adduser miusuarioenubuntu sudo

Para acceder con el nuevo usuario que creamos necesitamos generar llave ssh en nuestra maquina local generamos con ssh-keygen que lo voy a guardar en(/home/alfredo/.ssh/id_rsa): /home/alfredo/.ssh/blogaf una vez generado mostramos la llave con cat ~/.ssh/blogaf.pub para despues copiar y pegar en nuestro servidor remoto a la que entramos como root  y navegamos al directorio del usuario al que le vamos a permitir entrar con ssh en este caso cd /home/miusuarioenubuntu ahi creamos una carpeta oculta con mkdir .ssh dentro creamos un archivo touch authorized_keys en la que pegamos la llave publica guardamos y salimos del servidor remoto exit y intentamos inicial sesion con dicho usuario ssh miusuarioenubuntu@157.245.169.85 -i /home/alfredo/.ssh/blogaf ahora podemos  authenticarnos con el usuario root y miusuarioenubuntu sin embargo es recomendable desactivar el usuario root por temas de seguridad para lo cual entramos al servidor y abrimos el archivo si entraste con el usuario normal es necesario anteponer sudo sudo nano /etc/ssh/sshd_config en el archivo cambiamos la linea que dice PermitRootLogin yes ponemos a PermitRootLogin no despues de esto guardamos y recargamos el servicio para que surtan efectos de configuración con sudo systemctl reload ssh.service y salimos del servidor ahora si intentamos authenticarnos con root ya nos bloquea.

Adicional a esto tenemos dos inconvenientes una el servidor se cierra cada 5 minutos cuando no hacemos ningún movimiento y la otra es que es un poco molesto al iniciar sesion poner el usuario la ip y cargar la llave, bueno para esto navegamos en nuestra maquina local al directorio cd ~/.ssh en el que creamos un archivo nano config en el que pegamos el siguiente código 

ServerAliveInterval 120

ServerAliveCountMax 3

Host carlos

     HostName 157.245.169.85

     User miusuarioenubuntu

     IdentityFile \home\alfredo\.ssh\blogaf

las dos primeras linas solucionan el primer problema y el resto el segundo. Ahora podriamos iniciar sesion de la siguiente manera ssh carlos y el HostName hace referencia a la ip del servidor User  al usuario que creamos dentro del servidor y IdentifyFile a la ubicación de la llave.

Sort:  

Congratulations @afernandez878! You received a personal award!

Happy Birthday! - You are on the Steem blockchain for 1 year!

You can view your badges on your Steem Board and compare to others on the Steem Ranking

Vote for @Steemitboard as a witness to get one more award and increased upvotes!