Archive

Author Archive

Tabla equivalencias software Windows-Linux

Octubre 16th, 2009 admin No comments

Equivalencias Windows en Linux es una lista de equivalencias, reemplazos y software análogo a Windows en Linux y viceversa:
Introducción a Linux/Equivalencias Windows en Linux – Wikilibros
y
http://www.linuxalt.com/

Puede ser de utilidad cuando buscamos en Linux algún programa similar a otro que usamos o conocemos de Windows
http://es.wikibooks.org/wiki/Introd…indows_en_Linux

Otras páginas interesante sobre software libre, bastante actualizadas, organizadas y traen un pequeño comentario de referencia a cada programa son:
http://alts.homelinux.net/
y
http://linux.bankhacker.com/

Como dice el autor de esta página:”….. es un intento de animar a todos aquellos que no conocen GNU/Linux o bien que lo conocen muy poco para que descubran la potencia y facilidad con la que desempeño cada una de mis tareas diarias con GNU/Linux. Un día con GNU/Linux es una visita guiada a través de mi ordenador en un día cualquiera”, nada más se puede agregar
http://ciberia.ya.com/jesusda/

Bueno por si algun novicio o no novicio le interesan cursos/manuales etc sobre linux, aqui os dejo esta url tiene unos videotutoriales muy buenos sobre muchos y variados temas:
http://www.illasaron.com/html/index.php

¿Conocéis este enlace?, es muy completo:
http://www.linuxlinks.com/

[EDITADO por DR]
Otro enlace, en ingles, que promete ser mas dinámico y con aportaciones de la comunidad aunque este pensado para Windows, la mayoría de los programas tiene versiones para GNU/Linux:
Open Source Living
[FIN EDITADO]

-Un buen programa de diseño grafico (tipo Photoshop). Gimp
-Un buen programa de diseño vectorial (tipo Ilustrator). SODIPODI
-Un buen programa de edicion de video (tipo Premier). iMiraediting
-Un buen reproductor para todo tipo de videos. Xine
-Un buen reproductor para todo tipo de archivos de audio. Amarok
-Un buen programa de grabacion (tipo Nero o Alcohol120%). K3B
-Un buen programa Peer-to-Peer (tipo e-Mule). a-Mule
-Y por ultimo un buen emulador de programas de windows. WINE y WINEX

Categories: Software Tags:

Alternativas libres

Octubre 16th, 2009 admin No comments

Fuente : Alternativas Libres


Ofimática (66)


Desarrollo (88)


Red (127)


Matemáticas (23)


Juegos (108)

Tecnicas (36)

Gráficos (42)


Educación (34)


Multimedia (96)


Miscelánea (67)

Categories: Software Tags:

OpenSUSE alcanza la versión 11.1

Septiembre 13th, 2009 admin No comments

Novell lanza una nueva versión de su paquete de fuente abierta con más de 200 nuevas características.

OpenSUSE 11.1 incorpora un nuevo instalador, sencillo y rediseñado, la posibilidad de escoger entre los entornos de escritorio Gnome 2.24.1 y KDE 4.1.3 + KDE 3.5.10, además de la última versión de OpenOffice.
Según ha señalado Joe Brockmeier, director de la comunidad OpenSUSE, la nueva versión es “perfecta para los desarrolladores y entusiastas de Linux además de para los nuevos usuarios del sistema operativo de fuente abierta”.

OpenSUSE 11.1 es la primera distribución de Linux en incluir Banshee 1.0, gracias a la cual los usuarios pueden gestionar y reproducir tanto música digital como vídeo.

La nueva versión de OpenSUSE ya está disponible para su descarga.
Especificaciones OpenSuse 11.1.

Categories: Distribuciones Tags:

Visión general GNU/Linux!

Junio 13th, 2009 admin No comments

Linux nació gracias a la idea de Linus Torvalds de crear un sistema basado en Unix para máquinas i386. En más de una ocasión, Linus Torvalds ha afirmado que si hubiera sabido de la existencia de los sistemas BSD que ya cumplían lo que hacía Linux, no se habría molestado en modificar Minix. La historia de Linux está fuertemente vinculada a la del proyecto GNU. El proyecto GNU, iniciado en 1983, tiene como objetivo el desarrollo de un sistema Unix completo compuesto enteramente de software libre. Hacia 1991, cuando la primera versión del núcleo Linux fue liberada, el proyecto GNU había producido varios de los componentes del sistema operativo, incluyendo un intérprete de comandos, una biblioteca C y un compilador, pero aún no contaba con el núcleo que permitiera completar el sistema operativo.
Entonces, el núcleo creado por Linus Torvalds, quien se encontraba por entonces estudiando en la Universidad de Helsinki, llenó el hueco final que el sistema operativo GNU exigía. Subsecuentemente, miles de programadores voluntarios alrededor del mundo han participado en el proyecto, mejorándolo continuamente. Torvalds y otros desarrolladores de los primeros días de Linux adaptaron los componentes de GNU y de BSD, así como de otros muchos proyectos como Perl, Apache, Python, etc. para trabajar con el núcleo Linux, creando un sistema operativo completamente funcional procedente de muchísimas fuentes diferentes, la mayoría libres.

Categories: General Tags:

¡Bienvenido a Linux.Tronk.Net!

Junio 5th, 2009 admin 1 comment
¿ Qué es Linux o GNU/Linux ?.


gnu-linuxLinux (también conocido como GNU/Linux) es un sistema operativo tipo Unix que se distribuye bajo la Licencia Pública General de GNU (GNU GPL), es decir que es software libre. Su nombre proviene del Núcleo de Linux, desarrollado desde 1991 por Linus Torvalds. Es usado ampliamente en servidores y super-computadores,1 y cuenta con el respaldo de corporaciones como Dell, Hewlett-Packard, IBM, Novell, Oracle, Red Hat y Sun Microsystems. Puede ser instalado en gran variedad de hardware, incluyendo computadores de escritorio y portátiles (PCs x86 y x86-64 así como Macintosh y PowerPC), computadores de bolsillo, teléfonos celulares, dispositivos empotrados, videoconsolas (Xbox, PlayStation 3, PlayStation Portable, Dreamcast, GP2X) y otros (como enrutadores o reproductores de audio digital como el iPod). Las variantes de estos sistemas se denominan “distribuciones” y su objetivo es ofrecer una edición que cumpla con las necesidades de determinado grupo de usuarios. Algunas son gratuitas y otras de pago, algunas insertan software no libre y otras contienen solo software libre. La marca registrada Linux (Número de serie: 1916230.2 ) pertenece a Linus Torvalds y se define como “un sistema operativo para computadoras que facilita su uso y operación”. Existen numerosos grupos de usuarios de Linux en casi todos los países del mundo.

Categories: General Tags:

How-to VirtualBox.

Octubre 16th, 2008 admin No comments

How-to VirtualBox.

Introducción

Con este tutorial pretendo ayudar a los aforados a conseguir instalar VirtualBox correctamente y hacerlo funcionar al 100%, incluido el USB o la compartición de archivos entre openSuSE y la máquina virtual.

Es válido para openSuSE 10.2 y 10.3

¿Que es VirtualBox?(fuente: Wikipedia)
VirtualBox es un programa de virtualización creado por la empresa alemana de desarrollo de software innotek GmbH. El programa es comercial y propietario, si bien en enero de 2007, después de muchos años de desarrollo, se lanzó una versión limitada de VirtualBox bajo licencia GPL.

VirtualBox está disponible para su ejecución en sistemas Windows y Linux de 32-bits (aunque hay también una versión beta para MacOS X) y es capaz de virtualizar Windows, Linux (versión del núcleo 2.x), OS/2 Warp, OpenBSD y FreeBSD.

Comparado con otros programas de virtualización como VMware o Virtual PC, VirtualBox carece de algunas funcionalidades, pero a cambio aporta otras como: ejecución remota de máquinas virtuales utilizando Remote Desktop Protocol (RDP), soporte para iSCSI y soporte para USB con dispositivos remotos sobre RDP.

VirtualBox soporta virtualización VT-x para el hardware de Intel, y (de manera experimental) virtualización AMD-V para el hardware de AMD.

¡Tras habernos informado ligeramente vamos a ello! ;-)

Obtención de los paquetes
Para obtener los paquetes nos dirigimos a la web oficial y, en la sección de descargas, nos bajamos el paquete correspondiente a nuestra arquitectura.

VirtualBox ~ Descargas

Antes de continuar debemos asegurarnos de que los paquetes Xalan-c (XSLT Transformation Engine C++) y Xerces-c (Validating XML Parser) están instalados. Si no están instalados los instalamos; estos se encuentran en el DVD de openSuSE. Recordad tener instalados paquetes básicos como gcc, make, kernel-source

A continuación, para instalar el programa, escribimos:

Código:

rpm -Uvh VirtualBox-1.5.2_25433_openSUSE103-1.x86_64.rpm
Ojo! El nombre del *.rpm variará en función de la versión actual y de la versión de openSuSE

