jueves, 30 de septiembre de 2010

Zentyal Server: Servidor para PYMES (Antes Ebox-Platform)

Zentyal (anteriormente conocido como eBox Platform) es un servidor de red unificada de código abierto (o una plataforma de red unificada) para las PYMEs. Zentyal puede actuar gestionando la infraestructura de red, como puerta de enlace a Internet (Gateway), gestionando las amenazas de seguridad (UTM), como servidor de oficina, como servidor de comunicaciones unificadas o una combinación de estas. Además, Zentyal incluye un marco de desarrollo (un framework) para facilitar el desarrollo de nuevos servicios basados en Unix.



miércoles, 29 de septiembre de 2010

6 Extensiones para Nautilus que no te puedes perder

Nautilus Open in Terminal

Este plugin permite abrir terminales en el path donde nos encontramos. Al instalarla tendremos la opción en el menú contextual del botón derecho de nuestro mouse.

sudo apt-get install nautilus-open-terminal

open-nautilus-terminal

Nautilus Terminal

Nos permite tener un Terminal embebido en Nautilus que siempre estará en el path actual y sigue automáticamente nuestra navegación. Soporta drag and drop de ficheros y carpetas.

sudo add-apt-repository ppa:flozz/flozz
sudo apt-get update
sudo apt-get install nautilus-terminal

Nautilus-terminal




lunes, 27 de septiembre de 2010

domingo, 26 de septiembre de 2010

How-To: Crear un alias para actualizar listas, paquetes y limpiar cache en Ubuntu

Si no te gusta perder el tiempo actualizando tu distro mediante el Update Manager en modo gráfico, pero de cualquier manera te encuentras tedioso hacer primero un sudo apt-get update, luego un sudo apt-get upgrade y luego un sudo apt-get clean y un sudo apt-get autoremove. El siguiente alias te puede resolver ese inconveniente.

Todos sabemos que es más rápido y eficiente gestionar las actualizaciones mediante el Terminal.

Para crear nuestro alias editaremos, con nuestro editor de preferencia, el archivo .bashrc que se encuentra en nuestro home. Yo uso el editor nano:

usuario@pc:~$ nano .bashrc

Entonces al final del archivo agregamos lo siguiente:

#ALIAS PARA ACTUALIZAR LA DISTRO
alias A='sudo apt-get update && sudo apt-get upgrade -y && sudo apt-get clean && exit' 

A mi me gusta usar una letra como la A=Actualizar, pero puedes darle el nombre de tu preferencia.

En resumen, cuando en el Terminal entramos el comando A el mismo hará lo siguinete:

sudo apt-get update        : Actualiza las listas de APT
sudo apt-get upgrade -y : Descarga las actualizaciones y las instala sin preguntar
sudo apt-get clean           : Limpia el caché de APT
exit                                    : Cierra el terminal

Cada comando está enlazado mediante '&&', lo que implica que cada comando siguiente solo se ejecutará si el anterior termina satisfactoriamente. Dependiendo del tiempo de duración del proceso, es decir si hay muchos paquetes y se alarga el proceso, el bash podría perdirnos el password para sudo nuevamente porque se ha expirado desde que la pusimos para iniciar la tarea.

¡¡Espero que les sea de gran utilidad!!



sábado, 25 de septiembre de 2010

Descubre tus 10 comandos mas usados

Si eres un usuario ávido del terminal y te has preguntado alguna vez qué comandos utilizas más a menudo entonces el siguiente comando te mostrará el Top 10 de esos comandos:

usuario@pc:~$ history | awk '{print $2}' | sort | uniq -c | sort -rn | head -10


Visto en: OMGUbuntu

jueves, 23 de septiembre de 2010

Kiwix: Wikipedia Offline en Ubuntu

Kiwix: El objetivo principal es brindar el conocimiento de manera offline, es decir, sin conexión a Internet para todo el que quiera. Somos partidarios de que todo el mundo puede tener acceso al conocimiento. Esto es fundamentalmente importante para lugares en donde el acceso a la red es limitado o restringido, por ejemplo: zonas de seguridad, países subdesarrollados, zonas de baja cobertura, etc. Puedes usar también kiwix como recurso de independencia de conexión, para ahorrar costos en Internet y para realizar trabajos en sitios remotos en donde la red sea nula o intermitente.

