31 Oct, 2017

Offloading de HTTP/2 SSL con Nginx y Haproxy

Escrito por: admin En: Nginx

Aprovechando que vamos a hablar de http/2 y de SSL me voy a permitir recomendaros que utilicéis Proxys privados para navegar por Internet. Cada vez hay que tomarse los temas de seguridad más en serio, y a día de hoy, navegar alegremente dejando huellas y rastros por todas partes, no es nada serio. Podéis comprar los mejores proxys privados y dedicados en ProxySEO. Tendréis un proxy anónimo, con una IP dedicada para vosotros sólos y a un precio bastante razonable.

Y dicho esto, hoy dejo aquí una pequeña guía de como configurar el offloading de http/2 con Nginx y Haproxy.

Requisitos básicos

  • Versión de Haproxy 1.7.1.1 o superior, que soporte ALPN H2 y PROXY Protocol.
  • OpenSSL 1.0.2 o superior con soporte para ALPN
  • Nginx configurado detrás de Haproxy  con soporte para ALPN H2 y PROXY Protocol
  • Un editor de texto (vi, joe, nano), el que usemos habitualmente.

Voy a dejar sólo una enumeración de los pasos a seguir, para recordar la secuencia cuando tenga que volver a hacerlo, si alguien necesita toda la lista de ejecución de comandos que me la pida en los comentarios y los añado / se los paso sin problema, pero ahora ando justo de tiempo y quiero que sea un post rápido a modo de chuleta.

Secuencia Configuración en sólo 6 pasos

  • Abrimos haproxy.cfg y, si aún no lo habíamos hecho, configuramos SSL Ciphers y Opciones SSL seguras en nuestro Global Block, que nos proporcionará un Grado A en SSLLabs.
  • Ahora añadimos nuestro nuevo frontend HTTP/2 a nuestra configuración Haproxy.
  • Lo siguiente es configurar los backends de nuestro Haproxy.
  • En el paso final prepararemos Nginx para que comunique el proxy y el protocolo HTTP/2
  • Reiniciamos nuestro Haproxy y Nginx y revisamos los logs para ver si hay errores.
  • En el acceso de Nginx en los logs, las conexiones con HTTP/2 deberían contener “HTTP/2.0” y los respaldos: HTTP/1.1.

Si lo vamos a usar también para los subdominios hay que asegurarse que todos ellos tengan su certificado SSL activo y configurado correctamente.

09 Feb, 2017

Pasar de easyapache 3 a easyapache 4

Escrito por: admin En: Cpanel

Si teneis un cpanel con la versión 11.58, es posible pasar de easyapache3 a easyapache4 en cpanel desde la linea de comandos.

Simplemente debeis lanzar desde una terminal con privilegios de root el siguiente comando:

/scripts/migrate_ea3_to_ea4--run
Si por cualquier motivo quieres revertir el cambio:
/scripts/migrate_ea3_to_ea4 --revert --run

Ultimamente veo que hay algunos ataques de fuerza bruta que dejan colgado el RDP service en Windows. Hay algunas soluciones como RDPGUARD que es de pago o basadas en algun tipo de firewall, pero yo he optado por la poor man solution de cambiar el puerto para evitar script kiddies y scanners diversos.

  1. Haceis un archivo de registro llamado comoquerais.reg, el cual cambiara al port 9000 el rdp port en el registro de windows:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp]
“PortNumber”=dword:00002328
2. Haceis otro llamado puertordp.bat con los siguientes comandos:

regedit.exe comollameisal.reg
netsh advfirewall firewall add rule name=”terminal server en puerto 9000” dir=in action=allow protocol=TCP localport=9000
net stop “Servicios de Escritorio remoto”
net start “Servicios de Escritorio remoto”

Los comandos net start son para Windows en Español, en ingles sera algo como “Remote Desktop Services”. Si teneis otras versiones o me equivoco, podeis consultarlo en services.msc (inicio, ejecutar, services.msc) o desde simbolo de sistema con net start a secas.

3. Meteis ambas cosas en un directorio y ejecutais el bat.

Hacia mucho que no actualizaba el blog… A ver si cambia la racha.

De la mano de Scott de Atomic Rocket Turtle, nos encontramos con PHP PANDA, un selector de versiones PHP para FASTCGI en Plesk. Entre las versiones a seleccionar, esta PHP 5.4, 5.5, 5.6 5.3.29 y 5.2.17 (por medio del repositorio de pago Nucleus).

INSTALACION

1) Configurar el repositorio atomic

wget -q -O – http://www.atomicorp.com/installers/atomic |sh

