Completisimo Curso de aprendizaje de Mantenimiento, seguridad & Optimización de un Portal Web basado en Lenguaje PHP. Excelente contenido , material ideal para todos aquellos Webmaster que programan sus webs en este magnifico lenguaje!!
Consta de dos partes bien diferenciadas. La primera -teórica- describe el estado del arte de la seguridad en aplicaciones web así como conceptos generales de seguridad informática. Se incluyen también algunas referencias y breves descripciones de herramientas útiles para la auditoría de aplicaciones web, además de una guía de administración para la creación de un entorno seguro bajo Apache, PHP y MySQL. La segunda parte -práctica- consiste en auditar el código de dos portales web de características similares, depurarlo, proponer mejoras funcionales, y posteriormente implementarlas. Como parte del desarrollo, se han escrito y experimentado con rutinas de protección genérica contra “injecting”, para PHP. Continuar leyendo «Manual de seguridad, optimización de Apache, PHP y MySQL»
Hacer backup en plesk de todo el servidor con pleskbackup
Aqui os dejo el como hacer backup a todo un servidor web corriendo con el famoso panel de control Plesk:
Ejecutando la siguiente linea de comandos se hace un backup de todos los dominios, clientes, emails, en un servidor Plesk, pero se omiten los archivos logs de los diferentes servicios:
pleskbackup –server -c –skip-logs
Podeis mirar las distintas opciones que nos da el comando pleskbackup en la guia oficial de la linea de comandos de Plesk.
Proteger carpetas en servidor web Apache con .htaccess y .htpasswd
Aprende a proteger directorios de tu página web mediante archivos .htaccess de una forma sencilla. Algunos paneles de control tienen la opción integrada, pero nunca está de más saber hacerlo manualmente. Sobre todo porque así es más extendible.
Requisitos
- Al menos la enseñanza primaria o equivalente
- Tener conceptos mínimos sobre .htaccess y .htpasswd y como editarlos
- Necesidad de proteger una carpeta del alcance de los mirones, o encontrar diversión en hacerlo
- 7 minutos de su tiempo
Conociendo a .htaccess y .htpasswd
Así se llaman los dos archivos más importantes para modificar cosas en nuestro servidor. No tienen ni extensión ni nombre, simplemente son así. Contienen texto plano, por lo que pueden ser editados con el Bloc de Notas, el Programmers Notepad, Gedit, nano, wim, … cualquier cosa que trabajo con texto plano (Word NO) El archivo .htaccess además de para proteger carpetas, sirve entre otras cosas para utilizarlo con el mod_rewrite de Apache y nos salgan urls cortas, como la de este tutorial . En esta ocasión, .htaccess establecerá el tipo de permiso necesario y qué usuarios pueden acceder a qué archivos, mientras que .htpasswd guardará el nombre de usuario y contraseña de cada uno de ellos.
.htaccess
Continuar leyendo «Proteger carpetas en servidor web Apache con .htaccess y .htpasswd»
Valores para optimizar servidor Apache
Antes de pasar nuestro servidor Web a entornos de producción en Internet deberíamos modificar:
Parámetros por defecto de timeout y keep Alive
Timeout 120
KeepAlive Off
MaxKeepAliveRequests 100
KeepAliveTimeout 15
Un timeout de 2 minutos para una página web es demasiado, al igual que 15 segundos para mantener una conexión Keep Alive.
Timeout 60
KeepAlive On
MaxKeepAliveRequests 1000
KeepAliveTimeout 5
Por defecto damos demasiada información de nuestro servidor cambiamos:
ServerSignature On
ServerTokens OS
Por
ServerSignature Off
ServerTokens Prod
No space left on device: mod_rewrite… Solución para servidor web Apache
En alguna ocasión me he topado con que al reiniciar Apache después de matar todos los procesos con killall -9 httpd el servidor Apache no quiere arrancar, Apache start [FALLA], dando en el log el error de más arriba. Se trata de que Apache no ha liberado recursos del sistema y debemos hacerlo nosotros. En concreto se trata de semáforos. Linux tiene dos comandos que me ayudan a hacer esto (ipcs e ipcrm). Por si acaso antes vamos a eliminar los procesos zoombie:
Ver procesos zoombie:
# ps -A -ostat,ppid,pid,cmd | grep -e ‘^[Zz]’
Matar procesos zoombie (tardará un poco):
# kill -HUP `ps -A -ostat,ppid,pid,cmd | grep -e ‘^[Zz]’ | awk ‘{print $2}’`
Este es el error al reiniciar o arrancar Apache:
[crit] (28) No space left on device: mod_rewrite: could not create rewrite_log_lock Configuration Failed
Solución:
Revisar los semáforos de Apache
# ipcs -s | grep apache
Eliminamos todos los semáforos de los procesos de Apache
# ipcs -s | grep apache | perl -e ‘while () { @a=split(/\s+/); print `ipcrm sem $a[1]`}’
Iniciar Apache
# service httpd start