|-------------------------------------------------------------------------------------------------------------|
|                                  FTP, TELNET Y ENVO DE CORREO ELECTRNICO                                  |
|-------------------------------------------------------------------------------------------------------------|
| 23-02-2003 |                                                                                     | reddevil |
|-------------------------------------------------------------------------------------------------------------|
|                                  _____ ___ _   _   _____     _                                              |
|                                 |  ___|_ _| | | | | ____|___(_)_ __   ___                                   |
|                                 | |_   | || |_| | |  _| |_  / | '_ \ / _ \                                  |
|                                 |  _|  | ||  _  | | |___ / /| | | | |  __/                                  |
|                                 |_|   |___|_| |_| |_____/___|_|_| |_|\___|                                  |
|                                            reddevil_FIH@ymmas.net                                           |
|                                                                                                             |
|-------------------------------------------------------------------------------------------------------------|



 0.- Indice.
-------------

           0.- Indice.
           1.- Introduccin.
           2.- FTP
	       * Qu es, y para qu sirve?.
	       * Cmo se utiliza?

	   3.- Telnet.
               * Qu es, y para qu sirve?.
	       * Cmo se utiliza?
	      
	   4.- Envo de mails.
               * Cmo se mandan correos electrnicos, sin usar el clsico cliente de correo
	       * Mails annimos?

	   5.- Otros datos interesantes.

           6.- Conclusin y despedida.

  
 1.- Introduccin.
-------------------

Bueno amigos, aqu estoy otra vez ms dando el tostn, antes de empezar a leer, no creais que este
texto es una gua de como hackear cuentas de correo ni nada por el estilo, simplemente os quiero
explicar, a los que no lo sepais, como y para que sirven estos 2 servicios que todos tenemos disponibles,
como son el FTP (File Transfer Protocol) o Protocolo de transferencia, que ahora os explico lo que 
significa, aunque se que es un poco aburrido, es mejor saber algo de l, al igual que del Telnet,
que tambin os explicar a continuacin qu es.

Espero, que despus de haberte ledo esto, no tengas dudas, pero bueno, si an as las tienes, no dudes
en acceder al foro de la eZine, y exponla a todos, para que as se te pueda ayudar. 

Espero que este texto os sea de gran utilidad, como los que he creado y.. seguir creando.


 2.- FTP.
----------

 2.1.- Qu es, y para qu se utiliza?.

FTP, como ya dije en la introduccin, significa File Transfer Protocol o protocolo de transferencia
de archivos, en castellano. Bueno, tras la definicin de las siglas, me imagino que ya sepais ms o menos
para que sirve, pero an as, por su alguien no se ha enterado, lo digo, este protocolo, sirve, como bien
dice su nombre, para transferir ficheros, o bien de nuestra mquina a una remota, a lo cual se le llama, upload o 
subir archivos, o de la mquina remota hacia la nuestra, lo que se suele llamar, Download o descarga
de archivos, que es lo que ms utilizamos, para bajar nuestras pelis, msica y dems, Os queda claro?.
Tambin permite seguir bajandose un archivo despus de un corte de
conexin (por haberse cortado o por ser un archivo muy grande que queremos bajar en varias sesiones)

Un programa de FTP servidor suele abrir el puerto 21 en la mquina en la que est instalado, para que se puedan 
conectar por l otras mquinas. Un programa de FTP cliente es el que se utiliza para conectarnos al
servidor. Los hay grficos, como el CuteFTP para Windows o el IglooFTP para Linux, y
en modo texto, que estn includos en ambos sistemas operativos (para
arrancarlos, basta con escribir el comando ftp en una ventana de MS-DOS o de la consola texto,
en Windows y Linux respectivamente). En este texto nos centraremos en los programas clientes de texto.

El FTP no est diseado para ejecutar programas, para eso est telnet, que ms abajo explicar como usarlo, pero s se 
pueden ejecutar algunos, los que sirven para poder decirle a la mquina que queremos subir o bajar algn archivo o para 
navegar entre los directorios.

Hay varios modos de transferencia de ficheros: ASCII y binarios.
Los ficheros ASCII son los archivos de texto, y los binarios todos los dems (programas, imgenes...). Si transferimos un 
fichero de texto como binario, seguramente se perder el formato del archivo (aparecern smbolos extraos o saltos de 
lnea donde no debera de haberlos), pero no ser excesivamente grave.

