Bienvenido(a), Visitante. Favor de ingresar o registrarse.

Ingresar con nombre de usuario, contraseña y duración de la sesión

Foros del Club

Páginas: [1]   Ir Abajo
  Enviar tema  |  Imprimir  
Autor Tema: Proftpd en GNU/Linux - Parte 1  (Leído 1339 veces)
0 Usuarios y 1 Visitante están viendo este tema.
sir_carlomagno
Technocrat
*********

Prestigio: 15
Desconectado Desconectado

Sexo: Masculino
Profesión: Estudiante
Mensajes: 135


Mi espada ansia venganza


WWW
Lenguajes:
C/C++, html+CSS, bash, Java - applets (aprendiendo)
« en: 21/09/2006, 00:42:25 »

PARTE1

Holas, muchas personas me han preguntado mucho sobre como emplear un
servidor FTP en GNU/Linux, algunas más les he dicho que sería mejor
que me lo preguntasen por el foro, pero esto del FTP ya hacia un
tiempito que tenia deuda de presentarlo Lengua

Todos sabemos qué es un ftp, o bien la mayoria conocido por sus siglas
en ingles File Transfer Protocol
es bastante extendido, sus usos son multiples, y van desde el
compartir hasta el ultimo y menos pensado el de hacer la funcion de
los compartidos de windows.

Algunas veces, la distro que usamos no tiene samba y no podemos
compartir tan fácilmente, pero si podemos crear un servidor FTP y
despúes.. navegarlo desde windows y listo Lengua

Existen muchos servidores FTP libres para varias plataformas,
mayormente en linux tenemos muchos servidores para usar, cual es el
indicado es una cuestion que deberia resolverse basandose en las
necesidades, que pueden ser principalmente si, vamos a compartir
atravez de internet ó si lo haremos de forma local solamente.

Sí lo hacemos por internet sería conveniente.. emplear un SFTP, por su
siglas  SECURE FILE TRANSFER PROTOCOL, todos los datos, incluyendo las
contraseñas viajan de forma segura atravez de la red, empleando SSL.

En este tema mencionare como emplear PROFTP, que para mi gusto es un
ftp que se configura muy facilmente.

1) Instalacion: La instalacion depende de tu distribucion, si empleas
una distribucion como ubuntu,debian, guadalinex y otras mas basadas en
Debian, podrias emplear apt para buscar el paquete.

Un vago ejemplo seria el siguiente haciendolo como root*:

root@ubuntuxxx#apt-get update   // primero actualizamos la lista de paquetes.
root@ubuntuxxx#apt-cache search NOMBRE // donde NOMBRE es el nombre a
buscar en este caso el de PROFTPD
root@ubuntuxxx#apt-get install proftpd

Para gentoo, podria ser
root@gentoo#emerge -s nombre
root@gentoo#emerge proftpd

Para quienes no usamos ninguna de las anteriores podriamos obtener el
fuente de ...
http://www.proftpd.org/wwwmirror.html

Descomprimimos con tar -xvjf o tar -xvzf y despues.. nos movemos al directorio..
leemos el README. Aunque basicamente siempre se emplean estos tres comandos.
root@espactra#tar -xvzf proftpd-1.2.tar.gz
root@espactra#cd proftpd

root@espactra#./configure  --help // esto sirve para ver la ayuda y
las opciones que soporta
root@espactra#./configure --with
modules=mod_auth:mod_core:mod_log:mod_ls:mod_cap:mod_readme:mod_rewrite

root@espactra#make clean * Si esta disponible...
root@espactra#make && make install

*Opcionalmente podemos des-instalar el programa empleando..
root@espactra#make uninstall o root@espactra#make deinstall  //depende
del paquete. Leer el README e Install.


Ahora que lo tenemos instalado debemos crear un conjunto de
directorios, los cuales sera donde estar albergado nuestro ftp, para
explicar su importancia cabe señalar que de no especificar
correctamente los permisos, un usuario podria escalar directorios y
llegar a otros como raiz o los directorios personales, dependiendo de
los permisos dados al usuario en el cual este corriendo el ftp, sera
la magnitud del desastre..
« Última modificación: 21/09/2006, 00:45:38 por sir_carlomagno » En línea


