*** USO DEL SMBCLIENT Y SMBMOUNT ***

.- COMO EXPLOTAR LOS RECURSOS MEDIANTE LINUX -.

En este documento tratare de explicar de la forma mas sencilla posible como
explotar la debilidad de los Recursos Compartidos de Windows mediante un
sistema Linux-Unix. El tema de los Recursos Compartidos en Windows ya ha sido
tratado por otra persona en este mismo E-Zine y tmb lo puedes encontrar en
bastantes sitios mas, pero bajo Linux tambien existe una forma bastante simple
para poder conectarse a un sistema Windows.

Antes de empezar a explicar el procedimiento por el cual podemos conseguir
enlazar un sistema Linux a un WinX me veo en la obligacion de explicar un poco
de teoria y de los enlaces que se pueden realizar en este procedimiento.
Distintamente de Linux, Windows simplemente puede realizar un sistema de
conexion en red mediante el protocolo SMB (Session Message Block). Este tipo
de protcolo a lo largo de los a~os a sufrido varios cambios, se han a~adido
nuevas funciones y demas historias, asi que ahora se puede conocer por
diferentes nombres como pueden ser SMB Protocol, LAN Manager, COREPLUS,
etc… pero que en definitiva para este tema da igual el nombre que se le
de, simplemente cabe decir que esta dise~ado para poder compartir tanto
archivos o discos duros enteros e  impresoras con otros ordenadores tanto
en sistema local komo en remoto.

Llegados a este punto cabe destacar su importancia dentro del mundo de Unix el
sistema de servidor-cliente SAMBA. Es una herramienta creada por Andrew Trigdell
que funciona bajo el mismo protocolo que el utilizado en los sistemas
Microsoft y dado a su gran funcionalidad nos permite enlazar sistemas
Unix en sistemas con Windows y viceversa.

Lo que voy a explicar en este documento solo va a tratar del enlace entre
un sistema Linux y un Windows para poder aprovecharnos de los recursos
compartidos que varia gente por internet nos da la oportunidad de
explotar. Si alguien quiere mas informacion sobre este tema simpre puede
consultar el man de linux o buscar algun howto por internet, o bien si aun
asi no puede resolver algun problema siempre me podeis escribir un e-mail
y yo os contestare en lo que pueda a todas vuestras preguntas.

Bueno espero no haber aburrido a nadie pero que nadie desespere que aqui
viene lo bueno. Antes de nada recordar que si estais en un sistema Linux
para poder utilizar el sistema de SAMBA para aprovecharnos de los
Windows, necesitais tenerlo instalado. Para lo que se va a explicar en
este documento no necesitais todo el paquete en si, solamente el cliente
de SAMBA cuyo nombre es «smbclient» si alguno no lo tiene instalado pues
ya sabe…

Lo primero de todo antes de empezar seria mirar la ayuda que nos puede
prestar el samba, aunque yo exponga el metodo entero, nunca viene mal
saber algunas otras opciones que podemos utilizar con el samba. Asi que
recomiendo que os leais aunque sea por encima la ayuda con el «comando
smbclient -h».

Pos a partir de aqui empieza lo bueno, lo primero sera mirar si comparte
algun recurso nuestra victima, si no pues a por otra, esto se hace con el
comando:

[mi_linux@host]$ smbclient -L host (o DNS)

En este caso no puede ser la IP de la victima asi que si solo tenemos la
IP podeis resolver el problema mediante el nslookup que os devolvera la
DNS de la makina en cuestion.

Una vez que has ejecutado el comando anterior, entra en accion el demonio
«nmbd» que en definitiva es simplemente el servidor de nombres de NetBIOS
y te resolvera el problema de si esa maquina comparte recursos o no.
En la pantalla te aparecera un listado parecido al siguiente:

Added interface ip=195.235.168.30 bcast=194.179.201.7 nmask=255.255.255.0
Unknown socket option TCP_NODELAY
Server time is Sat Aug 15 22:55:33 1999
Timezone is UTC+10.0
Domain=[WORKGROUP] OS=[Linux] Server=[Samba-2.0.3]

Server=[PAVO] User=[] Workgroup=[WORKGROUP] Domain=[WORKGROUP]

