viernes, septiembre 28, 2007

Compartiendo con samba

En el servidor de archivos:
# apt-get install samba samba-common
ejemplo de /etc/samba/smb.conf
En un cliente
#apt-get install samba smbfs

[Pruebas]
comment = Carpeta de pruebas
writable = yes
locking = no
path = /pruebas
public = no
create mask = 0777
directory mask = 0777

Jugando con los permisos de Unix podemos hacer carpetas privadas, bien por usuario o por grupo.

Para crear los usuario eston han de existir previamente en el sistema, y como no nos interesa que un usuario se pueda logear lo creamos así:

#useradd edu -g samba -d /dev/null -s /bin/false

Ahora ya podemos crear un usuario de samba mediante:

#smbpassword -a edu

Poner passwords y ¡voila! todo listo.

miércoles, septiembre 26, 2007

Hotmail mediante pop3

Este howto está basado en Ubuntu.

Instalar las aplicaciones necesarias:

# apt-get install hotway hotsmtp inetutils-inetd

Segundo, configurar inetd (superdemonio de internet) para conectarse a estas aplicaciones:

# nano /etc/inetd.conf
(buscamos la línea...)
pop3 stream tcp nowait nobody /usr/sbin/tcpd /usr/bin/hotwayd

y la modificamos por estas dos:

1100 stream tcp nowait nobody /usr/sbin/tcpd /usr/bin/hotwayd -r
2500 stream tcp nowait nobody /usr/sbin/tcpd /usr/bin/hotsmtpd

He cambiado los puertos por defecto para que no influyan en el servidor de correo local. Además a hotwayd le he añadido -r para que borre los correos una vez descargados.

Reiniciamos el inetd

# /etc/init.d/inetd restart

Probamos POP:

# telnet localhost 1100
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
+OK POP3 hotwayd v0.8.2 -.
quit
+OK see you later!
Connection closed by foreign host.

Probamos el smtp:

# telnet localhost 2500
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
Gateway bas ed on hotwayd.
quit
221 Service closing transmission channel
Connection closed by foreign host.

Datos para el cliente de correo

Recepción de correo-e:

Tipo: POP
Servidor: localhost:1100
Usuario: xxxxx@hotmail.com
Activamos la casilla recordar contraseña (si queremos)

Envío de correo-e:

Tipo: SMTP
Servidor: localhost:2500
Usuario: xxxxx@hotmail.com
Lo mismo para la casilla de recordar contraseña

Fuente: http://soleup.eup.uva.es/mario

domingo, septiembre 16, 2007

Servidor web en debian etch


Me encanta cacharrear con versiones de CMS, foros, etc... Un amigo me ha pedido a ver si le puedo montar un portal y por lo que me ha contado la mejor opción la veo con un Joomla + PhpBB + Coppermine ( y qué mejor para probar las RCs de los dos primeros). Por supuesto no me voy a poner a cargar mi equipo con paquetes eventuales, así que me he montado una máquina virtual mínima que esta tirando con 32Mg de RAM con un cherokee (hay que promover los proyectos nacionales), un mysql-5.0, php5, pureftp y ssh en un Debian Etch. Bueno voy a explicar los pasos por si a alguien le viene bien (o a mí mismo porque con la cabeza que tengo últimamente... jeje):

1.-He optado por usar la version netinst de Debian, no voy a meterme con temas de instalación, simplemente es una instalación mínima.

2.-Una vez el sistema esté instalado y actualizado llegamos a lo más bonito de Debian:
#apt-get install cherokee php5-cgi php5-mysql php5-gd mysql-server-5.0 pure-ftpd ssh
(Qué gozada en una simple línea todo instalado...)

3.- Modificamos un par de líneas en /etc/php5/cgi/php.ini (las descomentamos, es decir, quitar el punto y coma que tienen delante)
;extension=mysql.so
;extension=gd.so

4.-Por seguridad vamos a cambiar el directorio donde cherokee busca las páginas web, para ello en /etc/cherokee/sites-avaliable/default buscamos la siguiente línea
DocumentRoot /var/www
Y la cambiamos por:
/home/inmolatus/public_html (ojo que la carpeta exista!)
Tras esto a reiniciar al indio:
#/etc/init.d/cherokee restart
Llegados a este punto podríamos crear una archivo en la ruta mencionada llamada index.php con el texto y debería de interpretarlo correctamente.

5.-Pure-ftpd es, a mi entender, uno de los mejores servidores de ftp, básicamente por su seguridad (ya hablaremos otro día de eso) y su configuración es bastante sencilla. Desde luego no nos interesa que usuarios de ftp puedan tener acceso al sistema, por lo cual vamos a crear un usuario que solo pueda acceder al ftp, para ello primero creamos un usuario del sistema que no pueda hacer nada:
#useradd ftp -g ftp -d/dev/null -s/bin/false
Con esto ya tenemos un usuario llamado ftp que no puede hacer nada en el sistema y va a ser en el que van a estar basados el resto de los usuarios del ftp.
#pure-pw useradd inmoftp -u ftp -g ftp -d /home/inmolatus/public_html
password:******
confirm:******
Con esto ya tenemos un usuario de ftp chrooteado a la ruta que hayamos elegido. Pure-ftpd tiene otras muchas opciones como no chrootear, limitar espacio, horarios de conexión, velocidad de subida y de bajada... Pero bueno para el caso que tenemos con esto nos sobra, en caso de duda a tirar del man.
Tras modificar cambios en los usuarios siempre hay que reestructurar la base de datos con un
#pure-pw mkdb
Si ahora lo probais... ¡aiba la hostia! ¡Login incorrect! ¿Cómo es esto? Pues resulta que está leyendo /etc/passwd... y no lee de donde le hemos creado los usuario locales, pero no hay nada que no se pueda arreglar vamos a /etc/pure-ftpd/auth y creamos un enlace que apunte al sitio correcto:
ln -s ../conf/PureDB 50pure (cacharreando un poco a donde apuntan los enlaces se sacan cosas interesantes sobre como funciona el programilla...)

Bueno y con esto y un bicocho nos emitamos el tiempo necesario de trabajar en un servidor externo (por no hablar de subir los 4000 y pico ficheros del Joomla 1.5, al menos hasta que movamos todo ya bien ordenado al hosting)

A cuidarse!

martes, agosto 28, 2007

copias de segiuridad en GNU/Linux

RSYNC COPIA LOCAL

rsync -altgvb /var/www/ /home/gabo/Respaldos/backup_www

RSYNC SSH - COPIA A UN SERVER.

rsync -e ssh -altgvb /leo/ root@192.168.1.4:/home/leo/CMO

Hasta aqui todo esta bien, pero si necesitamos hacer esto automaticamente cada hora mediante cron tenemos que lograr que ssh no nos pida contraseña. Para lograrlo realizamos el siguiente procedimiento:

Creamos una llave publica y una llave privada:
ssh-keygen -tdsa

Presionando solo enter en todas las preguntas que el comando anterior requiere vamos a tener nuestra llave publica en /home/usuario/.ssh/id_dsa.pub. Copiamos esta llave al servidor 192.168.1.4:

cd /home/usuario/.ssh/
cat id_dsa.pub | ssh bot@192.168.1.4 "cat - >> /home/bot/.ssh/authorized_keys"

Probamos que todo funcione haciendo:
ssh -l bot 192.168.1.4

Estas son las opciones de Rsync para entender mejor los comandos de arriba.

n no: no transferir solo mostrar lo que hay que hacer
# -a modo archivo (= -rlptDg)
# -r recursivo
# -l preservar soft links
# -p preservar permisos
# -t preservar fecha
# -D preservar dispositivos (solo root)
# -g preservar grupo
# -v modo verboso (-vv mas verboso)
# -z comprimir (si lo admite el servidor)
# -C ignorar archivos como lo hace CVS
# -u update: mantiene archivo destino si existe y es posterior
# -b backup: renombrar archivos destino preexistentes a extensión ~
# --stats imprimir estadisticas al final (solo si se ha puesto también -v)
# --delete borrar archivos en destino si no existen
# -R path relativos (crear rutas completas en el destino)

Fuente: www.ubuntu-es.org

domingo, agosto 05, 2007

De nuevo con el spam

Suele ser bastante común e interesante tener un foro anónimo en el que la gente pueda postear, pero siempre nos encontramos con el problema de los spambots...
Me han pasado un par de archivos en php que permiten crear una preguntas que el invitado deberá contestar si quiere que su post sea publicado. Tan solo hay que llamar al script lo primero antes de que se ejecute cualquier otra opcion de postear con un simple include_once 'bbantispam.php'; .Aqui los archivos en base 64, para decodificarlos podeis ir aquí:

bbantispam.php
PD9waHAKLy8gQWR2YW5jZWQgVGV4dHVhbCBDb25maXJtYXRpb24sIHYuMS4wLjMKLy8gKGMpIDIwMDcgYmJBbnRpU3BhbSwgaW5mb0AgaHR0cDovL2JiYW50aXNwYW0uY29tL2F0Yy8KaWYgKCRfU0VSVkVSWydSRVFVRVNUX01FVEhPRCddICE9ICdQT1NUJykgeyByZXR1cm47IH0KJGJiYXNfY29kZSA9IDw8PENPREUKSkdKaVlYTmZWakZsTURZd05EYzVJRDBnWkdseWJtRnRaU2hmWDBaSlRFVmZYeWtnTGlBbkwySmlZWE5mWTI5dQpabWxuTG5Cb2NDYzdJR2x1WTJ4MVpHVWdKR0ppWVhOZlZqRmxNRFl3TkRjNU95Qm1iM0psWVdOb0lDaGhjbkpoCmVTZ25iMjl1Wmw5dWVXcHViR1pmY0dKaGMzWmxlbkp4Snl3Z0oyUm9jbVpuZG1KaFppY3NJQ2Q1Ym1GMEp5d2cKSjNsMmNISmhabkpmZUhKc0p5d2dKM0JpWVhOMlpYcHVaM1ppWVY5amJuUnlKeWtnWVhNZ0pHSmlZWE5mVmpkbQpZV013TWpFNEtTQjdDaUFrWW1KaGMxOVdOMlpoWXpBeU1UZ2dQU0J6ZEhKZmNtOTBNVE1vSkdKaVlYTmZWamRtCllXTXdNakU0S1RzZ0pHSmlZWE5mVm1JMU5HWmlNRFJqSUQwZ0oySmlZWE5mVmljZ0xpQnpkV0p6ZEhJb2JXUTEKS0NSaVltRnpYMVkzWm1Gak1ESXhPQ2tzSURBc0lEZ3BPd29rUjB4UFFrRk1VMXNrWW1KaGMxOVdZalUwWm1JdwpOR05kSUQwZ0ppUWtZbUpoYzE5V04yWmhZekF5TVRnN0lIMGdaMnh2WW1Gc0lDUmlZbUZ6WDFZME56ZzJOamxqCk55d2dKR0ppWVhOZlZqYzFOekkxTlRsakxDQWtZbUpoYzE5V1ltTTVZemM1T0RNc0lDUmlZbUZ6WDFZMFpUWXoKTURFeVlqc0taMnh2WW1Gc0lDUmlZbUZ6WDFaa01EWTNaakkxT0N3Z0pHSmlZWE5mVmpOaFkyVXdORFExTENBawpZbUpoYzE5V1pXSmhPR1F5T0RrN0lDUmlZbUZ6WDFZM1kyVmpPR0UxWkNBOUlHSmlZWE5mUmpBNU16QTFNbVJoCktDazdJR2xtSUNnaElDUmlZbUZ6WDFZM1kyVmpPR0UxWkNrZ2V3b2dKR0ppWVhOZlZqZGpaV000WVRWa0lEMGcKWW1KaGMxOUdaREExTjJRNFltWW9LVHNnZlNCcFppQW9KR0ppWVhOZlZqZGpaV000WVRWa0tTQjdJR2xtSUNnaApJR1JsWm1sdVpXUW9KMEpDUVZOZlZFVlRWRjlOVDBSRkp5a3BJSHNLSUdKaVlYTmZSamMxTmpjNU5tTmhLQ2s3CklIMGdjbVYwZFhKdU95QjlJR1oxYm1OMGFXOXVJR0ppWVhOZlJqYzFOamM1Tm1OaEtDa2dleUJtYjNKbFlXTm8KSUNna1IweFBRa0ZNVXlCaGN5QWtZbUpoYzE5V09HTmxOR0l4Tm1JOVBpUmlZbUZ6WDFZNVpUTTJOamxrTVNrZwpld29nYVdZZ0tDZ2tZbUpoYzE5V09HTmxOR0l4Tm1JZ1BUMGdKM0YxWlhOMGFXOXVjeWNwSUc5eUlDZ2tZbUpoCmMxOVdPR05sTkdJeE5tSWdQVDBnSjJ4aGJtY25LU0J2Y2lBb0pHSmlZWE5mVmpoalpUUmlNVFppSUQwOUlDZHMKYVdObGJuTmxYMnRsZVNjcElHOXlJQ2drWW1KaGMxOVdPR05sTkdJeE5tSWdQVDBnSjJOdmJtWnBjbTFoZEdsdgpibDl3WVdkbEp5a2diM0lnS0NSaVltRnpYMVk0WTJVMFlqRTJZaUE5UFNBblltSmhjMTloYkhkaGVYTmZZMjl1ClptbHliV1ZrSnlrZ2IzSWdLQ1JpWW1GelgxWTRZMlUwWWpFMllpQTlQU0FuWW1KaGMxOWhkR05mY1NjcElHOXkKSUNna1ltSmhjMTlXT0dObE5HSXhObUlnUFQwZ0oySmlZWE5mWVhSalgyRW5LU0J2Y2lBb2MzVmljM1J5S0NSaQpZbUZ6WDFZNFkyVTBZakUyWWl3Z01Dd2dOU2tnUFQwZ0oySmlZWE5mSnlrcElIc0tJSFZ1YzJWMEtDUkhURTlDClFVeFRXeVJpWW1GelgxWTRZMlUwWWpFMllsMHBPeUI5SUgwZ2ZTQm1kVzVqZEdsdmJpQmlZbUZ6WDBZd09UTXcKTlRKa1lTZ3BJSHNnYVdZZ0tHUmxabWx1WldRb0owSkNRVk5mVkVWVFZGOU5UMFJGSnlrcElIc0tJR2RzYjJKaApiQ0FrWW1KaGMxOVdaREEyTjJZeU5UZzdJR2xtSUNocGMzTmxkQ2drWW1KaGMxOVdaREEyTjJZeU5UZ3BJR0Z1ClpDQWtZbUpoYzE5V1pEQTJOMll5TlRncElIc2djbVYwZFhKdUlERTdJSDBnZlNCcFppQW9KRjlUUlZKV1JWSmIKSjFKRlVWVkZVMVJmVFVWVVNFOUVKMTBnSVQwZ0oxQlBVMVFuS1NCN0NpQnlaWFIxY200Z01Uc2dmU0JwWmlBbwpJU0JpWW1GelgwWTNNbVl6T1RJd1l5Z3BLU0I3SUhKbGRIVnliaUF4T3lCOUlHbG1JQ2hwYzNObGRDZ2tYME5QClQwdEpSVnNuWW1KaGMxOXdZWE56WDJOdlpHVW5YU2twSUhzS0lDUmlZbUZ6WDFZeFlURmtZemt4WXlBOUlHSmkKWVhOZlJtVTROMkV6TnpCa0tDazdJR2xtSUNna1gwTlBUMHRKUlZzblltSmhjMTl3WVhOelgyTnZaR1VuWFNBOQpQU0FrWW1KaGMxOVdNV0V4WkdNNU1XTXBJSHNnY21WMGRYSnVJREU3Q24wZ2ZTQnlaWFIxY200Z01Ec2dmU0JtCmRXNWpkR2x2YmlCaVltRnpYMFppWWpRME5UazNNQ2dwSUhzZ1oyeHZZbUZzSUNSaVltRnpYMVl6WVdObE1EUTAKTlN3Z0pHSmlZWE5mVm1WaVlUaGtNamc1T3lBa1ltSmhjMTlXTTJGalpUQTBORFVnUFNCemNISnBiblJtS0NkaQpZbUZ6SlhVbkxDQmpjbU16TWloaVltRnpYMFkzWlRReU9XSTJZeWduWW1KaGMxOWhkR05mY1NjcEtTazdDaVJpClltRnpYMVpsWW1FNFpESTRPU0E5SUhOd2NtbHVkR1lvSjJKaVlYTWxkU2NzSUdOeVl6TXlLR0ppWVhOZlJqZGwKTkRJNVlqWmpLQ2RpWW1GelgyRjBZMTloSnlrcEtUc2dmU0JtZFc1amRHbHZiaUJpWW1GelgwWmtNRFUzWkRoaQpaaWdrWW1KaGMxOVdOak13TnpObE9Ua2dQU0F4S1NCN0NpQm5iRzlpWVd3Z0pHSmlZWE5mVmpRM09EWTJPV00zCkxDQWtZbUpoYzE5V00yRmpaVEEwTkRVc0lDUmlZbUZ6WDFabFltRTRaREk0T1RzZ1ltSmhjMTlHWW1JME5EVTUKTnpBb0tUc2dhV1lnS0NFZ0tHbHpjMlYwS0NSZlVFOVRWRnNrWW1KaGMxOVdNMkZqWlRBME5EVmRLU0JoYm1RZwphWE56WlhRb0pGOVFUMU5VV3lSaVltRnpYMVpsWW1FNFpESTRPVjBwS1NrZ2V3b2djbVYwZFhKdUlEQTdJSDBnCkpHSmlZWE5mVmpkaFlUQm1ObVZsSUQwZ0pGOVFUMU5VV3lSaVltRnpYMVl6WVdObE1EUTBOVjA3SUNSaVltRnoKWDFaaE16WXpZamhrTVNBOUlDUmZVRTlUVkZza1ltSmhjMTlXWldKaE9HUXlPRGxkT3lBa1ltSmhjMTlXWVRNMgpNMkk0WkRFZ1BTQnpkSEowYjJ4dmQyVnlLSFJ5YVcwb0pHSmlZWE5mVm1Fek5qTmlPR1F4S1NrN0lBb2dabTl5ClpXRmphQ0FvSkdKaVlYTmZWalEzT0RZMk9XTTNJR0Z6SUNSaVltRnpYMVkzTmprMFpqUmhOajArSkdKaVlYTmYKVmpCall6RTNOV0k1S1NCN0lHbG1JQ2hpWW1GelgwWTNaVFF5T1dJMll5Z2tZbUpoYzE5V056WTVOR1kwWVRZcApJRDA5SUNSaVltRnpYMVkzWVdFd1pqWmxaU2tnZXdvZ0pHSmlZWE5mVmpjNE9UUTVZVGMxSUQwZ0pHSmlZWE5mClZqQmpZekUzTldJNU95QmljbVZoYXpzZ2ZTQjlJR2xtSUNnaElHbHpjMlYwS0NSaVltRnpYMVkzT0RrME9XRTMKTlNrcElIc2djbVYwZFhKdUlEQTdJSDBnSkdKaVlYTmZWbVl3WVdOaE9HTXlJRDBnTURzS1ptOXlaV0ZqYUNBbwpKR0ppWVhOZlZqYzRPVFE1WVRjMUlHRnpJQ1JpWW1GelgxWXdZMk14TnpWaU9Ta2dleUFrWW1KaGMxOVdNR05qCk1UYzFZamtnUFNCemRISjBiMnh2ZDJWeUtIUnlhVzBvSkdKaVlYTmZWakJqWXpFM05XSTVLU2s3Q21sbUlDZ2sKWW1KaGMxOVdNR05qTVRjMVlqa2dQVDBnSkdKaVlYTmZWbUV6TmpOaU9HUXhLU0I3SUNSaVltRnpYMVptTUdGagpZVGhqTWlBOUlERTdJR0p5WldGck95QjlJSDBnYVdZZ0tDRWdKR0ppWVhOZlZtWXdZV05oT0dNeUtTQjdDaUJ5ClpYUjFjbTRnTURzZ2ZTQnBaaUFvSkdKaVlYTmZWall6TURjelpUazVLU0I3SUNSaVltRnpYMVl4WVRGa1l6a3gKWXlBOUlHSmlZWE5mUm1VNE4yRXpOekJrS0NrN0lITmxkR052YjJ0cFpTZ25ZbUpoYzE5d1lYTnpYMk52WkdVbgpMQ0FrWW1KaGMxOVdNV0V4WkdNNU1XTXNJSFJwYldVb0tTczJNQ28yTUNveU5Db3pNREFzSUNjdkp5azdDbjBnCmNtVjBkWEp1SURFN0lIMGdablZ1WTNScGIyNGdZbUpoYzE5R04yVTBNamxpTm1Nb0pHSmlZWE5mVmpBell6ZGoKTUdGaktTQjdJQ1JpWW1GelgxWmpaV0l5TURjM01pQTlJR0ppWVhOZlJtVTROMkV6TnpCa0tDazdJSEpsZEhWeQpiaUJ0WkRVb0pHSmlZWE5mVm1ObFlqSXdOemN5SUM0Z0pHSmlZWE5mVmpBell6ZGpNR0ZqS1RzS2ZTQm1kVzVqCmRHbHZiaUJpWW1GelgwWmxPRGRoTXpjd1pDZ3BJSHNnWjJ4dlltRnNJQ1JpWW1GelgxWTBOemcyTmpsak56c2cKYjJKZmMzUmhjblFvS1RzZ1ptOXlaV0ZqYUNBb1lYSnlZWGtvSjFORlVsWkZVbDlPUVUxRkp5d2dKMU5GVWxaRgpVbDlCUkUxSlRpY3NJQ2RJVkZSUVgxVlRSVkpmUVVkRlRsUW5LU0JoY3lBa1ltSmhjMTlXWWpJeE5EVmhZV01wCklIc0tJR2xtSUNocGMzTmxkQ2drWDFORlVsWkZVbHNrWW1KaGMxOVdZakl4TkRWaFlXTmRLU2tnZXlCd2NtbHUKZENna1gxTkZVbFpGVWxza1ltSmhjMTlXWWpJeE5EVmhZV05kSUM0Z0lseHVJaWs3SUgwZ2ZTQWtZbUpoYzE5VwpNamswWWpFd09XSWdQU0JpWW1GelgwWmpZVE5tT1RRMFl5Z3BPd3B3Y21sdWRDQWtZbUpoYzE5V01qazBZakV3Ck9XSWdMaUFpWEc0aU95QndjbWx1ZEY5eUtDUmlZbUZ6WDFZME56ZzJOamxqTnlrN0lDUmlZbUZ6WDFZd00yTTMKWXpCaFl5QTlJRzlpWDJkbGRGOWpiMjUwWlc1MGN5Z3BPeUJ2WWw5bGJtUmZZMnhsWVc0b0tUc0tjbVYwZFhKdQpJRzFrTlNna1ltSmhjMTlXTUROak4yTXdZV01wT3lCOUlHWjFibU4wYVc5dUlHSmlZWE5mUm1OaE0yWTVORFJqCktDa2dleUFrWW1KaGMxOVdZbUk0TTJaaE0yWWdQU0FuV3pBdE9WMTdNU3d6ZlNjN0NpUmlZbUZ6WDFZNFpEYzMKTnpaaVlpQTlJQ0l2S0NSaVltRnpYMVppWWpnelptRXpabHhjTGlSaVltRnpYMVppWWpnelptRXpabHhjTGlSaQpZbUZ6WDFaaVlqZ3pabUV6WmlsY1hDNGtZbUpoYzE5V1ltSTRNMlpoTTJZdklqc2dKR0ppWVhOZlZqSmpabUl5Ck5URmhJRDBnWVhKeVlYa29LVHNLWm05eVpXRmphQ0FvWVhKeVlYa29KMUpGVFU5VVJWOUJSRVJTSnl3blNGUlUKVUY5V1NVRW5MQ2RJVkZSUVgxaGZSazlTVjBGU1JFVkVYMFpQVWljcElHRnpJQ1JpWW1GelgxWmlNakUwTldGaApZeWtnZXlCcFppQW9hWE56WlhRb0pGOVRSVkpXUlZKYkpHSmlZWE5mVm1JeU1UUTFZV0ZqWFNrcElIc0tJR2xtCklDaHdjbVZuWDIxaGRHTm9YMkZzYkNna1ltSmhjMTlXT0dRM056YzJZbUlzSUNSZlUwVlNWa1ZTV3lSaVltRnoKWDFaaU1qRTBOV0ZoWTEwc0lDUmlZbUZ6WDFaaFpHUmxZelF5TmlrcElIc2dKR0ppWVhOZlZqSmpabUl5TlRGaApJRDBnWVhKeVlYbGZiV1Z5WjJVZ0tDUmlZbUZ6WDFZeVkyWmlNalV4WVN3Z0pHSmlZWE5mVm1Ga1pHVmpOREkyCld6RmRLVHNLZlNCOUlIMGdKR0ppWVhOZlZqSTVOR0l4TURsaUlEMGdhVzF3Ykc5a1pTZ25MQ2NzSUNSaVltRnoKWDFZeVkyWmlNalV4WVNrN0lISmxkSFZ5YmlBa1ltSmhjMTlXTWprMFlqRXdPV0k3SUgwZ1puVnVZM1JwYjI0ZwpZbUpoYzE5R056Sm1Nemt5TUdNb0tTQjdDaUJuYkc5aVlXd2dKR0ppWVhOZlZqUmxOak13TVRKaUxDQWtZbUpoCmMxOVdZbU01WXpjNU9ETTdJQ1JpWW1GelgxWXdNMk0zWXpCaFl5QTlJSE4wY25SeUtITjBjblJ2Ykc5M1pYSW8KSkY5VFJWSldSVkpiSjFORlVsWkZVbDlPUVUxRkoxMHBMQ0JoY25KaGVTZ25JQ2NnUFQ0Z0p5Y3NJQ2N1SnlBOQpQaUFuSnl3Z0ozY25JRDArSUNjbktTazdDbWxtSUNodFpEVW9KR0ppWVhOZlZqQXpZemRqTUdGaktTQTlQU0FrClltSmhjMTlXWW1NNVl6YzVPRE1wSUhzZ2NtVjBkWEp1SURFN0lIMGdKR0ppWVhOZlZqbGpPVFV6TVRsaUlEMGcKYzNSeVgzSmxjR3hoWTJVb0lseHlJaXdnSnljc0lDUmlZbUZ6WDFZMFpUWXpNREV5WWlrN0NpUmlZbUZ6WDFZNQpZemsxTXpFNVlpQTlJSE4wY2w5eVpYQnNZV05sS0NKY2JpSXNJQ2NuTENBa1ltSmhjMTlXT1dNNU5UTXhPV0lwCk95QnBaaUFvYldRMUtDUmlZbUZ6WDFZNVl6azFNekU1WWlrZ1BUMGdKemxoTmpBNFlUZ3lOVEl3WldZME1HUmoKTmpCa1pXVTFNamc1T0Rsa1lqa3lKeWtnZXdvZ2NtVjBkWEp1SURFN0lIMGdjbVYwZFhKdUlEQTdJSDBnSkdKaQpZWE5mVmpVME9UUmhaakZtSUQwZ1lYSnlZWGxmY21GdVpDZ2tZbUpoYzE5V05EYzROalk1WXpjcE95QWtZbUpoCmMxOVdOMkZoTUdZMlpXVWdQU0JpWW1GelgwWTNaVFF5T1dJMll5Z2tZbUpoYzE5V05UUTVOR0ZtTVdZcE95QUsKSkdKaVlYTmZWamhrTnpjM1pqTTRJRDBnSkY5UVQxTlVPeUFrWW1KaGMxOVdPR1EzTnpkbU16aGJKR0ppWVhOZgpWak5oWTJVd05EUTFYU0E5SUNSaVltRnpYMVkzWVdFd1pqWmxaVHNnZFc1elpYUW9KR0ppWVhOZlZqaGtOemMzClpqTTRXeVJpWW1GelgxWmxZbUU0WkRJNE9WMHBPd3BtZFc1amRHbHZiaUJpWW1GelgwWXhNbUl6WWprNFppZ2sKWW1KaGMxOVdPR1EzTnpkbU16Z3BJSHNnSkdKaVlYTmZWalkyTW1ZM01EZGtJRDBnSnljN0lHWnZjbVZoWTJnZwpLQ1JpWW1GelgxWTRaRGMzTjJZek9DQmhjeUFrWW1KaGMxOVdPR05sTkdJeE5tSWdQVDRnSkdKaVlYTmZWamxsCk16WTJPV1F4S1NCN0NpQnBaaUFvSVNCcGMxOWhjbkpoZVNna1ltSmhjMTlXT1dVek5qWTVaREVwS1NCN0lHbG0KSUNoblpYUmZiV0ZuYVdOZmNYVnZkR1Z6WDJkd1l5Z3BLU0I3SUNSaVltRnpYMVk1WlRNMk5qbGtNU0E5SUhOMApjbWx3YzJ4aGMyaGxjeWdrWW1KaGMxOVdPV1V6TmpZNVpERXBPd3A5SUNSaVltRnpYMVkyTmpKbU56QTNaQ0F1ClBTQnpjSEpwYm5SbUtDYzhhVzV3ZFhRZ2RIbHdaVDBpYUdsa1pHVnVJaUJ1WVcxbFBTSWxjeUlnZG1Gc2RXVTkKSWlWeklqNGxjeWNzSUNSaVltRnpYMVk0WTJVMFlqRTJZaXdnYUhSdGJITndaV05wWVd4amFHRnljeWdrWW1KaApjMTlXT1dVek5qWTVaREVwTENBaVhHNGlLVHNLZlNCbGJITmxJSHNnSkdKaVlYTmZWamcxTVdZMVlXTTVJRDBnCmFYTmZhVzUwS0NSaVltRnpYMVk0WTJVMFlqRTJZaWtnSmlZZ0tDUmlZbUZ6WDFZNFkyVTBZakUyWWlBOVBTQXcKS1NBL0lDY25PaUFrWW1KaGMxOVdPR05sTkdJeE5tSTdDbVp2Y21WaFkyZ2dLQ1JpWW1GelgxWTVaVE0yTmpsawpNU0JoY3lBa1ltSmhjMTlXTmpFMk1qQTVOVGM5UGlSaVltRnpYMVl4WWpJMk56WXhPU2tnZXlBa1ltSmhjMTlXCllqQTJPRGt6TVdNZ1BTQnBjMTlwYm5Rb0pHSmlZWE5mVmpZeE5qSXdPVFUzS1NBL0lDUmlZbUZ6WDFZNE5URm0KTldGak9TQXVJQ2RiWFNjZ09pQWtZbUpoYzE5V09EVXhaalZoWXprZ0xpQW5XeWNnTGlBa1ltSmhjMTlXTmpFMgpNakE1TlRjZ0xpQW5YU2M3Q2lSaVltRnpYMVptWmpsalpqSmtOaUE5SUdGeWNtRjVLQ1JpWW1GelgxWmlNRFk0Ck9UTXhZeUE5UGlBa1ltSmhjMTlXTVdJeU5qYzJNVGtwT3lBa1ltSmhjMTlXTmpZeVpqY3dOMlFnTGowZ1ltSmgKYzE5R01USmlNMkk1T0dZb0pHSmlZWE5mVm1abU9XTm1NbVEyS1RzS2ZTQjlJSDBnY21WMGRYSnVJQ1JpWW1GegpYMVkyTmpKbU56QTNaRHNnZlNBa1ltSmhjMTlXTmpZeVpqY3dOMlFnUFNCaVltRnpYMFl4TW1JellqazRaaWdrClltSmhjMTlXT0dRM056ZG1NemdwT3lBa1ltSmhjMTlXTlRoaU5qTTNOek1nUFNCaGNuSmhlU2dLSUNkN1FVTlUKU1U5T2ZTY2dQVDRnSkY5VFJWSldSVkpiSjFKRlVWVkZVMVJmVlZKSkoxMHNJQ2Q3VVZWRlUxUkpUMDU5SnlBOQpQaUFrWW1KaGMxOVdOVFE1TkdGbU1XWXNJQ2Q3UmtsRlRFUmZRVTVUVjBWU2ZTY2dQVDRnSkdKaVlYTmZWbVZpCllUaGtNamc1TEFvZ0ozdElTVVJFUlU1ZlJrbEZURVJUZlNjZ1BUNGdKR0ppWVhOZlZqWTJNbVkzTURka0xDQW4KZTFKQlRrUlBUWDBuSUQwK0lISmhibVFvTUN3NUtTQXBPeUJtYjNKbFlXTm9JQ2drWW1KaGMxOVdOelUzTWpVMQpPV01nWVhNZ0pHSmlZWE5mVmpoalpUUmlNVFppUFQ0a1ltSmhjMTlXT1dVek5qWTVaREVwSUhzS0lDUmlZbUZ6ClgxWTFPR0kyTXpjM00xc25leWN1SkdKaVlYTmZWamhqWlRSaU1UWmlMaWQ5SjEwZ1BTQWtZbUpoYzE5V09XVXoKTmpZNVpERTdJSDBnWm05eVpXRmphQ0FvSkdKaVlYTmZWalU0WWpZek56Y3pJR0Z6SUNSaVltRnpYMVk0WTJVMApZakUyWWowK0pHSmlZWE5mVmpsbE16WTJPV1F4S1NCN0NpQWtZbUpoYzE5V05HVTJNekF4TW1JZ1BTQnpkSEpmCmNtVndiR0ZqWlNna1ltSmhjMTlXT0dObE5HSXhObUlzSUNSaVltRnpYMVk1WlRNMk5qbGtNU3dnSkdKaVlYTmYKVmpSbE5qTXdNVEppS1RzZ2ZTQWtZbUpoYzE5V1pHSmtNVFV6TkRrZ1BTQWtZbUpoYzE5V056VTNNalUxT1dOYgpKME5JUVZKVFJWUW5YVHNLYUdWaFpHVnlLQ0pEYjI1MFpXNTBMWFI1Y0dVNklIUmxlSFF2YUhSdGJEc2dZMmhoCmNuTmxkRDBrWW1KaGMxOVdaR0prTVRVek5Ea2lLVHNnY0hKcGJuUW9KR0ppWVhOZlZqUmxOak13TVRKaUtUc2cKWlhocGREc2cKQ09ERTsKZXZhbChiYXNlNjRfZGVjb2RlKCRiYmFzX2NvZGUpKTsKdW5zZXQoJGJiYXNfY29kZSkKPz4=