Añadiendo nuestro usuario al grupo vboxusers
Para el correcto funcionamiento del programa debemos añadir nuestro usuario al grupo vboxusers. Para ello nos dirigimos a YaST -> Seguridad y usuarios -> Gestionar usuarios.
Con nuestro usuario seleccionado pulsamos el botón Editar:
Añadiendo nuestro usuario al grupo vboxusers (1)
A continuación nos dirigimos a la pestaña Detalles y marcamos la casilla Vboxusers. Aceptamos los cambios y listo:
Añadiendo nuestro usuario al grupo vboxusers (2)

Iniciando VirtualBox (Version x86)
Normalmente, cada vez que cambiemos de Kernel o la primera vez que usemos VirtualBox puede salirnos el siguiente mensaje de error:

Código:
VirutalBox kernel driver not installed. The vboxdrv kernel module was either not loaded or /dev/vboxdrv was not created for some reason. Re-setup the kernel module by executing ''/etc/init.d/vboxdrv setup'' as root. VBox status code : -1908 (VERR_VM_DRIVER_NOT_INSTALLED) Result Code: 0x800004005

Para resolver este problema, como root ejecutamos en un terminal el siguiente comando:

Código:
/etc/init.d/vboxdrv setup

Que nos dará como salida (si todo va bien) lo siguiente:

Código:
Stopping VirtualBox kernel module done Recompiling VirtualBox kernel module done Starting VirtualBox kernel module done

Ahora volvemos a lanzar VirtualBox y listo! ;-)

Iniciando VirtualBox (Version x86_x64) ~ Solo necesario en openSuSE 10.2
Para una máquina con arquitectura de 64 Bits el procedimiento es el mismo, pero obtendremos error durante la compilación del modulo:

Código:
Starting VirtualBox kernel module FATAL: Error inserting vboxdrv (/lib/modules/2.6.18.8-452-default/misc/vboxdrv.ko): Invalid argument failed (modprobe vboxdrv failed)

Para arreglar esto solo tenemos que modificar muestro archivo menu.lst que encontraremos en /boot/grub.Aconsejo hacer una copia de este archivo en nuestra carpeta /home por ejemplo, por si algo sale mal. Para ello abrimos un terminal, entramos en modo root y escribimos:

Código:
gedit /boot/grub/menu.lst ->Gnome kwrite /boot/grub/menu.lst ->KDE

Y añadimos en la entrada del nuestro Kernel:

Código:
nmi_watchdog=0

De modo que nos quede algo como esto:

Código:
kernel /boot/vmlinuz-2.6.18.8-452-default root=/dev/hda1 vga=0x314 resume=/dev/hda2 splash=silent showopts nmi_watchdog=0

Reiniciamos el ordenador en un terminal como root escribimos:

Código:
/etc/rc.d/vboxdrv setup

Activación del USB ~ Recordar que la versión del repositorio de openSuSE no tiene soporte USB
Para activar el USB en la Máquina Virtual es necesario modificar el fstab. Para ello escribimos en un terminal como root:

Código:
gedit /etc/fstab ->Gnome kwrite /etc/fstab ->KDE

Añadimos el signo # delante de la linea de usbfs de modo que quede así:

Código:
#usbfs /proc/bus/usb usbfs noauto 0 0

De este modo invalidamos esa linea del fstab. Ahora añadimos:

Código:
usbfs /proc/bus/usb usbfs defaults,devmode=666 0 0

Quedaría algo asi (en rojo la linea antigua, en azul la nueva la que añadimos):

Código:
...proc /proc proc defaults 0 0sysfs /sys sysfs noauto 0 0debugfs /sys/kernel/debug debugfs noauto 0 0#usbfs /proc/bus/usb usbfs noauto 0 0usbfs /proc/bus/usb usbfs defaults,devmode=666 0 0devpts /dev/pts devpts mode=0620,gid=5 0 0...

Ahora reiniciamos el ordenador. Para activarlo en la Máquina Virtual vamos a la configuración de esta:
Activación del USB (1)
Y activamos el USB:
Activación del USB (2)

Obtener un buen rendimiento del Sistema Virtual
Para obtener una buena resolución o un movimiento optimo con el ratón es necesario instalar Guest Additions. Si nuestro Sistema Operativo Invitado es Windows: nos vamos al menú Dispositivos, seleccionamos Instalar Guest Additions y seguimos la interfaz.
Obtener un buen rendimiento (1)
Obtener un buen rendimiento (2)

Si nuestro Sistema Operativo Invitado es GNU/Linux: abrimos un terminal, nos dirigimos a la unidad virtual de CD en la que hay montada la imagen VBoxGuestAdditions (imagen montada de serie) y escribimos.

Código:
sh ./VBoxLinuxAdditions.run

¡Atención!
Con las sucesivas actualizaciones de VirtualBox es aconsejable reinstalar Guest Additions en la máquina huesped para evitar problemas como la imposibilidad de compartir carpetas entre la openSuSE y la máquina huesped.

Compartir una carpeta entre el Sistema Real y la Máquina Virtual
A mi parecer es una de las cosas más útiles de emular un SO. Para ello vamos a la configuración de la Máquina Virtual:
Compartir una carpeta (1)
Seleccionamos el apartado Directorio Compartido
Compartir una carpeta (2)
Nos fijamos, a la derecha hay un icono de una carpeta con el símbolo “+”. Clicamos ahí para elegir la carpeta que queremos compartir y listo:
Compartir una carpeta (3)

Si nuestra Máquina Virtual corre Windows vamos a MS-DOS mediante Inicio/Ejecutar y escribimos cmd. En la pantalla de MS-DOS escribimos:

Código:
net use x: \\\\vboxsvr\\nombre_de_la_carpeta_compartida

Ahora podremos acceder a la carpeta desde “Mi PC”

Si corre un GNU/Linux (quizas también en Unix) abrimos un terminal y escribimos:

Código:
mount -t vboxsf nombre_carpeta puntodemontaje Seamless Mode. Esta modo solo está disponible en la versión 1.5x (y posteriores) de VirtualBox. Nos permite integrar la máquina virtual con nuestro escritorio. La verdad es que es bastante cómodo cuando tienes que trabajar con aplicaciones nativas de Windows y, a la vez, alguna de GNU/Linux. Seamless Mode (1) Para activarlo pulsamos la tecla Host+L. La tecla Host es, por defecto, Control Derecho.
———————————————————————————————————————–
Autor : darkskimmer
Fuente : ForoSuSE.Org
———————————————————————————————————————–
Categories: Software Tags:

Instalación de tarjeta wireless WiFi en Linux con ‘ndiswrapper’

Octubre 16th, 2008 admin No comments

Instalación de tarjeta wireless WiFi en Linux con ndiswrapper

Tenemos una tarjeta inalámbricas que no está soportada nativamente por nuestro sistema operativo linux. Una solución para su funcionamiento es utilizar los drivers de windows junto con la herramienta ndiswrapper. Aquí explico los pasos a seguir basándome en la distribución SuSE 9.3 . Hasta la fecha solo nos va a funcionar en modo managed y en modo Ad-hoc, hasta que otros proyectos como prism54, que están haciendo un gran esfuerzo, incluyan el firmware para los chipset que no son soportados.

Manos a la obra:

  • Lo primero que debemos hacer es mirar si nuestra tarjeta wireless está soportada por ndiswrapper. Para ello podemos hacerlo en esta LISTA. Alguna de las tarjetas soportadas son las siguientes:
    * 3Com 3CRSHPW796
    * Admtek (8211)
    * Atheros (AR5004)
    * Atheros (AR5004)
    * Broadcom (4301, 94306)
    * D-Link DWL-AG650 802.11a/b/g
    * Intel Centrino (2100)
    * SMC2802 V2
    * TI AC111
  • Para poder saber que tarjeta pci tenemos podemos teclear el siguiente comando: # lspci -v
  • o también si se trata de una tarjeta para un portátil la vemos con pcmcia o bien si es una tarjeta usb podremos verla con lsusb.

  • Si está soportada nuestra wireless, debemos bajarnos los drivers correspondientes de windows. Se pueden conseguir desde los links añadidos en la propia LISTA que hemos mencionado. Esos links nos llevarán a los drivers de windows de nuestra tarjeta wireless.
  • Luego bajamos el proyecto ndiswrapper .
  • Si tienes SuSE 9.3 tenemos en el dvd el ndiswrapper, así que con YaST -> software -> instalar/desinstalar software, será fácil.
  • Para los que tiene debian deben de añadir en su /etc/apt/sources.list la siguiente línea :
    deb http://ndiswrapper.sourceforge.net/debian ./
  • Si hemos decidido compilar nosotros mismos el ndiswrapper, lo que hacemos es descomprimir el proyecto ndiswrapper y compilamos. —
  • tar zxvf ndiswrapper-1.1.tar.gz (o la versión ndiswrapper que te hayas bajado).
    Antes leemos el ficheros README e INSTALL por si ha habido alguna modificación en su compilación.
    Entramos al directorio donde hayamos descomprimido
    cd /home/pepe/ndiswrapper-1.1
    Ahora como root ponemos lo siguiente:
    # make install
    Así ya estaría instalado y compilado la herramienta ndiswrapper. Independientemente que el ndiswrapper lo hayamos compilado como se ha explicado o bien hemos instalado su rpm en SuSE o bajado en Debian con apt-get install ndiswrapper.

  • Después debemos de ejecutarlo, añadiendo los drivers de windows y haciendo la “mezcla” así:
    # ndiswrapper -i
    Por ejemplo, si hemos descomprimido el .zip o .rar de nuestros drivers windows en /home/pepe/tarjetawifi-win/drivers/ pondremos esta línea:
    # ndiswrapper -i /home/pepe/tarjetawifi-win/drivers/smc2802w.inf
    Esto nos creará un directorio /etc/ndiswrapper/ con otros archivos y directorios más dentro de él.-
  • Lógicamente aquí trato con una tarjeta wireless SMC2802w V2, pero lo importante es apuntar al archivo.inf de tus drivers.

  • Verificamos que se ha instalado correctamente con :
  • # ndiswrapper -l
    Nos debe aparecer algo como : smc2802w present (recordad que yo tengo una tarjeta SMC2802w V2) con lo que aquí aparecerá tu modelo.

  • Después hay que cargar el módulo:
    # modprobe ndiswrapper
  • Vemos lo que nos dice el comando # dmesg
  • y en la última línea aparecerá algo como :
    wlan0: ndiswrapper ethernet device X (donde X corresponde a la MAC de nuestra tarjeta).

  • Si queremos que se cargue automáticamente el módulo para que pueda ser utilizado por wlan0, debmos poner lo siguiente
  • ndiswrapper -m
    —————————————–