Sharename      Type      Comment
———      —-      ——-
PAVO1          Disk      Public
PAVO2          Disk      Public
IPC$           IPC       Remote IPC
print$         Disk      Printer Drivers

This machine has a browse list:

Server               Comment
———            ——-
PAVOC                Samba-2.0.3

Observando el listado que nos ha devuleto la opcion de smbclient -L
comprobamos que ese ordenador si comparte archivos o discos asi que
podemos seguir adelante.

Ahora solo nos falta añadir el ordenador de nuestra victima al nuestro, esto lo
realizara el demonio «smbd» que es el servidor para proveer servicios de SMB a
los clientes (en nuestro caso somos nosotros).

A partir de aqui viene una diferencia, si os encontrais dentro de una red
local o bien si quereis realizarlo en sistema remoto, osea conectaos a
internet.

Para modo local seria con el comando «smbclient \\\\Server\\recurso», asi
que siguiendo el ejemplo anteriormente propuesto el comando a realizar
seria el siguiente:

[mi_linux@host]$ smbclient \\\\PAVOC\\PAVO1

O bien como tienes dos a elegir tmb podrias poner:

[mi_linux@host]$ smbclient \\\\PAVOC\\PAVO2

Y si todo a salido bien, nos tendra que salir el prompt del smb que
asegura que hemos conseguido conectar con la makina » smb> «.

Para conectar mediante sistema remoto con otro ordenador, utilizaremos casi el
mismo metodo que para modo local, pero con una sutil diferencia, esto es
que en el comando a utilizar, usaremos la IP de nuestra victima para que
asi el cliente de samba nos encuentre solamente al que keremos. El comando
seria de la forma:

«smbclient \\\\Server\\recurso -I IP»

Utilizado este comando para el ejemplo anterior, para que todos los que
leais este documento podais seguirlo perfectamente seria de la forma
siguiente:

[mi_linux@host]$ smbclient \\\\PAVOC\\PAVO1 -I XXX.XXX.XXX.XXX

Siendo XXX.XXX.XXX.XXX la IP de PAVOC. O bien tmb podriamos explotar el otro
recurso de la misma forma que este pero cambiando simplemente el recurso:

[mi_linux@host]$ smbclient \\\\PAVOC\\PAVO2 -I XXX.XXX.XXX.XXX

Si todo a salido bien tendremos el prompt smb> y podremos operar con los
archivos de este usuario, pero queda una cosa a considerar, puede que en
algunas ocasiones no sea tan facil utilizar este sistema puesto que
podemos encontrarnos con makinas que nos pediran password, asi que podeis
probar sin password o bien ponerle el nombre de la makina etc… esto ya
lo dejo a vuestra imaginacion 😀

El comando para esto es igual que el de antes pero poniendo la clave al
final del comando es decir «smbclient \\\\Server\\recurso -I IP password».

Una vez que teneis para operar con los recursos compartidos de ese
usuario, a partir de aqui es como si os encontrarais en un FTP normal, se
opera de la misma forma, si no teneis mucha idea pues poniendo «h» os
saldra la ayuda para los comandos que podeis utilizar.

Pues parece que no ha sido tan dificil ni tan complicado como uno se
espera al principio y como veis es muy similar que en Windows. La sutil
diferencia esta en poner las cuatro barras (\\\\) antes del nombre de la
makina en vez de dos barras (\\) como se hacia en Windows, esto es debido
a restricciones de shell y se necesitan poner las \\ con secuencias de
escape por eso necesitamos cuatro barras en vez de dos.

.- OTRA FORMA DE EXPLOTAR LOS RECURSOS COMPARTIDOS DE WINDOWS -.

Bien por ahora todo lo que se ha explicado a sido el uso del cliente de
samba para poder formar redes con sistemas microsoft, pero existe ademas
otro comando para poder hacer uso de estos recursos. El «mount» permite
montar unidades en un directorio de tu sistema Linux, pero aqui
simplemente explicare la forma de  acceder a los recursos mediante este
sistema en modo remoto, que como bien creo es el que mas interesa 🙂
Los comandos que vamos a tener que utilizar en este caso sera el smbmount
y el smbumount. Hay que tener presente que para poder utilizar estas
opciones necesitas tener el paquete instalado y compilado, para ello
ejecutas en una consola el comando «smbmount» y te tendra que aparecer la
ayuda de este comando:

[mi_linux@host]$ smbmount
Usage: smbmount service <password> [-p port] [-d debuglevel] [-l log]
Version 2.0.3
-p port               connect to the specified port
-d debuglevel         set the debuglevel
-l log basename.      Basename for log/debug files
-n netbios name.      Use this name as my netbios name
-N                    don’t ask for a password
-m max protocol       set the max protocol level
-I dest IP            use this IP to connect to
-E                    write messages to stderr instead of stdout
-U username           set the network username
-W workgroup          set the workgroup name
-c command string     execute semicolon separated commands
-t terminal code      terminal i/o code {sjis|euc|jis7|jis8|junet|hex}
-D directory          start from directory

Bien si te aparece esto ultimo estupendo, lo tienes instalado, por el contrario
si no lo tienes pueden ocurrir dos cosas:

a> O que no tengas el paquete «smbfs» para ello necesitaras
encontrarlo por alguna parte. Pon «locate smbfs» para verificar
que no lo tienes en el sistema.

b> O bien que no lo tengas configurado en el kernel, para ello te
tendras que ir a la seccion «Filesystem» del kernel y activar lo
necesario alli. Sobre todo lo relacionado con SMB.

Bueno una vez que podemos utilizar el comando «smbmount» lo primero de
todo que tenemos que hacer es crear un directorio para poder montar la
unidad remota de un usuario a ese directorio.

[mi_linux@host]$ mkdir Recursos

Y luego ya simplemente montar la unidad que comparte el usuario a ese
directorio mediante el comando:

[mi_linux@host]$ smbmount //Nombre_Makina/Recurso /Recursos -I DNS/IP

Para que quede mas claro este ultimo comando lo hare con el jemplo
descrito en el apartado anterior del smbclient. Tomando PAVOC como nombre
de la makina y PAVO1 como el recurso que comparte dicha makina seria de la
forma:

[mi_linux@host]$ smbmount //PAVOC/PAVO1 /Recursos -I XXX.XXX.XXX.XXX

Donde el XXX.XXX.XXX.XXX es la IP de ese usuario cuya unidad queremos
montar.

Si todo a salido bien y teneis suerte pos no os encontrareis con que te
pida clave… pero ya sabes que es lo que uno puede esperar asi que eso os
lo dejo a vosotros mismos.

Ahora solamente tenemos que entrar en el directorio Recursos de nuestro
sistema y en el tendremos la unidad del usuario montada en nuestro
ordenador, la forma de operar es la misma que si hubieramos montado
cualquier unidad de CDROM, floppy y demas, los comandos son los mismos.

Pues nada… este parece ser el final de este documento ya que no queda
gran cosa por contar y que yo considere he contado lo mas especifico,
siempre podeis hechar una ojeada a los man y las ayudas de estos programas
para saber que mas pueden hacer, yo os aseguro que aun quedan cosas
interesantes por descubrir pero esto ya corresponde a otros temas 🙂

Con respecto a imprimir en modo remoto en una impresora compartida… el tema
es bastante extenso y con multiples caracteristicas definidas para cada sistema
y no opto por incluirlo aqui, si alguien quiere saber mas o menos como
funciona pues que se mire el HOWTO sobre este tema, podeis escribirme un
mail por si os interesa este tema o si teneis alguna dificultad en ello,
yo tratare en la medida de lo posible resolveroslo, pero la verdad que
tampoco se mucho del tema asi que no se que es peor :xDDD
Pues nada gente esto es todo por el momento y recordar que cada dia se
aprende algo nuevo, a todo esto se le llama RIQUEZA MENTAL juas!.

Docuemnto escrito BY NoWaN, de libre distribucion bla bla bla y demas historias,
si encontrais algun fallo podeis decirmelo en NoWaN@latino.com, tmb admito
comentarios y demas, a todos vosotros que os lo currais dia a dia doy las
gracias por que haceis de esto todo un arte 😀 BiE….