En más de una ocasión se nos habrá ocurrido querer poner mas vistosos los listados de nuestros directorios compartidos con apache.

Hay una alternativa muy buena llamada h5ahi y es muy fácil de implementar, veamos a continuación como hacerlo:

Primero hay que descargar el archivo de h5ai.

Luego descomprimimos su contenido:
tar xvfz h5ai-0.12.1.tar.gz

Dentro del directorio que resulta hay un subdirectorio llamado target y contiene un subdirectorio llamado h5ai, este tiene que ser accesible por apache, e una instalación común de apache2 sobre Debian bastaría con colocarlo en el /var/www; pero si ya metimos mano en la configuración de anfitriones virtuales pues ya sabremos que hay que hacer para que desde el raíz de cada dominio se pueda acceder a la carpeta h5ai (http://ejemplo.org/h5ai).

Una vez que esa carpeta sea accesible podremos copiar el archivo dot.htaccess que se encuentra en el directorio target y colocarlo en el directorio más alto de la ruta que tengamos compartida con el nombre de .htacces, sí ya tenemos algun .htaccess previamente configurado habrá que agregar el contenido del dot.htaccess al que ya tengamos.

Luego solo basta con acceder al directorio con nuestro navegador y obtendremos una nueva apariencia para nuestras carpetas web compartidas :).

Dentro del directorio de h5ai existe un archivo de configuración llamado options.js, podemos editar su contenido para asignar valores a las variables que configuran la apariencia como la del idioma por ejemplo, cambiar donde dice

lang: undefined,

por

lang:"es",

Y luego en la sección de lenguajes al final del archivo añadir el lenguaje español, después del primer idioma que se encuentra.


"es": {
viewDetails: "detalles",
viewIcons: "Íconos",
columnName: "Nombre",
columnLastModified: "Última modificación",
columnSize: "Tamaño",
footerUsing: "Usando",
parentDirectory: "Directorio superior",
empty: "Vacío"
},

Con eso mostrará los mensajes de la interfaz en español, sí desean pueden utilizar el nuestro:
http://debian.ues.edu.sv/h5ai/options.js

Espero le saquen el jugo y creen nuevos temas :)

El equipo mozilla de Debian nos provee ya varias alternativas para con apt instalar desde su sitio añadiendo el origen respectivo:
http://mozilla.debian.net/

Y por si acaso se deciden por la versión 5 acá dejo los enlaces de los xpi para el idioma español de la interfaz (sólo elijan uno):
es-AR.xpi
es-CL.xpi
es-ES.xpi
es-MX.xpi

U otros idiomas:
http://releases.mozilla.org/pub/mozilla.org/firefox/releases/5.0/linux-i686/xpi/

Hace mucho en una actualizacion en mi Sid me dejo de funcionar el touchpad y pase buscando encontre una forma de instalar algo de synaptics touchpad, editar el xorg.conf pero no me funciono, al final funciono con esto:

crear el archivo touchpad.conf en /etc/modprobe.d/

y poner lo siguiente

options psmouse proto=imps

El 16 de agosto de de 1993 Ian Murdok envió el correo que anunciaría en nacimiento de una obra pequeña que serviría para unir a una gran comunidad, siendo ahora Debian mas que un sistema operativo, convirtiendose en un filosofía y en un modo de vivir para algunos ;).

¡Felícidades y gracias! a toda la comunidad de Debian por tan grande aporte a la humanidad.

,

Autor: Salvador Osorio

Cuando queremos actualizar nuestros repositorios con el bien conocido

apt-get update

Y no tenemos las claves públicas de los repositorios beryl o debian-multimedia, por ejemplo, nos aparecerá el siguiente mensaje:

#Leyendo lista de paquetes… Hecho #W: GPG error: http://debian.beryl-project.org etch Release: Las firmas siguientes no se pudieron verificar porque su llave pública no está disponible: NO_PUBKEY 3FF0DB166A7476EA #W: GPG error: http://www.debian-multimedia.org stable Release: Las firmas siguientes no se pudieron verificar porque su llave pública no está disponible: NO_PUBKEY 07DC563D1F41B907 #W: Tal vez quiera ejecutar ‘apt-get update’ para corregir estos problemas

Los amigos de internet nos regalan un script y dan la siguiente solución, en una consola pegue el siguiente código:

cat > agregarclave << “FIN” #!/bin/bash until [ -z “$1” ] do gpg –keyserver pgpkeys.mit.edu –recv-key $1 gpg –keyserver wwwkeys.eu.pgp.net –recv-key $1 gpg -a –export $1 | sudo apt-key add – shift done FIN

lo que vera es

> #!/bin/bash > until [ -z “$1” ] > do > gpg –keyserver pgpkeys.mit.edu –recv-key $1 > gpg –keyserver wwwkeys.eu.pgp.net –recv-key $1 > gpg -a –export $1 | sudo apt-key add – > shift > done > FIN

presione {enter} para que vuelva al prompt nota: mi prompt es id01:/home/salvador#, id01 es el nombre de mi maquina y /home/salvador es el mi directorio de trabajo. para verificar, que se creo el archivo, escriba lo siguiente:

id01:/home/salvador# cat agregarclave

deberá aparecer lo siguiente:

#!/bin/bash until [ -z “$1” ] do gpg –keyserver pgpkeys.mit.edu –recv-key $1 gpg –keyserver wwwkeys.eu.pgp.net –recv-key $1 gpg -a –export $1 | sudo apt-key add – shift done id01:/home/salvador#

ahora le damos derechos de ejecución al archivo agregarclave

id01:/home/salvador# chmod +x agregarclave

con esto el script esta terminado solo tenemos que ejecutarlo con la clave que necesitamos de la siguiente manera

id01:/home/salvador# ./agregarclave 07DC563D1F41B907

NOTA: la clave 07DC563D1F41B907 es la que me pide a mi este dato cambiara para ustedes probablemente Y resolvemos el problema de las claves publicas, este es mi pequeño aporte, es bonito gnu/linux nos enseña a compartir el conocimiento, saludos

pues desde hace varios dias queria ponerme a hacer aplicaciones, pruebas y otras cosas en Java pero como a veces paso pajareando en otras cosas un dia si me propuse a hacer lo y con la ayuda del joven Xtecuan pude lograr echar a andar tomcat, por cierto ya tenia apache2 instalado en mi Debian Etch; aqui los pasos:

* de la pagina http://java.sun.com/javase/downloads/index.jsp bajar el JDK 6 Update 2, en mi caso baje el que dice “Linux self-extracting file (build 05) — jdk-6u2-linux-i586.bin”
* luego apt-get install libapache2-mod-jk y al final darle /etc/init.d/apache2 force-reload para habilitar el modulo.
* despues apt-get install tomcat5.5 libapache-mod-jk-doc y puede que luego de la instalacion de esos paquetes salga un mensaje como este; pero no es de preocuparse

Not creating home directory `/usr/share/tomcat5.5′.
Installing /var/lib/tomcat5.5/conf/tomcat-users.xml.
* Not starting Tomcat: no Java Development Kit found.
invoke-rc.d: initscript tomcat5.5, action “start” failed.
dpkg: error al procesar tomcat5.5 (–configure):
el subproceso post-installation script devolvió el código de salida de error 1
Se encontraron errores al procesar:
tomcat5.5
E: Sub-process /usr/bin/dpkg returned an error code (1)

* crear una carpeta de preferencia en /usr asi que mkdir /usr/java
* chown -R tomcat55:nogroup /usr/java
* copiar el .bin a /usr/java
* cd /usr/java
* chmod a+x *.bin
* ./jdk-6u2-linux-i586.bin
* despues de ese proceso darle chown -R tomcat55:nogroup /usr/java/jdk*
* editar el archivo /root/.bashrc y agregar estas lineas al final

export JAVA_HOME=/usr/java/jdk1.6.0_02
export JAVA_HOME=/usr/java/jdk1.6.0_02
export PATH=$JAVA_HOME/bin:$PATH

* desde la consola y como root digitar java -version

si todo va bien saldria algo como esto
java version “1.6.0_02”
Java(TM) SE Runtime Environment (build 1.6.0_02-b05)
Java HotSpot(TM) Client VM (build 1.6.0_02-b05, mixed mode, sharing)

* luego ejecutar apt-get -f install para ver si levanta Tomcat
* para saber en que puerto esta corriendo Tomcat ir a /etc/tomcat5.5 y editar o ver el archivo server.xml, buscar la parte donde dice Connector port; el numero que aparece ahi es el que esta asignado al puerto que se realizo en la instalacion, en teoria a estos momentos ya se puede accesar desde el navegador a http://localhost:8180, si solo se queda en blanco pues se va bien.
* para la administracion y unos ejemplos instalar esto; apt-get install tomcat5.5-admin tomcat5.5-webapps
* despues editar el archivo /var/lib/tomcat5.5/conf/tomcat-users.xml y agregar antes de esta linea
* luego /etc/init.d/tomcat5.5 restart
* crear un archivo llamado workers.properties en /etc/apache2/ y agregar estas lineas

workers.tomcat_home=/usr/share/tomcat5.5
workers.java_home=/usr/java/jdk1.6.0_02
ps=/
worker.list=worker1

worker.default.port=8009
worker.default.host=localhost
worker.default.type=ajp13
worker.default.lbfactor=1

* crear un archivo llamado mod_jk.conf en /etc/apache2/ y agregar estas lineas

#LoadModule jk_module /usr/lib/apache2/modules/mod_jk.so

# Where to find workers.properties
JkWorkersFile /etc/apache2/workers.properties

# Where to put jk logs
JkLogFile /var/log/apache2/mod_jk.log

# Set the jk log level [debug/error/info]
JkLogLevel info

# Select the log format
JkLogStampFormat “[%a %b %d %H:%M:%S %Y] ”

# JkOptions indicate to send SSL KEY SIZE,
JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories

# JkRequestLogFormat set the request format
JkRequestLogFormat “%w %V %T”

# Send servlet for context / jsp-examples to worker named worker1
JkMount /jsp-examples worker1
# Send JSPs for context /jsp-examples/* to worker named worker1
JkMount /jsp-examples/* worker1

* Editar el archivo /etc/apache2/apache2.conf y agregar esta linea al final

Include /etc/apache2/mod_jk.conf

* Para finalizar para apache /etc/init.d/apache2 stop y volverlo a levantar /etc/init.d/apache2 start; luego entrar a http://localhost/jsp-examples/ y la integracion ya esta hecha y funcionando

Autor:  Carlos Torrento

Objetivo: Tener un servidor dhcp que filtre contenido web y que sirva como router para accesar a internet a través de el.
lo obtendrá al final seria un servidor dhcp con proxy transparente.

Nota: tengo eth0:192.168.0.3 # acceso a mi red con internet
eth1:192.168.2.1 # acceso de mi red
-> Que necesito.
1) acceso a internet (obvio), 2 tarjetas de red y debían por su puesto.

2) Instalar dhcp3-server, squid, dansguardian, iptables

como?

# apt-get install squid
# apt-get install dansguardian
# apt-get install iptables
# apt-get install dhcp3-server

y ahora?

Lo primero que hice y lo más fácil es configurar mi /etc/dhcp/dhcpd.conf
ddns-update-style none;
default-lease-time 600;
max-lease-time 7200;
authoritative;
log-facility local7;

subnet 192.168.2.0 netmask 255.255.255.0 {
range 192.168.2.3 192.168.2.250;
option domain-name-servers 200.85.0.104;
option domain-name-servers 200.85.0.107;
option domain-name “tuxito.net”;
option routers 192.168.2.1;
option broadcast-address 192.168.2.255;
default-lease-time 600;
max-lease-time 7200;
}
Con esta configuración lo que estamos haciendo es que estamos asignando ip´s dinámicas desde la 192.168.0.3 hasta la 192.168.2.250 con netmask 255.255.255.0,
DNS 200.85.0.104 y 200.85.0.107, como puerta de enlace la 192.168.2.1 y un broadcast de 192.168.2.255.

3) Ahora procedemos a configurar el /etc/squid/squid.conf
visible_hostname proxy
http_port 3128 transparent
#We recommend you to use at least the following line.
hierarchy_stoplist cgi-bin ?
#We recommend you to use the following two lines.
acl QUERY urlpath_regex cgi-bin \?
cache deny QUERY
# Apache to signal ETag correctly on such responses
acl apache rep_header Server ^Apache
broken_vary_encoding allow apache
#  To log the request via syslog specify a filepath of “syslog”
access_log /var/log/squid/access.log squid
#Default: hosts_file /etc/hosts
hosts_file /etc/hosts
#Suggested default:
refresh_pattern ^ftp:        1440    20%    10080
refresh_pattern ^gopher:    1440    0%    1440
refresh_pattern .        0    20%    4320
#Recommended minimum configuration:
acl mired src 192.168.0.0 192.168.2.0/255.255.255.0 #agregamos nuestras redes
acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl to_localhost dst 127.0.0.0/8
acl SSL_ports port 443        # https
acl SSL_ports port 563        # snews
acl SSL_ports port 873        # rsync
acl Safe_ports port 80        # http
acl Safe_ports port 21        # ftp
acl Safe_ports port 443    # https
acl Safe_ports port 70        # gopher
acl Safe_ports port 210    # wais
acl Safe_ports port 1025-65535    # unregistered ports
acl Safe_ports port 280        # http-mgmt
acl Safe_ports port 488        # gss-http
acl Safe_ports port 591        # filemaker
acl Safe_ports port 777        # multiling http
acl Safe_ports port 631        # cups
acl Safe_ports port 873        # rsync
acl Safe_ports port 901        # SWAT
acl purge method PURGE
acl CONNECT method CONNECT

# Only allow cachemgr access from localhost
http_access allow mired #damos acceso a nuestras redes
http_access allow localhost
http_access allow manager localhost
http_access deny manager
http_access deny all
# Only allow purge requests from localhost
http_access allow purge localhost
http_access deny purge
# Deny requests to unknown ports
http_access deny !Safe_ports
# Deny CONNECT to other than SSL ports
http_access deny CONNECT !SSL_ports
#http_access allow our_networks
http_access allow localhost
# And finally deny all other access to this proxy
http_access deny all
# and finally allow by default
http_reply_access allow all
#Allow ICP queries from everyone
icp_access allow all
#  TAG: cache_effective_group
#    If you want Squid to run with a specific GID regardless of
#    the group memberships of the effective user then set this
#    to the group (or GID) you want Squid to run as. When set
#    all other group privileges of the effective user is ignored
#    and only this GID is effective. If Squid is not started as
#    root the user starting Squid must be member of the specified
#    group.
#cache_effective_group proxy
# Nota: debo de crear un usuario squid y un grupo squid
#agregamos el usuario y el grupo con que va a trabajar
cache_effective_user squid
cache_effective_group squid
Con esto tendríamos configurado en dhcp y el squid

4) ahora vamos a configurar el dansguardian :)
Como son un montón de líneas solo mostrare las de configuración:
# DansGuardian config file for version 2.8.0 with Anti-Virus plug-in 6.4.3
# **NOTE** as of version 2.7.5 most of the list files are now in dansguardianf1.conf
#UNCONFIGURED – Please remove this line after configuration
reportinglevel = 3
languagedir = ‘/etc/dansguardian/languages’
language = ‘spanish’
loglevel = 3
logexceptionhits = on
logfileformat = 1
loglocation = ‘/var/log/dansguardian/access.log’
filterip = 192.168.0.3
filterport = 8080
proxyip = 192.168.0.3
proxyport = 3128
accessdeniedaddress = ‘http://localhost/’
nonstandarddelimiter = on
usecustombannedimage = 1
custombannedimagefile = ‘/etc/dansguardian/transparent1x1.gif’
filtergroups = 1
filtergroupslist = ‘/etc/dansguardian/filtergroupslist’
bannediplist = ‘/etc/dansguardian/bannediplist’
exceptioniplist = ‘/etc/dansguardian/exceptioniplist’
banneduserlist = ‘/etc/dansguardian/banneduserlist’
exceptionuserlist = ‘/etc/dansguardian/exceptionuserlist’
bannedurllist = ‘/etc/dansguardian/bannedurllist’
exceptionurllist = ‘/etc/dansguardian/bannedurllist’
showweightedfound = on
weightedphrasemode = 2
urlcachenumber = 3000
urlcacheage = 900
phrasefiltermode = 2
preservecase = 0
hexdecodecontent = 0
forcequicksearch = 0
reverseaddresslookups = off
reverseclientiplookups = off
createlistcachefiles = on
maxuploadsize = -1
maxcontentfiltersize = 256
usernameidmethodproxyauth = on
usernameidmethodntlm = off # **NOT IMPLEMENTED**
usernameidmethodident = off
preemptivebanning = on
forwardedfor = off
usexforwardedfor = off
logconnectionhandlingerrors = on
maxchildren = 120
minchildren = 8
minsparechildren = 4
preforkchildren = 6
maxsparechildren = 32
maxagechildren = 500
ipcfilename = ‘/tmp/.dguardianipc’
urlipcfilename = ‘/tmp/.dguardianurlipc’
nodaemon = off
nologger = off
softrestart = off
# ANTIVIRUS SETTINGS
# ——————–
virusscan = on
virusengine = ‘clamav’
tricklelength = 32768
forkscanlength = 32768
firsttrickledelay = 10
followingtrickledelay = 10
maxcontentscansize = 41904304
virusscanexceptions = on
urlcachecleanonly = on
virusscannertimeout = 60
notify = 0
emaildomain = ‘your.domain.com’
postmaster = ‘postmaster@your.domain.com’
emailserver = ‘127.0.0.1:25’
downloaddir = ‘/tmp/dgvirus’
# CLAMAV SETTINGS
# ——————–
clmaxfiles = 1500
clmaxreclevel = 3
clmaxfilesize = 10485760
clblockencryptedarchives = off
cldetectbroken = off
# CLAMDSCAN SETTINGS
# ——————–
clamdsocket = ‘/tmp/clamd’
# KASPERSKY 5 SETTINGS
# ——————–
avesocket = ‘/var/run/aveserver’
# TROPHIE SETTINGS
# ——————–
trophiesocket = ‘/var/run/trophie’
# SOPHIE SETTINGS
# ——————–
sophiesocket = ‘/var/run/sophie’
# ICAP SETTINGS (experimental)
# —————————-
icapsocket = ‘localhost:1344’

# OPTION: icapservice
icapservice = ‘icap://localhost/avscan’
daemonuser = ‘squid’
daemongroup = ‘squid’
bueno ya con eso tendriamos el dansguardian configurado(nota:_ aquí le agregue el usuario y grupo que tuve que haber creado “squid”)
5) acontinuacion les muestro el script con iptables que funciona para bloquear puertos y redireccionar el trafico.
#!/bin/sh

# squid server IP
SQUID_SERVER=”192.168.0.3″

# Interface connected to Internet
INTERNET=”eth0″
# Interface connected to LAN
LAN_IN=”eth1″
# Squid port
SQUID_PORT=”3128″
# DO NOT MODIFY BELOW
# Clean old firewall
iptables –F
iptables –X
iptables -t nat –F
iptables -t nat –X
iptables -t mangle –F
iptables -t mangle –X
# Load IPTABLES modules for NAT and IP conntrack support
modprobe ip_conntrack
modprobe ip_conntrack_ftp
# For win xp ftp client
#modprobe ip_nat_ftp
echo 1 > /proc/sys/net/ipv4/ip_forward
# Setting default filter policy
iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
# Unlimited access to loop back
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT

# Allow UDP, DNS and Passive FTP
iptables -A INPUT -i $INTERNET -m state –state ESTABLISHED,RELATED -j ACCEPT
# set this system as a router for Rest of LAN
iptables –table nat –append POSTROUTING –out-interface $INTERNET -j MASQUERADE
iptables –append FORWARD –in-interface $LAN_IN -j ACCEPT
# unlimited access to LAN
iptables -A INPUT -i $LAN_IN -j ACCEPT
iptables -A OUTPUT -o $LAN_IN -j ACCEPT
# DNAT port 80 request comming from LAN systems to squid 3128 ($SQUID_PORT) aka #transparent proxy
iptables -t nat -A PREROUTING -i $LAN_IN -p tcp –dport 80 -j DNAT –to $SQUID_SERVER:8080
# if it is same system
iptables -t nat -A PREROUTING -i $INTERNET -p tcp –dport 80 -j REDIRECT –to-port $SQUID_PORT
# DROP everything and Log it
iptables -A INPUT -j LOG
iptables -A INPUT -j DROP
lo guardamos proxy.sh
y le asignamos permisos de ejecucion # chmod +x proxy.sh
para correrlo seria #sh proxy.sh

6) como ultimo paso para bloquear las urls o expresiones, nos descargarnos la blacklist de http://urlblacklist.com/ la descomprimimos en /etc/dansguardian/
Y eso seria todo ya tenemos un servidor dhcp con proxy transparente.
Espero que les sirva tanto como a mi.

Cualquier corrección hacérmela saber a cltorrento AT gmail.com o tuxito AT linuxmail.org

Después de un par de años de usar Squid+SquidGuard para filtrar contenido en una pequeña red, ahora por ciertas recomendaciones y algunos problemas, decidí instalar Dansguardian y a continuación expongo lo sucedido.

Para contextualizar el asunto, tengo que mencionar que tengo bajo mi responsabilidad 12 estaciones de trabajo a las que (por iniciativa propia) se les debe permitir el acceso a Internet. Considerando que trabajo en una institución educativa, estas estaciones serán utilizadas por alumnos que no deben tener acceso a cierta información y/o ciertas aplicaciones prohibidas por mi persona (y mis criterios arbitrarios :D).

Así que bueno, la cuestión consistía en:
1. Filtrar contenido
2. Prohibir aplicaciones de mensajería instantánea (MSN Messenger ante todo)
3. Poner a funcionar un Web Proxy Cache
4. Además el proxy debe ser transparente

Haciendo que las cosas sucedan…

Después de tener el sistema básico de mi Debian Etch funcionando y teniendo mis dos tarjetas de red configuradas con dos direcciones IP de clases distintas hacemos lo siguiente:

eth0 = 192.168.2.35 (parte de la red institucional)
eth1 = 172.16.1.1 (parte de mi pequeña red)

Instalamos lo necesario, Squid, Dansguardian y asumo que ya esta instalado Iptables :)

apt-get install squid dansguardian

Ahora editamos el /etc/squid.conf buscando las directivas minimas que deben ser configuradas:

http_port 3128 transparent
acl multinet src 172.16.1.0/24
http_access allow multinet
http_access deny all

Nos podemos percatar que la longitud de este archivo ronda las 4350 lineas asi que el tunning de Squid lo dejamos para después.

Ahora nos dedicamos al Dansguardian, /etc/dansguardian/dansguardian.conf y lo primero es comentar o borrar esta linea:

#UNCONFIGURED – Please remove this line after configuration 😀

Luego continuamos…

reportinglevel = 0
language = ‘spanish’
loglocation = ‘/var/log/dansguardian/access.log’
filterip = 172.16.1.1 #La IP de la interfaz en la que el Dansguardian escuchará
filterport = 8080 #El puerto en el que trabajara Dansguardian
proxyip = 172.16.1.1
proxyport = 3128 #El puerto en el que funciona Squid

Importante definir las listas de “cosas” prohibidas, como formatos de archivos, urls y demás, aunque estas opciones por defecto vienen activadas al igual que otras más.

bannedextensionslist = ‘/etc/dansguardian/bannedextensionslist’
bannediplist = ‘/etc/dansguardian/bannediplist’
banneduserlist = ‘/etc/dansguardian/banneduserlist’

Evito hacer mención de un montón de opciones mas que cada quien puede configurar a su gusto en dichos archivos de configuración al igual que la utilización de blacklists adicionales.

Ahora con iptables hacemos lo siguiente:

#Haciendo NAT
iptables -t nat -P POSTROUTING ACCEPT
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
echo “1” > /proc/sys/net/ipv4/ip_forward

#Redireccionamos el tráfico al puerto 8080 del Dansguardian
iptables -t nat -A PREROUTING -i eth1 -s 172.16.1.0/24 -d ! 172.16.1.0/24 -p tcp –dport 80 -j REDIRECT –to-port 8080

#Bloqueando el puerto del MSN Messenger
iptables -t filter -A FORWARD -s 0.0.0.0/0 -p tcp –sport 1863 -j REJECT
iptables -t filter -A FORWARD -s 0.0.0.0/0 -p udp –sport 1863 -j REJECT

Luego podríamos guardar esas lineas en un archivo (digamos, nat), lo mandamos a /etc/init.d/, le asignamos permisos de ejecución (chmod 755 nat) y para ejecutarlo al iniciar el sistema hacemos un enlace simbólico en el /etc/rc2.d/ (o según el runlevel por defecto en nuestra distro).

ln -s /etc/init.d/nat /etc/rc2.d/S60nat

Ese numero que acompaña la letra S es aleatorio, pero obviamente tiene que ser superior al asignado a Squid y Dansguardian.

Ahora reiniciamos Squid para que las nuevas configuraciones hagan efecto

/etc/init.d/squid restart

Y lo mismo con Dansguardian (esto puede tardar un ratito)

/etc/init.d/dansguardian restart

Y por supuesto ejecutamos el archivo para hacer el NAT de no haberlo hecho antes

./etc/init.d/nat

Si todo va bien y no me he equivocado en algun paso, tendriamos un proxy transparente filtrando contenido con Dansguardian y Squid para el cache.

Un poco de historia

El Gestor de arranque Grub se ha convertido en el estándar luego de reemplazar a lilo, el cual se puede considerar como su padre.

Pero la apariencia de Grub (letras blancas sobre fondo negro) no es muy atractiva, por lo que un desarrollador de Conectiva (una distribución) se dio la tarea de crear un parche vga 16 para el grub.

El resultado de ese parche se muestra en la siguiente figura:

Grub grafico

Los requisitos para la imagen son los siguientes:

  • Archivo de tipo xpm.gz
  • Resolución 640×480
  • 14 colores

Manos a la obra

Primero debemos de conseguir un archivo con extensión *.xpm.gz , por ejemplo de los siguientes links:

O si somos valientes podemos utilizar el comando convert de ImageMagick para experimentar con nuestras propias imágenes:

convert -resize 640×480 -colors 14 image.png image.xpm && gzip image.xpm

Luego copiamos el archivo en el directorio que queramos, por ejemplo /boot/grub/imagenes

Por último agregamos la siguiente línea al archivo /boot/grub/menu.lst, en Debian esta línea esta comentariada así que la buscamos y modificamos con nuestro editor favorito dejandola como a continuación

splashimage=(hd0,3)/boot/grub/imagenes/Debian_Ent.xpm.gz

Hay que tomar nota que el hd0,3 debe de estar de acuerdo a donde reside /boot, y básicamente es el mismo hdx del kernel en ejecución.

Reiniciamos y voilà! tenemos un bonito grub

Bueno para empezar creo que ya se dieron cuenta que Sony no tiene soporte para Linux, pero gracias a la gente solidaria ya tenemos un software libre para solventar esta necesidad pueden descargar el .jar de la siguiente direccion:

http://sourceforge.net/projects/nwe00xmp3man/

Se supone que funciona para las series Sony NW-E00x en mi caso ha funcionado muy bien.

Coloque el mp3 player en el puerto usb de la pc.

Instalamos el ffmpeg que es el encoder de audio y video

produccion:/home/salvador# apt-get install ffmpeg

Un ls para asegurarse que la pc reconocio el mp3 player

produccion:/home/salvador# ls /media/usbdisk/
OMGAUDIO playersize.txt podcasts.txt
produccion:/home/salvador#

Nos pasamos al directorio donde esta montado el mp3 player y ejecutamos el jar que descargamos.

produccion:/home/salvador# cd /media/usbdisk/
produccion:/media/usbdisk# /opt/SDK/jdk/jre/bin/java -jar /home/salvador/sony/NW-E00X_MP3_File_Manager-0.12.jar &

Veran la siguiente ventana la parte de arriba es la ubicacion donde tienen su musica en la pc y en la parte de abajo veran la musica que tiene su mp3 player el resto es un poco mas intuitivo.

NW-E00x
Como ultimo paso despues de habernos salido de la aplicacion, desmontamos el mp3 player de la siguiente forma:

produccion:/home/salvador# cd /home/salvador/
produccion:/home/salvador# umount /media/usbdisk/

Saludos espero que les sirva.