Diferencia entre revisiones de «ReceTas81-90»

De GhostWiki
Saltar a: navegación, buscar
(PhpWikiMigration)
 
 
(No se muestran 2 ediciones intermedias de otro usuario)
Línea 5: Línea 5:
 
En esta sección podremos ver los típicos truquillos que todo el mundo sabe pero nadie recuerda. Si quieres incluír una receta, infórmate en nuestra lista de correo cómo hacerlo. Si ya conoces cómo, introduce una nueva receta aquí.
 
En esta sección podremos ver los típicos truquillos que todo el mundo sabe pero nadie recuerda. Si quieres incluír una receta, infórmate en nuestra lista de correo cómo hacerlo. Si ya conoces cómo, introduce una nueva receta aquí.
  
* [[ReceTas |Indice Recetas ]]
+
* [[:Categoría:Recetas|Indice Recetas ]]
 
----
 
----
 
===Recetas, de la 81 a la 90===
 
===Recetas, de la 81 a la 90===
Línea 588: Línea 588:
  
 
  diff -u path/to/fichero.py path/to/fichero.nuevo.py > fichero.patch
 
  diff -u path/to/fichero.py path/to/fichero.nuevo.py > fichero.patch
 +
 +
Si queremos generar un patch de un directorio recursivamente, utilizamos este otro:
 +
 +
diff -u -r --unidirectional-new-file path/to/fichero.py path/to/fichero.nuevo.py > fichero.patch
  
 
Para aplicar el patch sobre un fichero con error:
 
Para aplicar el patch sobre un fichero con error:
Línea 667: Línea 671:
  
 
* Resto de particiones es mas o menos parecido ;)
 
* Resto de particiones es mas o menos parecido ;)
 +
----
 +
[[Categoría:Recetas]]

Revisión actual del 12:49 13 sep 2010

Secciones

HomePage¿Qué es e-ghost?ProyectosHerramientasDocumentosRecetasCursos ReunionesEnlacesHumorGhostLogAlternativas LibresContactoEuskaraz

Las Recetas de la Abuela (81 a 90)

En esta sección podremos ver los típicos truquillos que todo el mundo sabe pero nadie recuerda. Si quieres incluír una receta, infórmate en nuestra lista de correo cómo hacerlo. Si ya conoces cómo, introduce una nueva receta aquí.


Recetas, de la 81 a la 90


#Receta_81

'Título:' Cómo integrar en Active Directory un equipo con GNULinux

'Autor/a:' Fernando de Urien (Zefe)

Esta receta es un remix de cosas que he encontrado y que me han permitido integrar un SO GNULinux en el AD. Mis pruebas siempre han sido con debian sarge.

Como nota: Es importante que el reloj de ambos servicios esté en hora ya uqe diferencias horarias entre el AD y el equipo GNU hacen que la autenticación Kerberos no rule.

Paso 1:

Instalar los paquetes necesarios: En debian... jeje, lo de siempre========

apt-get install krb5-user
apt-get install winbind samba


Paso 2: Editar la configuración del cliente Kerberos

El fichero en cuestión es: /etc/krb5.conf y debe quedar con esta configuración (sustituid los parametros de vuestro dominio)(INTERNAL hace referencia al .com , .net o lo que sea. Vigilad las mayusculas y minusculas)

[[[logging]]
default = FILE10000:/var/log/krb5lib.log
[[[libdefaults]]
ticket_lifetime = 24000
default_realm = DOMAIN.INTERNAL
defaulttktenctypes = des3-hmac-sha1 des-cbc-crc
defaulttgsenctypes = des3-hmac-sha1 des-cbc-crc
[[[realms]]
DOMAIN.INTERNAL = {
kdc = domainserver.domain.internal
admin_server = domainserver.domain.internal
default_domain = DOMAIN.INTERNAL
}
[[[domain_realm]]
.domain.internal = DOMAIN.INTERNAL
domain.internal = DOMAIN.INTERNAL


Paso 3: Configurar Samba

ok, el fichero de configuración es el smb.conf (yo hago una copia de backup del original y me lo fundo para empezarlo desde 0 )

[[[global]]
security = ads
netbios name = NOMBRE-CORTO-DEL-EQUIPO
realm = DOMAIN.INTERNAL
password server = domainserver.domain.internal
workgroup = DOMAIN
idmap uid = 500-10000000
idmap gid = 500-10000000
winbind separator = +
winbind enum users = no
winbind enum groups = no
winbind use default domain = yes
template homedir = /home/%D/%U
template shell = /bin/bash
client use spnego = yes
domain master = no


Paso 4: Configuración de nsswitch

El fichero es: /etc/nsswitch.conf

passwd: compat winbind
group: compat winbind
shadow: compat
hosts: files dns wins
networks: files
protocols: db files
services: db files
ethers: db files
rpc: db files
netgroup: nis


Paso 5: Configurar el modulo PAM

  1. En el fichero /etc/pam.d/common-account yo pongo lo siguiente:
account sufficient pam_winbind.so
account required pam_unix.so
  1. En /etc/pam.d/common-auth:
auth sufficient pam_winbind.so
auth required pamunix.so nulloksecure usefirstpass
  1. En /etc/pam.d/common-password hay que modificar un poco los parámetros
password required pam_unix.so nullok obscure min4 max50 md5
  1. En /etc/pam.d/common-session asegurarse de que existe esta linea
session required pam_mkhomedir.so umask0022 skel/etc/skel

Paso 6: Crear una carpeta Home para los usuarios que inicien sesión con cuenta de dominio

mkdir /home/DOMAIN

Paso 7: Inicializar kerberos

kinit domainadminaccount@DOMAIN.INTERNAL

Comprobar que no ha dado ningún error y uqe se ha generado una etiqueta:

klist

Paso 8: Meter la máquina en dominio:

net ads join -U domainadminaccount@DOMAIN.INTERNAL

Paso 9: Reiniciar los servicios Samba.

Yo prefiero reiniciar el equipo (A) Así me aseguro de uqe el ssh tb autentica y que alguna otra cosilla por ahí tambien pilla los cambios. El orden de reinicio de samba es importante; debe hacerse así:

/etc/init.d/samba stop
/etc/init.d/winbind stop
/etc/init.d/samba start
/etc/init.d/winbind start

Eso es todo amigos=== (con una zanahoria entre los dientes ;-) )===

#Receta_82

'Título:' Desarrollar para PSP en GNU/Linux

'Autor/a:' Ruben Gonzalez (EthDra)

Descargar el toolchain desde http://www.oopo.net/consoledev. Hay dos, yo he usado el denominado newtoolchain, es mas descriptivo y permite instalar el toolchain para PSP, PS2 y GP2X. Descomprimir en una partición ext2 o similar, fat32 no sirve puesto que durante la instalación cambia de usuario los ficheros generados. Hay que tener instalado el gcc, make, automake (version >= 1.8), autoconf, doxygen, wget y subversion. Desde una consola, como root, ejecutar:

$ export PSPDEV="/usr/local/pspdev"
$ export PATH="$PATH:$PSPDEV/bin"
$ ./toolchain.pl PSP

Root es necesario para poder instalar el toolchain en /usr/local.

Si no se ha generado una carpeta doc en /usr/local/pspdev/psp/sdk, (a mi me ha pasado), podemos hacerlo a mano:

$ cd pspsdk
$ make doxygen-doc
$ cp -r doc /usr/local/pspdev/psp/sdk

Si queremos probar algunos ejemplos, los tenemos en /usr/local/pspdev/psp/sdk/examples, elegimos el q mas nos guste y desde su directorio ejecutamos make. Si nuestra PSP es versión 1.5, ejecutamos make kxploit.

Copiamos el fichero EBOOT.PBP o las dos carpetas que nos ha creado en nuestra PSP, en /psp/game y podremos ejecutarlo alegremente :)

Bienvenidos al mundo del homebrew en PSP :D

Esta misma información está más detallada en mi página web ^^ http://rglweb.e-ghost.net/index.php?optioncom_content&taskview&id37&Itemid19 (si a alguien no le gusta/no le parece correcto que me autoenlace, que borre el enlace y listo :P)

#Receta_83

'Título:' Aceleracion 3D en OpenGL para Ubuntu Dapper (Nvidia y Ati)

'Autor/a:' Aitor Zenarruzabeitia (Aizenar)

Seguro que la mayoria saben como hacerlo pero en dapper han cambiado un poco la manera de hacerlo, por eso me he decidido a colgar esta receta.

Lo primero es habilitar los repositorios universe y multiverse en synaptic o apt, para ello vamos a Sistema -> Administracion -> Gestor de paquetes Synaptic. En Synaptic vamos a Configuracion -> Repositorios -> y editamos todos añadiendoles Universe y Multiverse.

Una vez hecho esto, recargamos (porque hemos cambiado los repositorios) e instalamos los paquetes:

PARA ATI

- xorg-driver-fgrlx - linux-restricted-modules-" (kernel que tengamos) " - fglrx-control (para tener el panel de control de Ati a lo Windows)

PARA NVIDIA

- nvidia-glx - linux-restricted-modules-" (kernel que tengamos) " - nvidia-kernel-common

Cuando los hemos instalado probamos a hacer esto en una consola como root:

PARA ATI

# modprobe fglrx

Si no nos deja intentamos:

# rmmod -f drm
# rmmod -f ati
# modprobe fglrx

PARA NVIDIA

# modprobe nvidia

Si no nos deja intentamos:

# rmmod -f drm
# modprobe nvidia

Si aun asi no hemos podido (me ha pasado) pues salimos del modo grafico y lo hacemos en una consola, vamos hasta que nos deje.... Cuando lo hemos conseguido, para habilitar la aceleracion tenemos que escribir en la consola (como root):

PARA ATI

# aticonfig --initial --input=/etc/X11/xorg.conf

PARA NVIDIA

# nvidia-glx-config enable

Ya esta, solo nos queda salir de la sesion y reiniciar las x (en la pantalla de Gdm pulsamos a la vez Ctrl+Alt+Backspace ) y iniciar la sesion otra vez. Para comprobar que ya esta, en una consola escribir:

$ glxinfo | grep renderer

y deberia de aparecer el nombre de tu tarjeta grafica. Para que podamos modificar aspectos de la aceleracion mediante un panel de control ejecutar en una consola:

PARA ATI

# fglrx-control

PARA NVIDIA

# nvidia-settings

y eso es todo, espero que os sirva....Si algo esta mal corregirlo por favor. Gracias.

EDIT: En ATI es estrictamente necesaria la parte de modprobe y rmmod y tal? Para instalar fglrx en Dapper para que funcione mi ATI sólo he tenido que instalar los paquetes que dices, y luego en /etc/X11/xorg.conf cambiar Driver"ati" por Driver"fglrx" (que es menos de lo que hace el aticonfig --initial --input=/etc/X11/xorg.conf , pero un usuario podría hacerlo desde gksudo gedit fácilmente).

#Receta_84

'Título:' Flash 9 en Linux (o 10, o 11..)

'Autor/a:' Iker Perez de Albeniz (Txupete)

Si estas hasta las narices de no poder entrar a paginas web porque te dicen que tienes una version vieja de Flash.. y muchas veces lo que se va a visualizar se puede ver perfectamente con la version que tienes instalada..

1) Primero haz un BackUp por si la cagas del archivo ~/.mozilla/firefox/pluginreg.dat:

cp ~/.mozilla/firefox/pluginreg.dat ~/.mozilla/firefox/pluginreg.dat.bak

2) Ahora ya podemos editarlo:

vi ~/.mozilla/firefox/pluginreg.dat

3) Pues ahora ya puedes sustituir

Shockwave Flash 7.0 r63:$

a

Shockwave Flash 9.0 r63:$

ya tienes Flash 9...

#Receta_85

'Título:' Apache: Autenticar usuarios contra Active Directory

'Autor/a:' Fernando de Urien (Zefe)

Hola, pues na, uno de las trabas que plantean los clientes (o jefes) cuando propones una solución basada en Apache es: "Ya ya, suena bien pero... ¿puedo usar mi usuario de windows?

Jeje, en fin, en muchos sitios hay directoriso activos ya que su plataforma de estación de trabajo es windows por lo que o te integras en ello... o no vale :-) ala, tras contar mis penas y mis desdichas os cuento como integrar el apache para que autentique contra el directorio activo a los usuarios que hacen login en una página.

Bien, voy a suponer que sabeís instalar apache y configurarlo minimamente para poner vuestra página :-D sino ya sabeís, una preguntilla en la lista y alguien os ayuda seguro. (yo estoy usando apache2)

Ok, también os recomiendo encarecidamente que si poneis una autenticación de este tipo, el servidor apache este funcionando con SSL.

La razón es que si poneis una autenticación en plano, por mucho que luego kerberos sea cifrado, la contraseña de dominio va a ir en plano desde el navegador hasta el servidor web por lo que estáis comprometiendo la seguridad de vuestro dominio.(y no digais que no he avisado ;-) )

Ale, al tajo== La mejor forma de autenticar contra el directorio activo desde apache es utilizar el modulo Kerberos así que en Debian:==

    apt-get install libapache2-mod-auth-kerb

Creamos un fichero de keytab para que lo utilice el módulo kerberos y damos permisos de lectura para toda la basca (no creo que haga falta para todo el mundo pero tampoco hay nada confidencial en este fichero así que...):

    echo HTTP/FQNdelservidorweb@DOMINIO.INTERNAL > /RUTA/auth_kerb.keytab
    chmod a+r /ruta/auth_kerb.keytab

RUTA:Yo lo suelo poner dentro del directorio de configuración de apache.

FQNdelservidorweb: ejemplo: intranet.miempresa.com

DOMINIO.INTERNAL: esto sería vuestro nombre de dominio completo de active directory: MIEMPRESA.COM (es importante que esté en mayúsculas)

Ok, seguimos avanzando y ahora hay que configurar kerberos. (voy a coger la configuración de la receta 81 y lo cambio un poco lineas 9 y 10 ):

[[[logging]]

default = FILE10000:/var/log/krb5lib.log
[[[libdefaults]]
ticket_lifetime = 24000
default_realm = DOMAIN.INTERNAL
defaulttktenctypes = des3-hmac-sha1 des-cbc-crc
defaulttgsenctypes = des3-hmac-sha1 des-cbc-crc
dnslookuprealm = false
dnslookupkdc = false
[[[realms]]
DOMAIN.INTERNAL = {
kdc = domainserver.domain.internal
admin_server = domainserver.domain.internal
default_domain = DOMAIN.INTERNAL
}
[[[domain_realm]]
.domain.internal = DOMAIN.INTERNAL
domain.internal = DOMAIN.INTERNAL


Atentos al tema de las mayúsculas y minúsculas que suelen dar bastantes disgustos.

Y ahora hay que configurar la autenticación de apache; se puede hacer de varias formas como co nun fichero .htaccess y demás cosas... lo que pasa es que yo soy un poco tarugo para el apache jejeje así que lo meto en el mismo fichero del site dentro de una directiva directorymatch

(si alguién cree que esto es un error que me corrija por favor====):====

<DirectoryMatch /var/www/midirectorio/>

       Options ExecCGI
       AuthName "Nombre que quieres que salga en el popup de autenticación"
       AuthType Kerberos
       Krb5Keytab /RUTA/kerberos.keytab
       KrbAuthRealm DOMAIN.INTERNAL
       KrbMethodNegotiate off
       KrbSaveCredentials off
       KrbVerifyKDC off
       Require valid-user

</DirectoryMatch>

Tened cuidadillo con las interrogaciones esas que pone de forma automágica el wiki :-p (hay que quitarlas)

No tiene nada raro:

AuthName: na, el literal que quieres que aparezca al usuario a la hora de meter su contraseña.

Krb5Keytab: es el fichero que habíamos especificado como keytab

KrbAuthRealm: el dominio de active directory: en el ejemplo: miempresa.com

NOTA: al especificar un REALM, ya no hace falta indicar en el popup de autenticación el dominio. Quiero decir que mi nombre de usuario no sería "zefe@miempresa.com" ni "empresazefe";

solo hay que poner "zefe" como nombre de usuario (el "samaccountname" que llaman los superentendidos del asunto ;-) )

Ala, a reiniciar el apache y a probarlo======

Un saludete,

Zefe

#Receta_86

'Título:' Descarga y Creacion de CD/DVD para OpenBSD

Ya que los creadores de OpenBSD no ponen ISO's a disposicion para descargarlas, he hecho un script que hace todo por nosotros. Para Linux (sh) y para Windows (bat). La utilidades necesarias para el .BAT son: wget, mkisofs y CHOICE.COM

wget: http://pages.interlog.com/~tcharron/wgetwin.html

mkisofs: http://smithii.com/?q=node/view/9

CHOICE.COM: http://download.microsoft.com/download/win31/update/1/dos/en-us/sup622.exe

Script para Linux:

#====/bin/sh====
DIRECTORIO=~/OpenBSD
ARQUITECTURA=i386
#ARQUITECTURA=amd64
MAYORVERSION=4
MINORVERSION=0
VERSION=$MAYORVERSION.$MINORVERSION
VERSIONCORTA=$MAYORVERSION$MINORVERSION
MIRROR=ftp://ftp.rediris.es/pub/OpenBSD
#MIRROR=ftp://ftp.openbsd.org/pub/OpenBSD
#MIRROR=ftp://spargel.kd85.com/pub/OpenBSD
#MIRROR=ftp://ftp.irisa.fr/pub/OpenBSD
#Mas mirrors en http://www.openbsd.org/ftp.html
ULTIMAVERSION=""
PAQUETESADICIONALES=""
while [[[ "$ULTIMAVERSION" ==== "S" -a "$ULTIMAVERSION" ! "s" -a "$ULTIMAVERSION" ! "N" -a "$ULTIMAVERSION" ! "n" ]];do====
  read -n 1 -p "¿Estas descargando la version mas reciente de OpenBSD [[[S/N]]?"  ULTIMAVERSION
  echo ""
done
while [[[ "$PAQUETESADICIONALES" ==== "S" -a "$PAQUETESADICIONALES" ! "s" -a "$PAQUETESADICIONALES" ! "N" -a  "$PAQUETESADICIONALES" ! "n" ]];do====
  read -n 1 -p "¿Quieres descargar los paquetes adicionales [[[S/N]]?"  PAQUETESADICIONALES
  echo ""
done
echo "Creando arbol de directorios en" $DIRECTORIO...
mkdir $DIRECTORIO
mkdir $DIRECTORIO/$VERSION
mkdir $DIRECTORIO/$VERSION/doc
echo "Descargando archivos de instalacion basicos..."
cd $DIRECTORIO
wget -c -m -nH -np -l1 --cut-dirs=3 $MIRROR/$VERSION/
cd $DIRECTORIO$VERSION
wget -c -m -nH -np --cut-dirs=2 $MIRROR/$VERSION/$ARQUITECTURA
wget -m -nH -np --cut-dirs=2 $MIRROR/$VERSION/tools
if [[[ "$ULTIMAVERSION"  "S" -o "$ULTIMAVERSION"  "s" ]];then
  wget -c -N -P $DIRECTORIO/$VERSION/doc $MIRROR/doc/obsd-faq.pdf
  wget -c -N -P $DIRECTORIO/$VERSION/doc $MIRROR/doc/obsd-faq.txt
  wget -c -N -P $DIRECTORIO/$VERSION/doc $MIRROR/doc/pf-faq.pdf
  wget -c -N -P $DIRECTORIO/$VERSION/doc $MIRROR/doc/pf-faq.txt
  mv $DIRECTORIO/$VERSION/doc/obsd-faq.pdf $DIRECTORIO/$VERSION/doc/obsd-faq$VERSIONCORTA.pdf
  mv $DIRECTORIO/$VERSION/doc/obsd-faq.txt $DIRECTORIO/$VERSION/doc/obsd-faq$VERSIONCORTA.txt
  mv $DIRECTORIO/$VERSION/doc/pf-faq.pdf   $DIRECTORIO/$VERSION/doc/pf-faq$VERSIONCORTA.pdf
  mv $DIRECTORIO/$VERSION/doc/pf-faq.txt   $DIRECTORIO/$VERSION/doc/pf-faq$VERSIONCORTA.txt
else
  wget -c -N -P $DIRECTORIO/$VERSION/doc $MIRROR/doc/obsd-faq$VERSIONCORTA.pdf
  wget -c -N -P $DIRECTORIO/$VERSION/doc $MIRROR/doc/obsd-faq$VERSIONCORTA.txt
  wget -c -N -P $DIRECTORIO/$VERSION/doc $MIRROR/doc/pf-faq$VERSIONCORTA.pdf
  wget -c -N -P $DIRECTORIO/$VERSION/doc $MIRROR/doc/pf-faq$VERSIONCORTA.txt
fi
wget -c -N -P $DIRECTORIO $MIRROR/songs/song$VERSIONCORTA.mp3
wget -c -N -P $DIRECTORIO $MIRROR/songs/song$VERSIONCORTA.ogg
wget -c -N -P $DIRECTORIO http://www.openbsd.org/images/puffy$VERSIONCORTA.gif
# Comprobamos el ERRORLEVEL por si la imagen en formato GIF no exite en el servidor
if [[[ "$?" ===== "0" ]];then====
  wget -c -N -P $DIRECTORIO http://www.openbsd.org/images/puffy$VERSIONCORTA.jpg
fi
if [[[ "$PAQUETESADICIONALES"  "S" -o "$PAQUETESADICIONALES"  "s" ]];then
  echo Descargando paquetes adicionales...
  wget -c -m -nH -np --cut-dirs=2 $MIRROR/$VERSION/packages/$ARQUITECTURA
fi
echo "Creando imagen ISO... (este proceso tardara unos minutos)"
mkisofs -q -l -J -r -o ~/OpenBSD$VERSIONCORTA.iso -c boot.catalog -b $VERSION/$ARQUITECTURA/cdrom$VERSIONCORTA.fs -V "OpenBSD $VERSION" $DIRECTORIO
cd ~

Script para Windows:

@echo off
SET UNIDAD=C:
SET UNIDADDESTINOISO=C:
SET DIRECTORIO=OpenBSD
SET ARQUITECTURA=i386
rem SET ARQUITECTURA=amd64
SET MAYORVERSION=4
SET MINORVERSION=0
SET VERSION=%MAYORVERSION%.%MINORVERSION%
SET VERSIONCORTA=%MAYORVERSION%%MINORVERSION%
SET MIRROR=ftp://ftp.rediris.es/pub/OpenBSD
rem SET MIRROR=ftp://ftp.openbsd.org/pub/OpenBSD
rem SET MIRROR=ftp://spargel.kd85.com/pub/OpenBSD
rem SET MIRROR=ftp://ftp.irisa.fr/pub/OpenBSD
rem Mas mirrors en http://www.openbsd.org/ftp.html
rem Se pregunta todo al principio para que la descarga y creacion del CDDVD sea totalmente automatica.
choice /C:SN Estas descargando la version mas reciente de OpenBSD
SET ULTIMAVERSION=%ERRORLEVEL%
choice /C:SN Quieres descargar los paquetes adicionales
SET PAQUETESADICIONALES=%ERRORLEVEL%


echo Creando arbol de directorios en %UNIDAD%\%DIRECTORIO%...
mkdir %UNIDAD%\%DIRECTORIO%
mkdir %UNIDAD%\%DIRECTORIO%\%VERSION%
mkdir %UNIDAD%\%DIRECTORIO%\%VERSION%doc
echo Descargando archivos de instalacion basicos...
cd %UNIDAD%\%DIRECTORIO%
wget -c -m -nH -np -l1 --cut-dirs=3 %MIRROR%/%VERSION%/
cd %UNIDAD%\%DIRECTORIO%\%VERSION%
wget -c -m -nH -np --cut-dirs=3 %MIRROR%/%VERSION%/%ARQUITECTURA%
wget -m -nH -np --cut-dirs=3 %MIRROR%/%VERSION%/tools
IF %ULTIMAVERSION%  2 GOTO NOULTIMAVERSION
wget -c -N -P %UNIDAD%\%DIRECTORIO%\%VERSION%doc %MIRROR%/doc/obsd-faq.pdf
wget -c -N -P %UNIDAD%\%DIRECTORIO%\%VERSION%doc %MIRROR%/doc/obsd-faq.txt
wget -c -N -P %UNIDAD%\%DIRECTORIO%\%VERSION%doc %MIRROR%/doc/pf-faq.pdf
wget -c -N -P %UNIDAD%\%DIRECTORIO%\%VERSION%doc %MIRROR%/doc/pf-faq.txt
ren %UNIDAD%\%DIRECTORIO%\%VERSION%docobsd-faq.pdf obsd-faq%VERSIONCORTA%.pdf
ren %UNIDAD%\%DIRECTORIO%\%VERSION%docobsd-faq.txt obsd-faq%VERSIONCORTA%.txt
ren %UNIDAD%\%DIRECTORIO%\%VERSION%docpf-faq.pdf   pf-faq%VERSIONCORTA%.pdf
ren %UNIDAD%\%DIRECTORIO%\%VERSION%docpf-faq.txt   pf-faq%VERSIONCORTA%.txt
GOTO SEGUIR


:NOULTIMAVERSION
wget -c -N -P %UNIDAD%\%DIRECTORIO%\%VERSION%doc %MIRROR%/doc/obsd-faq%VERSIONCORTA%.pdf
wget -c -N -P %UNIDAD%\%DIRECTORIO%\%VERSION%doc %MIRROR%/doc/obsd-faq%VERSIONCORTA%.txt
wget -c -N -P %UNIDAD%\%DIRECTORIO%\%VERSION%doc %MIRROR%/doc/pf-faq%VERSIONCORTA%.pdf
wget -c -N -P %UNIDAD%\%DIRECTORIO%\%VERSION%doc %MIRROR%/doc/pf-faq%VERSIONCORTA%.txt
:SEGUIR
wget -c -N -P %UNIDAD%\%DIRECTORIO% %MIRROR%/songs/song%VERSIONCORTA%.mp3
wget -c -N -P %UNIDAD%\%DIRECTORIO% %MIRROR%/songs/song%VERSIONCORTA%.ogg
wget -c -N -P %UNIDAD%\%DIRECTORIO% http://www.openbsd.org/images/puffy%VERSIONCORTA%.gif
IF ERRORLEVEL  1 wget -c -N -P %UNIDAD%\%DIRECTORIO% http://www.openbsd.org/images/puffy%VERSIONCORTA%.jpg
IF %PAQUETESADICIONALES%  2 GOTO CREARISO
echo Descargando paquetes adicionales...
wget -c -m -nH -np --cut-dirs=3 %MIRROR%/%VERSION%/packages/%ARQUITECTURA%
:CREARISO
echo Creando imagen ISO... (este proceso tardara unos minutos)
mkisofs -q -l -J -r -o %UNIDADDESTINOISO%OpenBSD%VERSIONCORTA%.iso -c boot.catalog -b %VERSION%/%ARQUITECTURA%/cdrom%VERSIONCORTA%.fs -V "OpenBSD %VERSION%" %UNIDAD%\%DIRECTORIO%
cd %UNIDAD%


Si veis algun fallo por favor comunicarmelo.

#Receta_87

'Título:' ARP poisoning para esnifar el tráfico de una red

'Autor/a:' Nando Quintana

Con un par comandos haremos creer a una serie de ordenadores, que el nuestro es la pasarela a la que deben enviar todo el tráfico. De esta forma, todos los paquetes de la red pasarán por nuestra máquina. Después los reenviaremos de nuevo a la pasarela original para que todo siga funcionando en nuestra red.

Instalar ettercap y ethereal (ahora se llama don limpio, digo wireshark)

apt-get install ettercap
apt-get install ethereal

Ejecutar ettercap diciéndole la ip de la pasarela a imitar y el rango de ips de los ordenadores afectados.

ettercap -T -M arp:remote /192.168.110.200/ /192.168.110.1-190/


Si queremos esnifar el tráfico para ver que sucede en la red, lanzamos el wireshark

wireshark

Para salir de ettercap, pulsamos la tecla q dejando todo en su estado original.


NOTA: Hace falta tener activado el ipforwarding en el kernel echo 1 > /proc/sys/net/ipv4/ipforward

#Receta_88

'Título:' Crear y aplicar un patch

'Autor/a:' Nando Quintana

Vamos a prepara un patch que modifica cierta información en un fichero de texto. Después vamos a ejecutarlo para modificarlo.

Si tenemos un fichero fuente con algún error que queremos subsanar:

path/to/fichero.py

y otro fichero con el error corregido:

path/to/fichero.nuevo.py

creamos un patch mediante el siguiente comando:

diff -u path/to/fichero.py path/to/fichero.nuevo.py > fichero.patch

Si queremos generar un patch de un directorio recursivamente, utilizamos este otro:

diff -u -r --unidirectional-new-file path/to/fichero.py path/to/fichero.nuevo.py > fichero.patch

Para aplicar el patch sobre un fichero con error:

patch -p0 < fichero.patch

esta ejecución busca un fichero en

path/to/fichero.py

y le aplica los cambios pertinentes.

#Receta_89

'Título:' Recuperar un CD estropeado (u otro dispositivo)

Sacado de la lista de bulma

$ dd if/dev/cdrom offichero bs2048 convnoerror,sync
# mkdir tmp
# mount -o loop fichero tmp

Si el CD tiene un video y hay cachos rotos, las partes que no se copien obviamente se verán mal, pero no pierdes el video entero.

#Receta_90

'Título:' Recuperar partición FAT32, NTFS, EXT2, EXT3 y mucho mas con testdisk

'Autor/a:' Jon Ander Ortiz (jonbaine)

Socorridisima utilidad para recuperar tanto particiones FAT32, NTFS y mucho mas

Funciona para:

         - FAT12, FAT16 <32M, FAT16 >32M, FAT32
         - NTFS
         - LINUX ext2fs/ext3fs, LINUX swap
         - OS/2 MultiBoot (also used by Partition Magic)
         - BFS (BeOS)
         - UFS (BSD)
         - ReiserFS (1 & 2)

Basta con introducir una live, instalarse el testdisk y:

  • Para las particiones FAT con el sector de booteo corrompido (Mitico fallo MS Win):

En principio al ejecutar testdisk como root nos muestra los siguiente:

Analyse Disk 80 - CHS 3737 255 63 - 29313 MB (Enh BIOS mode)
1 * FAT32                    0   1  1   382 254 63    6152832
2 E extended LBA           383   0  1  3736 254 63   53882010
Partition sector doesn't have the endmark 0xAA55
5 L FAT32                  383   1  1  3736 254 63   53881947
5 L FAT32                  383   1  1  3736 254 63   53881947

Pinchar "Advanced", y elegir la particion afectada en cuestión:

Interface Advanced
1 * FAT32                    0   1  1   382 254 63    6152832
2 E extended LBA           383   0  1  3736 254 63   53882010

Y le decimos que la pruebe

Boot sector
test_FAT :
Partition sector doesn't have the endmark 0xAA55
Backup boot sector
OK
First sectors (Boot code and partition information) are not identical.
Second sectors (cluster information) are not identical.
Third sectors (Second part of boot code) are not identical.


Elegir BackupBS para copiar el backup del sector de boot. Elegir RebuildBS para reconstruir el sector de boot


  • Para las particiones NTFS:

Si tenemos particiones NTFS y no se encuentran, es decir el test disk no ve ninguna, ejecutamos "Search====" para encontrar mas particiones.==== Las opciones de BackupBS y RebuildBS estan tb disponibles para NTFS ;)

  • Resto de particiones es mas o menos parecido ;)