Configurar IP en linea de comandos

Hola Mundo:

Feliz año nuevo a todos. Parto este año con una ayuda de memoria y escribiendo el post 500 de la
historia del blog.
El siguiente artículo trata sobre cómo configurar una interfaz de red a través de la línea de comandos. Esta modalidad es muy útil para cuando necesitemos configurar parámetros de red en entornos Windows PE, como es el caso de la distribución de sistemas operativos en ambientes que no tienen. DHCP y se tiene que ir al servidor WDS o SCCM a buscar la imagen.
Sin más preámbulo, empecemos.

Antes de partir hay que conocer cuáles son las interfaces disponibles en el equipo

El mount Netsh interface show interface nos dará la información de todas las interfaces de red que tiene el equipo. Tomar nota del elemento que está en Nombre interfaz.
El comando para configurar la red debe seguir la sintaxis: netsh interface ip set address «NOMBRE INTERFAZ» static IP MASCARA GATEWAY 
Este comando sirve para configurar una ip estática. Para DHCP, cambiar static por DHCP y borrar el resto.
Sin DNS configurado no es posible resolver el nombre del servidor. Este comando debe seguir la siguiente sintaxis:
Netsh interface ip add dns «NOMBRE INTERFAZ» DNS validate=no
Si acceden a revisar la configuración verán los parámetros configurados.
Feliz 2020.

Mover la ubicación de la base de datos de SCCM

Hola Mundo

La organización del almacenamiento de un servidor de base de datos es crucial para el rendimiento y
correcta operación de ésta. Requiere de constante monitoreo y cambios, en el caso de ser necesario, para mantener la continuidad operativa del servicio.

Mover el archivo de datos y archivo de log de una base de datos de un directorio a otro puede sonar una tarea trivial. Este tipo de operación requiere de una planificación previa, ventana de mantenimiento para bajar el servicio y un plan de rollback, en caso de fallo.

La base de datos de SCCM es crucial para el funcionamiento de la plataforma completa. Es aquí donde se almacenan todos los datos y configuraciones. Por lo que un mal funcionamiento de la base de datos, provocaría un comportamiento errático, o bien, dejaría fuera de servicio a la solución.

Cuando se mueve la base de datos de SCCM de un directorio físico a otro, conservando el servidor, es necesario volver a setear la propiedad TRUSTWORTHY de la base de datos.

Básicamente, esta propiedad indica si la instancia de SQL Server confía en la base de datos o no. Para la operación de la solución, la instancia debe confiar en la base de datos posterior al cambio.

En el caso que no se configure la propiedad, se generarán muchos problemas al momento de distribuir  una actualización a través del rol Software Update Point y WSUS.
El error que van a encontrar es:

*** *** Unknown SQL Error! SMS Provider 14-03-2012 07:56:47 2016 (0x07E0) 
*~*~*** Unknown SQL Error! ThreadID : 2016 , DbError: 50000 , Sev: 16~*~* SMS Provider 14-03-2012 07:56:47 2016 (0x07E0)
*** [24000][0][Microsoft][SQL Server Native Client 10.0]Invalid cursor state SMS Provider 14-03-2012 07:56:48 2016 (0x07E0)
*~*~[24000][0][Microsoft][SQL Server Native Client 10.0]Invalid cursor state *** Unknown SQL Error! ThreadID : 2016 ,
DbError: 0 , Sev: 0~*~* SMS Provider 14-03-2012 07:56:48 2016 (0x07E0)

El caso está descrito en el sitio de soporte de Microsoft y tiene los pasos precisos para la solución
https://support.microsoft.com/en-us/help/3057073/after-the-system-center-2012-configmgr-sql-site-database-is-moved,-you-cannot-create-a-software-update-package-or-application

Espero que les sirva.

Configurar la suscripción de reportes con SQL Server y SSRS

Hola Mundo:

Todo lo que se conecta a SQL Server genera datos que pueden ser presentados en un lindo reporte a través de SQL Server Reporting Services. Puedes trabajar con herramientas intuitivas y orientados a los usuarios no técnicos, como Report Builder. 
En este artículo veremos como crear suscripciones a los reportes ya generados. 
Las suscripciones son agendas que se crean para despachar, habitualmente, por correo electrónico algún reporte. Por ejemplo, envío de reporte de ventas de la semana anterior todos los días lunes a las 9:00 AM.
A nivel de base de datos, se requiere que el servicio SQL Agent esté corriendo. Este servicio es el encargado de administrar los job. Desde el punto de vista del reporte, es el servicio que se encarga de ejecutar la consulta en la base de datos al momento de generar y enviar el reporte.
Este servicio debe ser inicializado en la herramienta SQL Server Configuration Manager:
Para el envío de correos se necesita un servidor SMTP y una cuenta de correo para el envío (no es necesario que esta cuenta exista en el servidor). Los parámetros del servidor deben ser configurados en la herramienta Reporting Services Configuration Manager:
Sender Address es una dirección ficticia. Es para que muestre un origen válido. SMTP Server es la dirección del servidor SMTP. 
En el sitio web de administración de los reportes de SQL Server Reporting Services, buscamos el reporte que se quiere enviar por correo y en el menú contextual, se selecciona la opción de  suscribir.
Primera acción a realizar, es configurar los parámetros de envío de correo y forma. Esto incluye: destinatario, asunto y comentario. También hay que configurar el formato de envío del reporte y agenda (programación). Importante: El portal funciona de forma óptima con Internet Explorer.
Luego hay que configurar los parámetros, si es que el reporte los requiere:
Una vez que está todo OK, la configuración queda guardada apretando el botón Aceptar.
Eso por hoy.
Cambio y fuera.

Soporte para USB en VM sobre Virtualbox

Hola Mundo:

Esto me trajo muchos problemas por meses. El problema consistía en que la máquina virtual con Windows 7 Pro x64 corriendo sobre Virtualbox en Mac OS X no reconocía los dispositivos que les conectaba por USB.
Mismo escenario con Windows 10, pero con Windows XP Pro x86 funcionaba sin problemas. Podía conectar dispositivos y funcionaba de 10.

Investigando en Internet, llegué a la plataforma de bug tracker de Virtualbox y encontré que un problema parecido había sido solucionado hace años.

Necesitaba trabajar con los USB en mi VM y estuve meses con una carpetita de paso en el host físico para hacer ahí el intercambio de los archivos a las unidades de almacenamiento.
Era bien molesto, porque necesitaba hacer otras cosas con otro tipo de dispositivos que en Mac no podía hacer.

Se me ocurrió hacer lo siguiente: En el apartado de puertos  USB me aseguré que la máquina tuviera soporte para USB y seleccioné la opción de USB 2.0 (EHCI) Controller y habilité un filtro para cada dispositivo USB que necesitaba usar en el momento. El resultado quedó así:

Maravillosamente funcionó. Windows 7 fue capaz de instalar los controladores que necesitaba para hacer funcionar el dispositivo.

¡Espero que le sea de utilidad!

Chau

Windows 8.1 y Conexion VPN: HORROR

Hola Mundo:
Acostumbro, al igual que muchos informáticos, a trabajar con conexiones VPN con clientes y en mi casa también tengo un pequeño servidor VPN. En mi equipo tengo instalado Windows 8.1 y de un momento a otro me arrojó el siguiente error al intentar conectarme a alguna conexión VPN:

Error 720: A connection to the remote computer could not be established You might need to change the network settings for this connection

Eliminando las conexiones y volviéndolas a crear no solucionó el drama.
Revisando vi que en mi administrador de dispositivos habían dispositivos que no funcionaban de forma correcta.
A partir del antecedente, investigué en internet y habían personas que tenían el mismo problema y los solucionaron siguiendo los siguientes pasos:
  1. Tomar nota de los dispositivos de red, en el administrador de dispositivos, que presentan falla (icono amarillo de exclamación).
  2. Abrir el Editor de Registro de Windows (regedit) y exportar la clave: HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlClass{4d36e972-e325-11ce-bfc1-08002be10318} 
  3. Abrir el archivo .reg exportado y buscar cada uno de los dispositivos que presentan problemas. Fijarse bien en DriverDesc.  
  4. Con los dispositivos identificados en el archivo (Los mios era 0015, 0016 y 0017) los elimino en el editor de registro.
  5. Actualizar el driver de cada uno de los dipositivos con problemas desde el administrador de dsipositivos.
