#php | for | sysadmins
Ing. Fernando Díaz Sánchez
Red Hat Specialist | RHCSA - RHCE
#php | for | sysadmins
Que es PHP
PHP (acrónimo de "PHP: Hypertext Preprocessor") es un lenguaje open
source interpretado, de alto nivel, embebido en páginas HTML y
ejecutado en el servidor.
Principales Ventajas
Lenguaje sencillo de aprender
Soporte OOP
Amplio soporte para Bases de Datos
Gran variedad de extensiones
Buena Documentación
Buena Comunidad
#php | for | sysadmins
Usos Frecuentes
* Scripts de lado del Servidor:
- Uso mas frecuente (Programación Web)
- Requerido: un servidor web, un navegador y el interprete de php
- Genera HTML a través de código embebido
* Scripts desde línea de comandos:
- Para automatizar tareas de administración de servidores
- No requiere de un servidor web ni de un navegador
- Ideal para sysadmins
* Aplicaciones Desktop:
- Creación de aplicaciones con GUI
- Se utiliza PHP-Gtk
- Ideal para amantes compulsivos de PHP
#php | for | sysadmins
Herramientas Disponibles
Zend Studio
PHP Storm
BBEdit
phpDesigner
Rapid PHP
Komodo IDE
Netbeans
vi, vim
nano
notepad, etc
#php | for | sysadmins
¿Y qué es un sysadmin?
#php | for | sysadmins
Expectativa
#php | for | sysadmins
Realidad
#php | for | sysadmins
PHP & Sysadmins
* PHP es un excelente navaja suiza para los sysadmins
- Procesamiento de Texto Potente
- Acceso a BD simple
- Tareas programadas poderosas
- Trabaja con varios protocolos de red
* PHP también sirve para cosas mas elaboradas
- phpmyadmin
- pfsense
- cacti, etc
.
#php | for | sysadmins
PHP + OS
* Línea de comandos
- Newt
- Readline
* Compresión
- Bzip2, Rar, Zip, Zlib
- Phar
* Sistema de Ficheros
- Directorios
- Fileinfo, Filesystem, Inotify
- xattr
* Ejecución de programas
#php | for | sysadmins
PHP + Bases de Datos
* Gran Número de Extensiones:
- MySQL,
- IBM DB2,
- Postgresql,
- Informix,
- Mssql,
- OCI8,
- SQLite, etc
* Soporte de Capas Abstractas: DBA, dbx, ODBC, PDO
* Tools: phpmyadmin, phppgadmin, etc
#php | for | sysadmins
PHP + Networking
Soporta funciones básicas de redes
Funciones DNS
Funciones GetHost
Funciones Syslog
SNMP
Sockets
Servicios de Autenticación
Kerberos
Radius
.
#php | for | sysadmins
PHP + Email
* Principales Extensiones
- Mail
- Cyrus
- IMAP
- Mailparse
* Algunas Herramientas
- PHPMailer
- Roundcube
- SquirrelMail
.
#php | for | sysadmins
PHP + Web
cURL
HTTP
Extensiones Apache & IIS
Servicios Web
PHP + Otros Servicios
SSH
FTP
LDAP
SVN
#php | for | sysadmins
PHP Casos Prácticos
DHCP Leases
Wireshark Export Tool
Proxy Pac Dinámico
Procesamiento de Texto
Monitoreo de Radioenlaces No Administrados
Google API REST
#php | for | sysadmins
PHP Casos Prácticos | DHCP Leases
El formato dhcp.leases es
vertical
No incluye OUI
Contiene información
irrelevante para la mayoría
de los casos
Crece constantemente
Es desesperante buscar
patrones con editores de
texto en situaciones de
emergencia
#php | for | sysadmins
PHP Casos Prácticos | DHCP Leases
Aplicación php para reporte horizontal personalizado
#php | for | sysadmins
PHP Casos Prácticos | Wireshark Export Tool
Una tarea común es la
generación de estadísticas
de tráfico
Wireshark provee una
interfaz grafica poderosa
para brindar esta
información
Pero suele consumir muchos
recursos, la información es
de solo lectura en su GUI
También permite exportar y
así elaborarlo manualmente
en excel
#php | for | sysadmins
PHP Casos Prácticos | Wireshark Export Tool
Aplicación php para generación de estadísticas de tráfico de red
#php | for | sysadmins
PHP Casos Prácticos | Proxy Pac Dinámico
El archivo proxy.pac es un
archivo que contiene
información sobre
especificaciones de métodos
de acceso a internet
El archivo es estático
Los cambios afectan a todos
los usuarios
Se requiere asistencia por
cada PC para asignar un
servidor proxy diferente y
por cada browser
#php | for | sysadmins
PHP Casos Prácticos | Proxy Pac Dinámico
#php | for | sysadmins
PHP Casos Prácticos | Proxy Pac Dinámico
Aplicación php para
generación de contenido
proxy.pac dinámico
Se evalúa la IP de cada request
Se busca el IP en la tabla IP-
PROXY
Si no encuentra nada, se
coloca un proxy por defecto
Se puede personalizar de
cualquier manera
#php | for | sysadmins
PHP Casos Prácticos | Monitoreo de Radioenlaces
Algunas veces, no se tiene
acceso a ciertos dispositivos
de red
Sin embargo, es necesario
conseguir información por
otros medios
Algunos modelos antiguos de
RE no proveen SNMP
PHP permite fácilmente
recuperar información
suministrada vía web
#php | for | sysadmins
PHP Casos Prácticos | Monitoreo de Radioenlaces
Interfaz Web de un Radioenlace marca Canopy (Motorola)
#php | for | sysadmins
PHP Casos Prácticos | Monitoreo de Radioenlaces
Aplicación php para recuperar datos de RE y graficarlos en consola
#php | for | sysadmins
PHP Casos Prácticos | Procesamiento de Texto
En algunas situaciones, se requiere evaluar y procesar información generada por
herramientas de terceros de forma manual
Esta forma de trabajar consume mucho tiempo
También es propenso a errores humanos
PHP permite mejorar esta situación
#php | for | sysadmins
PHP Casos Prácticos | Procesamiento de Texto
Aplicación php para procesar caídas de servicios
#php | for | sysadmins
PHP Casos Prácticos | Google API REST
Google permite acceder a la
mayoría de sus servicios
mediante APIs vía REST
(representational state
transfer)
En algunas situaciones, los
sysadmin pueden sacar
provecho de estas APIs
PHP hace posible trabajar con
este tipo de aplicaciones
Google tiene disponible
google-api-php-client para
usar sus APIs
#php | for | sysadmins
PHP Casos Prácticos | Google API REST
Requerimientos Previos
Crear un proyecto en Google Developer Console (https://console.developers.google.com)
Habilitar las APIs que se desean usar
Configurar las credenciales Oauth
(https://developers.google.com/identity/protocols/OAuth2ServiceAccount)
Descargar Google APIs Client Library for PHP
(https://developers.google.com/api-client-library/php/start/installation)
#php | for | sysadmins
PHP Casos Prácticos | Google API REST
Aplicación php para enviar SMS gratuitos vía Calendar
#php | for | sysadmins
PHP Casos Prácticos | Google API REST
#php | for | sysadmins
PHP Otros Casos Prácticos
Generador de Backups Remotos
Monitoreo de Temperatura de Servidores
Recolector de imágenes RRD
Sistema de Gestión SVN personalizado
Recolector de datos para Capacity Planning
… y mucho más
#php | for | sysadmins
¿Qué necesito para usar PHP como sysadmin?
Instalar PHP en el Sistema Operativo
(http://php.net/manual/es/install.php)
Revisar la documentación oficial
(http://php.net/manual/es/index.php)
#gracias | grep flisol
Ing. Fernando Díaz Sánchez
Red Hat Specialist | RHCSA – RHCE
<
[email protected]>
Código
http://www.4shared.com/zip/XvqkCsouce/code_php_flisol_2015.html
Comentarios de: php for sysadmins (0)
No hay comentarios