Black log

Archivo para enero, 2010

Configuración rápida de Virtual Host en Apache

Escrito por Sergio Sainz el 07-01-2010

Tras tener Apache+php+mysql instalado, llega el momento de crear alojamientos virtuales para nuestros dominios. Apache guarda los archivos de configuración de los Virtual Host en  /etc/apache2/vhosts.d/ si no hemos configurado ninguno allí veremos las plantillas que podemos usar como base (una con ssl y otra sin ssl).

En el ejemplo, voy a crear un archivo de configuración para BlackSlot en openSuse.

# Nos movemos al directorio de configuración vhost
cd /etc/apache2/vhosts.d
# Copiamos la plantilla a un nuevo archivo
cp vhost.template blackslot.conf
# En otra distribución seguramente sea /var/www/vhosts/
mkdir -p /srv/www/vhosts/blackslot/

Es importante tener en cuenta que el archivo de configuración debe terminar con el sufijo “.conf” para que Apache lo lea.

Debemos editarlo y sustituir el dominio de ejemplo “dummy-host.example.com” por el nuestro, así como las rutas que en nuestro ejemplo es /srv/www/vhosts/blackslot/. Sobre todo establece correctamente el DocumentRoot y donde dice <Directory “/srv/www/vhosts/dummy-host.example.com”>

Reiniciamos Apache y listo.

/etc/init.d/apache2 restart

Sin comentarios | Archivado como Sistemas TI | 07/01/2010

Instalar extensión php-memcached en Suse Linux

Escrito por admin el 06-01-2010

Aunque este tutorial está escrito pensando en una distribución Suse y openSuse, se podría aplicar a otras como debian.

Antes de nada, tenemos dos opciones a elegir: php-memcached o php-memcache. Las dos funcionan igual en la capa de programación php, pero tienen las siguientes particularidades:

php-memcache: Es la extensión más antigua de las dos, no requiere librerías adicionales.

php-memcached: Es la extensión más nueva, pero desarrollada por Andrei Zmievski (desarrollador del core de php) y requiere libmemcached. Yo he elegido esta, porque me da más confianza que Andrei sea el responsable de su desarrollo.

* Nota: si usas symfony 1.2 o inferior, debes usar la extensión php-memcache

Comencemos pues descargando la extensión libmemcached y la compilamos.


wget http://download.tangent.org/libmemcached-0.35.tar.gz

tar -xvf libmemcached-0.35.tar.gz

cd libmemcached-0.35/

/configure

make

make install

Ahora nos tendríamos que bajar la extensión php-memcached del sitio web pecl, pero antes debemos instalar las librerías de desarrollo de php, para poder compilar dicha extensión.

#instalamos las librerías de desarrollo de php
zypper install php5-devel

#ahora nos bajamos la extensión de pecl
wget http://pecl.php.net/get/memcached-1.0.0.tgz
cd memcached-1.0.0/

#hacemos un phpize para generar el configurador
phpize

#compilamos
/configure
make
make install

Por último debemos crear el archivo /etc/php5/conf.d/memcached.ini e indicar lo siguiente en él para que php active esta extensión:

extension=memcached.so

Ahora basta con reiniciar el servidor web para disponer de esta extensión habilitada.

1 comentario | Archivado como Desarrollo web, Sistemas TI | 06/01/2010

Instalar LAMP (Linux+Apache2+MySQL5+PHP5) en openSuse 11.2

Escrito por Sergio Sainz el 05-01-2010

1. Instalar los paquetes necesarios:


# zypper install apache2 php5 mysql

2. Levantar apache y mysql:


# rcapache2 start
# rcmysql start

3. Creamos una configuración segura para mysql:


# mysql_secure_installation

Aquí nos pedirá crear una clave para el usuario root de mysql, eliminaremos los usuarios anonimos y la bd ‘test’ y deshabilitaremos el login remoto con privilegios de root.

4. Abrimos el puerto 80 (HTTP)


# SuSEfirewall2 open EXT TCP http

# SuSEfirewall2 stop

# SuSEfirewall2 start

5. Probamos que todo está instalado correctamente:


# touch /srv/www/htdocs/phpinfo.php
# echo '<?php phpinfo(); ?>' > /srv/www/htdocs/phpinfo.php

Y accedemos desde el navegador a http://ipserver/phpinfo.php. Aquí, fijaros que PHP5 y mysql figuren como instalados.

3 comentarios | Archivado como Sistemas TI | 05/01/2010

Swift Mailer es probablemente la mejor librería para enviar correos mediante smtp y sendmail que existe para php. Escrita por Fabien Potencier, CEO de Sensio Labs y Lead developer del framework Symfony para php.

El siguiente código nos permite enviar correo usando el servidor smtp de gmail con esta herramienta:


 $transport = Swift_SmtpTransport::newInstance('smtp.gmail.com',
                                               465,
                                               'ssl')
              ->setUsername('usuario@gmail.com')
              ->setPassword('tu contraseña');

 //Creamos el mailer pasándole el transport con la configuración de gmail
 $mailer = Swift_Mailer::newInstance($transport);

 //Creamos el mensaje
 $message = Swift_Message::newInstance($subject)
             ->setFrom(array('tuemail@blackslot.gov' => 'Blackslot'))
             ->setTo($to_addresses)
             ->setBody($body);

 //Enviamos
 $result = $mailer->send($message);

2 comentarios | Archivado como Desarrollo web | 04/01/2010

Generar un archivo CSR en IIS 6.0

Escrito por Sergio Sainz el 04-01-2010

IIS > Sitios Web > Propiedades del sitio > Seguridad de directorios > Certificado de servidor… > Crear un nuevo certificado > Preparar la petición ahora pero enviarla más tarde > Poner un para el certificado y dejar longitud en bits de 1024 > Rellenar el resto de datos que solicita el formulario hasta finalizar.

Es IMPORTANTE que donde pregunta el “Nombre común” (Common name) se ponga el nombre COMPLETO del dominio para el que vamos a solicitar el certificado, por ejemplo www.blackslot.com

Salvar la key privada

MMC > Complemento Certificates > Seleccionar Request > All task > Export

Más info en:

https://support.comodo.com/index.php?_m=knowledgebase&_a=viewarticle&kbarticleid=248&nav=0,1,33

Sin comentarios | Archivado como Sistemas TI |

Crear un certificado SSL autofirmado en IIS7

Escrito por Sergio Sainz el 04-01-2010

1. Abrir el Administrador de IIS, seleccionar el nodo y abrir Certificados de servidor.

2. Seleccionar Crear un certificado autofirmado. Una vez allí pedirá el nombre que deseamos poner al certificado, yo he elegido el hostname de mi propia máquina.

3. Seleccionar el sitio web donde se desea instalar el certificado, yo he seleccionado Default Web Site, luego ir a Enlaces…

4. Pinchar en Agregar.

5. Seleccionar tipo https, el puerto por defecto será el 443. Y luego escoger el nombre del certificado.

5. Tras aceptar, en el panel de acciones aparece una nueva opción que enlaza al sitio seguro.

Si se desea requerir siempre el acceso por https, ir a Configuración de SSL.

6. Seleccionar Requerir SSL y listo.

1 comentario | Archivado como Sistemas TI |

A veces nos puede resultar útil obtener el nombre de la máquina hypervirtualizada desde la misma.

Lo podemos solucionar con este código powershell:


$Name = Get-ItemProperty -path "HKLM:SOFTWAREMicrosoftVirtual MachineGuestParameters" -Name VirtualMachineName

$Name.VirtualMachineName

Sin comentarios | Archivado como Sistemas TI | 03/01/2010