URLs estáticas y agradables para cualquier aplicación web

La idea de este artículo es mostrar un sencillo ejemplo de cómo hacer que los links de nuestras aplicaciones web sean “bonitos”, algo así como los que podemos utilizar con WordPress. De tal manera no tendríamos links como estos:

http://www.sitio.com/index.php?accion=consultar&objetivo=personas

Sino algo estéticamente más agradable como:

http://www.sitio.com/personas/

¿Qué necesito?

Es necesario tener en cuenta los prerrequisitos para poder hacer esto. Para este ejemplo voy a suponer que la aplicación la estás haciendo sobre el servidor Apache, y que estás programando en PHP+MySQL. Necesitas:

  • Manejar la mayor parte del trabajo con el archivo index.php. Esto más que un requisito es un consejo. Cuando estés desarrollando aplicaciones en PHP es recomendable que la mayor parte del sistema tenga que ser procesado inicialmente por este archivo, el cual se encargará de manejar todas las peticiones y utilizar los módulos que se necesiten. Esto, por supuesto, NO quiere decir que TODO el código vaya dentro del archivo index.php; una buena práctica es separar el código en módulos y llamarlos con funciones como include o require.
  • Es necesario tener instalado el mod_rewrite, el cual se utilizará desde un archivo .htaccess. El ModRewrite es un módulo para Apache que por lo general se configura (definir reglas) en el archivo httpd.conf, pero es posible poner una configuración ModRewrite en cualquier directorio de nuestro servidor web dentro del archivo .htaccess.
  • Puesto que de acuerdo al string que pasemos en la URL se debe determinar qué hacer, es necesario hacer algo de esto:
    • Hacer que dentro de la base de datos la llave primaria de la tabla a consultar sea una cadena de texto, ó
    • Hacer otro campo en la tabla de MySQL aparte de la llave primaria

Ejemplo

Para nuestro ejemplo necesitamos un servidor Apache con ModRewrite, PHP y MySQL. Lo primero es crear la base de datos, así:

Continuar leyendo «URLs estáticas y agradables para cualquier aplicación web»

Manual de seguridad, optimización de Apache, PHP y MySQL

Curso de seguridad php y mysql
optimización de Apache, PHP y MySQL

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»

Hacking Exposed Linux (3rd Edition)

Hackinosinuxrdtion Hacking Exposed Linux (3rd Edition)

Aqui os dejo este pedazo de eBook de Hacking Exposed Linux.

Author: ISECOM
Paperback: 813 pages
Publisher: McGraw-Hill Osborne Media; 3 edition (July 15, 2008)
Language: English
ISBN-10: 0072262575
ISBN-13: 978-0072262575
Format: pdf
Details:
This authoritative guide will help you secure your Linux network–whether you use Linux as a desktop OS, for Internet services, for telecommunications, or for wireless services. Completely rewritten the ISECOM way, Hacking Exposed Linux, Third Edition provides the most up-to-date coverage available from a large team of topic-focused experts. The book is based on the latest ISECOM security research and shows you, in full detail, how to lock out intruders and defend your Linux systems against catastrophic attacks.
Secure Linux by using attacks and countermeasures from the latest OSSTMM research
Follow attack techniques of PSTN, ISDN, and PSDN over Linux
Harden VoIP, Bluetooth, RF, RFID, and IR devices on Linux
Block Linux signal jamming, cloning, and eavesdropping attacks
Apply Trusted Computing and cryptography tools for your best defense
Fix vulnerabilities in DNS, SMTP, and Web 2.0 services
Prevent SPAM, Trojan, phishing, DoS, and DDoS exploits
Find and repair errors in C code with static analysis and Hoare Logic

Descargar Hacking Exposed Linux (3rd Edition)

Linux Server: Los Mejores Trucos – Book

Prólogo
¿Por qué Linux Server. Los mejores trucos?
Cómo usar este libro
Cómo está organizado este libro
Convenciones utilizadas en este libroCapítulo 1. Autenticación en Linux

1. Desactivar cuentas de usuario instantáneamente

  • Desactivar cuentas en sistemas con autenticación local
  • Desactivar cuentas en sistemas con autenticación distribuida

2. Edite su fichero de contraseñas para tener mayor control de acceso
3. Denegar cualquier acceso en menos de un segundo
4. Personalizar la autenticación con PAM

  • Visión general sobre PAM
  • Ficheros de configuración PAM por aplicación/servicio
  • Módulos PAM usados por el proceso login
  • Configuración y más configuración
  • ¿Y si faltan ficheros de configuración PAM?

5. Autenticar usuarios Linux con un controlador de Dominio Windows

  • Requisitos software
  • Configuración crítica de Samba para usar autenticación Windows
  • Actualizar /etc/nsswitch.conf
  • Integrar el PAM pam_winbind.so en la autenticación de sistema
  • Iniciar el demonio winbindd
  • Unirse al dominio
  • Probar la autenticación Windows
  • Depurar problemas de autenticación Windows

6. Centralizar inicios de sesión con LDAP

  • Instalar clientes y servidores LDAP
  • Configurar un servidor LDAP
  • Migrar entradas de usuarios, contraseñas y grupos a un servidor LDAP
  • Actualizar sistemas clientes para usar autenticación LDAP

7. Proteger su sistema con Kerberos

  • Instalar Kerberos
  • Instalar y configurar un servidor Kerberos
  • Instalar y configurar clientes y aplicaciones Kerberos
  • Usar Kerberos para autenticación de inicio de sesión

8. Autenticar a los amantes de NFS con NIS

  • Instalar clientes y servidores NIS
  • Configurar un servidor NIS
  • Configurar un cliente NIS

9. Sincronizar datos LDAP con NIS

  • El código
  • Ejecutar el código


Capítulo 2. Conectividad remota con interfaz gráfica (GUI)
10. Acceder a sistemas remotos con VNC

  • Entender el proceso de inicio de VNC
  • Iniciar su servidor VNC
  • Conectarse a un servidor VNC
  • Personalizar el entorno X Window de su servidor VNC
  • Detener su servidor VNC
  • Optimizar el rendimiento de VNC

11. Acceder a servidores VNC vía Web

  • Instalar clases Java y ficheros asociados para el servidor VNC

12. VNC seguro vía SSH

  • Reenviar puertos VNC remotos a su equipo actual
  • Reenvío VNC público o privado
  • Reenviar puertos sin inicio de sesión remoto
  • Mejorar el rendimiento usando compresión
  • Optimizar las actualizaciones gráficas entre el servidor y el visor

13. Iniciar automáticamente servidores VNC bajo demanda

  • Integrar Xvnc con inetd o xinetd
  • Activar XDMCP
  • Iniciar el visor
  • Solución de problemas con el inicio de Xvnc

14. Poner sus estaciones de trabajo a dieta de cliente ligero

  • Entender el proceso de arranque del cliente LTSP
  • Descargar e instalar el software LTSP
  • Configurar e iniciar el servidor LTSP
  • Preparar el medio de arranque del cliente LTSP
  • Arrancar un cliente LTSP

15. Ejecute Windows sobre la red

  • Abrir su conexión
  • Corresponder los dispositivos locales con su sesión remota

16. Conexiones X seguras y ligeras con FreeNX