En este punto ya estaría nuestra tarjeta configurada y lista para recibir los parámetros para su correcto funcionamiento. Pero …. en SuSE hay que hacer alguna cosilla más que explico a continuación:

Nos vamos a : /etc/sysconfig/network
En este directorio vemos un archivo que tiene el nombre de nuestra tarjeta inalámbrica, más o menos así:

ifcfg-wlan-bus-pci-0000:00:0c.0 (o algo parecido, la tuya seguro que es ifcfg-wlan-bus-pci-loquesea). Esta es la forma que tiene SuSE de ver la tarjeta inalámbrica por defecto.

bien pues ese archivo le renombramos de la siguiente manera:

ifcfg-wlan0

y en el interior de este archivo cambiar la siguiente constante: _nm_name=”bus-pci-0000:00:0c.0”
por esta : _nm_name=”wlan0”

Guardamos los cambios y cerramos. Así cambiaremos nuestra configuración para que aparezca nuestra tarjeta identificada con wlan0.

———————-

Luego en el siguiente archivo : /etc/sysconfig/network/wireless
Debemos cambiar o añadir la constante:

WIRELESS=”ifcfg-wlan0″

y lo demás lo dejamos como está. Guardamos los cambios y cerramos el archivo.

————————

Debemos reiniciar el equipo para que estos cambios surtan su efecto. Ahora sí que identificamos wlan0 con nuestra tarjeta inalámbrica en SuSE.

Lo comprobamos : # iwconfig

Y ahora vamos a la configuración de nuestra tarjeta wlan0

Vamos a escanear los puntos de acceso o conexiones wifi que tengamos a nuestro alcance :

# iwlist wlan0 scan

Configuramos el nombre de nuestro ap así: # iwconfig wlan0 essid NOMBREAP

Configuramos el modo : # iwconfig wlan0 mode Ad-hoc , o también # iwconfig wlan0 mode Managed

Configuramos al encriptación WEP de nuestras comunicaciones así : # iwconfig wlan0 key restricted XXXXXXXX

Configuramos el canal : # iwconfig wlan0 channel 10 (o el canal donde esté emitiendo tu ap)

Y ahora levantamos nuestra tarjeta para la red así : # ifconfig wlan0 up

