miércoles, 17 de octubre de 2007

Desechando IIS FTP Server por FileZilla 0.9.23

Si deseamos instalar un FTP Server en un Windows Server 2003 quizás nuestra primera opción sea el IIS FTP Server ya que viene con el Sistema Operativo y no necesitaremos comprar nada más; pero después de configurar y batallar un poco con él puede ser que uno termine decepcionándose y se decida a utilizar otro programa.

Un administrador de red esperaría que un FTP Server le permitiera configurar usuarios, grupos de usuarios, carpetas, permisos a éstas, etc. No puedo decir que IIS no lo haga porque sí lo hace, pero de una forma que quizás presente más inconvenientes que ventajas.

IIS permite 3 tipos de configuración con respecto a los permisos por usuario:
- Sin aislamiento. Todos los usuarios entran a una carpeta raíz común, pueden ver todas las carpetas disponibles y entrar en aquellas a las que tengan permiso.
- Aislamiento basado en carpetas. Hay una carpeta raíz común y cada usuario esta asociado a una subcarpeta.
- Aislamiento basado en Active Directory. La configuración FTP para cada usuario es obtenida a través de Active Directory.

La primera opción definitivamente será útil para muy pocos administradores de redes. Sirve solamente para redes muy pequeñas con muy pocos clientes y donde la información no es muy confidencial.

Y aunque las otras dos podrían resolver el problema, la administración es más complicada de lo necesaria, teniendo que utilizar el active directory o comandos especiales para asociar carpetas a los usuarios...en resumen, todo un dolor de cabeza.

Y aunque se logre hacer funcionar, las 3 opciones presentan una característica que para mi gusto es poco deseable: los usuarios y grupos del FTP Server tienen que ser usuarios y grupos creados en el Sistema Operativo, usuarios del dominio o del servidor.

Decidí probar con otro programa, el FileZilla Server 0.9.23, es un programa Open Source; lo instalé, lo configuré y en cuestión de 5 minutos había tomado mi decisión: ¡¡Adios IIS!!

FileZilla cuenta con todas las opciones necesarias para administrar un FTP Server: usuarios, grupos, permisos por carpetas, logs, etc. Todas estas opciones son de fácil uso, amigables y suficientes, al menos para lo que yo necesitaba. Algunos screenshots del software para administración de FileZilla Server:



Si has estado buscando un FTP Server gratis y que satisfaga tus necesidades, te recomiendo que pruebes FileZilla Server, a mí me funcionó. Puedes obtenerlo en http://filezilla-project.org/

lunes, 24 de septiembre de 2007

Instalar PHP5 con IIS 6

Necesitaba el IIS para unas aplicaciones asp que iba a instalar en el servidor, pero estaba a punto de tirar la toalla ya que la configuración del servidor para que corriera PHP5 sobre el IIS 6 se me estaba haciendo imposible. Seguía todos los pasos indicados en todos los sitios de Internet, pero por alguna razón desconocida a mí no me funcionaba. Al intentar ver las páginas en el browser siempre me aparecía: error 500.

Luego de buscar en varios lados, encontré por fin la respuesta: Mi IIS 6 es una aplicación 64 bit y las dll del php son 32 bit. Hay que correr lo siguiente en la línea de comandos para permitir la corrida de 32-bit:

cscript %SYSTEMDRIVE%\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 1

Esto habilitará ambos modos y el PHP funcionará perfectamente.

Artículo completo en: http://www.peterguy.com/php/Install_IIS6.html

lunes, 13 de agosto de 2007

Aprendiendo OpenGL

En marzo de este año comencé a estudiar sobre algo que siempre había querido aprender: Cómo programar en C para Windows y cómo crear gráficos para juegos y cosas similares. Empecé a leer bastante sobre estos temas y después de ver varios ejemplos y tutoriales decidí hacer mis primeras pruebas para un motor 3D.

Mi objetivo final es hacer un motor que en base a una serie de archivos pueda crear un mundo 3D por el que el usuario se pueda mover libremente y que pueda servir como base para la creación de juegos. Necesito una herramienta para crear los objetos, unirlos entre si, agregarlos en el mundo y desplegarlos de manera correcta.

Desde abril de este año dejé tirado todo esto y hasta ahorita decido retomarlo. Pongo aquí algunos screenshots de lo que hice en abril:





Lo hice en C utilizando DevC++ y me sirvió de base principalmente los tutoriales para un simulador espacial en http://www.spacesimulator.net/tutorials.html

Ahora que lo he retomado, pienso hacerlo orientado a objetos en C++ y comenzar a hacer ya en serio el motor 3D. Cuando esté más empapado del tema haré un post con toda la teoría detrás de todo esto.

miércoles, 8 de agosto de 2007

Olvidaste sacar el backup de postgres!!

Puede ser que alguna vez te suceda que has olvidado sacar el backup de tu base de datos en postgreSQL y sucede algo trágico como que se arruina el disco, el Sistema Operativo no arranca, o se te venció la licencia de tu Windows pirateado :P, etc.

Ya no hay manera de entrar al SO y sacar un backup de la base de datos, ¿cómo hacer para recuperar la información?

Si logras recuperar la subcarpeta data almacenada en la carpeta de Postgres (%Program Files%\PostgreSQL\8.0) entonces todavía tienes tu información. No es tan sencillo como instalar postgres y cambiar esta carpeta, puede ser que te pases horas intentando resolverlo de esa forma (yo lo hice); pero el procedimiento es sencillo:

1) Copia la carpeta data que recuperaste en cualquier lado.
2) Instala PostgreSQL
3) Durante el proceso de instalación en la ventana "Installation Options" selecciona "Data Directory", luego presion el botón "Browse" y busca la carpeta que copiaste.
4) En la ventana "Initialize data cluster" desmarca la opción "initialize data cluster"
5) Prosigue con la instalación, reinicia y listo.

Eso resolverá tu problema y tus datos estarán de vuelta.

viernes, 3 de agosto de 2007

Conexión de PHP 5 con SQL Server

Decidí dejar el IIS que viene en el SBS 2003 e instalé Apache 2.0.59 para el sitio web de la empresa. Dado que las páginas serían creadas dinámicamente decidi utilizar PHP 5 y una base de datos SQL Server 2000 con Service Pack 4.

Instalé el PHP e hice todas las configuraciones para que funcionara con el Apache. No es muy complicado, siguiendo las instrucciones que vienen con el PHP se puede hacer sin problemas. Pero a la hora de hacer la conexión con SQL Server no funcionó, incluso siguiendo las instrucciones del PHP.

Cambié el archivo php.ini, habilitando la linea

extension = php_mssql.dll

y nada. Revisé mi configuración de apache, de php, de SQL...todo parecía estar bien. Luego de mucho intentar sin éxito un amigo me dió la respuesta: uno de los archivos del php viene malo. Me mandó el ntwdblib.dll, lo sustituí por el que tenía y listo, la pagina funciona perfectamente.

miércoles, 1 de agosto de 2007

Límite de Microsoft Exchange Database

Cuando todo está funcionando en tu red de manera normal y los usuarios se encuentran contentos por el servicio, surge uno de esos problemas que no tienes ni idea de dónde surgió ni mucho menos como solucionarlo.

Tengo un servidor de dominio con Microsoft Windows SBS 2003. Se que algunos odian Microsoft, pero a veces es necesario manejar sus productos para desenvolverse en algunos sectores del mercado, ... además, algunos de sus productos no son tan malos como se piensa. Pues, SBS 2003 trae Exchange Server que es un servidor de correo. Yo lo tengo configurado, de forma tal que los correos bajan a las PCs desde el servidor de correos externo provisto por el ISP; luego, estos correos son copiados en el Exchange para mantener un backup en caso de ser necesario y además facilita la reubicación de un usuario a una PC distinta o incluso para manejar sus correos en una PC y su laptop personal. Tengo también configurado el Exchange para la salida de los correos a través de SMTP y para manejar el correo interno.

De repente los usuarios reportan que no tienen correo interno y que no pueden enviar correos. Reviso el Exchange y en efecto, el Almacén del Buzón está caído; intento levantar el proceso y arranca, pero unos cuantos segundos está caído nuevamente. El error se debe a un límite de tamaño para la base de Datos de Microsoft Exchange Standard Edition 2003. Al llegar a 16 GB el servicio se cae y no permite almacenar más correos.

Encontré tres soluciones para este problema:
- Comprar el Enterprise Edition que no tiene límite en el tamaño de la base de datos.
- Realizar un ajuste en el registro que permite aumentar el tamaño de la base de datos temporalmente para limpiarla de aquella información que ya no se necesita.
- Actualizar al Service Pack2 que puede llegar a tener un límite de 75 GB.

Probé las dos últimas opciones y funcionan perfectamente.

Microsoft Terminal Server

He estado acostumbrado al Telnet de Unix desde que soy un estudiante; pero jamás me había tocado trabajar con una herramienta de Microsoft para realizar algo similar al Telnet: el Microsoft Terminal Server...

Después de mucho tiempo de luchar intentando configurar este software en Microsoft Windows SBS 2003 para permitir la conexión remota de usuarios a una aplicación de negocios, por fin logré hacerlo funcionar. El único problema es que solamente permitía el acceso remoto de 1 o 2 usuarios simultáneamente, y las necesidades de la empresa eran de 7 a 10 personas trabajando en distintos lugares durante todo el día :(...

Me di cuenta (algo que puede parece obvio pero no para mí que era un ignorante en la materia), que necesitaba comprar licencias por cada usuario que se iba a conectar al Terminal Server...típico de Microsoft...

Pues mandé a comprar las licencias...y me llevo otra sorpresa: no hay manera de introducir estas licencias en el servidor!!, todos los métodos fallaban...hasta incluso después de platicar más de 2 horas con personal de Microsoft fue imposible instalarlas.

Después de mucho buscar respuestas y de un malestar creciente por parte de la gerencia de la empresa...encontré un pequeño pero grandioso artículo en las páginas de Microsoft: Small Business Server 2003 no soporta Terminal Server!!!

Conseguí un Windows Server 2003 para probarlo y...asunto resuelto!!, algo aparentemente sencillo pero que me costó semanas darme cuenta, pedí la licencia lo instalé y listo.

First Post

He decidido comenzar a escribir acerca de las cosas que aprendo o intento aprender relacionadas con los Sistemas Computacionales.

Pienso escribir sobre hardware, lenguajes de programación, aplicaciones comerciales o cualquier otra área con la que me toque luchar y ya sea que consiga o no resultados exitosos, brindar un log que pueda servir a aquellos que visiten este sitio o incluso a mí mismo en el futuro cuando ya se me haya olvidado cómo hacer algo :P.

Los primeros posts serán de cosas con las que he estado trabajando en los últimos meses (no todas tan recientes), y que dado lo díficil de encontrar respuestas acertadas en la Web he decidido resumir toda la información relacionada que me ha servido a mí...