Posts tagged with “Archlinux”


Sat 21 May

Montando nuestro propio Dropbox

Los discos duros online, por ejemplo Dropbox, están de moda. Gracias a estos servicios y los clientes multiplataforma, es posible tener todos tus ficheros accesibles desde cualquier dispositivo, ya sean windows, linux, smartphones, web, etc. Los problemas de usar estos servicios suelen ser básicamente estos dos:

1- Los datos ya no los tienes tú, están en manos de empresas.

2- El tamaño que se ofrece suele ser bastante reducido.

Ahora mismo en el mundo del hosting los precios de servidores dedicados o VPS están bajando cada vez más, es facil montarte tu propia máquina con root por poco dinero al año. Y gracias a eso, te puedes montar de forma manual todo aquello que los diferentes proveedores te ofrecen. Tu correo electrónico, webmail, blog... y aquí veremos como aprovechar tu VPS para montarte tu propio Dropbox.

En el ejemplo que aquí voy a mostrar se van a utilizar los siguientes componentes:

  • VPS con Archlinux
  • Lighttpd como servidor web
  • mod_webdav
  • EncFS para el cifrado de los datos

Como vemos, la estructura será sencilla. Vamos a cambiar Dropxbox por un servidor web con soporte WebDAV. Este protocolo está soportado en prácticamente cualquier sistema operativo y existen cientos de clientes FTP que pueden trabajar con el, por lo que incluso seremos aún más multiplataforma.

Lo primero de todo, instalar lighttpd:

pacman -S lighttpd

Configuramos el módulo mod_webdav. La carpeta que indiquemos debe ser una subcarpeta del server.document-root, o de otra forma no podremos escribir:

server.modules      = ("mod_webdav",
               "mod_auth")
server.port     = 80
server.username     = "http"
server.groupname    = "http"
server.document-root    = "/srv/http"
server.pid-file     = "/var/run/lighttpd/lighttpd.pid"
server.errorlog     = "/var/log/lighttpd/error.log"
dir-listing.activate    = "disable"
index-file.names    = ( "index.php" )
$HTTP["url"] =~ "^/dav($|/)" {
    webdav.activate = "enable"
    webdav.is-readonly = "disable"
    webdav.sqlite-db-name = "/var/run/lighttpd/lighttpd.webdav_lock.db"
    auth.backend = "htpasswd"
    auth.backend.htpasswd.userfile = "/etc/lighttpd/passwd"
    auth.require = ( "" => ( "method" => "basic",
                             "realm" => "webdav",
                                 "require" => "valid-user" ) )
}

Como todas las configuraciones de Lighttpd, son bastante faciles de leer. Indicamos que si la ruta a la que queremos acceder termina en /dav, se habilitará el módulo webdav para dicho acceso. El acceso no será read-only y estará protegido mediante una contraseña. Este fichero de contraseñas lo creamos con htpasswd.

Con esta configuración ya podemos acceder por webdav. Si por ejemplo usas Finder o Cyberduck de MacOS, no te funcionarán. No se la razón, pero con esas herramientas únicamente podrás crear carpetas. Triste... pero es así. Os recomiendo usar Transmit, funciona a la perfección y te permite montar el webdav como si fuese otra unidad de disco.

Bien, ya tenemos acceso webdav. Ahora lo que toca es proteger nuestros datos. Recordemos que aún estamos utilizando un VPS alojado en un hosting, por lo que nuestros datos están poco asegurados. Gracias a EncFS y FUSE podremos tener nuestros datos protegidos. EncFS, permite cifrar carpetas locales del sistema sin necesidad de crear particiones o nuevos sistemas de ficheros. En caso de que robo de disco duro o intento de acceso a los datos sin conocer la contraseña de cifrado, sería posible acceder a los datos.

El primer paso os lo podéis imaginar:

pacman -S encfs

Creamos una carpeta donde irán los datos cifrados, por ejemplo:

mkdir /root/cryptdav

Y ejecutamos:

encfs /root/cryptdav /srv/http/dav
Creando nuevo volumen cifrado.
Por favor, elige una de las siguientes opciones:
pulsa "x" para modo experto de configuracion,
pulsa "p" para modo paranoia pre-configurado,
cualquier otra, o una linea vacia elegira el modo estandar.
?>

Elegimos la opción p para terminar antes. Si deseas elegir tus propias opciones de cifrado, elige x. Al finalizar nos pedirá una contraseña, que será la que necesitaremos para montar la carpeta cifrada y poder acceder a los datos.

A partir de este momento, todo lo que subamos en /srv/http/dav se cifrará en /root/cryptdav. Si hemos dejado de subir ficheros y de trabajar con la carpeta, por seguridad habrá que desmontarla, de forma que no sea posible acceder a los datos:

usermount -u /srv/http/dav

A partir de este momento, solamente tenemos accesible /root/cryptdav, pero claro, está cifrado y por lo tanto es imposible ver el contenido de la carpeta.

Si deseamos poder modificar datos, añadir ficheros o eliminarlos, será necesario volver a montarlo:

encfs /root/cryptdav /srv/http/dav
Contraseña EncFS: 

Listo, nos conectamos con transmit, hacemos los cambios que veamos oportunos y en caso de ser necesario, por seguridad desmontamos.


Sun 8 Feb

Mi nuevo escritorio Gnome

Lo que más me gusta de los escritorios y gestores de ventanas libres son sus infinitas posibilidades de configuración. Jugando un poco con la apariencia, es casi imposible encontrar dos escritorios iguales en el mundo, lo que lo hace algo más personal ;) Para mi la presentación del escritorio es uno de los aspectos que más cuido, ya que es donde tendré mi vista puesta gran parte del día. Imaginate estar mirando una pantalla llena de colores rosas, amarillos o verdes chillones, lo más probable es que te terminen sangrando los ojos. El marrón mierda de Ubuntu tampoco se salva xD

El pilar base a la hora de configurar mi escritorio es el fondo de pantalla. Debe ser simple, con dos o tres colores básicos y a poder ser apagados. Estos tres colores serán los que finalmente se apliquen a los bordes de la ventana, controles, iconos, sombras etc. De esa forma se logra un escritorio uniforme, donde todos los elementos se enlazan en cierta medida con el fondo de pantalla a través de sus colores compartidos.

Todo este rollo es para subir mi nuevo escritorio Gnome en ArchLinux (porfín con Ext4). Se aceptan críticas :P

[caption id="attachment_138" align="aligncenter" width="300" caption="Gnome + Archlinux Roolzz"]Gnome + Archlinux Roolzz[/caption]


Wed 22 Oct

La filosofía de ArchLinux

Extraído de la web de uno de los principales desarrolladores, Aaron Griffin.

In short, the Arch Way is about simplicity and giving control to the user. Keeping things simple, and agile. Arch is lightweight and simple, like clay - able to be molded by the user as they choose. Arch is not a distribution made for "user friendliness". It is a distribution designed to be a platform - a "base" for the user to do what they want. This means that we don't try to force a user's hand into our way of doing things, with our configuration tools, and our ideas. It should be about their ideas. It is important who controls the system here: the user. Developers suggest things, and push in certain directions, but let the user do as they wish. Arch is a base for anyone to make into whatever they see fit. Arch is a tool. Use it well

Yo solamente añadiría, Be water my friend :P