2) Instalar el paquete php-panda

yum install plesk-php-panda

3) Para los suscriptores Nucleos

yum install plesk-php53-panda plesk-php52-panda

Merodeando por los foros de WHT me encontre hace unos meses con un script muy útil que automatiza instalaciones en Centos 5.x/6.X de cosas como Nginx con rotación de logs, MariaDB, los opcode cacher APC o Xcache, ffmpeg y ffmpeg php, php-fpm, el servidor DNS NSD, memcached etc. Esta basado en el script original de BTCENTRAL Centmin, añadiendo algunas mejoras tales como optimización de configuraciones y la instalación de alguna cosa extra.

La URL de centminmod es está.

14 Dic, 2012

Blog desactualizado

Escrito por: admin En: Otros

Hace más de un año que no posteaba nuevas cosas en el blog, principalmente por motivos de un volumen alto de carga de trabajo, poco tiempo libre, falta de motivación…

Espero que a partir de ahora pueda ir poniendo algunas cosas nuevas que me voy encontrando en el día a día 🙂

Siguiendo el post anterior en el que posteaba algunas chuletas de la utilidad de LSI, en este post voy a detallar como crear un RAID1 bajo la herramienta megacli sin tener que reiniciar el servidor:

1) Verificamos el enclosure y slot de los discos:

[root@localhost ~]# /opt/MegaRAID/MegaCli/MegaCli64 -PDlist -a0

Adapter #0

Enclosure Device ID: 252
Slot Number: 0
Enclosure position: 0
Device Id: 4
Sequence Number: 2
Media Error Count: 0
Other Error Count: 1
Predictive Failure Count: 0
Last Predictive Failure Event Seq Number: 0
PD Type: SATA
Raw Size: 111.790 GB [0xdf94bb0 Sectors]
Non Coerced Size: 111.290 GB [0xde94bb0 Sectors]
Coerced Size: 110.827 GB [0xdda7800 Sectors]
Firmware state: Online, Spun Up
SAS Address(0): 0x3d5648536a8b424c
Connected Port Number: 0(path0)
Inquiry Data: GS01103909280024 FM-25S2S-120GBP2

Enclosure Device ID: 252
Slot Number: 1
Enclosure position: 0
Device Id: 5
Sequence Number: 2
Media Error Count: 0
Other Error Count: 1
Predictive Failure Count: 0
Last Predictive Failure Event Seq Number: 0
PD Type: SATA
Raw Size: 111.790 GB [0xdf94bb0 Sectors]
Non Coerced Size: 111.290 GB [0xde94bb0 Sectors]
Coerced Size: 110.827 GB [0xdda7800 Sectors]
Firmware state: Online, Spun Up
SAS Address(0): 0x3d5647506b82414a
Connected Port Number: 1(path0)
Inquiry Data: GS03104110140009 FM-25S2S-120GBP2 2.1

Como se puede observar, son dos discos SSD de 120 gb…

2) Con el enclosure y slot number, lanzamos el comando de creacion de RAID 1 *

/opt/MegaRAID/MegaCli/MegaCli64 -CfgLdAdd -r1 [252:0,252:1] -a0

Adapter 1: Created VD 0

Adapter 1: Configured the Adapter!!

Exit Code: 0x00

* En este caso en concreto, es una simulacion, los discos que pongo arriba ya estan creados en RAID 1.

De esta manera ya tenemos nuestro RAID1 en este disco. Podemos personalizar un poco mas la configuracion del VD modificando algunos parametros tales como Read ahead, Write Cache, BBU etc.

Por ejemplo:

Habilitamos Read Cache en Logical volume 0 y adapter 0:

/opt/MegaRAID/MegaCli/MegaCli64 -LDSetProp -Cached -L0 -a0

Habilitamos Read Cache en todos los VD/LD y controladoras:

/opt/MegaRAID/MegaCli/MegaCli64 -LDSetProp -Cached -LAll -aAll

Set Cache Policy to Cached on Adapter 0, VD 0 (target id: 0) success

Habilitamos la cache en disco todos los VD y Controladoras:

/opt/MegaRAID/MegaCli/MegaCli64 -LDSetProp EnDskCache -LAll -aAll

Set Disk Cache Policy to Enabled on Adapter 0, VD 0 (target id: 0) success

Si queremos, podemos habilitarle Write Cache para mejorar el rendimiento. Es peligroso hacerlo, por lo que es aconsejable que tengamos una bateria en nuestra controladora:

[root@localhost ~]# /opt/MegaRAID/MegaCli/MegaCli64 -AdpBbuCmd -GetBbuStatus -a0