De esta forma hemos terminado con la configuración de la emisión “radio”, e iría vuestra tarjeta a las mil maravillas, pudiendo observar que los lend de la tarjeta están encendidos.

  • Ahora configuramos por dhcp “ya sabes para la ip, mascara, puerta de enlace, gateway … automáticos si nuestro ap está configurado de esa manera) así: # dhclient wlan0 … o bien asi … # dhcpcd wlan0
  • O metiéndolo manualmente si por ejemplo tenemos dos ordenadores que tengan tarjeta inalámbrica y queremos que se vean, o nuestro punto de acceso no le tenemos configurado con dhcp.
    • Primero dejamos sin servicio de red a la tarjeta wireless, para ello haremos lo siguiente: # ifconfig wlan0 down

      Y le indicamos con las dos líneas siguientes la ip , el broadcast, la máscara de subred, y la puerta de enlace.

      # ifconfig wlan0 10.0.0.102 broadcast 10.255.255.255 netmask 255.0.0.0 up
      # route add default gw 10.0.0.1

    Con esto ya tendremos nuestra tarjeta inalámbrica configurada con ndiswrapper .

    ——————————————————————————————————-

    CONSEJO : Una buena herramienta es el programa wavemon para que puedas ver como trabaja tu tarjeta inalámbrica desde consola.

    Hay un programa que puede guardar todas las configuraciones de tus conexiones wifi. Ideal si tienes un portatil o bien varias conexiones a tu alrededor en sobremesa. El programa para SuSE se llama wifi-radar_1.9.4-1.guru.suse93_noarch.rpm (esta es su versión), y este es un screen del mismo. Gracias a abs canal #suse irc-hispano por su aportación :) :
    NOTA: Para instalar este programa deberás tener instalado estos dos paquetes : python-numeric , y python-gtk

    wifi-radar

    wifi-radar

    LINKS:

    Lista de tarjetas y chipsets wireless soportados en Linux (RECOMENDADA) : http://linux_wless.passys.nl/

    Wireless Lan, recursos para linux : http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/

    Página oficial del proyecto ndiswrapper : http://ndiswrapper.sourceforge.net/
    Instalación de ndiswrapper en la página del proyecto : http://ndiswrapper.sourceforge.net/phpwiki/index.php/Installation
    DriverLoader para tarjetas wireless en Linux : http://www.linuxant.com/driverloader/
    Proyecto prism54 : http://prism54.org/
    ATMEL Linux PCI PCMCIA USB Drivers : http://sourceforge.net/project/showfiles.php?group_id=59001&release_id=128821
    Drivers ORINOCO (antes nombrado Wavelan) para Linux : http://www.nongnu.org/orinoco/
    Compañia Linux-wlan. Soluciones embebidas para wlan : http://www.linux-wlan.com/download.html#WLAN
    Linux ZyDAS zd1201 Driver : http://linux-lc100020.sourceforge.net/
    Proyecto Mad WiFi : http://madwifi.sourceforge.net/
    Realtek RTL8181 para Linux : http://rtl8181.sourceforge.net/

    ———————————————————————————————————

    Este mini manual está realizado por tronk.net . Puedes copiarlo y/o modificarlo, agradeciéndote que me comunicaras su copia, así como las modificaciones que hagas en el, o bien dejando un comentario.

    ———————————————————————————————————

    Categories: Manuales, Red Tags:

    SERVIDOR DE CORREO EN SUSE 10.1 CON : postfix + cyrus + sasl + tls + spamassassin + amavis + clamav + squirrelmail’, ’servidor-suse-10-1

    Octubre 16th, 2008 admin No comments

    SERVIDOR DE CORREO EN SUSE 10.1
    CON : postfix + cyrus + sasl + tls + spamassassin + amavis + clamav + squirrelmail

    He decidido realizar este tutorial ya que las pasé putas a la hora de poder montar un servidor en mi querida distribución SuSE 10.1

    Esta es una forma de las muchísimas que hay de poder montar un servidor de correo. Puede ser que no se ajuste a lo que tu estás queriendo montar, pero aún así te servirá de base, y con unos cuantos cambios en su configuración, podrás dejar tu servidor como tu quieres.
    Me he inclinado por utilizar un servicio de correo con encriptado seguro ssl, con usuarios virtuales sin tener que tener usuarios dados de alta en el sistema, y seguridad antivirus y de correo basura o spam, junto con el añadido de montar squirrelmail para poder leer nuestro correo desde donde queramos.
    Al final de este tutorial pongo las direcciones webs que he consultado, las cuales me han ayudado para poder montar todo esto.

    Consideraciones previas. Doy por sentadas algunas cosas.
    Primer, empezaré por los paquetes que nos hacen falta tener instalados en nuestor servidor.
    Segundo, haré una breve reseña de para qué sirve cada paquete o que es lo que estamos montando. Leelo todo.
    Tercero
    , aqui empezaré con la modificación de cada uno de los archivos de configuración.
    Cuarto, en este apartado veremos que sencillo es crear usuarios virtuales con cyradm, sin necesidad que sean usuarios de sistema.
    Quinto, levantando los “demonios” o servicios necesarios, y alguna que otra prueba.
    Sexto, aqui configuraremos el programa squirrelmail, y así poder ver nuestros correos desde cualquier parte del mundo.
    Septimo, aqui configuraremos el cliente de correo Kmail para bajar nuestro correo de usuario.

    EMPEZAMOS.

    Consideracones Previas.

    * Tener un dominio comprado del tipo “tronk.net” incluido en DNS y con la posibilidad de poder hacer subdominios de segundo nivel del tipo mail.tronk.net, así como poder hacer registros MX que son utilizados sólo para la entrega de correo. Todo ello lo debe de facilitartelo la empresa donde hayas comprado tu dominio. Si no sabes donde comprar te recomiendo cdmon.com , por su seriedad , así como por su interfaz fácil de usar para la configuración de los dominios.
    O bien tenemos un noip.com o alguno parecido que sea gratuito.

    * El PC tiene LINUX SuSE 10.1 u OpenSuSE.

    * El Nombre del host o el nombre de nuestra máquina SuSE pongamos que se llama : superman (cada vez que veas “superman” en cualquier parte de los archivos de configuración, deberás poner el nombre de tu máquina linux)
    * El Nombre de dominio se llama : tronk.net (cada vez que veas “tronk.net” deberás poner el nombre de tu dominio)
    * El subdominio le llamamos : mail.tronk.net (cada vez que veas mail.tronk.net deberás poner el nombre de tu subdominio)
    * La IP de tu máquina linux va a ser : 192.168.1.10 (cada vez que veas 192.168.1.10 deberás cambiarla por tu propia ip).
    Recuerda que si estás detrás de un router multipuesto deberás abrir los puertos que hagan falta y dirigirlos a la ip de tu máquina.

    1º : Paquetes necesarios

    Debemos de tener los siguientes paquetes:

    Servidor Apache2 son :
    apache2
    apache2-doc (opcional)
    apache2-mod_php5
    apache2-prefork

    PHP son :
    php5
    php5-imap
    php5-mbstring
    php5-mcrypt
    php5-openssl
    php5-sockets

    Servidor de Correo que son :
    amavisd-new
    clamav
    postfix
    spamassassin
    perl-spamassassin

    cyrus-imapd
    cyrus-imapd-devel
    cyrus-sasl
    cyrus-sasl-crammd5
    cyrus-sasl-digestmd5
    cyrus-sasl-gssapi
    cyrus-sasl-plain
    cyrus-sasl-saslauthd
    perl-Authen-SASL-Cyrus
    perl-Cyrus-IMAP
    perl-Cyrus-SIEVE-managesieve

    Seguridad:
    openssl
    openssl-devel
    compat-openssl097
    tls

    Interface web para leer correo:
    squirrelmail

    No se si me dejo algún paquete en el tintero, pero eres libre de instalar los que creas conveniente.

    La manera de instalar todos estos paquetes es sencilla. Abrimos el Centro de Control de Yast -> Software -> Instalar/desinstalar software, y buscamos los paquetes, les señalamos con una [v] y pinchamos en el botón Aceptar.
    Si hubera algún paquete que no encuentres deberías buscarlo en :
    ftp://ftp.gwdg.de/pub/linux/suse/apt/SuSE/
    e instalarlo primero resolviendo dependencias.
    # rpm –test -Uvh *.rpm
    y una vez resultas las dependencias.
    # rpm -Uvh *.rpm

    2º. Breve reseña de lo que estamos montando.

    Resúmen de las diferentes tecnologías usadas en la instalación del sistema de correo.

    SuSe 10.1 – Linux (kernel-2.6.16.21-0.21-smp)

    SuSE y su distribución OpenSuSE son una de las principales distribuciones GNU/Linux existentes a nivel mundial, y su centro de producción está ubicado en Alemania. Entre las principales virtudes de esta distribución se encuentra el que sea una de las más sencillas de instalar y administrar, ya que cuenta con varios asistentes gráficos para completar diversas tareas. Corre con el núcleo linux y la mayor parte de sus herramientas son de libre distribución y uso. En la fecha de escritura de este manual (Septiembre de 2006), el sistema SuSE alcanza ya su 10ª versión. Las configuraciones de este manual se referirán a la configuración bajo esta distribución. Aunque se ha probado la misma bajo otras distribuciones y versiones, es problable que sean necesarios ciertos cambios para que nuestro sistema de correo funcione de forma adecuada fuera de la versión tratada.

    Postfix (postfix-2.2.2-2)

    Postfix es un MTA (Mail Transport Agent) rápido, fácil de administrar y seguro. Aunque no venga al caso, es totalmente compatible con sendmail, manteniendo externamente las formas de éste.
    Postfix es una combinación de diversos programas que realizan su función determinada dentro del conjunto.
    Nos podemos hacer una pequeña idea de esto observando la imágen siguiente:

    tecnología-correo

    postfix – the big picture

    Aunque parezca mentira, el resultado es menos complejo de lo que a primera vista puede parecer, pero no nos extenderemos más. Para más información a cerca de postfix, se puede consultar la documentación de su website: http://www.postfix.org/docs.html .

    TLS (Transportation Layer Security) y OpenSSL (openssl-0.9.7f-7)

    Todos los datos que viajan a través de Internet, lo hacen por defecto sin ningún tipo de encriptación ni autenticación fiable. En la práctica, cualquier persona con los conocimientos adecuados y con acceso físico a la línea de datos a través de la cual viaja un paquete, tendría acceso a dicha información. Por supuesto, si dicho acceso se efectúa, el contenido de los distintos paquetes puede ser alterado o redirigido con cualquier propósito.
    Para evitar este tipo de accesos, la compañía Netscape Inc. introdujo el protocolo de seguridad SSL (Secure Sockets Layer), cuya evolución ha terminado en el actual TLS. Este protocolo aporta encriptación de la comunicación (evitando escuchas no deseadas) y una alta fiabilidad en la autenticación que se asegura de tener correctamente identificadas a las distintas partes de una comunicación para que los datos no puedan ser alterados.
    El protocolo de seguridad será implantado en nuestro sistema gracias a OpenSSL. Para una mayor información sobre el particular, consultar la página web http://www.openssl.org .

    Cyrus IMAP (cyrus-imapd-2.2.12-6)

    Cyrus IMAP (Internet Message Access Protocol) es desarrollado y mantenido por Andrew Systems Group, de la Carnegie Mellon University.
    A diferencia de otros gestores de correo IMAP, Cyrus almacena cada correo en un fichero independiente. Las ventajas son obvias: mayor fiabilidad de almacenamiento y una rapidez de acceso inusitada. Los índices de cada mensaje y su estado se guardan en una base de datos a parte y los mensajes se indexan para una mayor rapidez en el acceso o la búsqueda.
    No es necesaria una cuenta de sistema linux para cada uno de los usuarios de correo. Esto hace que la creación de usuarios se pueda automatizar y no sea demasiado ardua en el caso de una gran cantidad de las mismas.
    Como la administración de cada cuenta se realiza mediante comandos específicos, la programación de interfaces dinámicos sirve para tener un mayor control sobre todas las funcionalidades del programa, a la vez que se hace más seguro que la manipulación del /etc/passwd.
    La versión de Cyrus analizada en este manual utiliza la versión 2 de la librería SASL para la autenticación. Así, Cyrus realizará la autenticación en tres fases o capas: el demonio saslauthd redirigirá la petición al mecanismo definido (en nuestro caso será auxprop a través del archivo sasldb2), el cual buscará la información del usuario.

    Cyrus SASL (cyrus-sasl-2.1.20-5)

    SASL son las siglas de Simple Authentication and Security Layer, método que añade un soporte adicional para la autenticación de los protocolos que fundamentan su conexión en la estandarización fijada por la IETF (Internet Engineering Task Force). Se usa en servidores, como Cyrus IMAP, para controlar las peticiones de acceso de los clientes. El protocolo de autenticación incluirá comandos para la correcta apertura del canal cliente-servidor y las subsiguientes aperturas del canal para la toma de nuevos datos. Opcionalmente, puede negociarse una capa de seguridad entre el protocolo mismo y la conexión.
    Cyrus SASL utiliza OpenSSL para encriptar los datos.

    LMTP (Local Mail Transfer Protocol)

    SMTP (Simple Mail Transfer Protocol) y sus extensiones ESMTP (SMTP Service Extensions), proporcionan los mecanismos necesarios para el trasporte de correo fiable y eficaz. El servidor bajo SMTP controlará las colas de envío de correo.
    LMTP actúa de forma que el servidor no tenga que manejar colas de correo, a modo de MDA (Mail Delivery Agent). Aunque LMTP puede utilizar extensiones que en un primer momento estarían definidas para su uso por ESMTP, nunca debería funcionar como receptor de escucha sobre el puerto 25.

    Sieve

    Sieve es un pequeño intérprete de órdenes que se encargan de realizar filtrados de correo en el lado del servidor, a la entrega del correo. El mensaje a filtrar necesita del uso del protocolo RFC822. Es un lenguaje muy sencillo y con órdenes muy limitadas, pero perfecto para su uso como lenguaje encargado de crear filtros de correo. Aún así, es preciso recomendar el uso de algún interface que agilice y automatice el uso de Sieve por parte de usuarios sin acceso al servidor.

    Amavisd-New (amavisd-new-2.3.1-1.2)

    Amavis supone una pasarela o interface que se coloca entre el servidor y uno o varios filtros de contenidos (antivirus, antispam, filtrado de correo …) . Está escrito en Perl, lo que asegura su portabilidad y fiabilidad y se comunica con el servidor por medio de casi cualquier protocolo o programa al efecto.
    Básicamente, amavisd-new actúa como un servidor smtp que cumple el estándar RFC 2821 o uno lmtp que cumple con el estándar RFC 2033. Una vez procesado el mensaje, se generan notificaciones que los programas de antivirus o antispam usarán para analizar los mensajes y filtrarlos o eliminarlos. Las notificaciones se generan bajo las normas RFC 1892 y 1894, lo que supone un estándar para una gran cantidad de programas de filtrado.

    SpamAssassin (spamassassin-3.0.4-1)

    SpamAssassin es un filtro de correo programado por los creadores de Apache. Analiza en tiempo real el correo entrante y lo compara con listados de spam y trata de analizar el texto para un mejor filtrado del mismo. Una vez realizado el análisis, el mensaje quedará o no marcado como spam para su posterior filtrado o eliminación.
    El filtrado de los mensajes de spam es habitualmente muy satisfactorio si el programa se ha configurado correctamente, permitiendo incluso el envío de informes de spam a bases de datos internacionales.

    ClamAV (clamav-0.88.1-1)

    El antivirus Clam es una herramienta bajo licencia GPL desarrollada para sistemas Linux/Unix. Se adapta perfectamente a casi cualquier servidor de correo y su principal función es la de escanear los datos adjuntos de un correo electrónico. La actualización de la base de datos es constante y la librería en la que se basa el programa es de libre distribución y uso por cualquier programa, lo que permite una integración perfecta bajo cualquier entorno.
    El programa soporta firmas digitales en las actualizaciones y escanea ficheros comprimidos y mensajes de correo en casi cualquier formato.

    Mailman (mailman-2.1.5-35)

    Mailman es un software de gestión de listas de correo y de noticias. Su perfecta integración con la web permite una fácil y rápida administración del sistema, así como un uso muy sencillo de cara al usuario de las listas. Mailman puede crear archivos de correo automáticos, procesar correo rechazado, filtrar spam, enviar conjuntos de correos como uno solo y mucho más.

    Squirrelmail (squirrelmail-1.4.6-0)

    Squirrelmail es un lector de correo vía web escrito en php. Mediante esta tecnología de programación, proporciona acceso al servidor de correo mediante los protocolos IMAP y SMTP. Las páginas son creadas en HTML sobre la marcha y no se requiere el uso de javascript , lo cual garantiza la máxima compatibilidad en casi cualquier navegador. Gracias a la gran cantidad de add-ons disponibles, este lector de correo vía web se convierte en la herramienta perfecta de acceso a la cuenta de correo fuera del lugar habitual de trabajo.

    3º. Configuración y/o modificación de cada uno de los archivos.

    Ya tenemos instalados todos los paquetes que comentaba anteriormente. Ahora es el momento de ponerlo todo en regla.

    1. Hacemos nuestro propio certificado ssl, autofirmado por nosotros: (pincha aquí)
    2. Configuramos el archivo /etc/postfix/main.cf , luego le comentamos: (pincha aquí)
    3. Modificamos el archivo /etc/postfix/master.cf , luego le comentamos : (pincha aquí)
    4. Damos los toques necesarios a /etc/cyrus.conf , luego viene la teoría : (pincha aquí)
    5. Cambiamos lo necesario en /etc/imapd.conf , luego sabremos más : (pincha aquí)
    6. Modificamos el archivo /usr/lib/sasl2/smtpd.conf , luego vemos que es cada línea : (pincha aquí)
    7. Ahora hacemos los cambios en /etc/amavisd.conf , son pocos (pincha aquí)

    Configuramos el archivo /etc/postfix/main.cf

    4º. Creando cuentas para los usuarios virtuales en sasl y directorios de correo con cyradm.

    4.1. Creando cuentas de usuario y asignación de password

    Antes de empezar debemos de parar el demonio saslautd, ya que se va a utiliar únicamente el módulo sasldb, y, para utilizar éste, no es necesario ejecutar el demonio de autentificación, tecleamos:
    superman:~ # /etc/init.d/saslauthd stop

    La base de datos residirá en el fichero /etc/sasldb2 y tendrá los permisos:
    superman:~ # ls -l /etc/sasldb2
    -rw-r—– 3 cyrus mail 12288 2006-09-22 22:47 /etc/sasldb2

    Por lo que todos los usuarios que quieran acceder a ella, y que no sea a través del demonio saslauthd, deben pertenecer al grupo mail.
    Para añadir/eliminar los usuarios a la base de datos se utilizará el programa saslpasswd2.
    - El primer usuario deber ser el propio cyrus, con lo cual tecleamos:
    superman:~ # saslpasswd2 -f /etc/sasldb2 -c cyrus
    Password:
    Again (for verification):
    - Creamos otro usuario llamado prueba
    superman:~ # saslpasswd2 -f /etc/sasldb2 -c prueba
    Password:
    Again (for verification):
    - Vemos los usuarios con contraseña en sasldb2
    superman:~ # sasldblistusers2 /etc/sasldb2
    cyrus@superman: userPassword
    prueba@superman: userPassword
    - Eliminamos el usuario prueba
    superman:~ # saslpasswd2 -f /etc/sasldb2 -d prueba
    - Comprobamos la eliminación
    superman:~ # sasldblistusers2 /etc/sasldb2
    cyrus@superman: userPassword.
    - Cremos dos usuarios más como ejemplo, el usuario llamado info
    superman:~ # saslpasswd2 -f /etc/sasldb2 -c info
    Password:
    Again (for verification):
    - Creamos el otro usuario llamado webmaster
    superman:~ # saslpasswd2 -f /etc/sasldb2 -c webmaster
    Password:
    Again (for verification):

    Otro uso de saslpasswd2 es el de asociar usuarios a dominios mediante la utilización de la opción -u:
    superman:~ # saslpasswd2 −c usuario01 −u dominio_tal.net

    4.2. Administrando los buzones de correo de los usuarios, creación de sus directorios.

    Una vez creados los usuarios en el paso 4.1 anterior, ahora creamos sus buzones de correo o directorios donde van a ir a parar todos sus correos.

    La línea a teclear sería:
    superman:~ # cyradm –user cyrus localhost
    Password: (aquí ponemos la password de cyrus)

    Nos aparece el prompt de esta manera localhost> (está esperando cyradm que tecleemos algo. Vamos a teclear help, para ver las opciones que nos brinda).

    localhost> help
    authenticate, login, auth authenticate to server
    chdir, cd change current directory
    createmailbox, create, cm create mailbox
    deleteaclmailbox, deleteacl, dam remove ACLs from mailbox
    deletemailbox, delete, dm delete mailbox
    disconnect, disc disconnect from current server
    exit, quit exit cyradm
    help, ? show commands
    info display mailbox/server metadata
    listacl, lam, listaclmailbox list ACLs on mailbox
    listmailbox, lm list mailboxes
    listquota, lq list quotas on specified root
    listquotaroot, lqr, lqm show quota roots and quotas for mailbox
    mboxcfg, mboxconfig configure mailbox
    reconstruct reconstruct mailbox (if supported)
    renamemailbox, rename, renm rename (and optionally relocate) mailbox
    server, servername, connect show current server or connect to server
    setaclmailbox, sam, setacl set ACLs on mailbox
    setinfo set server metadata
    setquota, sq set quota on mailbox or resource
    version, ver display version info of current server
    xfermailbox, xfer transfer (relocate) a mailbox to a different server
    localhost>_
    Listada la ayuda nos vuelve a aparecer localhost> (estando a la espera de un nuevo comando)

    Creamos los buzones de correo a los dos usuarios creados anteriormente: son info y webmaster.
    Todos los buzones de usuario estarán bajo el directorio user. Por lo que para crear el buzón del usuario “info” sería:
    localhost> cm user.info
    - Vemos si se ha creado con éxito:
    localhost>lm
    user.info (\\HasNoChildren)
    - Creamos al usuario info otro directorio llamado “personales”:
    localhost>lm user.info.personales
    localhost>lm
    user.info (\\HasChildren)
    user.info.personales (\\HasNoChildren)
    - Ahora creamos el usuario “webmaster” de la misma manera:
    localhost> cm user.webmaster
    localhost>lm
    user.info (\\HasChildren)
    user.info.personales (\\HasNoChildren)
    user.webmaster (\\HasChildren)

    En el caso de tener la opción de configuración altnamespace: yes, el usuario vería en su programa cliente de correo el directorio `INBOX” y el directorio “personales” al mismo nivel.

    - Para borrar un usuario cambiamos los permisos al usuario en cuestión (porque si no resulta imposible borrar el mailbox, incluso para el admin que en nuestro caso es cyrus)
    localhost> sam user.info cyrus all
    - Luego le borramos con :
    localhost> dm user.info
    De esta manera el usuario info no existiría ya, quedándonos únicamente para poder recibir el correo el usuario webmaster.
    Repetir lo anteriormente dicho para dar de alta usuarios, o borrarlos.

    - Para crear cuotas a los usuarios seria así:
    localhost> setquota user.webmaster 50000 (donde 50000 serian 50 megas, el límite máximo de espacio de correo para el usuario webmaster)

    - Una vez que hemos creado nuestros buzones a nuestro gusto salimos:
    localhost> exit

    Todos los buzones creados para los usuarios los tenemos en : /var/spool/imap/user/

    5º. Levantando los “demonios” o servicios necesarios

    Ahora tenemos que poner en marcha o re-arrancar todos los servicios que harán que todo esto funcione, empezamos :

    superman:~ # /etc/init.d/postfix restart
    superman:~ # /etc/init.d/cyrus restart
    superman:~ # /usr/sbin/amavisd reload
    superman:~ # /usr/sbin/clamd restart
    superman:~ # /etc/init.d/freshclam restart
    superman:~ # /usr/sbin/spamd restart

    Ahora haremos alguna que otra prueba para ver si todo va bien :

    (esto está por hacer)

    6º. Configuración de squirrelmail

    Como ya dije en la sección de paquetes a instalar, ya deberíamos tener instalado squirrelmail en la siguiente dirección :
    /srv/www/htdocs/squirrelmail
    desde donde cuelgan todos los archivos necesarios de este gran visualizador de correos para imap.

    Tenemos que cambiar algunas cosas en config.php en la dirección /srv/www/htdocs/squirrelmail/config/config.php

    Los cambios más significativos son los siguientes:
    $org_name = “Tronk.Net … Tu Correo Web”; (Nombre que apararece al entrar en la web de squirrelmail)
    $org_logo = SM_PATH . ”images/sm_logo.png”; (imagen o logo que apararece al iniciar web de squirrelmail)
    $motd = “Que tengas un buen día … “; (mensaje que aparece al entrar en el correo de usuario)
    $squirrelmail_default_language = ”es_ES”; (lenguage que utiliza por defecto)
    $default_charset = ”iso-8859-1”;
    $domain = ”tronk.net”;
    $imapServerAddress = ”localhost”;
    $imapPort = 143;
    $useSendmail = false;
    $smtpServerAddress = ”localhost”;
    $smtpPort = 25;
    $sendmail_path = ”/usr/sbin/sendmail”;
    $pop_before_smtp = false;
    $imap_server_type = ”cyrus”; (SUPERIMPORTANTE, aquí debemos poner cyrus que es nuestro servidor imap)
    $invert_time = false;
    $optional_delimiter = ”.”; (ojo que hay un punto entre las comillas simples)
    $encode_header_key = ””;

    $default_folder_prefix = ”MAIL.”;
    $trash_folder = ”Papelera”;
    $sent_folder = ”Sent”;
    $draft_folder = ”Drafts”;
    $default_move_to_trash = true;
    $default_move_to_sent = true;
    $default_save_as_draft = true;
    $show_prefix_option = false;
    $list_special_folders_first = true;
    $use_special_folder_color = true;
    $auto_expunge = true;
    $default_sub_of_inbox = false;
    $show_contain_subfolders_option = false;
    $default_unseen_notify = 2;
    $default_unseen_type = 1;
    $auto_create_special = true;
    $delete_folder = true;
    $noselect_fix_enable = false;

    $data_dir = SM_PATH . ”data/”;
    $attachment_dir = ”/var/lib/squirrelmail/attach/”;
    $dir_hash_level = 0;
    $default_left_size = ”150”;

    Las demás opciones las puedes dejar tal y como vienen. Guardas las modificaciones y cierras el config.php

    6.1. Cambios en APACHE2
    Bien, ya queda menos para poder ver nuestro squirrelmail funcionando con servidor seguro ssl, pero ahora debemos cambiar algúno de los archivos de configuración de apache2, vamos a ello.

    En /etc/apache2 es donde tenemos todos los archivos de configuración de nuestro servidor web apache2

    Vamos a /etc/apache2/sysconfig.d/loadmodule.conf , y miramos si tenemos, entre otras estas dos líneas :

    LoadModule ssl_module /usr/lib/apache2-prefork/mod_ssl.so
    LoadModule php5_module /usr/lib/apache2/mod_php5.so
    LoadModule rewrite_module /usr/lib/apache2-prefork/mod_rewrite.so

    Si las tenemos, perfecto; si no las tenemos las debemos de añadir.

    Vamos y editamos el archivo /etc/apache2/listen.conf , y añadimos o descomentamos:

    Listen 80
    Listen 443
    NameVirtualHost 192.168.1.10:80

    Guardamos los cambios y cerramos listen.conf

    Vamos a /etc/apache2/vhosts.d
    Copiamos vhost.template y le llamamos vhost.conf
    Copiamos vhost-ssl.template y le llamamos vhost-ssl.conf

    Editamos /etc/apache2/vhosts.d/vhost.conf y añadiros un VirtualHost así:

    Después de :

    #
    # VirtualHost template:
    # Almost any Apache directive may go into a VirtualHost container.
    # The first VirtualHost section is used for requests without a known
    # server name.
    #
    Añadir esto :

    <VirtualHost 192.168.1.10:80>
    DocumentRoot /srv/www/htdocs/squirrelmail
    ServerName mail.tronk.net
    ServerAdmin webmaster@tronk.net
    RewriteEngine On
    RewriteCond %{HTTPS} !=on
    RewriteRule ^/(.*) https://%{SERVER_NAME}%{REQUEST_URI} [R]
    </VirtualHost>

    Guardamos los cambios y cerramos.

    Editamos /etc/apache2/vhosts.d/vhost-ssl.conf

    y modificamos la línea <VirtualHost _default_:443> y siguientes por estas :

    <VirtualHost 192.168.1.10:443>

    # General setup for the virtual host
    DocumentRoot “/srv/www/htdocs/squirrelmail”
    ServerName mail.tronk.net:443
    ServerAdmin webmaster@tronk.net
    ErrorLog /var/log/apache2/error_log
    TransferLog /var/log/apache2/access_log

    Buscamos la línea que dice : SSLCertificateFile , y cambiamos por:
    SSLCertificateFile /etc/apache2/ssl.crt/server.crt

    Buscamos la línea que dice : SSLCertificateKeyFile , y la cambiamos por:
    SSLCertificateKeyFile /etc/apache2/ssl.key/server.key

    Estas dos líneas son para poner nuestro cretificado ssl autofirmado por nosotros mismos ya creado anteriormente. Lo demás lo dejamos como está. Guardamos estos cambios y cerramos vhost-ssl.conf.

    Vamos a /etc/sysconfig/apache2 y buscamos la línea que empieza por APACHE_MODULES

    APACHE_MODULES=”authz_host actions alias auth_basic authz_groupfile authn_file authz_user autoindex cgi dir include log_config mime negotiation setenvif status userdir asis imagemap rewrite ssl php5 authz_default”

    Y verificamos si los tres módulos cargados anteriormente están tambien incluidos en esa línea. (les pongo en negrita), si no están debes de añadirles a esa línea. Nota: no tienes porqué tener todos y cada uno de esos módulos de apache cargados, seguro que te falta alguno, pero lo pongo a modo orientativo.
    Guardamos los cambios y cerramos el archivo /etc/sysconfig/apache2

    Yo creo que no me dejo nada, pero si álguien viera que me fatal algo, o tengo algún error, por favor que lo diga así modificaré el tutorial. Entre todos podemos hacer grandes cosas :) = ¿ok?.

    Por fin, levantamos el servicio de apache2:

    superman:~ # /usr/sbin/apache2ctl start

    Nos vamos a un browser web como es Firefox o en el propio Konqueror y ponemos mail.tronk.net (ojo si la tuya es mail.antonioflores.com pues debes poner tu dominio). Visualizaremos un mensaje que nos dice que el certificado ha fallado. Eso es normal ya que le hemos autofirmado nosostros mismos, y no una empresa de certificación como VerySing “que cuesta una pasta por cierto”. Aceptamos el certificado sin problemas y tendremos en pantalla la bienvenida logotipo y preparado para introducir login y password para entrar a nuestro correo mediante squirrelmail.
    El login será alguno de los usuarios creados con cyradm, por ejemplo : webmaster
    El password será el asignado en sasldb2 que le hayamos asignado : ************

    Si te fijas en la dirección web o url pondrá: https://mail.tronk.net , HTTPS , eso es porque estamos en una comunicación segura.

    Y ¡¡¡¡¡ POR FIN !!!! veremos los correos enviados a nuestro usuario webmaster.

    La configuración interna de usuario mediante squirrelmail es una tontería, no tiene nada del otro mundo, se la dejo al lector. Pero si álguien cree necesario que ponga alguna cosa en concreto, no tiene más que pedirlo ;) . Mi portal se llama Tronk.net … Tu portal UTIL, y digo útil en mayúsculas.

    7. Configuración del cliente de correo Kmail

    Aquí voy a poner lo que debemos poner en nuestro Cliente de Correo Kmail para la configuración de las cuentas de usuario de correo creadas que queramos.
    Presiona las Teclas ALT+F2 y teclea Kmail. Se abrirá el cliente de correo del entorno KDE. La configuración será más o menos parecida en cualquier cliente de correo que tengamos, yo voy a utilizar Kmail.

    Estando dentro de Kmail, vamos a Preferencias -> Configurar Kmail , y pinchamos en -Cuentas-
    Hay dos pestañas llamadas Recibiendo y Enviando
    Pinchamos en Recibiendo. y pinchamos en Añadir, donde se nos abre una ventana con el tipo de cuenta: Elejimos bien POP3 o bien IMAP, es indiferente ya que nuestro servidor CYRUS acepta esos dos protocolos. Pero para el ejemplo elejimos IMAP y pincamos en el botón Aceptar.
    Aquí se nos abre otra ventana con tres pestañas arriba que son : General (por defecto) , Seguridad y Filtrado

    Por defecto estaremos en General:
    - Nombre de la cuenta : webmaster (introducimos el nombre del usuario)
    - Usuario: webmaster (de nuevo metemos el nombre del usuario a configurar)
    - Contraseña : ******* (la que le dimos al crearle con sasl)
    - Servidor : superman.tronk.net (es el pc donde trabaja nuestro servidor de correo)
    - Puerto : 143 (puerto de imap por defecto)

    Puesto esto , pinchamos en el botón Aceptar y ya tendríamos configurada la entrada de correo mediante IMAP para ese usuario.

    Vamos ahora a configurar el correo saliente SMTP. Para ello pinchamos en la pestaña llamada -Enviado- y pinchamos en el botón Añadir.
    Hay dos pestañas General (por defecto) y Seguridad.

    Por defecto está abierta las opciones de la opción -General- con estas opciones:
    Nombre: webmaster (teclemaos el nombre del usuario)
    Servidor: superman.tronk.net (aqui tecleamos el nombre de nuestro servidor)
    Puerto: 25 (puerto por defecto del smtp)
    Precomando : (aquí no ponemos nada)
    Seleccionamos la opción [x] El servidor necesita autenticación
    Usuario : webmaster (el nombre de nuestro usuario]
    Contraseña : ********* (la contraseña de ese usuario)
    Seleccionamos la opción [x] Almacenar la contraseña SMTP.

    Pinchamos en el botón Aceptar, y luego en el botón Aplicar y luego en el botón Aceptar.

    Con esto hemos creado en Kmail el usuario webmaster para que pueda recibir y enviar correo medainte el cliente Kmail. Veremos en la parte izquierda el nombre de usuario y un icono llamado entrante, pues bien le damos doble clic y nos bajará todos los correos obtenidos de ese usuario.

    Espero que os sirva este tutorial para que podais montar vuestro propio servidor de correo. SALUDOS.
    ——————————————————————————————————————————————————
    Este tutorial está escrito por TRONK.NET
    Se admite la copia total o parcial de este documentos, siempre que se respete su autoría o se haga referencia mediante un link a http://portal.tronk.net
    ——————————————————————————————————————————————————-

    WEBS CONSULTADAS
    ——————————————————————————————————————————————————–

    Aquí pongo los links a las páginas web que he consultado, las cuales me han servido de gran ayuda a la hora de redactar este tutorial.
    http://libertonia.escomposlinux.org/story/2003/11/9/153832/272 -Postfix+Cyrus Imap+sasl+tls para debian sarge- Por emeteo.
    http://bulma.net/body.phtml?nIdNoticia=1977 -Filtrando correo en postfix (antivirus y spam)- Por Fernando J. Pereda.
    http://www.oreilly.com/catalog/mimap/chapter/ch09.html -Cyrus System Administration- Oreilly.
    ———————————————————————————————————————————————————

    Categories: General Tags:

    Estructura del sistema de archivos de Linux

    Octubre 16th, 2008 admin No comments

    Estructura del sistema de archivos de Linux

    Archivos: Tipos

    La base del sistema de archivos de Linux, es obviamente el archivo, que no es otra cosa que la estructura empleada por el sistema operativo para almacenar información en un dispositivo físico como un disco duro, un disquete, un CD-ROM o un DVD. Como es natural un archivo puede contener cualquier tipo de información, desde una imagen en formato PNG o JPEG a un texto o una página WEB en formato HTML, … El sistema de archivos es la estructura que permite que Linux maneje los archivos que contiene.

    Todos los archivos de Linux tienen un nombre, el cual debe cumplir unas ciertas reglas:

    · Un nombre de archivo puede tener entre 1 y 255 caracteres.

    · Se puede utilizar cualquier carácter excepto la barra inclinada / y no es recomendable emplear los caracteres con significado especial en Linux, que son los siguientes: = ^ ~ ” ” ` * ; – ? [ ] ( ) ! & ~ < >. Para emplear ficheros con estos caracteres o espacios hay que introducir el nombre del fichero entre comillas.

    · Se pueden utilizar números exclusivamente si así se desea. Las letras mayúsculas y minúsculas se consideran diferentes, y por lo tanto no es lo mismo carta.txt que Carta.txt ó carta.Txt

    Como en Windows, se puede emplear un cierto criterio de “tipo” para marcar las distintas clases de ficheros empleando una serie de caracteres al final del nombre que indiquen el tipo de fichero del que se trata. Así, los ficheros de texto, HTML, las imágenes PNG o JPEG tienen extensiones .txt, .htm (o .html), .png y .jpg (o .jpeg) respectivamente.

    Pese a esto Linux sólo distingue tres tipos de archivos:

    · Archivos o ficheros ordinarios, son los mencionados anteriormente.

    · Directorios (o carpetas), es un archivo especial que agrupa otros ficheros de una forma estructurada.

    · Archivos especiales, son la base sobre la que se asienta Linux, puesto que representan los dispositivos conectados a un ordenador, como puede ser una impresora. De esta forma introducir información en ese archivo equivale a enviar información a la impresora. Para el usuario estos dispositivos tienen el mismo aspecto y uso que los archivos ordinarios.

    Enlaces

    Los enlaces son un tipo de archivo ordinario cuyo objetivo es crear un nuevo nombre para un archivo determinado. Una vez creado el enlace simbólico éste permite acceder al fichero que enlaza de igual modo que si se hubiera copiado el contenido del mismo a otro fichero, con la ventaja de que este realmente no se ha copiado. Los enlaces simbólicos son especialmente útiles cuando se quiere que un grupo de personas trabajen sobre un mismo fichero, puesto que permiten compartir el fichero pero centralizan las modificaciones.

    Como ejemplo se puede suponer la existencia de un fichero llamado balance.1999.txt, al que se crea un enlace simbólico balance.txt. Cualquier acceso a balance.txt es traducido por el sistema de forma que se accede al contenido de balance.1999.txt.

    El camino o Path

    En cualquier sistema operativo moderno la estructura de archivos es jerárquica y depende de los directorios. En general la estructura del sistema de archivos se asemeja a una estructura de árbol, estando compuesto cada nudo por un directorio o carpeta, que contiene otros directorios o archivos. En Windows cada unidad de disco se identifica como una carpeta básica que sirve de raíz a otras, y cuyo nombre es especial a:, c:, d: etc. En los sistemas Unix, y por lo tanto en Linux, existe una única raíz llamada / de la que cuelgan todos los ficheros y directorios, y que es independiente de qué dispositivos estén conectados al ordenador.

    El camino o path de un fichero o directorio es la secuencia de directorios que se ha de recorrer para acceder a un determinado fichero separados por /. Supongamos la estructura de archivos de la Figura 2.

    Existen dos formas del path o camino:

    · el camino absoluto que muestra toda la ruta a un fichero, /home/luis/Carta.txt.

    · el path relativo a un determinado directorio, por ejemplo si no encontramos en el directorio /home, el path relativo al fichero Carta.txt es luis/Carta.txt

    Para complicar aun más las cosas, todos los directorios contienen dos directorios especiales: Figura 2 •=El directorio actual, representado por el punto .

    •=El directorio padre representado por dos puntos ..

    Estando en el directorio /home/pedro se puede acceder a Carta.txt con /home/luis/Carta.txt (path absoluto) o bien ../luis/Carta.txt (path relativo). En luis como ./Carta.txt o simplemente Carta.txt.

    Estructura del sistema de archivos de Linux

    El sistema de archivo de Linux sigue todas las convenciones de Unix, lo cual significa que tiene una estructura determinada, compatible y homogénea con el resto de los sistemas Unix. Al contrario que en Windows o MS-DOS el sistema de archivos en cualquier sistema Unix no está ligado de una forma directa con la estructura del hardware, esto es, no depende de si un determinado ordenador tiene 1, 2 o 7 discos duros para crear las unidades c:, d: o m:.

    Todos el sistema de archivos de Unix tiene un origen único la raíz o root representada por /. Bajo este directorio se encuentran todos los ficheros a los que puede acceder el sistema operativo. Estos ficheros se organizan en distintos directorios cuya misión y nombre son estándar para todos los sistema Unix.

     

    · / Raíz del sistema de archivos.

     

    · /dev Contiene ficheros del sistema representando los dispositivos que estén físicamente instalados en el ordenador.

     

    · /etc Este directorio esta reservado para los ficheros de configuración del sistema. En este directorio no debe aparecer ningún fichero binario (programas). Bajo este deben aparecer otros dos subdirectorios:

    · /etc/X11 Ficheros de configuración de X Window

    · /etc/skel Ficheros de configuración básica que son copiados al directorio del usuario cuando se crea uno nuevo.

     

    · /lib Contiene las librerías necesarias para que se ejecuten los programas que residen en /bin (no las librerías de los programas de los usuarios).

     

    · /proc Contiene ficheros especiales que o bien reciben o envían información al kernel del sistema (Se recomienda no modificar el contenido de este directorio y sus ficheros).

     

    · /sbin Contiene programas que son únicamente accesibles al superusuario o root.

     

    · /usr Este es uno de los directorios más importantes del sistema puesto que contiene los programas de uso común para todos los usuarios. Su estructura suele ser similar a la siguiente:

     

    · /usr/X11R6 Contiene los programas para ejecutar X Window.

    · /usr/bin Programas de uso general, lo que incluye el compilador de C/C++.

    · /usr/doc Documentación general del sistema.

     

    · /usr/etc Ficheros de configuración generales. /usr/include Ficheros de cabecera de C/C++ (.h).

     

    · /usr/info Ficheros de información de GNU. /usr/lib Librerías generales de los programas.

     

    · /usr/man Manuales accesibles con el comando man (ver más adelante).

     

    · /usr/sbin Programas de administración del sistema. /usr/src Código fuente de programas.

    Existen además de los anteriores otros directorios que se suelen localizar en el directorio

    · /usr, como por ejemplo las carpetas de los programas que se instalen en el sistema.

     

    · /var Este directorio contiene información temporal de los programas (lo cual no implica que se pueda borrar su contenido, de hecho, ¡no se debe hacer!)

    Acceso a los diferentes sistemas de archivos

    Como se ha visto anteriormente el sistema de archivos de Linux sólo tiene una raíz y su estructura es independiente de los dispositivos de almacenamiento existentes. Esto implica que el procedimiento a emplear para acceder a la información almacenada en los distintos sistemas de almacenamiento de un ordenador no es tan sencilla como en Windows, y requiere un proceso llamado “montado”, que se verá más adelante. Cuando se ha terminado de trabajar con un determinado dispositivo hay que “desmontarlo” (¡No físicamente!).

    Por ejemplo el proceso para leer un disquete sería el siguiente:

    1. Introducir el disquete en la disquetera.

    2. Montar el sistema de archivos del mismo.

    3. Leer, grabar, y manipular el contenido del disquete.

    4. Desmontar el sistema de archivos del disquete.

    5. Extraer el disquete de la disquetera.

    El proceso puede parecer complejo pero es el precio a pagar por la seguridad, puesto que de esta forma se garantiza que no exista ninguna aplicación que esté usando el disquete cuando se extraiga. (En el caso de los CD-ROM Linux impide su extracción hasta que se desmonta).

    Para complicar más las cosas sólo el administrador o root tiene permiso para montar y desmontar un sistema de archivos (por motivos de seguridad), aunque esto puede ser arreglado.

    Permisos

    Linux, al igual que todos los sistemas Unix, mantiene un sistema de permisos de acceso a los ficheros muy estricto, a fin de controlar qué es lo que se puede hacer con ellos, y quien lo puede hacer. Estos permisos se identifican con letras y son:

    r permiso de lectura el fichero

    w permiso de escritura en el fichero

    x permiso de ejecución del fichero

    s permiso para cambiar el propietario del fichero

     

    Al contrario que en Windows o MS-DOS los programas ejecutables de Linux no están marcados por una determinada extensión (.exe) sino por un atributo, el permiso de ejecución x. Si se elimina este atributo a un programa, Linux no será capaz de ejecutarlo.

     

    A su vez cada uno de estos permisos se aplica: al dueño del fichero (u), al grupo de usuarios al que pertenece el dueño (g), ó al resto de usuarios (a). Así un fichero determinado puede tener permiso para ser leído, escrito y ejecutado por su dueño, leído y ejecutado por el grupo al que pertenece y no tener ningún tipo de acceso para los demás usuarios. Como se puede entender este tipo de mecanismo es especialmente útil cuando se trabaja en grupo en un determinado proyecto.

     

    Categories: Administración, Manuales Tags:

    Como montar un Servidor FTP en Linux con PURE-FTPD

    Octubre 16th, 2008 admin No comments

    Como montar un servidor Pure-FTPd

    Introducción

    Pure-FTPd es un servidor FTP libre (GPL) basado en Troll-FTPd. Fue modificado por Frank Dennis por razones de seguridad y funcionalidad.

    Los principales objetivos de este servidor FTP son la eficiencia, la seguridad y la facilidad de uso. Está diseñado para ser seguro en su configuración por defecto; no tiene buffer overflows conocidos y es muy sencillo de instalar. Ha sido diseñado para los kernels modernos, y ha sido portado con éxito a Linux, FreeBSD, NetBSD, OpenBSD, BSDi, Solaris, Darwin, Tru64, Irix y HPUX.

    Compilación e instalación de Pure-FTPd

    Lo primero de todo será bajarnos el último fuente, actualmente es la versión 1.0.12. El fichero a bajar será pure-ftpd-1.0.12.tar.gz.

    Una vez bajado haremos lo de siempre:

    % tar zxvf pure-ftpd-1.0.12.tar.gz % cd pure-ftpd-1.0.12 % ./configure –with-puredb –with-throttling –with-language=spanish –with-ftpwho % make

    –with-puredb Nos permite crear usuarios virtuales para el FTP.
    –with-throttling Para poder limitar el ancho de banda.
    –with-language=spanish Soporte en castellano de los mensajes del servidor.
    –with-ftpwho Nos permite ver quien está conectado.


    Ahora nos hacemos root con el comando su para poder realizar la instalacio”n en el sistema:

    # make install


    Ya tenemos instalado pure-ftpd. Ahora nos falta lo más importante, que es la configuración y la puesta en marcha.

    Configuración y puesta en marcha

    pure-ftpd es configurable a través de la linea de comandos, es decir, a la hora de arrancar el servidor le pasamos como parámetros las opciones que queramos.

    Tenemos también otra opción que es editar el fichero /etc/pureftpd.conf, y con el script pure-config.pl que acompaña el programa.

    Opciones disponibles:

    # /usr/local/sbin/pure-ftpd

    -A chroot para todos los usuarios. No pueden salir del directorio del FTP.
    -c 10 10 conexiones máximas al FTP.
    -B Ejecutar en segundo plano.
    -C 2 Permitir solamente 2 conexiones para una misma IP.
    -d Verbose log.
    -E No permitir usuario anonymous.
    -f ftp Logear a través de syslog.
    -H No resolver IP.
    -I 15 Si el usuario está 15 minutos inactivo, es desconectado
    -L 2000:8 Límite de recursividad.
    -m 3 Máxima carga por encima de la cual el servidor deja de funcionar.
    -s Antiwarez.
    -U 133:022 umask
    -u 100 minuid
    -k 90 Se podrá usar como máximo el 90% de la partición.
    -lpuredb:/etc/pureftpd.pdb Usaremos usuarios virtuales de FTP en vez de cuentas reales del sistema.


    *Nota: Para acceder a la lista completa de opciones pulse aquí.

    Manejo de usuarios

    Se recomienda utilizar usuarios virtuales en lugar de cuentas del sistema, por eso hemos habilitado la opción AUTH (-lpuredb:/etc/pureftpd.pdb). Para manejar los usuarios, utilizaremos la herramienta pure-pw.

    Por ejemplo, si queremos añadir al usuario pepe, lo haremos de la siguiente forma:

    # pure-pw useradd pepe -u -g -d -t 5 -T 10 Password: # pure-pw mkdb

    -u User ID
    -g Group ID
    -d User ID
    -t 5 5 Kb/s de límite de ancho de banda de bajada
    -T 10 10 Kb/s de límite de ancho de banda de subida


    Una vez introducido el password, lo siguiente que hemos hecho ha sido actualizar la base de datos /etc/pureftpd.pdb para que los cambios surtan efecto.

    Para eliminar y modificar usuarios usaremos respectivamente las opciones userdel y usermod de la herramienta pure-pw. El manejo es muy intuitivo y sencillo, así que con la ayuda en linea del propio programa es suficiente.

    Configuración de Ratios

    Aunque personalmente odie los ratios, no por eso voy a dejar de explicar como usarlos con pure-ftpd.

    Los ratios se usan para obligar a los usuarios a dejar algún fichero de X megas en el FTP para poder bajar Y megas. Para activar los ratios usaremos la opción -q X:Y (upload:download).

    Banners y mensajes de bienvenida

    Si en el directorio raíz del ftp grabamos un fichero de nombre .banner, de tamaño no superior a 4000 bytes, éste será impreso por pantalla cuando el usuario acceda al FTP. En cada directorio tambien podemos grabar un fichero .message para que sea impreso cada vez que el usuario accede al directorio.

    Permitiendo Uploads

    La problemática del directorio upload es que, al tener permiso de escritura, en principio los usuarios pueden borrar los ficheros, usar el directorio para intercambiar warez, etc. Esto lo podemos evitar estableciendo permisos de escritura y ejecución al directorio pero no de lectura (drwx-wx-wx), con chmod 333.

    Cierre

    Esto ha sido una introducción a Pure-FTPd, para que los usuarios novatos que no se atreven a instalar un servidor FTP tengan un texto que les sirva de ayuda. Si queréis saber más sobre este servidor FTP, no dejéis de visitar su página oficial.

    Autor: Francisco Gaytán Muñoz.
    URL: http://www.inforsist.net
    Fecha: 12/08/2002.

    Categories: Manuales, Red Tags: