Author Archives: Gabriel Amador Garcia

  • 1

Como obtener un certificado HTTPS para tu dominio inmediatamente con let’s encrypt

En una entrada anterior explicamos como conseguir un certificado https para un dominio. Resultó ser un proceso que requería de un servidor de correo y esperar varios días, pero hace poco ha aparecido un nuevo método mucho más rápido y eficiente.

La principal diferencia con los certificados obtenidos mediante startssl, es que estos duran tres meses, pero la renovación es instantánea, por lo que no hay de que preocuparse.

En primer lugar, deberemos descargar el programa con git:

git clone https://github.com/letsencrypt/letsencrypt

nos introducimos en el directorio y ejecutamos:

cd letsencrypt
./letsencrypt-auto

El programa requiere que seamos usuario con privilegios administrativos y además requiere que el dominio apunte a la máquina a la que queremos conseguir su certificado. En caso de estar usando algún servicio como cloudflare, deberás configurar el dns para que apunte directamente a la máquina.

Variando de si tenemos varios dominios configurados o ninguno, el programa pedirá que marquemos que dominios nos interesan o que los introduzcamos manualmente

Lo primero que veremos al no tener dominios configurados en nuestro servidor

Lo primero que veremos al no tener dominios configurados en nuestro servidor

si no tenemos dominios deberemos escribirlo manualmente

si no tenemos dominios deberemos escribirlo manualmente

Después de esto nos pedirá un correo, le damos a siguiente y por último nos preguntará si queremos forzar https o permitir http y https.

Lo más seguro es permitir únicamente https, pero puede darnos problemas en wordpress por ejemplo, por lo que recomendamos probar primero.

Para renovar bastaría con volver a seguir esta guía y listo.


  • 0

Conseguir un certificado SSL válido para tu dominio de forma gratuita

Hace unos días que se puede acceder a nuestro blog con https. Tener HTTPS habilitado en tu sitio web es importante, sobre todo si tratas con usuarios logueandose, como el caso de un foro por ejemplo.

Para conseguir un certificado aceptado por la mayoría de navegadores por defecto, no podemos usar un certificado autofirmado, necesitaremos uno firmado por una autoridad reconocida, y en este caso vamos a usar startssl.

Vamos a necesitar un correo con nuestro dominio [LINK DE LA GUIA AQUÍ], y también configuraremos apache2 para usar el certificado que vamos a conseguir.

Registro en startssl

En primer lugar accedemos a la web de startssl, y pulsamos sobre el botón de login

startsslBotonLogin

 

seleccionamos la opción de sign-up y rellenamos los datos. Tras esto recibiremos un código de confirmación en nuestro correo, por lo que no deberíamos cerrar la página. Una vez completado el registro, se nos añadirá un certificado de identidad al navegador. Es recomendable hacerle una copia de seguridad, proceso que varía según el navegador. Hay que tener en cuenta que este es un archivo privado, debe estar “en un lugar seguro” tanto a la hora de perderse y de que nadie más acceda a él.

El siguiente paso es verificar el dominio, para esto una vez dentro del panel de control seleccionamos validations wizard

 

Captura de pantalla de 2015-08-08 18-09-33

Seleccionamos Domain Name Validation y seguimos los pasos (posiblemente tendremos que crear una dirección de correo tipo webmaster@midominio.es). Revisamos la cuenta de correo e introducimos el código que nos han enviado.

Una vez hecho esto tenemos varias opciones, pero en este caso vamos a optar por hacer nuestro propio certificado y que la entidad nos lo firme, para ello rellenaremos este formulario y ejecutaremos el comando que nos de en la máquina que queremos generar el certificado.

Si en Common Name pusimos maquina, se nos crearán dos archivos: maquina.key y maquina.csr. copiamos el contenido de maquina.csr (ya sea con un cat o descargando el archivo y abriendolo con el bloc de notas).

Volviendo a startssl, vamos a la pestaña certificates wizard, y elegimos Web Server SSL/TLS. Le damos a continuar, y dado que tenemos el CSR en el siguiente paso le damos a skip.

 

Captura de pantalla de 2015-08-08 18-53-46

En el siguiente paso pegamos el contenido del archivo CSR, le damos a continuar. Nos saldrá una lista con los dominios que tengamos, en el caso de que tuvieramos varios. Seleccionamos el dominio objetivo y le damos a continuar. Podemos añadir un subdominio, recomendariamos añadir el www (solo nos queda un poco de siguiente->siguiente).

Es normal que salga un mensaje de advertencia diciendo que el certificado debe ser validado, pero al cabo de unas horas recibimos un correo (en la cuenta que elegimos para verificar el dominio varios pasos más atrás). Si tenemos más subdominios, podemos pedir más certificados luego con el mismo CSR.

Varias horas después, o cuando recibamos el correo, podemos volver a startssl, y una vez logueados, en el menú de toolbox, seleccionamos el certificado que queremos descargar.

La clave pública es la que nos descargamos, y la privada es la que se creó con el nombre maquina.key. Solo nos queda configurar apache o el servidor web que usemos, como nginx. Eso lo explicaremos en la próxima guia

 

 


  • 0

Creación de servidor de starbound en debian 7

Hola! Soy Gabriel, y soy un linuxero jugón. En estos momentos acaba de actualizarse uno de mis juegos favoritos: starbound. Si no te suena, es como si Minecraft y Terraria tuviesen un hijo que quiere ser astronauta, es decir, un juegazo.

Captura de starbound de la página de la tienda

Este tipo de juegos suele ser más divertido jugarlo con compañía, de modo que he decidio montar un pequeño servidor para jugarlo con unos amigos. No quiero usar un pc en mi casa tirando de mi conexión a internet, así que lo montaré en un servidor en la nube. Será una o dos semanas lo que dure “el vicio”, así que como mucho me costará un par de euros alojandolo en digitalocean (si no tienes cuenta, registrate con ese link y gana 10$ de crédito).

Requisitos:

  • Una cuenta de steam con starbound comprado

  • Una máquina linux con debian 7

    Vamos a montar esto en un VPS de 512MB de ram, al cual le añadiremos un poco de swap (en SSD) y quedará perfecto para jugar.

    Empezamos por conectarnos al servidor con superusuario, y si tenemos un sistema de 64 bits hacemos:

    dpkg --add-architecture i386
    apt-get update
    apt-get install lib32gcc1 ia32-libs screen htop
    

    Podemos saltarnos este paso si nuestro debian es de 32 bits.

    Si estáis en digital ocean o algún VPS os recomendaría añadir un poco de swap para que el sistema no se quede sin memoria. Para ello hacemos

    fallocate -l 1G /swapfile
    mkswap /swapfile
    swapon /swapfile
    sysctl vm.swappiness=10
    

    Después, deberíamos editar nuestro archivo fstab y añadir esta línea al final:

    #editamos el archivo /etc/fstab, con nano /etc/fstab y añadimos:
    /swapfile   none    swap    sw    0   0

    También debemos añadir al final del archivo /etc/sysctl.conf la siguiente línea:

    #edita el archivo /etc/sysctl.conf con nano /etc/sysctl.conf y añade al final:
    vm.swappiness=10

    Con esto hemos hecho que el espacio de swap solo se use en caso de que el sistema tenga muy poca memoria libre, útil en nuestro caso.

    Ahora añadiremos un usuario para starbound, por motivos de seguridad.

    adduser starbound

    Ahora nos conectamos al usuario starbound, y lo primero que deberemos hacer será descargar steamCMD, lo cual nos permitirá conectarnos a steam y descargar los archivos necesarios desde la consola, y después ejecutarlo una vez al menos:

    wget http://media.steampowered.com/client/steamcmd_linux.tar.gz
    tar -xvzf steamcmd_linux.tar.gz
    ./steamcmd.sh

    Este último comando se quedará esperando unos minutos, dependiendo de nuestro ancho de banda.
    Una vez cargado nos bastará con escribir exit o pulsar CTRL+C-

    Ahora crearemos la carpeta donde se instalará el servidor, y el script de actualización. Deberás editar la parte referente a tu usuario y contraseña:

    mkdir ~/server
    touch update_starbound.sh
    echo "./steamcmd.sh +login USUARIO CONTRASEÑA +force_install_dir /home/starbound/server +app_update 211820 +exit" > update_starbound.sh
    chmod +x update_starbound.sh
    

    Ahora bastaría con ejecutar el script de actualizar starbound:

    ./update_starbound.sh

    Si, se llama update, pero también nos servirá para instalarlo. Cuando saquen una versión nueva y quieras actualizar, bastará con parar el servidor y luego ejecutar el script.

    Al ejecutar el script nos pedirá nuestro código de steamguard si lo tenemos activo, bastará con mirarlo en el correo. Ahora solo quedaría esperar unos minutos y listo!

    Para ejecutar el juego nos basta con hacer los comandos:

    cd server/linux64/
    screen ./starbound_server
    

    MAGIA, estamos ejecutando el juego en nuestro servidor. Ya nos podemos conectar y jugar.

    Si quisieras podrías cerrar la ventana y se seguiría ejecutando de fondo. Si quieres volver más tarde a la consola del juego basta con que te conectes con el usuario starbound y hagas el comando:

    screen -r

    Y podrías cerrar el servidor haciendo ctrl+c dentro de la consola del servidor.

    Ya solo falta avisar a tus amigos y disfrutar!


    • 1

    Migración de debian a centOS: Preparación

    Estamos planteandonos cambiar el sistema operativo de nuestro servidor principal de debian 7 estable a centOS 6.5. El principal motivo es que queremos iniciar aventuras con el mundo de la virtualización, concretamente, nos llama la atención openstack, y el hecho de que la próxima versión de centOS será soportada durante mucho tiempo. Además queremos añadir un disco duro más para hacer un RAID1 sobre la instalación.

    En primer lugar hemos de hacer una lista de servicios que nuestro servidor actual provee, para que no se nos olvide nada por el camino, y además poder reactivarlos lo más rápido posible. Intentaremos una copia de seguridad de las configuraciones donde sea posible.

    Los servicios a copiar serán:

    • Owncloud: Posiblemente comprimiendo la carpeta y descomprimiendola lo tengamos todo listo.
    • Diferentes webs dentro del servidor principal: se espera que, comprimiéndolas y copiando su base de datos se reactiven con facilidad.
    • Samba: Posiblemente sea más rentable reiniciar la configuración de este programa desde 0.
    • Interfaz web de transmission-daemon: Bastará con almacenar el comando que utilizamos en /etc/rc.local referente al demonio.
    • Munin: Sale más rentable reinstalarlo y reconfigurar el /etc/munin/apache.conf

    Estos son los servicios que tenemos actualmente tiene el servidor principal, al cual esperamos poder añadirle instancias virtuales en la nube.