Kiwix es un lector de contenidos multimedia especializado en disponer Wikipedia sin conexión a Internet (ver características). Esto se lleva a cabo, mediante la lectura del contenido del proyecto almacenado en un archivo de formato ZIM, que no es más que el contenido de la wikipedia comprimido. La versión Kiwix-serve funciona como servidor local HTTP.

Estamos en constante crecimiento y trabajamos juntos para brindar las últimas actualizaciones de archivos ZIM para varios idiomas, si deseas colaborar puedes utilizar esta guía. Siempre estaremos atentos por si necesitas ayuda y para guiarte en el proceso de creación de archivos ZIM. Actualmente, es posible leer cualquier proyecto wikimedia, y no solamente wikipedia para la cual fue en un principio diseñado. Kiwix es un proyecto software libre liberado bajo GPL3. Está conformado principalmente por colaboradores, no poseemos apoyo financiero y no tenemos animo de lucro. Confiamos en la comunidad y trabajamos por pasión.

Instalar Kiwix en Ubuntu 10.04:

sudo add-apt-repository ppa:kiwixteam/ppa
sudo apt-get update
sudo apt-get install kiwix


Algunos Indicadores que muestran como anda Republica Dominicana

Recientemente nuestro Excelentisimo Presidente estuvo por la ONU explicando (pidiendo cacao) las razones (absurdas) por culpa de las cuales no se podrán alcanzar los Objetivos de Desarrollo del Milenio establecidos por la OMD. Lean aquí la reseña.

No obstante éste haber presentado estas tres (ridículas) causas que entorpecen dicho objetivo, el PNUD en su informe de Política Social 2010 presenta una serie de elementos (que en realidad es solo uno: Corrupción. Pero que de este se derivan todos los demas) que debemos considerar y que han impedido en las últimas décadas que este pedazo de isla con gente (ciega, sorda y muda para cosas com esta) se pueda desarrollar o por lo menos salir de este charco que parece que ningún suaper puede secar.



miércoles, 22 de septiembre de 2010

Aprendiendo Python



Google Chrome OS y Android son las claves para el dominio mundial de Linux

Cuando hablamos de servidores web y las supercomputadoras, el sistema operativo líder en términos de cuota de uso es Linux. Sin embargo, en el escritorio y dispositivos móviles categorías, Linux no tiene tanta suerte. 

Varias fuentes ponen el escritorio de Linux cuota de mercado en tan sólo un 1%, que es inferior a la de Mac OS X (6%). Después de todos estos años, Windows todavía está a la cabeza con una cuota de uso dominante de alrededor del 90%. 

En el área altamente competitiva de los dispositivos móviles, el crecimiento de Linux es más rápido que nunca. Gracias a Android, que ha ganado cuota de uso suficiente para vencer a Apple iOS y RIM. Aunque Symbian es actualmente en la parte superior de la colina, no está sentado cómodamente allí como Android o iOS se espera que lo destronar en el corto plazo. 

A todos mis colegas defensores de Linux y los entusiastas, tenemos que aceptar el hecho de que "el año de el escritorio de Linux" no vendrá en un futuro muy próximo. Pero yo no estoy diciendo que nunca llegaría. 



How-To: Configurar squid-deb-proxy Ubuntu/Debian


Ya hemos tratado anteriormente en este blog sobre squid-deb-proxy. No obstante en ninguna parte del post habla sobre su instalación y configuración, tanto en el servidor como en los clientes.

Esto es útil si tenemos varios clientes Ubuntu/Debian la red local y todos ellos descargan las actualizaciones. En lugar de que cada cliente se conecte a Internet para obtener las actualizaciones, recibirá las actualizaciones desde el servidor de almacenamiento en caché.
En todo esto hay muchas ventajas:
  • Economizar ancho de banda.
  • Obtener las actualizaciones con mayor rapidez.
  • Más seguridad porque solo el servidor necesitará conexión directa a internet.
  • La configuración es sencilla.
  • Los clientes no necesitan configuración (solo instalar squid-deb-proxy-client).
  • Las actualizaciones se obtienen del servidor de caché cuando está disponible y cuando no está se ajusta automaticamente a conexión directa.
Para instalarlo lo podemos hacer desde el Centro de Software, Synaptics o desde el terminal, tanto en los clientes como en el servidor:

      admin@server:~$ sudo apt-get install squid-deb-proxy squid-deb-proxy-client
      admin@cliente1:~$ sudo apt-get install squid-deb-proxy-client
      admin@cliente2:~$ sudo apt-get install squid-deb-proxy-client

      etc, etc,

Como vemos, en el server también debemos instalar el squid-deb-proxy-client para que obtenga de caché las actualizaciones también.

Algunos archivos de configuración adicional:

      /etc/squid-deb-proxy/mirror-dstdomain.acl (para agregar mirrors adicionales).
      /var/log/squid-deb-proxy/ (folder que contiene los logs).


miércoles, 15 de septiembre de 2010

Servidor de archivos en red NFS


El sistema NFS permite a un servidor exportar un sistema de archivo para que puedan ser utilizados en forma interactiva desde un cliente. El servicio se compone de un servidor nfsd y un cliente (mountd) que permiten compartir un sistema de archivo (o parte de él) a través de la red.

En Debian/Ubuntu instalar para el cliente apt-get install nfs-common portmap mientras que el server necesita apt-get install nfs-kernel-server nfs-common portmap.

El servidor (en Debian/Ubuntu) se pone en marcha a través de los scripts nfscommon y nfs-kernel-server en /etc/init.d (y los enlaces adecuados en /etc/rcX.d).

El servidor utiliza un archivo (/etc/exports) para gestionar el acceso y control sobre los sistemas de archivo que se accederán remotamente. Sobre el cliente, el root (u otro usuario a través de sudo) puede montar el sistema remoto a través del comando:

      mount Ipserver:directorio-remoto directorio_local

y a partir de este momento el directorio-remoto se verá dentro de directorio local (éste debe existir antes de ejecutar el mount). Esta tarea en el cliente se puede automatizar utilizando el archivo de mount automático (/etc/fstab) incluyendo una línea; por ejemplo:

      pirulo.remix.com:/usr/local /pub nfs rsize=8192,wzise=8192,timeo=14

Esta sentencia indica que se montará el directorio /usr/local del host pirulo.remix.com en el directorio local /pub. Los parámetros rsize, wzise son los tamaños de bloques de lectura y escritura, timeo es el timeout de RPC (si no se especifican estos tres valores, se toman los que incluye por defecto).

El archivo /etc/exports sirve de ACL (lista de control de acceso) de los sistemas de archivo que pueden ser exportados a los clientes. Cada línea contiene un filesystem por exportar seguido de los clientes que lo pueden montar, separados por espacios en blanco. A cada cliente se le puede asociar un conjunto de opciones para modificar el comportamiento (consultar man exports para un lista detallada de las opciones). Un ejemplo de esto podría ser:

# Ejemplo de /etc/exports
/ /master(rw) trusty(rw,no_root_squash)
/projects proj*.local.domain(rw)
/usr *.local.domain(ro) @trusted(rw)
/pub (ro,insecure,all_squash)
/home 195.12.32.2(rw,no_root_squash) www.first.com(ro)
/user 195.12.32.2/24(ro,insecure)

La primera línea exporta el sistema de archivos entero (/) a master y trusty en modo lectura/escritura. Además, para trusty no hay uid squashing (el root del cliente accederá como root a los archivos root del servidor, es decir, los dos root son equivalentes a pesar de ser de máquinas diferentes; es indicado para máquinas sin disco). La segunda y tercera líneas muestra ejemplo de ‘*’ y de netgroups (indicados por @). La cuarta línea exporta el directorio /pub a cualquier máquina en el mundo, sólo de lectura, permite el acceso de clientes NFS que no utilizan un puerto reservado para el NFS (opción insecure) y todo se ejecuta bajo el usuario nobody (opción all squash). La quinta línea especifica un cliente por su IP y en la sexta igual pero con máscara de red (/24) y con opciones entre () y que deben estar sin espacio de separación. Sólo puede haber espacios entre los clientes habilitados. Es importante tener en cuenta que de NFS existen 3 versiones (V2, V3 y recientemente V4). Las más comunes son V3 y en algunas instalaciones V2. Si desde un cliente V3 se conecta a un servidor V2, se debe indicar con un parámetro esta situación.

Fuente: Libro Adm. Avanzada de GNU/Linux

Ver tambien:


How-To: IP Aliasing (Interfaces de red virtuales)

Existen algunas aplicaciones donde es útil configurar múltiples direcciones IP a un único dispositivo de red. Los ISP (Internet service providers) utilizan frecuentemente esta característica para proveer de características personalizadas (por ejemplo, de World Wide Web y FTP) a sus usuarios. Para ello, el kernel debe estar compilado con las opciones de Network Aliasing e IP (aliasing support). Después de instalado el nuevo kernel, la configuración es muy fácil. Los alias son anexados a dispositivos de red virtuales asociados con el nuevo dispositivo con un formato tal como: dispositivo: número virtual.

Por ejemplo: eth0:0, ppp0:8

Consideremos que tenemos una red Ethernet que soporta dos diferentes subredes IP simultáneamente y que nuestra máquina desea tener acceso directo a ellas. Un ejemplo de configuración sería:

admin@server:~$ ifconfig eth0 192.168.110.23 netmask 255.255.255.0 up

admin@server:~$ route add -net 192.168.110.0 netmask 255.255.255.0 eth0

admin@server:~$ ifconfig eth0:0 192.168.10.23 netmask 255.255.255.0 up

admin@server:~$ route add -net 192.168.10.0 netmask 255.255.255.0 eth0:0

Lo cual significa que tendremos dos IP 192.168.110.23 y 192.168.10.23 para la misma NIC. Para borrar un alias, agregar un ‘-‘ al final del nombre (por ejemplo, ifconfig eth0:0- 0).

Un caso típico es que se desee configurar una única tarjeta Ethernet para que sea la interfaz de distintas subredes IP. Por ejemplo, supongamos que se tiene una máquina que se encuentra en una red LAN 192.168.0.x/24. Y se desea conectar la máquina a Internet usando una dirección IP pública proporcionada con DHCP usando su tarjeta Ethernet existente. Por ejemplo, se puede hacer como en el ejemplo anterior o también editar el archivo /etc/network/interfaces de modo que incluya una sección similar al siguiente:

iface eth0 inet static
address 192.168.0.1
netmask 255.255.255.0
network 192.168.0.0
broadcast 192.168.0.255

iface eth0:0 inet dhcp

La interfaz eth0:0 es una interfaz virtual y al activarse también lo hará su padre eth0.


Fuente: Libro Adm. Avanzada de GNU/Linux


La Fundación Illumos ha anunciado el lanzamiento de OpenIndiana

La Fundación Illumos ha anunciado el lanzamiento de OpenIndiana, un fork nuevo, o 'spork' como los desarrolladores lo describen, basado en OpenSolaris. Según el desarrollador jefe del proyecto OpenIndiana Lumsden Alasdair, las versiones futuras de la comunidad impulsada por la distribución se basará en la derivada Illumos OpenSolaris, que está basado en OS/Net, una consolidación del sistema operativo principal y los componentes de red de OpenSolaris, con todos los cerrados elementos de origen sustituidos por versiones de código abierto. 

OpenIndiana pretende ser compatible con el paquete binario y con Solaris 11 y Solaris 11 Express y actuar como un país libre "gota en el reemplazo" para OpenSolaris. Los desarrolladores comparan  su modelo de desarrollo al proyecto de CentOS que se basa las fuentes de Red Hat Enterprise Linux (RHEL). OpenIndiana combina la fuente oficial OpenSolaris con software de código abierto libre de la comunidad, como la XNV sistema X Window, el Sun Freeware Collection (SFW), Java Desktop System (JDS), el sistema de paquetes IPS y el instalador Caiman. Después de el evento del anuncio, el primer desarrollo de la construcción OpenIndiana (oi_147) basado en OpenSolaris construir 147 fue lanzado para la prueba. Los desarrolladores consideran que es "muy experimental" y tenga en cuenta que, por ejemplo, una serie de referencias a OpenSolaris todavía permanecen a lo largo. El equipo dice que se espera tener todas estas actualizado en el próximo par de generaciones.

Seguir leyendo...

martes, 14 de septiembre de 2010

Aspectos de seguridad en redes GNU/Linux



Es importante tener en cuenta los aspectos de seguridad en las conexiones a red, ya que una fuente de ataques importantes se produce a través de la red. Ya se hablará más sobre este tema en la unidad correspondiente a seguridad; sin embargo, hay unas cuantas recomendaciones básicas que deben tenerse en cuenta para minimizar los riesgos inmediatamente antes y después de configurar la red de nuestro ordenador:

  • No activar servicios en /etc/inetd.conf que no se utilizarán, insertar un # antes del nombre para evitar fuentes de riesgo.
  • Modificar el archivo /etc/ftpusers para denegar que ciertos usuarios puedan tener conexión vía ftp con su máquina.
  • Modificar el archivo /etc/securetty para indicar desde qué terminales (un nombre por línea), por ejemplo: tty1 tty2 tty3 tty4, se permite la conexión del superusuario (root). Desde las terminales restantes, root no podrá conectarse.
  • Utilizar el programa tcpd. Este servidor es un wrapper que permite aceptar-negar un servicio desde un determinado nodo y se coloca en el /etc/inetd.conf como intermediario de un servicio. El tcpd verifica unas reglas de acceso en dos archivos: /etc/hosts.allow /etc/host.deny.
Si se acepta la conexión, pone en marcha el servicio adecuado pasado como argumento (por ejemplo, la línea del servicio de ftp antes mostrada en inetd.conf: ftp stream tcp nowait root /usr/sbin/tcpd/usr/sbin/in.ftpd. tcpd primero busca /etc/hosts.allow y luego /etc/hosts.deny.

El archivo hosts.deny contiene las reglas de cuáles son los nodos que no tienen acceso a un servicio dentro de esta máquina. Una configuración restrictiva es ALL: ALL, ya que sólo se permitirá el acceso a los servicios desde los nodos declarados en /etc/hosts.allow.

El archivo /etc/hosts.equiv permite el acceso a esta máquina sin tener que introducir una clave de acceso (password). Se recomienda no utilizar este mecanismo y aconsejar a los usuarios no utilizar el equivalente desde la cuenta de usuario a través del archivo .rhosts.

En Debian/Ubuntu es importante configurar /etc/security/access.conf, el archivo que indica las reglas de quién y desde dónde se puede conectar (login) a esta máquina. Este archivo tiene una línea por orden con tres campos separados por ‘:’ del tipo permiso: usuarios: origen. El primero será un +o- (acceso o denegado), el segundo un nombre de usuario/s, grupo o user@host, y el tercero un nombre de un dispositivo, nodo, dominio, direcciones de nodo o de redes, o ALL.

Ejemplo de access.conf

Este comando no permite root logins sobre tty1:
         ALL EXCEPT root:tty1

Permite acceder a u1, u2, g1 y todos los de dominio remix.com:
        +:u1 u2 g1 .remix.com:ALL 

Fuente: Libro Adm. Avanzada de GNU/Linux


jueves, 9 de septiembre de 2010

Dia del Software Libre: Septiembre 18

Software Freedom Day (SFD) es una celebración mundial de la Libre y Open Source Software (FOSS). Nuestro objetivo en esta celebración es educar al público en todo el mundo sobre los beneficios de utilizar software libre de alta calidad en la educación, en el gobierno, en casa, y en los negocios - en una palabra, en todas partes! 

La organización sin fines de lucro Software Freedom International coordina SFD a un nivel global, proporcionando apoyo, regalos y un punto de colaboración, pero los equipos voluntarios de todo el mundo a organizar los eventos SFD locales para impactar a sus propias comunidades.