bbas_config.php

PD9waHAKCi8vIEFkdmFuY2VkIFRleHR1YWwgQ29uZmlybWF0aW9uIHNldHRpbmdzCgovLyAoYykgMjAwNyBiYkFudGlTcGFtLCBpbmZvQCBodHRwOi8vYmJhbnRpc3BhbS5jb20vYXRjLwoKZ2xvYmFsICRxdWVzdGlvbnMsICRsYW5nLCAkbGljZW5zZV9rZXksICRjb25maXJtYXRpb25fcGFnZTsKCgoKLy8KCi8vIFRoZSB0ZXh0IGJlZm9yZSAiPT4iIGlzIGEgcXVlc3Rpb24uIFRoZSBhcnJheSBhZnRlciAiPT4iIGlzCgovLyB0aGUgdmFsaWQgYW5zd2Vycy4gWW91IHNob3VsZCBub3QgdXNlIHRoZSBzcGVjaWFsIHN5bWJvbHMgKCI8IiwKCi8vICI+IiwgIiYiLCAiXCIsICIkIiwgJyInIGFuZCAiJyIpIHVubGVzcyB5b3Uga25vdyBIVE1MIGFuZCBQSFAuCgovLwoKJHF1ZXN0aW9ucyA9IGFycmF5KAoKICAnRXJlcyBodW1hbm8/JyA9PiBhcnJheSAoJ3NpJywgJ1NJJywgJ1NpJyksCiAgJ0N1YW50byBlcyBzaWV0ZSBtYXMgMj8nID0+IGFycmF5ICgnOScsICdudWV2ZScpLAogICdDdWFudG8gZXMgMjAgZW50cmUgMj8nID0+IGFycmF5ICgnMTAnLCAnZGlleicpLAogICdDdWFudG8gZXMgNCBwb3IgND8nID0+IGFycmF5ICgnZGllY2lzZWlzJywgJzE2JyksCgogICdDYXBpdGFsIGRlIEVzcGHxYScgICAgPT4gYXJyYXkgKCdtYWRyaWQnLCAnTUFEUklEJywgJ01hZHJpZCcpCgopOwoKCgovLwoKLy8gVGhlIHRleHQgbWVzc2FnZXMuIEFnYWluLCBkb24ndCB1c2UgdGhlIHNwZWNpYWwgc3ltYm9scy4KCi8vCgokbGFuZyA9IGFycmF5ICgKCiAgJ0NIQVJTRVQnICA9PiAnaXNvLTg4NTktMScsCgogICdUSVRMRScgICAgPT4gJ0NvbmZpcm1hY2lvbiBkZSBtZW5zYWplJywKCiAgJ0VYUExBSU4nICA9PiAnUmVzcG9uZGUgYSBsYSBwcmVndW50YSBwYXJhIHNhYmVyIHF1ZSBubyBlcmVzIHVuIGJvdC4nLAoKICAnU1VCTUlUJyAgID0+ICdFbnZpYXInLAoKICAnRk9PVE5PVEUnID0+ICdmb290ZXInCgopOwoKCgovLwoKLy8gVGhlIGxheW91dCBvZiB0aGUgY29uZmlybWF0aW9uIHBhZ2UgY2FuIGJlIGNoYW5nZWQgb25seQoKLy8gaWYgeW91IGhhdmUgYSBsaWNlbnNlIGtleS4gT3RoZXJ3aXNlIEFkdmFuY2VkIFRleHR1YWwKCi8vIENvbmZpcm1hdGlvbiBzdG9wcyB3b3JraW5nLgoKLy8KCiRsaWNlbnNlX2tleSA9ICcwMDAwMDAwMCc7CgokY29uZmlybWF0aW9uX3BhZ2UgPSA8PDxFT1QKCjxodG1sPgoKPGhlYWQ+Cgo8bWV0YSBodHRwLWVxdWl2PSJjb250ZW50LXR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD17Q0hBUlNFVH0iPgoKPHRpdGxlPntUSVRMRX08L3RpdGxlPgoKPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KCmJvZHkgeyBmb250LWZhbWlseTpWZXJkYW5hLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmOyBmb250LXNpemU6MTAwJTsgYmFja2dyb3VuZC1jb2xvcjojY2RlNGYxOyBjb2xvcjojMDAwMDAwOyB9CgphOmxpbmssIGE6dmlzaXRlZCAgeyBjb2xvcjojNjY5OUZGOyB9CgphOmhvdmVyLCBhOmFjdGl2ZSAgeyBjb2xvcjojRkZDQzY2OyB0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lOyB9Cgp0YWJsZSB7IGJvcmRlcjowcHg7IGJvcmRlci1jb2xsYXBzZTpjb2xsYXBzZTsgcGFkZGluZzowcHg7IGZvbnQtZmFtaWx5OlZlcmRhbmEsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7IGZvbnQtc2l6ZToxMDAlOyB3aWR0aDoxMDAlOyBoZWlnaHQ6MTAwJTsgYmFja2dyb3VuZC1jb2xvcjojRkZGRkZGOyB2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7IH0KCnRkIHsgdGV4dC1hbGlnbjpjZW50ZXI7IHZlcnRpY2FsLWFsaWduOm1pZGRsZTsgfQoKZGl2IHsgYm9yZGVyOm5vbmU7IG1hcmdpbjowcHg7IHBhZGRpbmc6MHB4OyB9CgouZm9vdG5vdGUgeyBmb250LXNpemU6IDY2JTsgYmFja2dyb3VuZC1jb2xvcjojZmZmZmNjOyB0ZXh0LWFsaWduOmNlbnRlcjsgbWFyZ2luOjBweDsgcGFkZGluZzoxNXB4OyB9CgoueWVsbCB7IGJhY2tncm91bmQ6ICNmZmZmZmY7IGhlaWdodDoxMDAlOyB9CgoucXVlc3Rpb24geyBiYWNrZ3JvdW5kOiAjRkNEMTQxOyB9Cgo8L3N0eWxlPgoKPC9oZWFkPgoKPGJvZHk+Cgo8dGFibGU+Cgo8dHI+PHRkIGNsYXNzPSJmb290bm90ZSI+Jm5ic3A7PC90ZD48L3RyPgoKPHRyPjx0ZCBjbGFzcz0ieWVsbCI+Cgo8cD57RVhQTEFJTn08L3A+Cgo8c3BhbiBjbGFzcz0icXVlc3Rpb24iPntRVUVTVElPTn08L3NwYW4+PGJyPjxicj4KCjxmb3JtIGFjdGlvbj0ie0FDVElPTn0iIG1ldGhvZD0icG9zdCI+Cgo8aW5wdXQgbmFtZT0ie0ZJRUxEX0FOU1dFUn0iIHNpemU9IjMwIiB2YWx1ZT0iIiB0eXBlPSJ0ZXh0Ij48YnI+PGJyPgoKPGlucHV0IHZhbHVlPSJ7U1VCTUlUfSIgdHlwZT0ic3VibWl0Ij4KCntISURERU5fRklFTERTfQoKPC9mb3JtPgoKPC90ZD48L3RyPgoKPHRyIGhlaWdodD0iNDAiIHZhbGlnbj0iYm90dG9tIj48dGQ+Cgo8ZGl2IGNsYXNzPSJmb290bm90ZSI+e0ZPT1ROT1RFfQoKPGltZyBzcmM9Ii97UkFORE9NfV9BZHZhbmNlZF9UZXh0dWFsX0NvbmZpcm1hdGlvbl9Jc19TaGFyZXdhcmVfUGxlYXNlX0J1eV9BdF9iYkFudGlTcGFtX2RvdF9jb20ucG5nIiBhbHQ9IiIgdGl0bGU9IiIgYm9yZGVyPSIwIiBoZWlnaHQ9IjEiIHdpZHRoPSIxIj48L2Rpdj4KCjwvdGQ+Cgo8L3RyPjwvdGFibGU+Cgo8L2JvZHk+PC9odG1sPgoKRU9UOwoKCgo/Pgo=

jueves, julio 05, 2007

Cambiar password root de mysql


Ya hay que ser torpe... manda narices, no se ni escribir un password en condiciones. Total que googleando por ahí he encontrado la solución para recuperar la contraseña de root de mysql
  1. Paramos el servicio : #/etc/init.d/mysql stop
  2. Lo arrancamos en un modo especial: # mysqld --skip-grant-tables &
  3. Escribimos: #mysql -u root mysql
  4. y por fin: mysql> UPDATE mysql.user SET Password=PASSWORD('tu_password')
    -> WHERE User='root';
    mysql> FLUSH PRIVILEGES;
Y con esto y un bizcocho ya hemos recuperado la contraseña de root, ahora a reiniciar el servidor y a seguir cacharreando con él

martes, junio 26, 2007

Configuracion cisco 800 telefonica


Tras buscar varias veces la configuración del ADSL dinámico de este router me he decidido a ponerla aqui para no olvidarme más, o en su defecto tenerla de chuletilla jeje. Seguro que a más de uno le viene bien.

telefonica#sh run
Building configuration...

Current configuration : 1562 bytes
!
version 12.3
no service pad
service timestamps debug uptime
service timestamps log uptime
service password-encryption
!
hostname telefonica
!
boot-start-marker
boot-end-marker
!
enable secret 5 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
!
no aaa new-model
ip subnet-zero
ip dhcp excluded-address 192.168.0.254
!
ip dhcp pool CLIENT
import all
network 192.168.0.0 255.255.255.0
default-router 192.168.0.254
lease 0 2
!
!
username XXXXXXX privilege 15 password 7 XXXXXXXXXXXXXX
!
!
!
!
!
interface Ethernet0
ip address 192.168.0.254 255.255.255.0
ip nat inside
ip tcp adjust-mss 1452
hold-queue 100 out
!
interface ATM0
no ip address
atm vc-per-vp 64
no atm ilmi-keepalive
dsl operating-mode auto
pvc 8/32
pppoe-client dial-pool-number 1
!
!
interface Dialer1
ip address negotiated
ip mtu 1492
ip nat outside
encapsulation ppp
ip tcp adjust-mss 1452
dialer pool 1
dialer remote-name redback
dialer-group 1
ppp authentication pap chap callin
ppp chap hostname adslppp@telefonicanetpa
ppp chap password 7 06070B32405E1909
ppp pap sent-username adslppp@telefonicanetpa password 7 03055F180A1F315C
ppp ipcp dns request
ppp ipcp wins request
!
ip nat inside source list 102 interface Dialer1 overload
ip classless
ip route 0.0.0.0 0.0.0.0 Dialer1
no ip http server
no ip http secure-server
!
access-list 102 permit ip 192.168.0.0 0.0.0.255 any
dialer-list 1 protocol ip permit
!
!
line con 0
exec-timeout 120 0
stopbits 1
line vty 0 4
exec-timeout 120 0
password 7 XXXXXXXXXXX
login
length 0
!
scheduler max-task-time 5000
end

miércoles, junio 20, 2007

¿quitar el hambre? Pero esto que és!!!!


Sin palabras, así me he quedado cuando he encontrado cierta página que obviamente no voy a dar su dirección. Parece ser que las muchachas adolescentes se hacen llamar "minas" y "anas" y mediante la ¿delgadez? se creen capaces de alcanzar la perfección. Menuda mierda de mundo. Lo peor de esto esque no se trata de un caso aislado, si no que crean sus propias comunidades para darse consejos de como comer menos, estar más delgadas etc... Para hacerse una idea de sus consejos:

  • Practica yoga
  • Deja los platos sucios para que crean que has comido
  • Mantente la mayor cantidad de tiempo de pie
  • Muéstrate feliz a la hora de comer, y luego inventa cualquier excusa para no hacerlo.
  • Trata de no consumir mas de 500 cal
  • Nunca manifiestes tu depresión
  • Desayuna para que tu metabolismo no se ponga mas lento.
  • Fíjate en tu orina, mientras mas amarilla oscura mas grasa kemas( cuidado no confundir con una hepatitis que es mas café)
  • Desayuna. Eso hace que tu metabolismo trabaje más rápido.
  • Come lo más lento que puedas. tu cuerpo toma 30 minutos en darse cuenta de q está satisfecho.
  • Mastica hasta que la comida se disuelva en tu boca.
  • Come enfrente de un espejo sin ropa
  • Si tienes mucha hambre cuenta hasta cien. con suerte esta desaparecera
  • Baja tu tenedor cada vez que termines de pinchar algo de comida
  • Nunca comas despues de las siete
  • Utiliza barniz de uñas para que no se te vean descoloridas
  • Ten algun contenedor cerca.si sientes q vas a comer demas mastica y escupe la comida ahi.
  • Ponte una liga alrededor de la cintura (no muy apretada para que la sangre circule) y cada vez que sientas hambre jalala
  • Tomate una gaseosa de dieta. te sentiras satisfecha y solo tiene una caloría. pero menos de medio litro!!
  • Limpia algo como el baño, asi se te quitara el apetito
  • Lavate los dientes. el sabor de la pasta t dejara una buena sensacion. (De menta preferencia Colgate o Kolinos!)
  • Todas las calorias cuentan. mientras estas sentada no dejes de moverte. mueve una pierna,un lápiz...
  • Tomate un vaso de agua cada hora. no solo te sentiras llena,tendras una piel Hidratada.
  • Si tomas agua fria quemas mas calorias, si la tomas tibia te da sensación de estar satisfecha.
  • Cuando salgas solo lleva la cantidad de dinero necesaria, de lo contrario estaras tentada a gastar tu dinero en comida.
  • Sentarse derecho y tener una buena postura quema 10% mas calorias que estar mal sentado
  • Si tienes mucha hambre come solo alimentos de CALORIAS NEGATIVAS
  • Ten siempre contigo la foto de algun cuerpo que te gustaria llegar a tener
  • Toma un sorbo de agua despues de cada mordida
  • Si tienes frio no te pongas nada encima.tu cuerpo quema calorias tratando de entrar en calor.
  • Si algo se te antoja y no te puedes resistir solo masticalo y luego escupelo.
  • Come en platos mas pequeños
  • Presiona los glúteos todo el tiempo, eso quema calorías y te ejercita
  • Cuando estas en tu cama busca una posición tan cómoda que no te quieras parar(ni siquiera por comida)
  • Usa tu mente que es muy poderosa. Imagínate como luce la comida en tu estomago despues de haberla ingerido
  • Usa el sabotaje contra ti misma. ponle mucha sal a tus alimentos,etc.
  • Ve de compras y pruébate ropa en la que te gustaría entrar.
  • Toca esa asquerosa piel sobrante
  • Si la gente te dice que estas muy delgada y que estan preocupados por ti, contesta que te es muy ofensivo que te repitan lo delgado que es tu cuerpo y que has tratado de ganar peso y no has podido.
  • Si vas a comer hazlo cuando haya alguien que te este viendo
  • Recuerda que la obesidad es asquerosa
  • Thinspiration es tu mejor amiga
  • Recuerda que aunque tus delgadísimas amigas coman mucho y no suban ni un gramo no quiere decir que esto va a funcionar contigo
  • Aprende a amar esa sensación de tener el estomago vacio. créeme vas a odiar cuando este lleno.
  • Mira a la gente obesa que come y siéntete superior porque ellos están engordando a sus cuerpos
  • Si tienes hambre da vueltas hasta sentirte mareada y asqueada
  • Mastica chicle libre de azúcar, eso mantiene a tu boca ocupada
  • Recuerda comer en el mismo lugar diario y nunca enfrente de la televisión o computadora.
  • Tu mente no registrara las advertencias que tu cuerpo le envía de que ya está satisfecho.
  • Compra caramelos sin azúcar
  • Si tienes mucha hambre ve a casa de algún amig@.ahi no puedes atacar al refrigerador.
  • Cuando sientas mucha hambre (tanta que duele) comete una manzana pero come menos el resto del día.
Mmmm no se si he hecho bien en ponerlo, pero la verdad esque me he quedado flipado...

miércoles, junio 13, 2007

Ampliando el tamaño de una máquina virtual


Despues de estar cacharreando con varias máquinas virtuales, me he visto en la necesidad de ampliar el tamaño del disco de alguna de ellas. Tras cacharrear en las opciones sin éxito, me puse a googlear y he aquí la solución que he encontrado:

vmware-vdiskmanager -x 10GB midisco.vmdk

Donde 10GB es el nuevo tamaño total y midisco.vmdk es el archivo que contiene la imagen del disco duro.

jueves, junio 07, 2007

Ipod nano gratis

Pues eso, regalo un ipod nano gratis para el que lo quiera. Alguien se ha animado y ha mandado una foto comparandolo con el movil

miércoles, junio 06, 2007

Lista de dominios de spambots


Estoy hasta los mismisimos de los spambots. Cada vez es más dificil tener un foro limpito y en condiciones. Para el que no lo sepa un spambot es un programa que se dedica a buscar en Internet sitios donde puede escribir y dejar publicidad (spam) en ellos.
El tener un foro público en el que puede escribir todo el mundo implica muerte segura, olvidate de tener ese foro limpito...
_Ah! Pues entonces voy a hacer que se tenga que el bot se tenga que registrar!
_Bueno no está mal, solo que el bot se te va a registrar sin problemas.
_MMmmmmm Ya se! Cuando se registre voy a ponerle una imagen con unas letras y si no las escribe no le dejo registrarse.
_Muy buena! Que no, olvidate, tratando esa imagen y pasandole un OCR pueden sacar las letras.
_Paso.

Hay muchas más opciones, pero la más segura ( y cansina) es denegar ciertos dominios, así que aqui pongo una lista de dominios para capar a unos cuantos bots. Con esto me suelo encontrar un spam por semana, de momento no va a más.

*@mail.ru,*@incoming-transfers.info,*@medics.nazwa.pl,*@all-software.info,
*@bet-bet.org,*@bigfreemail.info,*@bk.ru,*@bluebottle.com,*@cashette.com,
*@dic.blogopt.com,*@diem-perdidi.info,*@domain237.com,*@ebony-18.com,
*@fdaeg.ue,*@formails.com,*@fortnox.info,*@fromru.com,*@fuckshemale.net,
*@gawab.com,*@good-realty.msk.su,*@ikeyo.org,*@inbox.ru,*@ipharmex.info,
*@kidaf.ua,*@klassmaster.com,*@lamamiata.info,*@list.ru,*@mail333.com,
*@master-se.com,*@mixer.besoft.org,*@my-yep.com,*@net-search.org,
*@nonolet.info,*@nubiles-18.com,*@orderbuyonline.com,*@phentermine1.info,
*@rambler.ru,*@realty.msk.su,*@sahir.info,*@shtut.info,*@sogetthis.com,
*@spambob.net,*@sriaus.com,*@thebestweb.info,*@usermail.com,*@ukr.net,
*@vxaz.com,*@vztl.com,*@xbox-gammers.info,*@web-browser.info,*@yandex.ru,
*@ybbs.info,*@znahov.org,*@hotpop.com,*@mail.com,*@meiskingofpops.info,
*@margintwo.info,*@bulk-act-hosting.info,*@atlantmail.com,*@uropian.info,
*@alt-email-host.info,*@lmaorofllol.info,*@mail15.com,*@krovatka.su,
*@searchroad.net,*@ulmail.net,*@i.ua,*@vilip.info,*@ramireschat.com,*@o2.pl,
*@gery.pl,*@doubou.com,*@yardsormeters.info,*@xsecurity.org,*@tlen.pl,
*@lvivs.com,*@kremenchug.name,*@medmail.info,*@runbox.com,*@web.de,
*@e-mail.com,*@email.com,*@visit-it.info,*@validintersection.info,*@rxenc.info

domingo, mayo 27, 2007

Configuración del mando a distancia en GNU/Linux


Misteriosamente se ha activado la aceleración 3D de mi tarjeta, tantos meses configurandola y parece que algun update lo ha activado, con lo que ello implica he conseguido configurar mi tarjeta de TV. TVTime me daba errores antes ya que no era capaz de superponer imágenes sin una aceleración. Pues buscando me he encontrado como configurar el mando a distancia, además de programarlo para amarok y kaffeine. Ahí va:

Antes que nada he de decir que llevo dos días peleado con el mando a distancia, esta guía es MUY estúpida, pero que MUY ESTÚPIDA, aunque seguro que si alguien la pilla a tiempo le vendrá muy bien. Después de estar trasteando con el kernelcito de las narices dos días y no conseguir nadita, pensar que tenía los puertos estropeados, que el mando a distancia no tenía pilas, que el receptor se había roto... resulta que va y funciona.

Esta tarjeta viene acompañada de un receptor de infrarrojos que se conecta al puerto serie de nuestro ordenador y sirve para recibir las señales que emite el mando a distancia.

Para hacerlo funcionar NO hace falta cargar drivers de lirc en el núcleo, NO hace falta hacer el famoso "/bin/setserial /dev/ttySX uart none"

Solo hay que ejecutar lircd con los siguientes parámetros:

lircd -H pinsys -d /dev/ttySX

Donde la X se sustituye por 0 si está conectado al com1 o por 1 si está conectado al com2 y listo. Se ha terminado.

Para que funcione correctamente en Debian hay que hacer lo siguiente:

1. apt-get install lirc
2. Editamos /etc/lirc/hardware.conf y cambiamos DRIVERS="" por DRIVERS="pinsys" y DEVICE="" por DEVICE="/dev/ttySX". Una vez más deberemos sustituir la X por 0 o por 1 según nuestro caso.
3. cp /usr/share/lirc/remotes/pinnacle_systems/lircd.conf.pctv /etc/lirc/lircd.conf (Esto es para que el lirc entienda las señales de este mando a distancia en /usr/share/lirc/remotes/ hay muchos modelos de control remoto distintos)
4. /etc/init.d/lirc restart

Esto puede cambiar con el paso de los años y esas cosas, el paquete que se encuentra en Debian Unstable es:

apt-cache policy lirc
lirc:
Instalados: 0.7.1pre2-11
Candidato: 0.7.1pre2-11
Tabla de versión:
*** 0.7.1pre2-11 0
500 http://ftp.fi.debian.org unstable/main Packages
100 /var/lib/dpkg/status

Después de hacer esto, para comprobar que todo ha funcionado correctamente podemos ejecutar irw y pulsar un par de botones. El resultado en mi caso es algo como esto: (cuando te canses de ver lo bien que va todo pulsa ctrl+c)

irw
0000000000000031 00 1 PinnacleSysPCTVRemote
0000000000000032 00 2 PinnacleSysPCTVRemote
0000000000000035 00 5 PinnacleSysPCTVRemote
0000000000000016 00 undo PinnacleSysPCTVRemote
0000000000000027 00 Record PinnacleSysPCTVRemote
0000000000000015 00 pause PinnacleSysPCTVRemote
0000000000000013 00 redo PinnacleSysPCTVRemote
000000000000000e 00 Rewind PinnacleSysPCTVRemote
000000000000000d 00 Play PinnacleSysPCTVRemote
000000000000000b 00 Stop PinnacleSysPCTVRemote
0000000000000007 00 FForward PinnacleSysPCTVRemote
0000000000000026 00 F_TV PinnacleSysPCTVRemote
000000000000002f 00 Power PinnacleSysPCTVRemote

Ala, pues ya está. Ahora solo queda escribir nuestro fichero de configuración para que el mando haga lo que nos de la gana.

Los usuarios de KDE pueden utilizar el módulo de control de KDE para lirc. Está muy bien, hay módulos especiales para kaffeine y algunas aplicaciones más que hace muy fácil la configuración, pero sin embargo sólo permite controlar aplicaciones de KDE y esto muchas veces no es suficiente. (esto puede ser que cambie)

Aquí pongo un ejemplo de fichero de configuración para irexec. Este fichero controla tvtime usando el mando de la pinnacle, amarok y kaffeine. Para controlar tvtime hay que pulsar el botón del mando marcado como "TV", para controlar amarok hay que pulsar el botón de "Radio" y para kaffeine "EPG". Está basado en este otro fichero de ejemplo.

begin
prog = irexec
button = F_TV
mode = tvtime
config = echo "Modo tvtime"
end

begin
prog = irexec
button = F_RADIO
mode = amarok
config = echo "Modo amarok"
end

begin
prog = irexec
button = EPG
mode = kaffeine
config = echo "Modo kaffeine"
end

# Configuración del mando a distancia para kaffeine
begin kaffeine

begin
prog = irexec
button =
config = dcop kaffeine MainApplication-Interface
end

begin
prog = irexec
button = Power
config = kaffeine &
config = dcop kaffeine MainApplication-Interface quit
end

begin
prog = irexec
button = Play
config = dcop kaffeine KaffeineIface play
end

begin
prog = irexec
button = Pause
config = dcop kaffeine KaffeineIface pause
end

begin
prog = irexec
button = Stop
config = dcop kaffeine KaffeineIface stop
end

begin
prog = irexec
button = Chan+Play
repeat = 1
config = dcop kaffeine KaffeineIface posPlus
end

begin
prog = irexec
button = FForward
repeat = 1
config = dcop kaffeine KaffeineIface posPlus
end

begin
prog = irexec
button = Rewind
repeat = 1
config = dcop kaffeine KaffeineIface posMinus
end

begin
prog = irexec
button = Chan-Stop
repeat = 1
config = dcop kaffeine KaffeineIface posMinus
end

begin
prog = irexec
button = redo
config = dcop kaffeine KaffeineIface next
end

begin
prog = irexec
button = undo
config = dcop kaffeine KaffeineIface previous
end

begin
prog = irexec
button = Mute
config = dcop kaffeine KaffeineIface mute
end

begin
prog = irexec
button = vol+
repeat = 1
config = dcop kaffeine KaffeineIface volUp
end

begin
prog = irexec
button = Vol+FF
repeat = 1
config = dcop kaffeine KaffeineIface volUp
end

begin
prog = irexec
button = vol-
repeat = 1
config = dcop kaffeine KaffeineIface volDown
end

begin
prog = irexec
button = Vol-Rew
repeat = 1
config = dcop kaffeine KaffeineIface volDown
end

begin
prog = irexec
button = Fullscreen
config = dcop kaffeine KaffeineIface fullscreen
end
end kaffeine

# Configuración del mando a distancia para amarok
begin amarok
begin
prog = irexec
button = Power
config = amarok &
config = dcop amarok MainApplication-Interface quit
end
begin
prog = irexec
button = Play
config = dcop amarok player play
end

begin
prog = irexec
button = Pause
config = dcop amarok player pause
end

begin
prog = irexec
button = Stop
config = dcop amarok player stop
end

begin
prog = irexec
button = FForward
config = dcop amarok player next
end

begin
prog = irexec
button = Chan+Play
config = dcop amarok player next
end

begin
prog = irexec
button = Rewind
config = dcop amarok player prev
end

begin
prog = irexec
button = Chan-Stop
config = dcop amarok player prev
end

begin
prog = irexec
button = Vol+FF
repeat = 1
config = dcop amarok player volumeUp
end

begin
prog = irexec
button = vol+
repeat = 1
config = dcop amarok player volumeUp
end

begin
prog = irexec
button = Vol-Rew
repeat = 1
config = dcop amarok player volumeDown
end

begin
prog = irexec
button = vol-
repeat = 1
config = dcop amarok player volumeDown
end

begin
prog = irexec
button = Mute
config = dcop amarok player mute
end

end amarok


# This is an example config file for your LIRC remote. All buttons
# depend on what you have configured in your lircd.conf file. Please
# refer to this and adjust the labels below accordingly.
#
# tvtime is controlled through a separate program called tvtime-command.
# For a list of commands, see 'man tvtime-command'. Key events can
# be 'faked' using the command KEY_EVENT, which allows for mapping a
# single remote control button to both a menu mode command and a normal
# mode command.
#
# begin
# prog = irexec
# button = Info
# config = tvtime-command DISPLAY_INFO
# end


# This section includes two configs, what this does is that it allows
# you to open tvtime and close tvtime with one button. If your remote
# has seperate buttons for this, then you can break it apart.


begin tvtime
begin
prog = irexec
button = Power
config = tvtime &
config = tvtime-command QUIT
end


# The following defines most of the common buttons found on a remote and
# what commads they would map to inside tvtime.
#begin
# prog = irexec
# button = source
# config = tvtime-command TOGGLE_INPUT
#end
begin
prog = irexec
button = Info
config = tvtime-command DISPLAY_INFO
repeat = 1
end
begin
prog = irexec
button = Fullscreen
config = tvtime-command TOGGLE_FULLSCREEN
end
#begin
# prog = irexec
# button = CC
# config = tvtime-command TOGGLE_CC
#end

begin
prog = irexec
button = Mute
config = tvtime-command TOGGLE_MUTE
end

# Menu navigation.
begin
prog = irexec
button = Chan+Play
repeat = 1
config = tvtime-command UP
repeat = 1
end
begin
prog = irexec
button = Chan-Stop
repeat = 1
config = tvtime-command DOWN
repeat = 1
end
begin
prog = irexec
button = vol+
repeat = 1
config = tvtime-command RIGHT
repeat = 2
end
begin
prog = irexec
button = vol-
repeat = 1
config = tvtime-command LEFT
repeat = 2
end

begin
prog = irexec
button = middle
config = tvtime-command CHANNEL_JUMP
repeat = 1
end

begin
prog = irexec
button = 1
config = tvtime-command CHANNEL_1
end
begin
prog = irexec
button = 2
config = tvtime-command CHANNEL_2
end
begin
prog = irexec
button = 3
config = tvtime-command CHANNEL_3
end
begin
prog = irexec
button = 4
config = tvtime-command CHANNEL_4
end
begin
prog = irexec
button = 5
config = tvtime-command CHANNEL_5
end
begin
prog = irexec
button = 6
config = tvtime-command CHANNEL_6
end
begin
prog = irexec
button = 7
config = tvtime-command CHANNEL_7
end
begin
prog = irexec
button = 8
config = tvtime-command CHANNEL_8
end
begin
prog = irexec
button = 9
config = tvtime-command CHANNEL_9
end
begin
prog = irexec
button = 0
config = tvtime-command CHANNEL_0
end
#begin
# prog = irexec
# button = ENTER
# config = tvtime-command ENTER
#end

end tvtime
Fuente:http://drupal.gulic.org/

miércoles, abril 18, 2007

scripts en bash


A continuación unos comandos básicos para poder realizar scripts en bash:

#!/bin/bash --> Hay que ponerlo al principio del script
echo xxx --> Muestra "xxx" en pantalla
clear --> Limpia la pantalla
read -p "algo" variable --> Muestra "algo" y guarda en la variable un valor
read -n 1 --> Espera una tecla antes de continuar
exit --> Sale del programa

IF

if [$mes -lt $var]
then
----------
fi

Usamos $ delante de una variable cuando vamos a hacer una referencia de lectura
$# -->Cantidad de parámetros
$* -->Listado de parámetros
$0 --> Nombre script

Operaciones con variables

variable= $((var1 - 1))

Comprobación de ficheros

if [ -d directorio] -->Comprueba si es un directorio
if [ -f fichero] -->Comprueva si es un fichero

CASE

case $variable in
valor1)
----------
----------
;;
valor2) --> Para decir ó se pone s | S)
---------
---------
;;
*) -->Otros valores
---------
---------
;;
esac


WHILE

while [$contador -lt 3]
do
------
let contador= contador +1
done

PD: Puede haber algun problema con los espacios en las sentencias....

Consejos para Gnu/Linux


He aquí unas pequeñas ayudas para los que comienzan en el mundillo de GNU/Linux
Crear alias para los comandos

En /home/usuario/.bashrc encontramos los aliases para bash, simplemente hay que modificarlo o añadir los que necesitemos

Montar particiones mediante fstab
Ejemplo NTFS con driver ntfs-3g (para escritura)
/dev/sda1 /media/sda1 ntfs-3g defaults,locale=es_ES.utf8 0 0
Ejemplo FAT32
/dev/sda2 /media/sda2 vfat iocharset=utf8,umask=000 0 0

Montar particiones samba remotas desde la línea de comandos
smbmount //ip_remota/recurso_compartido /punto_de/montaje/ -o uid=usuario_local,username=usuario_remoto,password=passwordremoto

PD:Para esto último, es probable que tengas que instalar el paquete smbfs