Sin embargo, si transferimos un binario como texto, es casi seguro que quede inutilizable. Por eso es importante 
asegurarse de cambiar el modo antes de bajarse un programa, una imagen o un archivo de sonido. Luego, a menos que 
queramos bajarnos otro archivo, debemos cambiar nuevamente al modo ASCII para poder recibir correctamente la lista 
de archivos de un directorio (al hacer ls). Normalmente no deberemos preocuparnos por esto si utilizamos un programa 
de ftp, aunque sea en modo texto. Pero si nos conectamos mediante un
programa de telnet s lo tendremos que tener en cuenta.


 2.2.- Cmo se utiliza?.

 Los comandos que aqu os pongo son los ms importantes de importantes del ftp texto para Linux.
Los del ftp texto para ms-dos son iguales en su mayor parte, as que no creo que haya ningn problema en encontrar los 
comandos equivalentes. Para informacin sobre los comandos que no he includo aqu, escribir el comando 'man ftp'

ascii = cambia a modo ASCII (por defecto)

binary = cambia a modo binario

bye = quit = exit = adis!

cd = Cambio Directorio (ojo! no sirve poner 'cd..' como en DOS, hay que poner 'cd ..' (con espacio)

cdup = igual a 'cd ..'

close = disconnect = corta la conexin sin salir del programa

delete = borra un archivo en la mquina remota

dir = muestra la lista de archivos del directorio actual. No admite parmetros.

get [archivo.arc] = descargarse el archivo.arc. Ojo! Fjate de que ests en el modo adecuado antes de descargarlo.

lcd = sin nada ms, muestra el directorio local actual. Con un directorio, cambia el directorio local a ese directorio 
(en el directorio local se guardarn los archivos descargados, y de l se cojern los que se         suban)

ls = muestra los archivos del directorio actual. Los parmetros son los mismos que los del ls del s.o.

mkdir = crea un directorio en la mquina remota.

open = abre una conexin. Slo es necesario si no ha sido especificado un sitio en la llamada al programa (como por 
ejemplo, ftp ftp.reddevil.homelinux.org)

proxy = Se conecta a otro sitio sin desconectar del primero.

put = sube un archivo

rename = renombra un archivo/directorio <-- Esto puede resultar muy interesante a veces! ;-)

reget = seguir bajndose un archivo que ha sido cortado anteriormente.

rmdir = borra un directorio, siempre que est vaco (aunque algunos parezca que lo estn porque no vemos nada al hacer un 
ls, lo que pasa es que tienen archivos para los que no tenemos permiso de lectura (si no         sabes lo que es esto, lee 
un manual bsico de UNIX)).

mdelete, mdir, mget, mls = lo mismo que esos comandos sin m, pero para varios archivos / directorios.

Ahora despus de poner un definicin de todos los comandos.. vamos a ver una parte prctica, vamos a subir nuestra 
pgina wez al servidor, para ponerla en la red. Nuestra pgina principal se llama index.html, y contiene una imagen 
llamada imagen.jpg, que la queremos poner en un directorio aparte (imgenes).

Pues bien, primero nos conectamos a nuestro servidor. Esto se hace poniendo el comando 'ftp (servidor)'. Debes sustituir 
(servidor) por el nombre de tu servidor, por ejemplo ftp.servidor.es. Por defecto se asume que el
puerto es el 21, si fuera otro tedras que indicrselo. Por ejemplo, si usa el puerto 4000, tendras que poner 
'ftp ftp.servidor.es 4000'.

Ahora nos saldr un prompt que nos pedir un login (username). Le ponemos nuestro nombre de usuario. Si quisiramos 
conectarnos annimamente tendramos que poner 'anonymous' (esto es as para la mayora de servidores. Puede, 
no obstante, que te encuentres alguno que no sea as. En estos casos hay que probar con 'guest' o similares). 
Como este no es el caso, introducimos nuestro nombre de usuario, por ejemplo, pepito.

Luego nos pedir una contrasea. Si hemos entrado como 'anonymous' tendremos que poner una direccin de e-mail. 
Poniendo 'guest@' ya vale en la mayor parte de los casos. Tambin puedes poner tu verdadera direccin si 
quieres que te acaben de mandar por correo los archivos que no te has podido bajar (el servidor debe aceptar esta opcin). 
Si hemos entrado como usuario no annimo, introduciremos nuestra contrasea.

        Y ya estamos dentro!, ahora podemos ver nuestros directorios.

Si ponemos 'cd ..' veremos que estamos en el directorio raz. Esto no es as en realidad, para la mquina no es el 
nuestro el directorio raz, slo lo es para un usuario (nosotros).

Si ponemos 'ls' podremos ver los archivos que hayamos puesto anteriormente nosotros ah. Tambin veremos varios 
subdirectorios. Uno de ellos es bin, otro sbin. Si miramos dentro de estos subdirectorios veremos que, aparentemente, 
estn vacos, pero no es as, lo que pasa es que estn llenos de archivos para los que no tenemos permisos de lectura 
(pero s de ejecucin). Si no sabes qu quiere decir esto, te recomiendo que mires
la seccin de permisos de un manual bsico de UNIX.

Estos subdirectorios no se pueden borrar, porque contienen archivos de los que no somos los propietarios, pero s 
renombrar ;-)

Bueno, a lo que bamos. Aqu est el resto del trabajo. No creo que necesite ms explicacin que la que ya tiene entre 
los smbolos /* y */.

lcd /mipagina  /*cambia el directorio local actual a /mipagina, que es donde se supone que tenemos guardada la pgina.
Los usuarios de windows tendrn que usar la barra invertida '\'*/ put index.html /*sube el archivo index.html. 
Como los html son archivos de texto no hace falta cambiar el modo. Si tuvieras problemas, cambia al
modo binary*/ 

mkdir imagenes

cd imagenes /*crea el subdirectorio imagenes y se cambia a l (todo en la mquina remota*/

binary /*cambia a modo binario (vamos a subir la imagen) (esto no es necesario si usamos un programa de ftp, s lo es 
si no lo usamos)*/ 

put imagen.jpg

ascii /*vuelve a cambiar al modo ascii (porque vamos a comprobar que todo est bien, y necesitamos recibir la 
informacin en modo texto (ascii)) (esto no es necesario si usamos un programa de ftp, s lo es si no lo usamos)*/

ls /*comprueba que la imagen est en su sitio*/

quit /*salimos*/
    
  
 3.- Telnet.
-------------
 
 3.1 Qu es, y para qu sirve?.

Primero creo que hay que distinguir entre un programa de telnet y el protocolo telnet. Un programa cliente de telnet es 
un emulador de terminal (teclado + monitor) con el que nos podremos conectar con nuestro ordenador a
otro y utilizarlo como si nuestro programa fuera un terminal de la mquina lejana. Es decir, es el que nos permitir 
conectar a cualquiera de los puertos abiertos de un sistema para aprovecharnos de sus servicios.
Prcticamente todos los s.o. traen uno. Tanto en Linux como en win se llaman igual: telnet.
Tambin hay otros programas que hacen eso. Uno de los ms conocidos es el CRT (para win), que podris encontrar en 
shareware.com, entre otros muchos lugares.

Y el protocolo telnet es un protocolo orientado a ejecutar programas en una mquina remota. Nosotros le enviamos la 
informacin al programa de la mquina lejana mediante el teclado, el programa la procesa en la mquina lejana, y recibimos 
el resultado en nuestra pantalla. Es decir, este protocolo est orientado a la ejecucin de programas en la mquina lejana. 

Y cmo ms podemos utilizarlo? Pues nos puede servir para encontrar y utilizar un proxy con el que anonimizarnos ms, 
por ejemplo..


 3.1.- Cmo se utiliza?. 

Si queris ver una muestra de cmo se pueden ejecutar programas en una mquina lejana, podis probar con stos:

eucmvx.sim.ucm.es (login: biblioteca) <-- Catlogo de la universidad
complutense de Madrid

babel.uab.es <-- Catlogo de la universidad autnoma de Barcelona

chess.unix-ag.uni-kl.de (puerto: 5000) <-- Jugar al ajedrez contra otros
usuarios

