martes, 31 de mayo de 2011

Impresora virtual PDF en Ubuntu


Afortunadamente, existen programas como OpenOffice que ya permiten crear documentos en formato PDF a partir del documento que estemos editando.

Sin embargo, esto no ocurre en todos los casos y puede ser útil disponer de una impresora virtual de forma que, cuando imprimamos desde cualquier programa, como por ejemplo desde el navegador, en lugar de obtener una copia en papel, se genere un documento en formato PDF (si vienes de Windows, seguro que esta solución te suena).

Una ventaja añadida es que cups-pdf puede utilizarse en cualquier sistema que utilice CUPS (Common Unix Printing System). Además, resulta muy sencillo poner la impresora virtual a disposición de toda la red.

Instalar y configurar

sudo apt-get install cups-pdf
El comportamiento general del programa se establece en el archivo cups-pdf.conf que puedes encontrar en la carpeta /etc/cups.
Si quieres, por ejemplo, cambiar la carpeta en la que obtienes los documentos PDF, sólo tienes que editar el archivo de configuración, lo que puedes hacer escribiendo la siguiente orden en la consola:
sudo gedit /etc/cups/cups-pdf.conf



domingo, 29 de mayo de 2011

Tutorial IPCop con Zerina OpenVPN para conexiones Roadwarrior



En la sección “Autoridades Certificadoras” deberemos crear los correspondientes certificados, para ellos presionaremos sobre el botón “Generar certificados de Raíz/Anfitrión”, en la pantalla que se muestra a continuación debemos llenar los datos que son obligatorios, como se muestra en la siguiente imagen:

Certificados
En el primer campo pondremos algún nombre que nos identifique, en el segundo debemos indicar la IP de la placa RED de nuestro IPCop y como ultimo dato obligatorio debemos seleccionar el país. Los demás campos no son necesarios completar pero es buena idea hacerlo. Por ultimo hacemos clic en el botón “Generar certificados de Raíz/Anfitrión”, esperamos un poco todo depende de la PC que tengamos y si todo salio bien se habrán creado los certificados y se muestran en la pagina principal, en la sección correspondiente. Lo que sigue ahora es configurar el servidor , para ello nos dirigimos la sección del mismo, como se muestra en la imagen a continuación:

RoadWarrior Server
Lo que debemos hacer es tildar la opción “OpenVPN en interfaz RED”, en el campo “Host/IP para local” debemos poner la placa roja del IPCop. Me tomare un minuto explicando esto, para que el túnel se pueda formar esta dirección debe estar expuesta a Internet, entonces supongamos que tenemos un módem delante de nuestro servidor lo que debemos hacer es configurar un en el módem a la IP de la placa roja de nuestro IPCop. De esta manera el módem solo funciona como puente hacia el servidor, dejando pasar todo el tráfico de Internet para que el IPCop lo administre. Habitualmente el ISP que contratemos nos provee una IP dinámica para conectarnos a Internet, si esto no es así en el campo “Host/IP para VPN local” debemos poner la IP publica estática que nos dio nuestro ISP y en caso de poseer una dinámica nos conviene crearnos una cuenta en y configurar
nuestro servidor. Para hacer esto seguimos estos pasos:
· Primero nos creamos una cuenta en www.dyndns.com y agregamos un host y lo configuramos con la IP pública que tenemos en el momento.
· Ahora tenemos que configurar el IPCop, para esto nos dirigimos al menú Servicios->DNS Dinámico. En la sección “Ajustes” tildamos la opción “Apoyarse en un servidor externo para descubrir la IP pública real” esto es lo único que hacemos en esta sección.
Luego le damos en “Guardar”. Después en la sección “Agregar un host” seleccionamos en el combo de “Servicio” la opción “dyndns.org”, chequeamos el tilde de “Activo” y en el campo
“Nombre del Host” ponemos el nombre que pusimos en el campo hostname de la pagina de DynDNS (ejemplo miservidor), luego en el campo “Dominio” debemos poner la extensión que seleccionamos (ejemplo ath.cx) y completar los campos de “Nombre de usuario” y
“Contraseña” con los datos que corresponden a la cuenta de la pagina de DynDNS. Una vez realizado todo esto presionamos el botón “Agregar” y ya tenemos configurado nuestro servidor para que funcione con IP dinámica.
Ahora terminaremos de configurar el servidor Roadwarrior, entonces dijimos que teníamos que tildar la opción “OpenVPN en interfaz RED”, en el campo “Host/IP para VPN Local” tenemos que poner el nombre completo del host que creamos en la pagina de DynDNS que seria miservidor.ath.cx, de esta forma con el DMZ configurado en el modem la placa roja queda expuesta a Internet para que luego nos podamos conectar y formar el túnel. Lo que resta hacer es tildar la opción “Compresión LZO” y presionar en el botón “Guardar”. Los otros campos no los dejamos con los valores que tiene por defecto. Las opciones avanzadas no están cubiertas en este HowTo.
A tener en cuenta, si alguna vez desean tener arriba el servidor Roadwarrior y el Net2Net conjuntamente lo único que deben hacer es cambiar el protocolo de comunicación. Es decir si el Roadwarrior usa UDP el Net2Net debe usar obligatoriamente TCP.
Lo que sigue a continuación es iniciar el Servidor para que escuche a los clientes que se quieran conectar, para esto simplemente hacemos clic en el botón “Iniciar OpenVPN” y automáticamente veran que donde dice “Estado actual de OpenVPN” cambiara de a. Esto significa que todo está bien, ahora nos resta agregar el cliente y establecer la conexión.


Configurar Ubuntu con OpenVPN y Network Manager


El administrador de red de Gnome en Ubuntu no tiene soporte para redes OpenVPN, por eso es necesario instalarlo.
sudo apt-get install network-manager-openvpn

Ahora vamos a copiar el archivo zip a una carpeta de nuestro equipo con ubuntu y descomprimimos su contenido. Con una terminal y en el directorio donde descomprimimos los archivos tecleamos lo siguiente:

openssl pkcs12 -nocerts -in (nombre del archivo).p12 -out userkey.pem
openssl pkcs12 -nokeys -clcerts -in (nombre del archivo).p12 -out usercert.pem
openssl pkcs12 -nokeys -cacerts -in (nombre del archivo).p12 -out userca.pem

Donde (nombre del archivo).p12 es el nombre de su archivo ¡Abusados ehhhh!. Básicamente el archivo .p12 tiene toda la información de la conexión, pero nosotros necesitamos separarla en 3 archivos diferentes. Es normal que durante la ejecución les pida la contraseña del enlace, aquella que les pedí que no olvidaran ¿Recuerdan?.

A partir de aquí todo es muy sencillo, abrimos el Administrador de Red y vamos a la parte del menú que dice Conexiones VPN. Administrador de redes - Conexiones VPN
El archivo zip incluye un archivo con extensión .ovpn , lo vamos a importar.
Importar archivo ovpn
Lo demás es ir llenando los espacios con los certificados que fuimos generando anteriormente y claro la contraseña del enlace.
Editando la conexión

jueves, 5 de mayo de 2011

Acelerar Firefox ejecutandolo desde la RAM en Linux.

FUENTE: http://www.taringa.net/posts/linux/7559313/Acelerar-Firefox-ejecutandolo-desde-la-RAM-en-Linux_.html
===========================================
Buenas, hace un par de días en el laburo estuve investigando un poco como podía acelerar FIrefox, ya que tengo el mismo perfil desde hace como dos años y se puso un poco denso. Casi todos los post, threads, manuales, hacían referencia en borrar o usar menos capacidad de cache para el perfil, reducir el consumo de ram, bajar de versión, etc. Como soy bastante rebuscado, no quería hacer eso. Probé corriendo un livecd de Ubuntu con la opcion "toram" para cargar el contenido del cd en la ram, copie mi perfil de Firefox en la sesión, y me sorprendió como cargo todos los plugins, themes, addons, historial, etc de una y maso menos en un cuarto de lo que tarda en arrancar.

Así que esa es la solución me dije, correrlo desde la memoria RAM acelero la carga y comportamiento del navegador, así como el de los plugins, por ejemplo flash no me había funcionado así hace mucho. Como es obvio, no se puede usar un livecd como sistema para laburar.

Básicamente lo que debemos hacer para correrlo desde la ram es:
1.-Crear un ramdisk con el suficiente espacio y montarlo.
2.-Bajar la versión binaria de firefox, es el archivo .tar.gz que descargamos desde la web, descomprimirlo y copiarlo al ramdisk.
3.- Copiar el perfil de firefox en el ramdisk
4.- Configurar firefox para que cargue el perfil y la cache del mismo en el ramdisk
5.-Sincroniza las carpetas donde están los perfiles del navegador, dado que cuando reiniciemos el equipo, el ramdisk se habrá borrado por completo.

Sin tanta charla, los pasos.

1.- Crear un ramdisk con el suficiente espacio y montarlo.
Bien el tamaño que vamos a asignarle al ramdisk es bastante variable, en mi caso, tengo 4GB de ram, y nunca he podido consumir mas de 2GB., así que lo creo con 1GB, pero esto depende del entorno donde estemos.

Para crear un disco virtual primero debemos crear un punto de montaje:


    $ sudo mkdir /media/ramdisk



Luego simplemente montamos en esa carpeta, la cantidad que queramos de memoria:

    $sudo mount -t tmpfs -o size=1024M,nr_inodes=10k,mode=7777 tmpfs /media/ramdisk/


*Nota: en la opción size, debemos modificarla por la cantidad de memoria que queramos montar.


2.- Bajar la versión binaria de firefox, es el archivo .tar.gz que descargamos desde la web, descomprimirlo y copiarlo al ramdisk.

