Demo de aplicación Java EE / Ajax / ExtJS (nuevo)
Aquí
una demo de una aplicación web que estoy
haciendo con Java EE, Spring (Core, Webflow, Security y DAO), Hibernate,
Anotations, JSP, AJAX con ExtJS, y BIRT Report. Para entrar usar
usuario admin
contraseña admin,
falta algunas cosas, el ABM de usuarios todavía no está terminado...
Trabajos de la facultad
- Teoría, funcionamiento y
código fuente de un virus básico. Inofensivo,
SOLO CON FINES EDUCATIVOS, no me hago responsable por el mal uso de
este tutorial (para aprender a defenderse, hay que conocer las técnicas
de ataque). Además, yo no lo programé, solo le hice una pequeñas
modificaciones al código para que sea más fácil entenderlo, y armé el
tutorial. No infecta a través de la red, ni se copia en los archivos de
sistema, solo infecta archivos .COM del viejo DOS que estén en la misma
carpeta. Pero es la base para entender como funcionan.
- Fórmulas para cálculos matemáticos en C++ (fuentes, y ejecutables en win pero portable a Linux), código del final de Programación Científica, cálculo de raíces por Newton, integral por trapecio, y cálculos varios con matrices, bastante comentado el código para que se entienda.
- Matrices: aquí el mismo código de matrices del TP de científica, pero con más funciones, los nombres de las funciones los re-escribí en inglés, y un ejemplo bastante básico que no prueba todas las funciones así que a mirar. Este si, además de las fuentes está compilado para Linux, y también puede ser compilado en DOS/Windows.
Código Java
- MySQLResultSet-0.31.jar: Este
jar autoejecutable es un pequeño programita visual hecho con Swing y el
mysql-connector de la base de datos MySQL para escribir querys y
desplegarlos en una tabla. ¿para qué lo hice si ya existe el MySQL
Administrator y otros mucho mejores?, primero porque tenía MySQL en una
PC que no era mía pero como no tenía permisos de administrador no podía
instalar ninguno de estos soft. Al ser un .jar no necesita instalación,
solo doble click en el archivo, o desde consola o un acceso directo:
'java -jar MySQLResultSet-0.3.jar'. Segundo porque hace mucho
que programo en Java pero nunca había entendido bien como usar el
GridBagLayout, y con este programita resolví ese estigma, así que
también es un buen ejemplo de como usarlo. Si abres el jar con el
winzip/winrar/tar... verás también los fuentes .java junto a los
.class, o baja los fuentes MySQLResultSet-0.31-src.zip
por separado. Los paquetes org... y com... son del mysql-connector.
- Link
a una página que explica a la perfección el uso del GridBagLayout,
gracias a este artículo pude hacer la parte visual de mi programita
como quería :).
Resúmenes útiles, scripts Linux...
- Resumen de los comandos y script Unix/Linux más importantes que hasta ahora necesité (todavía lo estoy actualizando a medida que voy necesitando/aprendiendo cosas). Como es un .txt lo puedes ver con lynx, cat, vi, emacs, gedit, kwrite... el que se te ocurra desde una simple consola de texto o en un entorno gráfico.
- Scripts para bloquear un
rango de IPs de nuestra red interna en un servidor a través del
firewall de Linux iptables. Lo bueno es que si queremos bloquear el
acceso a Internet a un sector de nuestra red de por ej. 20 PCs con
número de host contiguos, tendríamos que 20 veces escribir un tedioso
comando con iptables, con este script se bloquea toda peteción de
entreda a nuestro servidor del rango pasado como parámetro (leer los
comentarios de archivo). Para desbloquear usa el script flush, que
elimina toda restricción del firewall. El script bloqmsn bloquea todo
el servicio del MSN a un host, rango o red. También la página del
Hotmail.
- Script /etc/fstab de mi Linux, con este
pude hacer que se monten bien todas las particiones, y que el demonio
kio de KDE me monte/desmonte automáticamente sin problemas desde el
konkeror (con media:/ o sysinfo:/, que sigue las reglas de este
archivo). Para que tome bien mi Pendrive USB, armé este script de reglas para el módulo
del kernel udev, leer documentación al respecto, sirve para que no
cambie de nombre de dispositivo cuando ya lo enchufamos antes, o algun
otro dispositivo ya tomó el nombre 'sda1' que comunmente asigna
Linux a un disco removible USB y otros.
- Código ASCII original, y ASCII extendido. Si querés saber un pequeño
truco para insertar códigos ASCII que no tengas en el teclado, en una
consola Linux, mirá al final de estas notas
mías.
- Algunas cosas más, código de programación gráfica, matrices, y redes neuronales, denmen tiempo para subirlos a la página ...
- Número de puertos y protocolos de red asociados.
- Script/servicio para configurar enlace a Internet mediante una placa de red con IP fija. Ojo, en los archivos correspondiente faltaría configurar los servidores DNS para tener Internet funcionando correctamente, ver notas de comandos linux. Está implementado con el comando 'ip' del paquete 'iproute2'.
- Script/servicio para configurar el firewall
de Linux tanto en forma local para una PC conectada a Internet, como
para un servidor que reenvíe peticiones de una LAN. Permite
configurarlo de forma cerrado, bloqueando todo tipo de tráfico no
permitido explícitamente, modo abierto que cierra de posibles ataques
aunque un poco menos seguro, o sino dejarlo totalmente abierto.
- Scripts para balanceo
de carga de Internet en un servidor con tres enlaces a Internet. El
servidor realiza balanceo de carga de las peticiones de los clientes
conectados a la LAN interna, usa un servidor bind para cachear los DNS
(named) y crear un dominio local, y también tiene un proxy (squid). Hay
otros servicios configurados: SAMBA, DHCP, SOCKs, un segundo proxy
(Delegate) con autenticación de acceso y un script de configuración del
firewall. Para leer una explicación (no completa pero buena) del tema
balanceo solamente, ir al la página de Christoph Simon (en
inglés). Importante: las funciones de multipath cost incorporados en el
kernel de Linux no funcionan bien en servidores con algunos protocolos,
como el del Messenger, tienes que parchear el kernel para que funcionen
bien, con los patchs de Julian
Anastasov. Cada uno de los servicios están configurados en scripts
separados implementados como servicios, así que puedes tomar solo los
que configuran los servicios que te interesen. Actualicé algunos de los
scripts y errores en los archivos, he incluyo unos cambios con respecto
a los íconos del escritorio para acceder a los scripts mediante la
interfaz gráfica, lo cual permite que cualquiera sin saber Linux pueda
operar el servidor.
- Scripts de un servidor más sencillo con un solo enlace a Internet, y otra interfaz conectada a una DMZ, que puede ser usada como enlace en caso de caerse el enlace principal, pero sin balanceo de carga, o un enlace u otro.
- Scripts de un servidor de Internet con bloqueo de contenido, especial para cybers o colegios, u empresas que no quiere que sus empleados navegan por páginas pornos o maliciosas, pierdan el tiempo con el Messenger, Ares, y otros yerbas. El firewall es más restrictivo, y junto con el filtro de contenido, implementado desde el proxy, también evitan virus. Hay un segundo proxy en el puerto 8081 que se puede configurar en los navegadores para ingresar sin restricciones de acceso, pero previa auntenticación con usuario y contraseña, útil para directivos de la institución/empresa. También tiene los otros servicios típicos de un servidor: DHCP, SAMBA y DNS cache y maestro. Esto lo tengo implementado desde ya hace un año en un colegio secundario donde di clases y desde que lo instalé ya casi no caen virus, y mis alumnos me escuchaban en vez de distraerse con Internet a pesar de los retos jeje. Para el bloqueo hay que instalar en el servidor un soft adicional que trabajo en conjunto con el proxy llamado DansGuardian, es open source como todo lo usado aquí.
- Plug-in Aero AIO para el escritorio
de KDE de SuperKaramba que permite monitorear desde el escritorio el
estado de la PC: interfaces de red, discos, consumo y temperatura de
micro... Buenísimo, no lo programé yo, solo lo incluyo porque me parece
muy bueno. Si quieren uno bueno para GNOME (y que también anda en KDE),
les recomiendo GKrellM, búsquenlo en los repo de su distribución, o en
Google para descargar desde las fuentes, muy configurable y más
estable, para monitorear cuatro interfaces de red tuve que cambiar el
Aero AIO por este porque el primero se me colgaba, en cambio para
monitorear hasta tres es más agradable visualmente el Aero, aunque
funciona solamente en KDE ...
</MR>