---------------------------------------------------------------
>Solo hay algo seguro la infinita inseguridad de la seguridad_
http://ruthless.zathras.de/fun/topsecret/unix.gif
sir_carlomagno
Technocrat
*********

Prestigio: 15
Desconectado Desconectado

Sexo: Masculino
Profesión: Estudiante
Mensajes: 135


Mi espada ansia venganza


WWW
Lenguajes:
C/C++, html+CSS, bash, Java - applets (aprendiendo)
« Respuesta #1 en: 21/09/2006, 00:46:29 »

Un ejemplo de instalacion seria:

#su
#mkdir /home/ftp
#mkdir /home/ftp/subir
#chmod 755 /home/ftp/
#chmod 777 /home/ftp/subir

Recordando un poco los permisos iria asi RWX

Read
Write
eXecute

Un 777 claramente indica privilegios totales de lectura, ejecucion y
escritura y un 5 quiere decir que no podran ejecutar ni escribir solo
leer los directorios. 755

En línea


---------------------------------------------------------------
>Solo hay algo seguro la infinita inseguridad de la seguridad_
http://ruthless.zathras.de/fun/topsecret/unix.gif
sir_carlomagno
Technocrat
*********

Prestigio: 15
Desconectado Desconectado

Sexo: Masculino
Profesión: Estudiante
Mensajes: 135


Mi espada ansia venganza


WWW
Lenguajes:
C/C++, html+CSS, bash, Java - applets (aprendiendo)
« Respuesta #2 en: 21/09/2006, 00:47:16 »

Este es un ejemplo de configuracion:

# This is a basic ProFTPD configuration file (rename it to
# 'proftpd.conf' for actual use.  It establishes a single server
# and a single anonymous login.  It assumes that you have a user/group
# "nobody" and "ftp" for normal operation and anon.

ServerName          "S3RVID0R.C4J4.Z3R0."
ServerType          standalone
DefaultServer       on
RequireValidShell   off
AuthPAM             off
AuthPAMConfig       ftp
# Port 21 is the standard FTP port.
Port                21

# Umask 022 is a good standard umask to prevent new dirs and files
# from being group and world writable.
Umask                022

# To prevent DoS attacks, set the maximum number of child processes
# to 30.  If you need to allow more than 30 concurrent connections
# at once, simply increase this value.  Note that this ONLY works
# in standalone mode, in inetd mode you should use an inetd server
# that allows you to limit maximum number of processes per service
# (such as xinetd).
MaxInstances            2

# Set the user and group under which the server will run.
User                nobody
Group                nogroup

En línea


---------------------------------------------------------------
>Solo hay algo seguro la infinita inseguridad de la seguridad_
http://ruthless.zathras.de/fun/topsecret/unix.gif
sir_carlomagno
Technocrat
*********

Prestigio: 15
Desconectado Desconectado

Sexo: Masculino
Profesión: Estudiante
Mensajes: 135


Mi espada ansia venganza


WWW
Lenguajes:
C/C++, html+CSS, bash, Java - applets (aprendiendo)
« Respuesta #3 en: 21/09/2006, 00:48:03 »

AccessGrantMsg                 "ACC3S0.AUT0RiZ4D0"
AccessDenyMsg                 "ACC3S0.D3N3G4D0.InT3NT4.d3.NU3V0"



# Normally, we want files to be overwriteable.
<Directory /home/ftp>
 Umask   077 077
 AllowOverwrite        off
</Directory>

<Directory /home/ftp/incoming>
  Umask                         077  077
  AllowOverwrite                on
  <Limit READ WRITE STOR>
           AllowAll
  </Limit>
</Directory>

# A basic anonymous configuration, no upload directories.
<Anonymous /home/ftp>
 User                ftp
 Group                nogroup
 AnonRequirePassword           off

 # We want clients to be able to login with "anonymous" as well as "ftp"
 UserAlias            anonymous ftp

 # Limit the maximum number of anonymous logins
 MaxClients            10
En línea


---------------------------------------------------------------
>Solo hay algo seguro la infinita inseguridad de la seguridad_
http://ruthless.zathras.de/fun/topsecret/unix.gif
sir_carlomagno
Technocrat
*********

Prestigio: 15
Desconectado Desconectado

Sexo: Masculino
Profesión: Estudiante
Mensajes: 135