Adapter 0: Get BBU Status Failed.

Exit Code: 0x01

Ouch, en nuestro caso no tenemos una…

Lo habilitamos de igual manera:

[root@localhost ~]# /opt/MegaRAID/MegaCli/MegaCli64 -LDSetProp WB -LALL -aALL

Set Write Policy to WriteBack on Adapter 0, VD 0 (target id: 0) success

Pensandolo bien, queremos quitarlo, nos arrepentimos…

[root@localhost ~]# /opt/MegaRAID/MegaCli/MegaCli64 -LDSetProp NoCachedBadBBU -LALL -aALL

Set No Write Cache if bad BBU on Adapter 0, VD 0 (target id: 0) success

Tags: , ,

En servidores Linux, a veces necesitamos monitorizar nuestro RAID de discos que estan bajo controladoras LSI, ya sea el caso de Supermicro con sus LSI Mezzanine (9260) bajo plataformas 2U TWIN 2, Dell con sus versiones PERC de LSI o las Asus Pike. Para ello, mostrare una chuleta de la utilidad propietaria y “no-muy-amigable” de LSI, Megacli.

Mostrar informacion de adaptadores y status:

[root@localhost ~]# /opt/MegaRAID/MegaCli/MegaCli64 -AdpAllInfo -aAll

Adapter #0

=================================================================== Versions
================
Product Name : MegaRAID SAS 8704EM2
Serial No : P488060910
FW Package Build: 9.0.1-0034

Image Versions in Flash:
================
FW Version : 1.20.32-0512
BIOS Version : 2.01.00
WebBIOS Version : 1.1-49-e_15-Rel
Ctrl-R Version : 1.02-012B
Preboot CLI Version: 01.00-021:#%00004
Boot Block Version : 1.00.00.01-0011
————————————————-

Mostrar el virtual drive/logical drive 0 en el adaptador 0:

[root@localhost ~]# /opt/MegaRAID/MegaCli/MegaCli64 -LDInfo -L0 -a0

Adapter 0 — Virtual Drive Information:
Virtual Drive: 0 (Target Id: 0)
Name :
RAID Level : Primary-1, Secondary-0, RAID Level Qualifier-0
Size : 110.827 GB
State : Optimal
Strip Size : 64 KB
Number Of Drives : 2
Span Depth : 1
Default Cache Policy: WriteThrough, ReadAheadNone, Direct, No Write Cache if Bad BBU
Current Cache Policy: WriteThrough, ReadAheadNone, Direct, No Write Cache if Bad BBU
Access Policy : Read/Write
Disk Cache Policy : Disk’s Default
Encryption Type : None

Mostrar como esta la funcion de autorebuild para los volumenes RAID que tengamos:

[root@localhost ~]# /opt/MegaRAID/MegaCli/MegaCli64 -AdpAutoRbld -Dsply -a0

Adapter 0: AutoRebuild is Enabled.

Habilitar autorebuild para los volumenes RAID que tengamos:

[root@localhost ~]# /opt/MegaRAID/MegaCli/MegaCli64 -Enbl -a0

Adapter 0: AutoRebuild is Enabled.

Deshabilitar autorebuild para los volumenes RAID que tengamos:

[root@localhost ~]# /opt/MegaRAID/MegaCli/MegaCli64 -AdpAutoRbld -Dsbl -a0

Adapter 0: AutoRebuild is Disabled.

Mostrar los dispositivos fisicos (discos) que tenemos conectados a la primera controladora que tengamos:

[root@localhost ~]# /opt/MegaRAID/MegaCli/MegaCli64 -PDList -a0

Adapter #0

Enclosure Device ID: 252
Slot Number: 0
Enclosure position: 0
Device Id: 4
Sequence Number: 2
Media Error Count: 0
Other Error Count: 0
Predictive Failure Count: 0
Last Predictive Failure Event Seq Number: 0
PD Type: SATA
Raw Size: 111.790 GB [0xdf94bb0 Sectors]
Non Coerced Size: 111.290 GB [0xde94bb0 Sectors]
Coerced Size: 110.827 GB [0xdda7800 Sectors]
Firmware state: Online, Spun Up
SAS Address(0): 0x3d5648536a8b424c
Connected Port Number: 0(path0)
Inquiry Data: GS01103909280024 FM-25S2S-120GBP2 2.1
FDE Capable: Not Capable
FDE Enable: Disable
Secured: Unsecured
Locked: Unlocked
Needs EKM Attention: No
Foreign State: None
Device Speed: 3.0Gb/s
Link Speed: 3.0Gb/s
Media Type: Hard Disk Device
Drive Temperature :0C (32.00 F)