Se puede bajar la versión actual, 3.6.11 desde:

http://mozilla.c3sl.ufpr.br/releases//firefox/releases/3.6.11/linux-i686/es-ES/firefox-3.6.11.tar.bz2

Luego, en mi caso tengo una carpeta Programas en mi carpeta personal donde guardo este tipo de programas valga la redundancia, asi que lo descomprimimos dentro de esta carpeta o donde uds quiera. Eso si, en donde sea que lo descompriman, tienen que que tenga permisos su usuario y también tengan la precaución de no borrar esta carpeta.

Con respecto a los plugins, debemos pegarlos en la dentro la carpeta que hemos descomprimido en la carpeta "plugins". Con esto nos asugramos que tambien los este montando en la ram.

Ahora, debemos copiar esta carpeta en el ramdisk, entonces tenemos dos soluciones, cp o rsync. Personalmente uso rsync, el comando ha usar es:


    $rsync -av /home/franco/Programas/firefox/ /media/ramdisk/firefox/



3.-Copiar el perfil de firefox en el ramdisk
Los perfiles de FF se almacenan en /home/USUARIO/.mozilla/firefox/xxxxx.default . En mi caso es /home/franco/.mozilla/firefox/slkxz9xp.default/. El comando a utilizar es:


$rsync -av /home/franco/.mozilla/firefox/slkxz9xp.default/ /media/ramdisk/firefox/slkxz9xp.default/



4.-Configurar firefox para que carge el perfil y la cache del mismo en el ramdisk


Para que tome el perfil desde la ram se hace muy . Dentro de la carpeta /home/USUARIO/.mozilla/firefox/ se encuentra un archivo llamado profiles.ini, debemos editarlo.
El contenido es

    [General]
    StartWithLastProfile=1

    [Profile0]
    Name=default
    IsRelative=1
    Path=xxxxx.default


y debemos cambiar los parametros

IsRelative=1 por IsRelative=0 y el camino o path de

Path=xxxxxxx.default a Path=/media/ramdisk/firefox/xxxxxxx.default

En mi caso quedo:


    [General]
    StartWithLastProfile=1

    [Profile0]
    Name=default
    IsRelative=0
    Path=/media/ramdisk/slkxz9xp.default



Guardar los cambios.

Luego que firefox guarde la cache en el ramdisk, debemos ir a la barra de direcciones, escribir


    about:config



Ponemos que vamos a ser prudendetes, y le damos dentro con el botón derecho-> Nuevo -> Cadena.
El nombre que debemos ponernerle es


    browser.cache.disk.parent_directory



Y el valor es la dirección del ramdisk


    /media/ramdisk/firefox




5.- Sincroniza las carpetas donde están los perfiles del navegador, dado que cuando reiniciemos el equipo, el ramdisk se habrá borrado por completo.
Llegado a este punto, si ejecutamos


    sh /media/ramdisk/firefox/firefox



La primera vez, hace el chequeo de compatibilidades de addons y arranca completamente desde la memoria ram. Si lo cerramos y volvemos a abrir, ya directamente lo abre.

Surgen dos inconvenientes. El primero y principal es que los cambio que realismos a nuestro perfil se perderán al reiniciar el equipo. El segundo y menos drástico es que si hacemos estos pasos cada vez, siempre tardaremos en ejecutar todo y en que firefox va a volver a hacer la comprobaciones en el primer inicio.
La solución es bastante simple, creamos un cronjob que sincronice el ramdisk con nuestra copia en el disco duro. No voy a explicar en que consiste las tareas sobre cron. Abrimos directamente el archivo /etc/crontab. Y pegamos esto en la linea:


    1,10,20,30,40,50,59 * * * * franco rsync -av /media/ramdisk/firefox/ /home/franco/.mozilla/firefox/slkxz9xp.default/



Lo que hace esta es ejecutar rsync cada 10min. Con lo que tenemos un respaldo del perfil cada ese tiempo.


En el laburo, directamente lo primero que abro es FF, así que me hice un scriptonto para que lo cargue en la ram apenas abra . Dependiendo del entorno de escritorio que estén usando, lo puede ejecutar al inicio de .




    #!/bin/bash
    mount -t tmpfs -o size=1024M,nr_inodes=10k,mode=7777 tmpfs /media/ramdisk/;
    rsync -av /home/franco/.mozilla/firefox/slkxz9xp.default/ /media/ramdisk/firefox/slkxz9xp.default/;
    rsync -av /home/franco/Programas/firefox/ /media/ramdisk/firefox/;
    /media/ramdisk/firefox/firefox&




Para verificar que tomo los cambios correctamente, podemos abrir


    about:support


y fijarnos en que carpeta esta guardando la cache.

A mi me funciona correctamente, aunque me parece que no lo he explicado de la mejor forma, asi que cualquier consulta bienvenida.