Archivos para 24 octubre 2006

Listar atributos de un archivo

El comando para listar un atributo de un archivo es:
lsattr un_archivo

root@Neurona:~$ lsattr /etc/inittab
—————– /etc/inittab

El archivo no posee ningun atributo. Para añadirlos se usa el comando:
chattr

Se usa el + o – para añadir o quitar (al igual que con chmod)

*Atributo a: con este atributo conseguimos que el fichero solo pueda
abrirse en modo actualizacion, por lo tanto aunque un usuario tenga
permisos de escritura sobre el , no podra borrar, solo añadir datos.

root@Neurona:~# chattr +a ejemplo.txt
root@Neurona:~# lsattr ejemplo.txt
—–a———– ejemplo.txt
root@Neurona:~# echo pepe > ejemplo.txt
-su: ejemplo.txt: Operación no permitida
root@Neurona:~# echo pepe >> ejemplo.txt
root@Neurona:~# cat ejemplo.txt
pepe
root@Neurona:~# echo pepepepeppepee >> ejemplo.txt
root@Neurona:~# cat ejemplo.txt
pepe
pepepepeppepee

El uso que se le puede dar a este atributo es en los archivos de
configuracionque queremos que nadie o ningun proceso los
modifique y solo agregue datos (ejemplo: logs del sistema)

*Atributo i: hace que el archivo sea inmutable incluso por root.
A veces nos puede pasar que hay archivos que ni siquiera root
puede modificar.. lo primero que podemos hacer es fijarnos
en este atributo

root@Neurona:~# chattr -a ejemplo.txt
root@Neurona:~# chattr +i ejemplo.txt
root@Neurona:~# echo pepepepeppepee >> ejemplo.txt
-su: ejemplo.txt: Permiso denegado
root@Neurona:~# echo pepepepeppepee > ejemplo.txt
-su: ejemplo.txt: Permiso denegado
root@Neurona:~# rm ejemplo.txt
rm: ¿borrar el fichero regular `ejemplo.txt’ protegido contra escritura? (s/n) s
rm: no se puede borrar `ejemplo.txt’: Operación no permitida

en caso de que quieramos borrarlo tampoco se puede aunque seamos
root. Si queremos podemos quitarle ese atributo haciendo

root@Neurona:~# chattr -i ejemplo.txt

y listo, podemos volver a modificarlo sin problemas.
Se puede usar para proteger archivos de configuracion que no queremos que se modifique por ningun usuario o proceso

*Atributo s: activa el borrado seguro del archivo. El funcionamiento es el siguiente:
cuando se borra el archivo, los bloques se rellenan con ceros y se vuelve a grabar en el disco. Hay herramientas para recuperar datos borrados accidentalmente.. si el archivo tenia este
atributo sera imposible recuperarlo.
*Atributo S: cuando el archivo es modificado y tiene este atributo se guardara
directamente en el disco sin pasar por el bufer
*Atributo d: no sera usado por dump. Ojo: si un binario en ejecucion con este atributo muere por cualquier error no podras depurar el core
*Atributo A: por defecto los archivos guardan 3 fechas: la de creacion (ctime), ultima modificacion (mtime) y ultimo acceso (atime). Este atributo hara que no quede guardado el
ultimo acceso en atime

Fuente: Revista «Solo Linux» Año 1, Nº1

Deja un comentario

Uebimiau

Uebimiau es un potente webmail el cual no tiene mucha documentación en internet. Se puede bajar de www.uebimiau.org
Una vez descomprimido se mueve el directorio creado al directorio donde alojemos la pagina web. Ejemplo: http://www.midominio.com/mail
A continuacion solo se detallan las modificaciones para que funcione correctamente:
1- Hacer chmod 777 al directorio del uebimiau
2- Abrir el archivo config.php que esta en el directorio inc
3- Donde dice $temporary_directory = «./database/»; ahi se puede cambiar el directorio a nuestro gusto, siempre y cuando este directorio pueda tener permisos de lectura,escritura y ejecucion para todos
4- $mail_protocol = «pop3»;
$mail_port = 110;
esto queda asi
5- $server_time_zone = «-0300»;
Aqui se pone la zona horaria. Esto es importante para que los mails se envien y reciban con la hora correcta.
6- Agregar los dominios que va a manejar
$mail_servers[] = Array(
«domain» => «mi-zona.com»,
«server» => «mi-zona.com»,
«login_type» => «%user%»
);
Hay muchas cosas que se omiten aqui, pero el archivo esta muy bien comentado.
Se guardan los cambios y queda funcionando.
El idioma y la apariencia se cambia editando el archivo config.languages.php
En las versiones nuevas de php (5 en adelante) hay que realizar una modificacion en el archivo folders.php en la linea 156 para que se muestren las carpetas en el webmail. El archivo original dice:
$umFolderList = array_merge($system, $personal);
y hay que cambiarlo por
$umFolderList = array_merge((array)$system,(array)$personal);

8 comentarios

Como configurar un DNS descente en Ubuntu.

Como en la empresa se manejan varios dominios, fue necesario
instalar un dns que direccionara las peticiones de los distintos
dominios a los servidores web y de correo electronico.
Paso a detallar los pasos para configurar un dns en ubuntu:

Instalacion
El respositorio de ubuntu es muy extenso por lo que podemos evitar bajar y compilar el codigo fuente.
Siempre es recomendable que se instalen desde el codigo fuente porque nos permite mayor versatilidad
y sabemos a donde van los archivos… pero ante el apuro tambien podemos instalarlo con los comandos
de consola sin necesidad de compilar nada.. esto es algo bueno de esta distribucion: usando el
comando apt-get generalmente las cosas funcionan de la forma deseada.
Instalamos los paquetes haciendo desde consola: apt-get install bind

Configuracion
Los archivos de configuracion se encuentran en /etc/bind
Editamos el archivo named.conf y agregamos las zonas que queremos definir.
Un ejemplo es:

zone «mi-zona.com» {
type master;
file «/etc/bind/db.mi-zona»;
};

zone «192.168.1.in-addr.arpa» {
type master;
file «/etc/bind/db.192.168.1»;
};

siendo la primera la zona (db.mi.zona) y la segunda la zona reversa (db.192.168.1).
Si debemos agregar mas dominios simplemente agregamos la zona directa del dominio:

zone «mi-zona2.com» {
type master;
file «/etc/bind/db.mi-zona2»;
};

zone «mi-zona3.com» {
type master;
file «/etc/bind/db.mi-zona3»;
};

Una vez definidas las zonas, pasemos al archivo de zona (db.mi-zona)
Un detalle importante: SIEMPRE QUE MODIFIQUEMOS LOS ARCHIVOS DE ZONA, ES NECESARIO CAMBIAR
EL NUMERO DE SERIAL O SINO LOS CAMBIOS NO SON TOMADOS. Una forma de realizar esto con un criterio
es poner en Serial la fecha (año,mes,dia) y el numero de version: AAAAMMDDV (ejemplo:200610181). Cada
vez que realicemos un cambio,solo cambiamos el numero de la version o la fecha segun corresponda.
ESTO ES VALIDO PARA LA ZONA REVERSA TAMBIEN.
En el ejemplo, se define un servidor de correo electronico y un servidor web.
NOTA: los archivos de ejemplo son archivos que actualmente se encuentran en funcionamiento.

;
; BIND data file for local loopback interface
;
$TTL 604800
@ IN SOA dns.mi-zona.com. admin.mi-zona.com. (
200610181 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS dns.mi-zona.com. @ IN A X.X.X.X dns IN A X.X.X.X @ IN MX 0 mi-zona.com.
www IN A X.X.X.X
En este caso, el dns resolvera los nombres para el servidor de correo (MX) mi-zona.com y el servidor web http://www.mi-zona.com

Para el caso de la zona reversa quedaria asi:
;
; BIND reverse data file for local loopback interface
;
$TTL 604800
@ IN SOA ns1.electromax.com.uy. root.ns1.electromax.com.uy. (
200610181 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS dns.mi-zona.com.
1 IN PTR dns.mi-zona.com.

Lo ultimo que quedaria es redireccionar el puerto 53 al numero de ip que haga de dns para que las
peticiones puedan ser resueltas por nuestro dns, habiendo realizado previamente el registro
del mismo en la empresa proveedora del servicio de internet.

4 comentarios

Postfix+ipop3+sasl+SMTP AUTH+spamassasin+clamav

Hace un tiempo atrás encontre un HOW-TO sobre Postfix bastante bueno aqui
El how-to trata, entre otros, sobre la configuracion de un servidor de correo con Postfix+ipop3+sasl+SMPT AUTH+spamassasin+clamav desde cero, comenzando con la instalacion de Debian Sarge. Buscando en la web fue el unico completo que encontre el cual configura de forma facil todos los servicios antes mencionados.

3 comentarios

Presentacion

Desde 1999 he trabajado en el Area de Sistemas realizando tareas de soporte, configuracion y administracion de servidores, mantenimiento de red, etc.. La idea de este blog es publicar los problemas con las soluciones que se me van presentando dia a dia en el trabajo.
Utilizo Linux desde el año 2004 ya sea tanto en servidores como en pc de escritorio. Desde que comence a utilizarlo he configurado varios servidores de archivo, correo electronico, firewalls, proxy, etc.. y realice la migración de sistemas windows a linux en pc de escritorio de mas de 25 usuarios.
Mi interes principal son los sistemas operativos alternativos (que ya no son tan alternativos..) y el software libre.
Actualmente utilizo como distribucion de cabecera Ubuntu 6.06 LTS ya que he encontrado varias ventajas sobre las otras (pero no quiere decir que sea la mejor), asi como tambien un archivo de repositorios bastante extenso (LTS es Long Term Support ; es una distribucion que cuenta con 5 años de soporte)
He probado otros sistemas como NetBSD ,FreeBSD y Belenix pero todavia tengo mucho que aprender de ellas.

Deja un comentario