• Saltar a la navegación principal
  • Saltar al contenido principal
  • Saltar a la barra lateral principal

Blog Gabriel de Bonis

Web Developer, Qlik, Freelancer, IOS & Android Developer

  • Servidores
  • Programación Web
  • Tecnología
  • SharePoint
  • Podcast Bonistir
  • Tecno Arcade

Servidores

Compartir Series de TV de ITunes con Plex y Kodi en Qnap

12/09/2016 by Gabriel Deja un comentario

En este post voy explicar como compartir la misma biblioteca de tus series favoritas de TV para que la puedas usar en Itunes, Kodi y Plex sin problemas.

Si sois usuarios de Mac y utilizáis herramientas de automatización como Hazel o IFlicks, una forma cómoda es decirle a estos programas que una vez procesen el fichero manden dicho video a la biblioteca de Itunes para que ordene de forma ordenada y automática el capitulo de tu serie favorita.

Lo bueno de Plex es que interpreta sin problemas la estructura de carpetas que hace Itunes con las series de TV. El problema lo tiene Kodi, que no entiende como estructura las carpetas de las series en Itunes.

Resolver esto es muy sencillo.

Nos toca acceder al NAS desde linea de comandos.

Primero vamos a la ruta donde almacena el NAS las configuraciones de Kodi:

cd /share/CACHEDEV1_DATA/.qpkg/KODI/root/.kodi/userdata

Una vez dentro de este directorio nos toca editar el fichero «advancedsettings.xml». Yo utilizo el editor nano, este editor no esta instalado por defecto en QNAP, si no tenéis instalado nano usad el editor vi para editar este fichero.

nano advancedsettings.xml

Tenéis que añadir dentro de las etiquetas «advancesettings» la expresión regular que entienda la estructura de las series de Itunes:

<advancedsettings>
    <tvshowmatching>
        <regexp>(?i)[/\\]season[^\w]?(\d{1,2})[^\d]*[/\\](\d\d?)[^\w]([^/\\]*)</regexp>
    </tvshowmatching>
</advancedsettings>

Ya sólo queda que cerréis Kodi y volváis a entrar y cuando escaneeis la biblioteca de vuestras series Kodi las va a interpretar sin problemas.

Comparte esto:

  • Haz clic para compartir en Facebook (Se abre en una ventana nueva) Facebook
  • Haz clic para compartir en X (Se abre en una ventana nueva) X
  • Haz clic para compartir en LinkedIn (Se abre en una ventana nueva) LinkedIn
  • Haz clic para compartir en Tumblr (Se abre en una ventana nueva) Tumblr
  • Haz clic para compartir en WhatsApp (Se abre en una ventana nueva) WhatsApp
  • Haz clic para compartir en Telegram (Se abre en una ventana nueva) Telegram

Me gusta esto:

Me gusta Cargando...

Publicado en: Servidores

Cómo instalar y utilizar LFTP en Qnap

26/08/2016 by Gabriel Deja un comentario

Existen varias formas de descargarte ficheros a tu NAS Qnap usando el protocolo FTP de forma nativa. Lo puedes hacer desde el propio File Station configurando una conexión remota

Captura de pantalla 2016-08-26 a las 18.45.22

Captura de pantalla 2016-08-26 a las 18.45.32

Captura de pantalla 2016-08-26 a las 18.45.42

o con aplicaciones de terceros como Net2ftp.

Captura de pantalla 2016-08-26 a las 18.46.45

El problema viene cuando necesitas conectarte FTP vía TLS a un servidor que tiene un certificado autofirmado. Con ninguna de estas 2 aplicaciones es posible realizarlo. Ante esta situación lo mejor es recurrir al tan socorrido terminal linux e instalar el excelente cliente lftp

  • Lo primero que hay que hacer es instalar de forma manual Entware. (es el sustituto de Optware). Con esta aplicación conseguimos tener un gestor de paquetes para poder instalar cualquier aplicación linux por terminal
  • Una vez hemos instalado Entware accedemos por ssh a nuestro Qnap y ejecutamos lo siguiente:
opkg update
opkg install lftp
opkg install nano

Una vez lo tenemos instalado nos vamos al siguiente directorio:

cd /share/CECACHEDEV1DATA/.qpkg/Entware-ng/etc/