Mi espada ansia venganza


WWW
Lenguajes:
C/C++, html+CSS, bash, Java - applets (aprendiendo)
« Respuesta #4 en: 21/09/2006, 00:56:33 »


 # We want 'welcome.msg' displayed at login, and '.message' displayed
 # in each newly chdired directory.
 DisplayLogin            welcome.msg
 DisplayFirstChdir        .message

En línea


---------------------------------------------------------------
>Solo hay algo seguro la infinita inseguridad de la seguridad_
http://ruthless.zathras.de/fun/topsecret/unix.gif
sir_carlomagno
Technocrat
*********

Prestigio: 15
Desconectado Desconectado

Sexo: Masculino
Profesión: Estudiante
Mensajes: 135


Mi espada ansia venganza


WWW
Lenguajes:
C/C++, html+CSS, bash, Java - applets (aprendiendo)
« Respuesta #5 en: 21/09/2006, 00:56:50 »

 # Limit WRITE everywhere in the anonymous chroot
 <Limit WRITE>
   AllowAll
 </Limit>
<Directory incoming>
   <Limit READ WRITE DIRS STOR CWD CDUP>
     AllowAll
   </Limit>
 </Directory>
</Anonymous>





En línea


---------------------------------------------------------------
>Solo hay algo seguro la infinita inseguridad de la seguridad_
http://ruthless.zathras.de/fun/topsecret/unix.gif
sir_carlomagno
Technocrat
*********

Prestigio: 15
Desconectado Desconectado

Sexo: Masculino
Profesión: Estudiante
Mensajes: 135


Mi espada ansia venganza


WWW
Lenguajes:
C/C++, html+CSS, bash, Java - applets (aprendiendo)
« Respuesta #6 en: 21/09/2006, 00:57:12 »

Esta configuracion es basica para emplear un ftp, para crearle cuentas
a los usuarios basta con añadirlos como usualmente seria con el
comando adduser o useradd y darles password, despues se edita el
En línea


---------------------------------------------------------------
>Solo hay algo seguro la infinita inseguridad de la seguridad_
http://ruthless.zathras.de/fun/topsecret/unix.gif
sir_carlomagno
Technocrat
*********

Prestigio: 15
Desconectado Desconectado

Sexo: Masculino
Profesión: Estudiante
Mensajes: 135


Mi espada ansia venganza


WWW
Lenguajes:
C/C++, html+CSS, bash, Java - applets (aprendiendo)
« Respuesta #7 en: 21/09/2006, 01:00:28 »

/ etc / passwd  y se cambia su directorio por el del
 ftp / home / ftp



En línea


---------------------------------------------------------------
>Solo hay algo seguro la infinita inseguridad de la seguridad_
http://ruthless.zathras.de/fun/topsecret/unix.gif
sir_carlomagno
Technocrat
*********

Prestigio: 15
Desconectado Desconectado

Sexo: Masculino
Profesión: Estudiante
Mensajes: 135


Mi espada ansia venganza


WWW
Lenguajes:
C/C++, html+CSS, bash, Java - applets (aprendiendo)
« Respuesta #8 en: 21/09/2006, 01:00:50 »

entonces lo confinamos a ese directorio solamente, despues el shell
por defecto que es bash se los cambiamos por un /bin/false
Quedandonos asi:
En línea


---------------------------------------------------------------
>Solo hay algo seguro la infinita inseguridad de la seguridad_
http://ruthless.zathras.de/fun/topsecret/unix.gif
sir_carlomagno
Technocrat
*********

Prestigio: 15
Desconectado Desconectado

Sexo: Masculino
Profesión: Estudiante
Mensajes: 135


Mi espada ansia venganza


WWW
Lenguajes:
C/C++, html+CSS, bash, Java - applets (aprendiendo)
« Respuesta #9 en: 21/09/2006, 01:06:23 »

Código
*?/etc/?passwd  
 
 
 
 
[b]*Donde // significan /[/b]
En línea


---------------------------------------------------------------
>Solo hay algo seguro la infinita inseguridad de la seguridad_
http://ruthless.zathras.de/fun/topsecret/unix.gif
Foros del Club
   

 En línea
Páginas: [1]   Ir Arriba
  Enviar tema  |  Imprimir  
 
Ir a: