sábado, 23 de julio de 2011

Primera salida con Pedro

Hemos navegado en el Castañuela, un SOMO 28, impecable y cuidado, amarrado en el Puerto Deportivo de Las Palmas. Era la primera salida con Pedro, su armador, un tío fantástico que sabe muchísimo de navegación y de "las cosas de los barcos". Navegar con Pedro es toda una experiencia, nos reimos muchísimo y estuvimos navegando unas 4 horas que se fueron volando. Pedro ha hecho muchísimos traslados de veleros entre la Península y Canarias y vicerversa. Su sueño es cruzar el atlántico en breve. La navegación fue muy sencilla, salimos del puerto deportivo de Las Palmas de Gran Canaria a las 16.30 horas (GMT) con viento flojo pero suficiente para rascar unos 4,5 a 5 nudos. Dirección, primero 90º (Fuerteventura) y luego mantuvimos los 60º. A las 2 horas viramos hacia el lado de estribor y cogimos el rumbo de regreso, 240º. A las 19.30 horas (GMT) amarramos en el puerto.

Bueno, esperamos repetir pronto. A ver si terminamos de poner a punto el Diablillo y navegamos juntos en mi barco. Pedro es de esas personas que recien conocidos y te saldrías a navegar 100 días con el sin tocar puerto.

Somo 28, Castañuela

martes, 24 de mayo de 2011

Instalar phpmyadmin en Ubuntu

Requisitos:
  • Hemos de tener instalado el servidor MySQL en nuestro UBUNTU