Y creamos si no existe ya el fichero de configuración ftp:

nano lftp.conf

Ponemos en el fichero la siguiente linea:

set ssl:verify-certificate no

Guardamos con Control +x

Y ya solo nos queda asegurarnos que tenemos abiertos los puertos 20 y 21 en nuestro router.

Para conectarte por lftp:

lftp ftp://tu_nombre_usuario_ftp@tu_ip

Una vez conectado ya puedes usar comandos como:

mirror “nombre del directorio a descargar” o get “nombre del fichero a descargar”

Una vez empieza la descarga podemos mandar la aplicación a background con Control + z para así no tener que tener abierto el terminal abierto hasta que finalice la descarga

Comparte esto:

  • Haz clic para compartir en Facebook (Se abre en una ventana nueva) Facebook
  • Haz clic para compartir en X (Se abre en una ventana nueva) X
  • Haz clic para compartir en LinkedIn (Se abre en una ventana nueva) LinkedIn
  • Haz clic para compartir en Tumblr (Se abre en una ventana nueva) Tumblr
  • Haz clic para compartir en WhatsApp (Se abre en una ventana nueva) WhatsApp
  • Haz clic para compartir en Telegram (Se abre en una ventana nueva) Telegram

Me gusta esto:

Me gusta Cargando...

Publicado en: Servidores

Cómo configurar Xiaomi Ants Xiaoyi Smart Camera en Qnap Synology Surveillance Station

16/08/2016 by Gabriel Deja un comentario

En este post voy a explicar cómo utilizar la fantástica cámara de Xiaomi con la aplicación de gestión de cámaras de Qnap Surveillance Station.

La cámara de Xiaomi (version 720P) inicialmente permitía conectarse a ella sin autenticación por medio del protocolo rtsp, en posteriores firmwares Xiaomi bloqueó esta posibilidad.

La dificultad de este tutorial es hacer un downgrade del firmware de la cámara para volver a habilitar esta funcionalidad y así poder conectarte con cualquier programa que admita la retransmisión de imagen por medio de rtsp, por ejemplo Surveillance Station de Qnap o Synology.

IMPORTANTE: El proceso de modificar el firmware de la cámara es un proceso delicado que puede dejar inutilizable tu cámara. No me hago responsable de los posibles daños que se puedan ocasionar en la cámara. 

Aspectos importantes a tener en cuenta:

  • Tienes que conocer que modelo de cámara tienes, si es la china o la internacional (lo puedes ver en el número de serie que viene pegado detrás de la cámara debajo del código QR, si empieza por CN es el modelo chino). En este tutorial se explica el proceso para el modelo chino.
  • Vas a necesitar una tarjeta micro sd, formateada en formato FAT. Esto es un punto clave, yo probé con varias tarjetas micro sd modernas y de gran tamaño y diferentes formatos como exfat y no había forma de actualizar el firmware. Lo pude conseguir sólo con una vieja tarjeta micro sd de un 1GB que estaba formateada en FAT.
  • Vas a necesitar un firmware de Xiaomi que sea compatible con el protocolo rtsp. En esta página os podéis descargar todos los posibles firmwares de la cámara incluso los que admiten el protocolo rtsp. Aunque yo utilicé uno especial modificado que funciona muy bien y es el que voy a explicar en este tutorial: 1.8.6.1C-mod-rtsp
  • También vas a necesitar una versión concreta de la aplicación de de Xiaomi Yi Smart Camera que sea compatible con esta versión de firmware de la cámara. A mi me ha funcionado muy bien con esta versión de la aplicación V1.6.4_20150605 (sacado de este fantástico blog http://www.npirtube.com/). Seguro que funciona que otras versiones pero no lo he probado.

Paso 1:  Resetear la cámara

  • Desenchufa la cámara
  • Quita la tarjeta micro sd de la cámara
  • Enchufa la cámara y mantén pulsado el boton reset un buen rato hasta que parpadee la luz naranja y salga la voz en chino diciendo preparado para conectar
  • Desenchufa la cámara

Paso 2: Poner nuevo firmware

  • Descomprimir el fichero del firmware: https://www.gabrieldebonis.es/wp-content/uploads/2016/08/1.8.6.1C-mod-rtsp.rar
  • Hay un fichero «home» y una carpeta «test»
  • Copiar sólo el fichero «home» en la tarjeta formateada en FAT
  • Con la cámara apagada meter la tarjeta micro sd
  • Encender la cámara.
  • Esperar unos 5-6 minutos sin tocar nada
  • Desinstalar cualquier versión que tengas en el móvil de la aplicación Yiaomi Smart Camera e instalar la que os puesto mas arriba
  • Vincular la cámara con la aplicación
  • Comprobar que la cámara ya tiene ip. Si tu router da una ip del rango de la 192.168.1.0 y no tienes asignada la 128 a otro dispositivo de tu casa es muy probable que te haya dado la 192.168.1.128. Podéis verlo con la aplicación Fing en Android o en la tabla de ip asignadas en tu router.

Paso 3: Habilitar RTSP

  • Saca la tarjeta micro sd de la cámara
  • Borra todo lo que haya en ella
  • Copia la carpeta «test» del fichero comprimido que os pongo mas arriba en la raiz de la tarjeta
  • Apagar la cámara y meter la tarjeta
  • Esperar unos 15 segundos
  • Desenchufar la cámara y quitar la tarjeta
  • Borrar todo el contenido que haya en la tarjeta y volverla a meter en la cámara si queréis

Para probar que todo se ha realizado correctamente puedes probar a conectarte usando el programa VLC:

Captura de pantalla 2016-08-16 a las 11.13.28 Captura de pantalla 2016-08-16 a las 11.14.11

Y os debería aparecer la emisión en directo

Paso 4: Dar de alta en Surveillance Station Qnap

El proceso es muy simple.  Tenéis que poner las siguientes opciones:

  • Marca de cámara: Generic Model
  • Modelo de cámara: RTSP
  • HTTP URL: /ch0_0.h264
  • Dirección IP: La que te ha asignado el router a la cámara, por lo general la 192.168.1.128
  • Puerto RTSP: 554
  • El resto los dejáis tal cual

Captura de pantalla 2016-08-16 a las 11.21.01

 

IMPORTANTE: Cualquier persona dentro de tu red podría ver sin autenticación la emisión en directo de tu cámara. Además si tienes el puerto 554 abierto al exterior también cualquier persona podría visualizar la emisión, tenerlo en cuenta.

-UPDATE: Aqui tieneis método mas fácil de configurar RTSP en esta camaras: https://github.com/fritz-smh/yi-hack. 

 

Comparte esto:

  • Haz clic para compartir en Facebook (Se abre en una ventana nueva) Facebook
  • Haz clic para compartir en X (Se abre en una ventana nueva) X
  • Haz clic para compartir en LinkedIn (Se abre en una ventana nueva) LinkedIn
  • Haz clic para compartir en Tumblr (Se abre en una ventana nueva) Tumblr
  • Haz clic para compartir en WhatsApp (Se abre en una ventana nueva) WhatsApp
  • Haz clic para compartir en Telegram (Se abre en una ventana nueva) Telegram

Me gusta esto:

Me gusta Cargando...

Publicado en: Servidores, Tecnología

.bash_history no se guarda al cerrar el terminal en OSX El Capitán

15/02/2016 by Gabriel Deja un comentario

Desde Yosemite y ahora con el Capitán, me ocurre que cuando cierro el terminal no se guarda el histórico de comandos «.bash_history». Esto es muy molesto ya que me toca reescribir de nuevo todos los comandos que suelo usar frecuentemente cada vez que vuelvo a abrir el terminal

Esto se soluciona cambiando el propietario del fichero:

sudo chown TuNombreUsuario ~/.bash_history

Esto vale para Linux también

Comparte esto:

  • Haz clic para compartir en Facebook (Se abre en una ventana nueva) Facebook
  • Haz clic para compartir en X (Se abre en una ventana nueva) X
  • Haz clic para compartir en LinkedIn (Se abre en una ventana nueva) LinkedIn
  • Haz clic para compartir en Tumblr (Se abre en una ventana nueva) Tumblr
  • Haz clic para compartir en WhatsApp (Se abre en una ventana nueva) WhatsApp
  • Haz clic para compartir en Telegram (Se abre en una ventana nueva) Telegram

Me gusta esto:

Me gusta Cargando...

Publicado en: Servidores

Descomprimir de forma recursiva ficheros .rar desde linea de comandos

27/08/2015 by Gabriel Deja un comentario

La versión de unrar que se descarga desde los repositorios de Linux es muy limitada, para poder descomprimir de forma avanzada usaremos tanto los paquetes unrar como los de 7zip.

Empezamos instalando los paquetes necesarios:

sudo apt-get install unrar-free
sudo apt-get install p7zip p7zip-rar

Para descomprimir ficheros .rar de forma recursiva usando 7zip se haría de la siguiente forma usando el comando find:

find TUDIRECTORIO/ -name '*.rar' -execdir 7z x {} \;

Comparte esto:

  • Haz clic para compartir en Facebook (Se abre en una ventana nueva) Facebook
  • Haz clic para compartir en X (Se abre en una ventana nueva) X
  • Haz clic para compartir en LinkedIn (Se abre en una ventana nueva) LinkedIn
  • Haz clic para compartir en Tumblr (Se abre en una ventana nueva) Tumblr
  • Haz clic para compartir en WhatsApp (Se abre en una ventana nueva) WhatsApp
  • Haz clic para compartir en Telegram (Se abre en una ventana nueva) Telegram

Me gusta esto:

Me gusta Cargando...

Publicado en: Servidores

Configurar Firewall en Ubuntu Server usando Iptables

28/11/2013 by Gabriel Deja un comentario

Iptables es un sistema firewall muy potente incluido en el núcleo de Linux. En este post voy a explicar como configurar Iptables para permitir todos los puertos de salida del servidor y bloquear todos los puertos de entrada dejando sólo abiertos los siguientes puertos:

– Puerto del servicio PING
– Puerto SSH : 443
– Puerto HTTP: 80
– Puerto FTP: 20 y 21
– Plex Media Server
– Samba

Una forma muy cómoda de habilitar estas reglas de firewall es crearse un script sh. Aqui tenéis un ejemplo:

#!/bin/bash
# iptables.sh
#

# limpia todas las reglas / quita el firewall
iptables -F

#política por defecto
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT

#
# Flush (-F) all specific rules
#
iptables -F INPUT
iptables -F FORWARD
iptables -F OUTPUT

#Conexiones establecidas
iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT

#ping
iptables -A INPUT -p icmp --icmp-type 8 -m conntrack --ctstate NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -p icmp --icmp-type 0 -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT

#SSH
iptables -A INPUT -p tcp --dport ssh -j ACCEPT

#samba
iptables -A INPUT -p udp --dport 137 -j ACCEPT
iptables -A INPUT -p udp --dport 138 -j ACCEPT
iptables -A INPUT -m state --state NEW -p tcp --dport 139 -j ACCEPT
iptables -A INPUT -m state --state NEW -p tcp --dport 445 -j ACCEPT


#HTTP
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -j ACCEPT

#FTP
iptables -A INPUT -p tcp --dport 20 -j ACCEPT
iptables -A INPUT -p tcp --dport 21 -j ACCEPT

#plex
iptables -A INPUT -m state --state NEW -p tcp --dport 32400 -j ACCEPT
iptables -A INPUT -m state --state NEW -p udp --dport 32400 -j ACCEPT
iptables -A INPUT -m state --state NEW -p udp --dport 32410 -j ACCEPT
iptables -A INPUT -m state --state NEW -p udp --dport 32412 -j ACCEPT
iptables -A INPUT -m state --state NEW -p udp --dport 32411 -j ACCEPT
iptables -A INPUT -m state --state NEW -p udp --dport 32414 -j ACCEPT
iptables -A INPUT -m state --state NEW -p udp --dport 1900 -j ACCEPT

Una vez creado este fichero lo guardamos como iptables.sh y le damos permisos de ejecución:

sudo chmod +x iptables.sh
sudo ./iptables.sh

Una vez ejecutado el script ya tenemos habilitado las reglas de Firewall  en el servidor. El problema es que estan cargadas en memoria y si reiniciamos o apagamos el servidor perderemos la reglas que hemos creado. Una forma rápida y sencilla de mantener estas reglas habilitadas es haciendo estas reglas de forma persistente.

Creamos un script en «/etc/network/if-post-down.d/iptablessave» que guarde las reglas al apagar la máquina:

#!/bin/sh
iptables-save -c > /etc/iptables.rules
if [ -f /etc/iptables.downrules ]; then
   iptables-restore < /etc/iptables.downrules
fi
exit 0

Luego debemos cambiar los permisos de ese fichero y le damos permisos de ejecución chmod a+x

Y creamos un script que cargue las reglas previamente guardadas en «/etc/network/if-pre-up.d/iptablesload» y tambien le damos permisos de ejecución a este fichero con la opción chmod a+x

#!/bin/sh
iptables-restore < /etc/iptables.rules
exit 0

Comparte esto:

  • Haz clic para compartir en Facebook (Se abre en una ventana nueva) Facebook
  • Haz clic para compartir en X (Se abre en una ventana nueva) X
  • Haz clic para compartir en LinkedIn (Se abre en una ventana nueva) LinkedIn
  • Haz clic para compartir en Tumblr (Se abre en una ventana nueva) Tumblr
  • Haz clic para compartir en WhatsApp (Se abre en una ventana nueva) WhatsApp
  • Haz clic para compartir en Telegram (Se abre en una ventana nueva) Telegram

Me gusta esto:

Me gusta Cargando...

Publicado en: Servidores

Intalar Memcached PHP en Ubuntu Server

18/11/2013 by Gabriel Deja un comentario

Memcached se utiliza para el almacenamiento en caché de datos u objetos en la memoria RAM, reduciendo así las necesidades de acceso a un origen de datos externo (como una base de datos o una API).  Se utliza en muchas aplicaciones web para mejorar el rendimiento. Por ejemplo en Prestashop. En este post explico como instalar Memcahed en un servidor dedicado.

Con estos comandos instalamos Memcahed en el servidor:

sudo apt-get install memcached
sudo apt-get install php5-memcache
sudo /etc/init.d/apache2 restart

Para probar que la instalación se ha hecho correctamente escribimos este comando:

telnet localhost 11211

Si todo se ha instalado correctamente debería salirnos esto por pantalla:

Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.

Comparte esto:

  • Haz clic para compartir en Facebook (Se abre en una ventana nueva) Facebook
  • Haz clic para compartir en X (Se abre en una ventana nueva) X
  • Haz clic para compartir en LinkedIn (Se abre en una ventana nueva) LinkedIn
  • Haz clic para compartir en Tumblr (Se abre en una ventana nueva) Tumblr
  • Haz clic para compartir en WhatsApp (Se abre en una ventana nueva) WhatsApp
  • Haz clic para compartir en Telegram (Se abre en una ventana nueva) Telegram

Me gusta esto:

Me gusta Cargando...

Publicado en: Programación Web, Servidores

Como instalar un servidor FTP en Ubuntu Server usando VSFTPD

12/11/2013 by Gabriel Deja un comentario

VSFTPD se distingue principalmente porque sus valores predeterminados son muy seguros y por su sencillez en la configuración. Actualmente se presume que vsftpd podría ser quizá el servidor FTP más seguro del mundo.

En este post voy a explicar como instalar VSFTPD en Ubuntu Server.

Empezamos con este comando para realizar su instalación:

sudo apt-get update
sudo apt-get install vsftpd

Una vez instalado editamos su fichero de configuración para afinar mas su seguridad:

sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.orig
sudo nano /etc/vsftpd.conf

Nos aseguramos que tenemos habilitados estos parámetros:

anonymous_enable=NO
local_enable=YES
write_enable=YES
secure_chroot_dir=/var/run/vsftpd/empty
connect_from_port_20=YES
pasv_min_port=40110
pasv_max_port=40210

Aqui pongo una breve explicación de estos parametros:

Parámetro anonymous_enable, desactivar acceso a usuarios anónimos, para mayor seguridad.

anonymous_enable=NO

Parámetro local_enable, permitir a los usuarios autenticados tener sus propias carpetas locales.

local_enable=YES

Parámetro write_enable, perrmitir el modo de escritura en su carpeta.

write_enable=YES

También debemos abrir los puertos 20 y 21 para FTP, el puerto 990 para cuando habilitemos a posterior TLS y el rango de puertos 40000-50000 como puertos pasivos. Os remito a mi post de como configurar un firewall en linux usando iptables

Ahora reiniciamos el servidor para que se tengan en cuenta estos cambios:

sudo /etc/init.d/vsftpd restart

El siguiente paso es crear nuestros usuarios FTP para enjaularlos en su propio directorio FTP:

sudo adduser tu_usuario_ftp

Añadir grupo al usuario.

Ahora agregamos el usuario al grupo ftp y en mi caso también al grupo de apache para que pueda escribir en una carpeta de una aplicacion web concreta:

sudo usermod -a -G www-data tu_usuario_ftp
sudo usermod -a -G ftp tu_usuario_ftp

Añadir direcotrio por defecto del usuario.

En mi caso quiero que cada usuario ftp acceda a una carpeta de cada aplicacion web alojada en apache

sudo usermod -d /var/www/tu_aplicacion_web tu_usuario_ftp

Ahora reiniciamos el servidor para que se tengan en cuenta estos cambios:

sudo /etc/init.d/vsftpd restart

Ahora ya podriamos entrar por ftp con este usuario a la carpeta home del usuario creado que la hemos cambiado a una carpeta de una de las aplicaciones web que tengamos alojada en apache.

Ahora tocaría configurar VFTP para que las conexiones siempre vayan cifradas.

Lo primero que tenemos que hacer es generarnos un certificado, os remito a mi post que explica muy bien los certificados ssl

sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/vsftpd.pem -out /etc/ssl/private/vsftpd.pem

Una vez generado el certificado nos toca de nuevo editar el fichero de confiuracion para añadir las siguientes lineas:

sudo nano /etc/vsftpd.conf

Comentamos las siguientes las lineas del fichero:

# rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
# rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key

Y añadimos las siguientes:

ssl_enable=YES
rsa_cert_file=/etc/ssl/private/vsftpd.pem
rsa_private_key_file=/etc/ssl/private/vsftpd.pem
allow_anon_ssl=NO
force_local_data_ssl=YES
force_local_logins_ssl=YES
ssl_tlsv1=YES
ssl_sslv2=NO
ssl_sslv3=NO
require_ssl_reuse=NO
ssl_ciphers=HIGH

Por último nos queda reiniciar el servicio para aplicar los cambios

sudo systemctl restart vsftpd

Ya sólo queda acceder por FTP usando vuestro cliente ftp favorito. Os recomiendo usar Filezilla y cuando configures las conexion marcar la opcion de modo pasivo y aceptar el certificado autofirmado.

Comparte esto:

  • Haz clic para compartir en Facebook (Se abre en una ventana nueva) Facebook
  • Haz clic para compartir en X (Se abre en una ventana nueva) X
  • Haz clic para compartir en LinkedIn (Se abre en una ventana nueva) LinkedIn
  • Haz clic para compartir en Tumblr (Se abre en una ventana nueva) Tumblr
  • Haz clic para compartir en WhatsApp (Se abre en una ventana nueva) WhatsApp
  • Haz clic para compartir en Telegram (Se abre en una ventana nueva) Telegram

Me gusta esto:

Me gusta Cargando...

Publicado en: Servidores

Configurar Servidor de Correo PostFix usando tu cuenta SMTP en Ubuntu Server

29/10/2013 by Gabriel Deja un comentario

Normalmente el servidor de correo electrónico que se instala por defecto en los sistemas GNU/Linux es sendmail. Yo he elegido Postfix porque es mucho más versátil, fácil de instalar y configurar.

Postfix es un agente de transporte de correo (MTA o mailer) de software libre que permite el enrutamiento y envío de correos electrónicos. Postfix fue desarrollado por IBM con el objetivo de que sea una alternativa más rápida, fácil de administrar y segura al ampliamente utilizado Sendmail.

En este post voy a explicar un tipo de configuracion cómoda y rápida utilizando tu cuenta de Gmail para realizar los envíos SMTP del servidor.

Lo primero que tienes que hacer si no lo tienes instalado es instalar postfix y algunos modulos adicionales:

sudo apt-get install postfix mailutils libsasl2-2 ca-certificates libsasl2-modules

Una vez termina la instalación te aparece un asistente donde debemos seleccionar como tipo genérico de configuración: «Sitio de Internet» e indicamos el nombre FQDN del sitio de Internet, por ejemplo: «mail.tudominio.com»

email2

Luego abrimos el fichero de configuración y añadimos las siguientes lineas para habilitar el Relay a tu cuenta de Gmail:

sudo nano /etc/postfix/main.cf
myhostname = mail.tudominio.com
relayhost = [smtp.tu_dominio.com]:587
# enable SASL authentication
smtp_sasl_auth_enable = yes
# disallow methods that allow anonymous authentication.
smtp_sasl_security_options = noanonymous
# where to find sasl_passwd
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
# Enable STARTTLS encryption
smtp_use_tls = yes
# where to find CA certificates
smtp_tls_CAfile = /etc/ssl/certs/ca-certificates.crtmyhostname = fqdn.example.com

Como habrás visto, aún no hemos dicho ni nuestro usuario y contraseña de tu cuenta de correo electronico para que el servidor pueda realizar los envíos, para ello debemos crear el siguiente fichero:

sudo nano /etc/postfix/sasl_passwd

Y añadimos la siguiente línea:

[smtp.tu_dominio_smtp.com]:587    TUUSUARIO@tu_dominio.com:TUPASSWORD

Luego establecemos los permisos al fichero donde hemos almacenado nuestro usuario y contraseña:

sudo chown root:root /etc/postfix/sasl_passwd /etc/postfix/sasl_passwd.db
sudo chmod 0600 /etc/postfix/sasl_passwd /etc/postfix/sasl_passwd.db

Finalmente reiniciamos el servidor de correo para que los cambios tengan efecto:

sudo service postfix restart

Con este comando puedes mandar un email desde linea de comandos para comprobar que todo funciona correctamente:

echo "Prueba de correos desde PostFix" | mail -s "Titulo Email" [email protected]

Comparte esto:

  • Haz clic para compartir en Facebook (Se abre en una ventana nueva) Facebook
  • Haz clic para compartir en X (Se abre en una ventana nueva) X
  • Haz clic para compartir en LinkedIn (Se abre en una ventana nueva) LinkedIn
  • Haz clic para compartir en Tumblr (Se abre en una ventana nueva) Tumblr
  • Haz clic para compartir en WhatsApp (Se abre en una ventana nueva) WhatsApp
  • Haz clic para compartir en Telegram (Se abre en una ventana nueva) Telegram

Me gusta esto:

Me gusta Cargando...

Publicado en: Servidores

Certificado SSL en Servidor Web

17/10/2013 by Gabriel Deja un comentario

En este post voy a detallar como crear un certificado SSL en Ubuntu Server, como enviarlo a una entidad certificadora y como configurar servidor virtual en Apache con el certificado firmado.

Lo primero que tenemos que hacer si no lo tenemos ya habilitado, es habilitar el módulo SSL en Ubuntu Server.  Esto se hace facilmente ejecutando en un terminal el siguiente comando:

sudo a2enmod ssl

Reinicia el servidor para que los cambios tengan efecto:

sudo /etc/init.d/apache2 restart

Ahora toca crear nuestro certificado digital. Para ello y valiéndonos de la estupenda herramienta openssl que viene instalada en Ubuntu Server, nos creamos nuestra clave RSA de 2048 Bit:

openssl genrsa -out elnombrequequieras.key 2048

Ahora generamos la solicitud del certficado CSR para luego mandarla a una entidad certificadora:

openssl req -new -key tukeygenerada.key -out elnombrequequieras.csr

Aquí hay que tener un poco de cuidado al cumplimentar los datos de la solicitud del certificado si luego lo queremos enviar a una entidad certificadora.

Aquí teneis un ejemplo:

Country name: ES (es el codigo del pais de dos dígitos)

State or province: Alicante (nombre completo)

Locality Name: Torrevieja (nombre completo)

Organization name: (el nombre de tu organización)

Organizational Unit name: (lo mismo que antes)

Common name: www.tuweb.com (Es el nombre de de tu web donde se va a instalar el certificado. Muy importante este campo para la validación de la entidad certificadora)

Email Address: Tu email (muy importante este campo para la validación de la entidad certificadora)

Una vez hecho esto tienes 2 posibilidades. Mandar el certificado que has creado a una entidad certificadora o firmarlo tu mismo. La ventaja de mandarlo a una entidad certificadora es que no sale la pantalla de aviso de conexion no verificada, que puede espantar a un visitante no experto:

2011-10-19-09-09-25-5809bb

Si no quieres gastar dinero puedes firmarlo tu mismo con el siguiente comando:

openssl x509 -req -days 365 -in tusolicitudgenerada.csr -signkey tukeygenerada.key -out tucertificado.crt

En mi caso busqué una entidad certificadora que fuese lo mas compatible posible con todos los navegadores web y que a la vez sea muy barata. Aquí hay de todo y de muchos precios y caracteristicas, las mas famosas son Verisign o Truste. En mi caso vi una super barata aquí por unos 5 euros al año que para lo que yo quiero me sobra:

http://www.dondominio.com/products/ssl/comodo-positive-ssl/

El proceso fue muy rápido y sencillo y el mismo dia me enviaron por email el certificado firmado y el certificado con la entidad intermediara. Es decir un fichero .crt y otro .ca-crt

Ahora ya solo queda copiar la clave y los certificados firmados a sus directorios correspondientes en el servidor y configurar un servidor virtual en Apache para que atienda las peticiones https y cifre las conexiones a la página.

Aquí tenes los comandos para copiar la clave y certificado en sus directorios corresponedientes del servidor y establecer los permisos en Ubuntu Server:

sudo mv tukeygenerada.key /etc/ssl/private
sudo mv tucertificadofirmado.crt /etc/ssl/certs/
sudo mv tucertificadofirmadointermediario.ca-crt /etc/ssl/certs/
sudo chown root:ssl-cert /etc/ssl/private/tukeygenerada.key 
sudo chmod 640 /etc/ssl/private/tukeygenerada.key
sudo chown root:root /etc/ssl/certs/tucertificadofirmadointermediario.ca-crt

Aqui tenéis un ejemplo de configuración de servidor virtual en Apache:

<VirtualHost *:80>
        ServerName www.tuweb.com
        RewriteEngine on
        ReWriteCond %{SERVER_PORT} !^443$
        RewriteRule ^/(.*) https://%{SERVER_NAME}/$1 [NC,R,L]
</VirtualHost>

<IfModule mod_ssl.c>
<VirtualHost *:443>
        ServerName www.tuweb.com
        DocumentRoot /var/www

        <Directory /var/www>
                DirectoryIndex index.php
                Options FollowSymLinks Multiviews
                AllowOverride All
                Order allow,deny
                allow from all
        </Directory>

        ErrorLog ${APACHE_LOG_DIR}/tuweb.error.log
        LogLevel warn
        CustomLog ${APACHE_LOG_DIR}/tuweb.access.log combined

        SSLEngine on
        SSLCertificateFile /etc/ssl/certs/tucertificadofirmado.crt
        SSLCertificateKeyFile /etc/ssl/private/tukey.key
        SSLCertificateChainFile /etc/ssl/crt/tucertificadofirmadointermediario.ca-crt
</VirtualHost>
</IfModule>

Una vez reiniciado Apache puedes comprobar que el certificado esta configurado correctamente desde esta página:

http://www.sslshopper.com/ssl-checker.html

Otro punto importante es que si quieres tener multiples certificados SSL corriendo en un mismo servidor que atiende diferentes dominios con un única IP, se necesita añadir esta linea en el fichero de configuracion de Apache.

Es decir editas este fichero:

sudo vi /etc/apache2/ports.conf

Y añadir esta linea:

NameVirtualHost *:443

Comparte esto:

  • Haz clic para compartir en Facebook (Se abre en una ventana nueva) Facebook
  • Haz clic para compartir en X (Se abre en una ventana nueva) X
  • Haz clic para compartir en LinkedIn (Se abre en una ventana nueva) LinkedIn
  • Haz clic para compartir en Tumblr (Se abre en una ventana nueva) Tumblr
  • Haz clic para compartir en WhatsApp (Se abre en una ventana nueva) WhatsApp
  • Haz clic para compartir en Telegram (Se abre en una ventana nueva) Telegram

Me gusta esto:

Me gusta Cargando...

Publicado en: Programación Web, Servidores

  • « Ir a la página anterior
  • Página 1
  • Página 2

Barra lateral principal

Tecno Arcade

Tecno Arcade

Tecno Arcade

Archivos

Feed RSS RSS: Entradas

Feed RSS RSS: Comentarios

Paginas

  • Política de Privacidad

Copyright © 2025 · Genesis Sample Theme on Genesis Framework · WordPress · Acceder

%d