Después de esto funcionó y estoy seguro que a ustedes también les va a funcionar.
Chau!

    Solucionando problemas de VSFTPD

    Hola a todos!

    Hasta el momento no conozco servidor de ftp de rápida instalación funcional que vsftp. Está presente en los repositorios  de todas las distribuciones conocidas de GNU/Linux.

    Lo vengo instalando desde el 2008, mas o menos, y hoy en mi trabajo me toca usarlo y siempre se me presentan los mismos problemas.

    La implementación más reciente es de hace algunas horas y está levantado sobre Ubuntu 13.04 en Windows Azure.

    A continuación, hay algunos problemas con su solución.

    VSFTPD: «500 OOPS: priv_sock_get_cmd»

    Es un bug que está presente en la versión 3.0.0 y corregido en la versión 3.0.2, que hace uso de un modulo del kernel (seccomp), pero solo si es 64 bits.

    En el archivo /etc/vsftpd.conf se debe agregar la siguiente línea

    seccomp_sandbox=NO

    Luego reiniciar el servicio y funcionará.

    Fixing 500 OOPS: vsftpd: refusing to run with writable root inside chroot ()

    Esto ocurre  cuando el directorio del usuario donde se hace el chroot tiene permisos de escritura, pero no se establece en el archivo de configuración que se puede escribir en el directorio.

    Agregar la siguiente linea en el archivo /etc/vsftpd.conf 

    allow_writeable_chroot=YES

    Reiniciar el servicio y funcionará.

    Error: Failed to retrieve directory listing

    Error cuando no está bien configurado las características de servidor pasivo.

    Agregar estas línas al archivo /etc/vsftpd.conf

    connect_from_port_20=YES

    pasv_enable=YES

    pasv_addr_resolve=YES

    pasv_address=ftp.miservidor.com

    pasv_min_port=4040

    pasv_max_port=4041

    Abrir los puertos TCP 20, 4040 y 4041 en el firewall y reiniciar el servidor.

    Eso

    Chau!

    DNS en Linux sobre Windows Azure

    Después de estar peleando toda una mañana con esto, lo hice funcionar. Increíblemente NO existe documentación al respecto. Así que espero ser uno de los primeros que publique algo que de luces de como hacerlo.

    Para este caso estoy usando una máquina pequeña y Ubuntu Linux 12.04 LTS.

    Este artículo lo separaré en tres partes: Puertos, Instalación y Configuración.

    Puertos
    El servicio de DNS trabaja en el puerto 53 sobre los protocolos TCP y UDP. Así que abrirlos es necesario desde el panel de administración de Windows Azure. No es necesario abrirlos en la máquina virtual.

    Instalación
    «apt-get» ¿Les suena? Bueno si. Nada mas ejecutar
    apt-get install bind9
    y todo quedará ok.

    Configuración
    Aquí se pone entrete la cosa. Cualquier error provocará que, sencillamente, el servicio no arranque. Vamos por pasos:
    Añadir zonas
    Agregar la zona en el archivo /etc/bind/named.conf.local de la siguiente forma:
    zone "midominio.com" {
    type "master";
    file "db.midominio.com";
    };

    Configurar zonas
    Crear el archivo db.midominio.com en /var/cache/bind/ y poner la siguiente información
    $ORIGIN midominio.com.
    $TTL 86400;
    @ IN SOA ns.midominio.com. info.midominio.com.(
    20131126 ;serie
    6H ;refresco
    1H ;reintentos
    2W ;expira
    3H ;minimo
    )
    @ NS ns.midominio.com.
    ns A -- Direccion IP --
    @ A -- Direccion IP --
    www CNAME midominio.com.

    Reinicar el servicio. Una vez que se reinicie sin errores, ya se puede indicar a un dominio que su servidor dns primario es ns.midominio.com

    Chau.

    Aumentar el tamaño de archivos de subida en PHP

    Generalmente es un valor que está definido en 2MB por motivos varios: seguridad, carga del servidor, valor óptimo, etc.

    Muchas aplicaciones, por ejemplo, phpMyAdmin hace uso de la subida de archivos para importar un archivo SQL. Puede darse el caso que sea un volcado completo de 400MB y la configuración de PHP no soporte el tamaño.

    Para lograr esto hay que editar las siguientes lineas en el php.ini

    upload_max_filesize
    memory_limit
    post_max_size

    En estas tres líneas se debe asignar un valor según las necesidades.
    Esto funciona tanto en cualquier servidor, ya sea una máquina con Windows, Linux, BSD o cualquier otro sistema.

    IIS, PHP, SMTP en Windows Server

    Hola Galaxia:

    En el post de ayer  les contaba que estaba trabajando en la instalacion de un servidor para un cliente sobre Windows Server. Ayer dejé todo instalado y para hoy tenía planificada la configuración de cada uno de los componentes.

    Todo bien, hasta que probé enviar correos desde PHP usando la funcion mail() y me arrojaba error. Abrí el log de errores de php (C:WindowsTempphp53_errors) y me encontré con los siguientes errores y cómo los fui resolviendo.

    PHP Warning:  mail(): «sendmail_from» not set in php.ini or custom «From:» header missing in mail.php
    Este error hace referencia a que no se configura ninguna dirección de emisor en la función o en el archivo php.ini. Si se configura en la función, se establece un emisor por cada función y se se configura desde el archivo php.ini, se configura una dirección por defecto para todas las funciones mail.
    Abrí el archivo php.ini y busqué la linea sendmail_form = y le agregué una dirección de correo electrónico. Realicé de nuevo la prueba y en el log me apareció el siguiente mensaje.

    PHP Warning:  mail(): Failed to connect to mailserver at «localhost» port 25, verify your «SMTP» and «smtp_port» setting in php.ini or use ini_set() in mail.php
    Esto no me hacía tanto sentido, porque estaba seguro que el Firewall estaba configurado y que el php.ini estaba configurado para usar el puerto 25. Lo que no estaba seguro era si el servicio de SMTP estaba funcionando. Abrí la consola de administración de IIS 6 (Si, IIS 8 usa la consola de IIS 6 para administrar el SMTP. Sabrá el diablo por qué es así). Me aparecía que SMTP Virtual Server #1 estaba abajo. Lo hice arrancar. Probé nuevamente y encontré el siguiente mensaje de error.

    PHP Warning:  mail(): SMTP server response: 550 5.7.1 Unable to relay for [mi direccion de correo personal] on mail.php
    Esto menos sentido me hacía si se supone que todo estaba andando. El problema estaba en que en el SMTP no había configurado para que hiciera relay. Para solucionarlo, en la misma ventana de administración de IIS6, abrí las propiedades del servidor de SMTP, en la pestaña de «Access» abrí la configuración de los permisos del Relay y agregué la dirección 127.0.0.1 para que usara ese servidor SMTP. Revisar la imagen de referencia:

    Relay SMTP IIS
    Relay SMTP IIS

     

    Con eso el servidor ya fue capaz de enviar un correo y recibirlo en mi gmail 🙂

    Espero que a ustedes les sirva también.

    Habilitar PHP para Apache en Red Hat Enterprise Linux

    Linux Linux Linux Linux Linux Linux Linux Linux Linux Linux Linux Linux  …. Como en lo viejos tiempos jeje.

    Pareciera como si fuera ayer las horas invertidas aprendiendo sobre la consola y la infinidades que se pueden lograr. Lo bueno, es que ahora en mi empleo actual tienen mucho fruto.

    Hoy me tocó habilitar un servidor web sencillo para un cliente. Se necesitaba de Apache2 con soporte para PHP sobre un Red Hat Enterprise Linux.

    Primero instalé lo necesario:

    yum install httpd php

    Después habilité el soporte para php desde /etc/httpd/httpd.conf  agregando esta línea en el archivo:

    AddType application/x-httpd-php .php

    Al final reinicé el servicio

    service httpd restart

    Para hacer una pruebita loca, cree un archivo llamado prueba.php en /var/www/html/
    y el contenido del archivo es:

    Y en el navegador se debe ver así:

    phpinfo

     

    En otras distros es mas simple 🙂