Procedimiento:
  • shell> sudo apt-get install phpmyadmin
  • Nos preguntará si deseamos instalarlo y responderemos afirmativamente
  • Nos preguntará por la contraseña de root de MySQL, le ponemos la que dimos de alta al instlar nuestro servidor MySQL.
  • Nos preguntará por una contraseña de administrador 'root' para poder acceder a phpmyadmin desde internet. Poned una contraseña segura porque. Y luego os pedirá que la repitáis.
  • Ahora os pedéis conectar a vuestra base de datos poniendo la dirección:
  • Es muy conveniente forzar SSL cada vez que os conectéis a phpmyadmin automáticamente mediante el protocolo seguro 'https'. Para esto tenéis que tener habilitado SLL en vuestro servidor apache (esto se hace como se explica en Habilitar SSL en Apache).De esta manera la comunicación con vuestro servidor irá encriptada y no tendréis problemas de 'fisgoneo'. Para hacer esto tenéis que editar el archivo 'config.inc.php' de la siguiente manera:
    • shell> cd /etc/phpmyadmin
    • shell> vi config.inc.php
    • Tenéis que incluir la siguiente linea al final del archivo:
             $cfg['ForceSSL'] = true;
    • Y ya está!!

    Habilitar SSL en Apache (Ubuntu) sin Certificados

    Vamos a habilitar el protocolo SSL en Apache sin certificado sirve para codificar la comunicación con nuestro servidor web pero sin que la persona que accede pueda comprobar la propiedad del servidor. Esto sirve fundamentalmente para asegurar el flujo de información con nuestro servidor. Para nosotros no es necesario saber si nuestro servidor es nuestro servidor :-), por lo tanto es útil y sencillo esta opcion de no utilizar certificado.

    Los pasos son (en Ubuntu):
    • Cargamos el modulo SSL en Apache de la siguiente manera:
      • shell> a2enmod ssl
    • Reiniciamos el servidor Apache:
      • shell> /etc/init.d/apache restart
    • Activamos el sitio seguro por defecto
      • shell> a2ensite default-ssl
    • Reiniciamos el servidor Apache:
      • shell> /etc/init.d/apache restart

    Y ya está, así de sencillo. Ahora podemos acceder a nuestro servidor con https:// y asegurar nuestro flujo de datos con el servidor. Al no tener certificado y el navegador no poder comprobar la identidad del servidor, nos aparecerá la primera vez un mensaje advirtiendonos que dependiendo del navegador debemos proceder de diferentes maneras para continuar con la navegación al sitio.

    martes, 15 de febrero de 2011

    Dominios Virtuales (Virtual Host) en Apache2 en Debian/GNU Linux (p.e. UBUNTU)

    Cuando vamos a atender varias dominios desde el mismo servidor web que presentarán diferentes páginas webs necesitamos crear HOST VIRTUALES.

    Pongamos por ejemplo que tenemos un servidor web con apache2 instalado y queremos publicar 2 páginas webs diferentes, una para www.primersitio.com y otra para http://www.segundositio.com/.

    Hemos de decidir donde vamos a tener alojados los archivos del sitio web que vamos a servir para cada uno de los sitios (dominios). En nuestro caso vamos a alojarlos dentro del directorio /home/www/, y para esto creamos un directorio para cada uno de los sitios.

    Creación de los directorios necesarios para las dos páginas

    sudo mkdir /home/www
    sudo mkdir /home/www/www.primersitio.com

    sudo mkdir /home/www/www.segundositio.com

    Apache guarda los fichero de configuración de cada SITIO VIRTUAL en el directorio /etc/apache2/sites-available/. Dentro de este directorio hay un archivo de configuración llamado default que pertenece al sitio web por defecto, el genérico y que si lo abrimos y vemos en su interior, veremos que está configurado para /var/www/


    Ahora copiamos el fichero de configuarción default para adaptarlo a nuestros sitios de la siguiente manera:


    sudo cp /etc/apache2/sites-available/default /etc/apache2/sites-available/www.primersitio.com
    sudo cp /etc/apache2/sites-available/default /etc/apache2/sites-available/www.segundositio.com

    Editamos el archivo de configuración de cada sitio para adaptarlo a sus necesidades.

    sudo vi /etc/apache2/sites-available/www.primersitio.com


    1. Configuramos el ServerAdmin:

    ServerAdmin hostmaster@primersitio.com


    2. Configuramos el ServerName:


    ServerName www.primersitio.com

    3. Si queremos que el dominio primersitio.com (sin el www) también acceda a los contenidos configuramos el ServerAlias


    ServerAlias primersitio.com

    4. Cambiamos todas las repeticiones de /var/www por /home/www/. El archivo quedaría:

    <VirtualHost *:80>
            ServerAdmin hostmaster@primersitio.com
            ServerName www.primersitio.com
            ServerAlias primersitio.com


            DocumentRoot /home/www/www.primersitio.com
            <Directory />
                    Options FollowSymLinks
                    AllowOverride None
            </Directory>
            <Directory /home/www/www.primersitio.com/>
                    Options Indexes FollowSymLinks MultiViews
                    AllowOverride None
                    Order allow,deny
                    allow from all
            </Directory>


            ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
            <Directory "/usr/lib/cgi-bin">
                    AllowOverride None
                    Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
                    Order allow,deny
                    Allow from all
            </Directory>


            ErrorLog ${APACHE_LOG_DIR}/error.log


            # Possible values include: debug, info, notice, warn, error, crit,
            # alert, emerg.
            LogLevel warn


            CustomLog ${APACHE_LOG_DIR}/access.log combined


        Alias /doc/ "/usr/share/doc/"
        <Directory "/usr/share/doc/">
            Options Indexes MultiViews FollowSymLinks
            AllowOverride None
            Order deny,allow
            Deny from all
            Allow from 127.0.0.0/255.0.0.0 ::1/128
        </Directory>


    </VirtualHost>

    Para el fichero de configuración www.segundositio.com hacemos lo mismo que lo que hemos hecho para www.primersitio.com

    A continuación desabilitamos el sitio default

    sudo a2dissite default
    sudo a2dissite default-ssl

    Ahora tenemos que habilitar en apache nuestros dos nuevos sitios viturales:

    sudo a2ensite www.primersitio.com
    sudo a2ensite www.segundositio.com

    Por último tenemos que recargar los ficheros de configuración de apache de la siguiente manera:

    sudo /etc/init.d/apache2 reload

    Si queremos creamos los fichero index.html para que tener una página inicial hasta que pongamos los fichero de cada sitio.

    sudo vi /home/www/www.primersitio.com/index.html

    y pegamos dentro el siguiente contenido:

    <html>
    <head>
    <title>Primer Sitio</title>
    <body>
    <center>PRIMIER SITIO</center>

    </body>
    </html>


    Hacemos lo mismo para el dominio www.segundositio.com.

    Y ya está. Deberíamos poder acceder poniendo los dominios en el navegador a su correspondiente site virtual.

    lunes, 14 de febrero de 2011

    Permisos de Magento Connect

    Para que funcione correctamente Magento Connect debemos darle permiso para que escriba en cualquier parte de la instalación de Magento, esto es, cualquiera de los archivos que están dentro del directorio donde se encuentra instalado. Como esto es una verdadera amenaza en la seguridad, es conveniente que cuando terminemos de trabajar con el Magento Connect devolvamos los permisos a su estado seguro. Para hacer esto en Linux (yo, personalmente en UBUNTU) desde la "consola":

    DAR PERMISO PARA ESCRIBIR SOBRE TODOS LOS ARCHIVOS

    Nos situamos en el directorio donde tenemos la instalación de Magento, por ejemplo en /var/www/magento:

    cd /var/www/magento

    Aplicamos el cambio de los permisos:

    sudo find . -type d -exec chmod 777 {} \;

    QUITAR PERMISO DE ESCRITURA EN LOS FICHEROS

    Como hemos comentado, es conveniente dejar los permisos en su posición incial. No situamos en el directorio donde está instalado Magento:

    cd /var/www/magento

    Aplicamos el cambio de los permisos:

    sudo find . -type f -exec chmod 644 {} \;
    sudo find . -type d -exec chmod 755 {} \;
    sudo chmod o+w var var/.htaccess app/etc
    sudo chmod 550 pear
    sudo chmod -R o+w media