Para conectar con ellos en Linux debis escribir 'telnet servidor' si se usa el puerto 23 (los que no he puesto nada) 
o 'telnet servidor puerto' si se usa otro puerto diferente. P.e.: 'telnet reddevil.homelinux.org'  
'telnet reddevil.homelinux.org 23'

En windows, iniciad vuestro programa de telnet preferido, y en el men de conexin escribid el nombre y el puerto 
(dejad telnet si es el 23).
Dejad el tipo de terminal en vt-100. Si no veis lo que escribs, habilitad el eco (estar en el cuadro de opciones o 
similar).

Para utilizar un proxy wingate para anonimizarnos, primero tendremos que conseguir una lista de posibles proxys 
conectables. Para ello, vamos al IRC y escribimos '/raw stats glines'. Esto nos dar una lista de gente que ha
sido baneada. Nos quedaremos con los que en el motivo de ban ponga algo de 'proxy abierto' o similar. Nos vamos al 
programa de telnet y probamos con uno.
Si no nos deja conectar, o no dice nada al conectar, pasamos al siguiente. Si nos contesta con el prompt 'wingate>', 
felicidades! has encontrado un wingate. Con l podrs conectarte a otro sitio sin dejar tu verdadera IP (quedar 
guardada en el sitio de la conexin la IP del wingate, y la tuya quedar
reflejada en el wingate).

Hay algunos wingates que no guardan logs (archivos en los que quedan reflejadas todas las conexiones). stos son los 
que deberemos conseguir encontrar. El problema es que no hay forma de saber si un sitio guarda o
no logs. Por eso es conveniente conectarse a dos o ms consecutivamente. 
Con esto aumentan las posibilidades de encontrarse uno que no guarde logs, aunque la velocidad disminuye.

Una vez conectado a un wingate, para conectarnos a otro o a cualquier otra parte tendremos que poner 
'open servidor puerto'. 

Y esto es todo, comandos no creo que haga falta poner ya que si por ejemplo ests usando telnet a una mquina win, los 
comandos que utilizars sern como si en una ventana msdos se tratase.. cd, dir, copy... y si es a una mquina linux pues 
igualmente... ls, cd..


 4.- Envo de mails.
---------------------

 4.1.- Cmo se mandan correos electrnicos, sin usar el clsico cliente de correo grfico.

Creo que lo mejor para ver cmo funciona el envo de e-mails es enviandolos "a mano".

Para esto abriremos nuestro programa de telnet, y conectaremos con nuestro servidor de smtp, que estar en el puerto 25. 
P.e.: telnet mailhost.terra.es 25

Despus de los mensajes de bienvenida, si queremos enviar un mail, escribimos:

mail from: Nadie <nadie@ningunsitio.com>, o bien:
mail from: nadie@ningunsitio.com

La diferencia es que en el primer caso saldr en el programa de correo empleado para leer nuestro mail que ha sido 
enviado por Nadie, mientras que en el segundo caso habr sido enviado por nadie@ningunsitio.com.

Hay algunos servidores que requieren que el servidor que hay detrs de la @ exista. En ese caso basta con poner un 
servidor que exista (no necesariamente nuestro ;-) )

        Para designar el receptor:

rcpt to: Amigo <amigo@nuestro.es> (rcpt significa recipient)

Ahora viene el cuerpo del mensaje. Le decimos al servidor que queremos introducirlo escribiendo: "data"

Si no ponemos nada, la primera lnea ser el subject, luego tendremos que dejar una lnea en blanco, y el resto el 
cuerpo del mensaje.
Finalizaremos con un puntito slo en una lnea.

Pero tambin podemos poner nuestras propias cabeceras. Como las nicas obligatorias son el from, el to, y el Received 
(que lo pone el servidor y no podemos modificar), las dems nos las podemos inventar, o copiar de las
que ponen los programas de correo. Esto incluye, entre otras, la fecha. 
Seguramente el servidor la incluir por otro lado, pero puede ayudar a sembrar la confusin ;-). La ltima que debemos 
poner debe ser el subject: , y a partir de esa ya vendr el mensaje.
Esto es todo as de facil es enviar un correo electrnico va telnet.


 4.2.- Mails annimos?

Tambin llamados remailer annimos. Son los servidores de correo saliente que no incluyen la IP del que la
enva. Podemos saber si un servidor es o no un remailer annimo con el comando helo. Ponemos: 

helo cualquiercosa

Si nos contesta con:

Helo (nuestronombreenlared) [(nuestraip)] please to meet you.

Ya nos podemos olvidar, porque no es un remailer annimo. Si en la contestacin no se incluye nuestra IP, seguramente s 
lo ser. Podemos comprobarlo enviando un mensaje y comprobando si la incluye. 

El comando helo es conveniente utilizarlo al conectar a un servidor smtp. No es necesario, pero si no lo usamos en las 
cabeceras del mensaje se incluir un warning (advertencia) de que somos unos maleducados que no 
saludamos :-D.

Tambin se llama remailer annimo a cierto servicio en la red, al que nosotros dirigimos nuestros mensajes, y ellos 
eliminan el campo From y lo redirigen al receptor original.

Ninguno de estos dos sistemas es completamente annimo, ya que si hacemos alguna 'guarrerida' y a los MIG les da por 
investigar, como nuestra entrada en estos servidores ha quedado registrada, no tendrn mucha dificultad
para seguir el rastro.


 5.- Otros datos de inters.
-----------------------------

Bueno en esta parte, solo quiero explicar a grandes rasgos, qu es y para que sirve un puerto.

Un puerto lgico es en parte similar a un puerto fsico (eso que hay detrs de la caja del ordenador, donde conectamos 
la impresora, el ratn, el mdem...). Detrs de cada puerto hay un programa, que da un servicio a
todo aquel que se conecte a l y tenga permiso para acceder al servicio.

Para que sea accesible, el puerto debe estar 'abierto'. Adems, debe tener un programa detrs de l, porque si no, 
aunque nos conectemos, no podremos hacer nada con l. Para saber qu puertos estn abiertos debemos usar
un scaner. 

Hay miles de listas muy completas con todos los puertos. Abajo incluyo una para mayor comodidad, con los puertos ms 
comunes y/o ms importantes.

En la lista se asume que cada puerto est relacionado con su nmero asociado (ftp con el 21, smtp con el 25, etc...), 
pero nada impide que podamos intercambiar estos nmeros (poner el ftp en el 1234, p.e.). Tambin
recordar que a la hora de conectar con un puerto da igual poner su nmero que su nombre ('telnet www.servidor.com 21' 
es equivalente a 'telnet www.servidor.com ftp')

        Y aqu est la lista:

     Puerto     Servicio        Utilidad
   -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- 
       7        echo            Lo que teclees se volvera a escribir 
       9        discard         dev/null - basura 
       11       systat          Informacion sobre los usuarios 
       13                       Hora y fecha en el host remoto 
       15       netstat         Informacion sobre la red 
       21       ftp             Transferencia de ficheros 
       23       telnet          Acceso al shell 
       25       smtp            Correo saliente 
       37       time            Hora en el host remoto 
       39       rlp             Localizacion del recurso 
       43       whois           Informacion sobre la red y el host 
       53       domain          Nombre del servidor 
       70       gopher          Buscador de informacion (ya anticuado) 
       79       finger          Informacion sobre los usuarios 
       80       www             Servidor de Web 
       110      pop3            Correo entrante 
       119      nntp            Grupos de noticias (news)
       139      nbsession       Netbios session
       443      shttp           Servidor de Web 'seguro'
       512      biff            Notificacion de correo 
       513      rlogin          Login remoto 
       514      shell           Comando remoto 
       515      spooler 
       520      route           Protocolo de informacion routing 
       8000     http            Otro servidor de web.
       8080     proxy 


 6.- Conclusin y despedida.
-----------------------------

Bueno amigos, esto es todo en este texto, como siempre, deciros que espero que os haya servido para algo de utilidad y 
sobre todo espero que algo aprendieseis con l, ya que esa es mi nica proposicin con escribir los textos para vosotros..

                         Y bueno, esto ha sido todo. Espero no haberos aburrido mucho.

--------------
   REDDEVIL  |
---------------------------------
reddevil_fih@ymmas.net          |
Clave pblica en: www.ymmas.net |--- No es ms sabio quien tiene conocimientos sino quien sabe demostrarlos ---
Evita mandar spam               |
---------------------------------
   