Enclosure Device ID: 252
Slot Number: 1
Enclosure position: 0
Device Id: 5
Sequence Number: 2
Media Error Count: 0
Other Error Count: 0
Predictive Failure Count: 0
Last Predictive Failure Event Seq Number: 0
PD Type: SATA
Raw Size: 111.790 GB [0xdf94bb0 Sectors]
Non Coerced Size: 111.290 GB [0xde94bb0 Sectors]
Coerced Size: 110.827 GB [0xdda7800 Sectors]
Firmware state: Online, Spun Up
SAS Address(0): 0x3d5647506b82414a
Connected Port Number: 1(path0)
Inquiry Data: GS03104110140009 FM-25S2S-120GBP2 2.1
FDE Capable: Not Capable
FDE Enable: Disable
Secured: Unsecured
Locked: Unlocked
Needs EKM Attention: No
Foreign State: None
Device Speed: 3.0Gb/s
Link Speed: 3.0Gb/s
Media Type: Hard Disk Device
Drive Temperature :0C (32.00 F)

Enclosure Device ID: 252
Slot Number: 2
Enclosure position: 0
Device Id: 6
Sequence Number: 2
Media Error Count: 0
Other Error Count: 0
Predictive Failure Count: 0
Last Predictive Failure Event Seq Number: 0
PD Type: SATA
Raw Size: 1.819 TB [0xe8e088b0 Sectors]
Non Coerced Size: 1.818 TB [0xe8d088b0 Sectors]
Coerced Size: 1.817 TB [0xe8b6d000 Sectors]
Firmware state: Online, Spun Up
SAS Address(0): 0x81709e2e88d6feb1
Connected Port Number: 2(path0)
Inquiry Data: JK1171YBJ07VSFHitachi HDS722020ALA330 JKAOA28A
FDE Capable: Not Capable
FDE Enable: Disable
Secured: Unsecured
Locked: Unlocked
Needs EKM Attention: No
Foreign State: None
Device Speed: 3.0Gb/s
Link Speed: 3.0Gb/s
Media Type: Hard Disk Device
Drive Temperature :0C (32.00 F)

Enclosure Device ID: 252
Slot Number: 3
Enclosure position: 0
Device Id: 7
Sequence Number: 2
Media Error Count: 0
Other Error Count: 0
Predictive Failure Count: 0
Last Predictive Failure Event Seq Number: 0
PD Type: SATA
Raw Size: 1.819 TB [0xe8e088b0 Sectors]
Non Coerced Size: 1.818 TB [0xe8d088b0 Sectors]
Coerced Size: 1.817 TB [0xe8b6d000 Sectors]
Firmware state: Online, Spun Up
SAS Address(0): 0x81709e2e88d5f7b1
Connected Port Number: 3(path0)
Inquiry Data: JK1171YBJ07ULFHitachi HDS722020ALA330 JKAOA28A
FDE Capable: Not Capable
FDE Enable: Disable
Secured: Unsecured
Locked: Unlocked
Needs EKM Attention: No
Foreign State: None
Device Speed: 3.0Gb/s
Link Speed: 3.0Gb/s
Media Type: Hard Disk Device
Drive Temperature :0C (32.00 F)

En el proximo post mas informacion de como crear un RAID o hacer un autorebuild desde la utilidad Megacli sin tener que reiniciar para entrar en la Web GUI de LSI.

En el ultimo update de Roundcube en Custombuild, nos podemos llegar a encontrar que en esta version en ocasiones no podremos loguear en el webmail Roundcube.

Para arreglar este problema, debemos editar el fichero: /var/www/html/roundcube/config/main.inc.php

En la parte de: $rcmail_config[‘session_lifetime’] = 10;

Lo cambiamos por: $rcmail_config[‘session_lifetime’] = 0;

Los que usamos el repositorio Atomic nos hemos encontrado de un tiempo a esta parte que por defecto ya se esta empezando a usar PHP 5.3.6 como paquete por defecto. Por desgracia, algunas aplicaciones viejas no son compatibles con el, por lo que podemos encontrarnos en situaciones no deseadas.

Para evitar un upgrade a 5.3.6, podemos bajar los paquetes PHP 5.2.17 a un directorio local y hacer el upgrade con yum de la siguiente manera:

yum update php* –exclude=php*5.3*

Categorias

Publicidad

Sobre el blog

Blog personal de Leopoldo Maestro en el que se cubren noticias, curiosidades y experiencias relacionadas con la Administración de Sistemas, Networking, Negocios, Tecnología...

Publicidad