Configuraion Proftpd Por William Ramos

19
INSTITUTO TECNOLOGICO SUPERIOR DE RIOVERDE Materia: PROGRAMACIÓN WEB Catedrático: ISC. BERNARDO MARTÍNEZ SANTIAGO Semestre: VII Carrera: ING. EN SISTEMAS COMPUTACIONALES Trabajo: SERVIDOR PROFTPD Elaborado por: WILLIAM ALBERTO RAMOS AGUILAR Nº Control: 07296043 Fecha de entrega: 13-SEPTIEMBRE-2010

Transcript of Configuraion Proftpd Por William Ramos

Page 1: Configuraion Proftpd Por William Ramos

INSTITUTO TECNOLOGICO

SUPERIOR DE RIOVERDE

Materia:

PROGRAMACIÓN WEB

Catedrático:

ISC. BERNARDO MARTÍNEZ SANTIAGO

Semestre:

VII

Carrera:

ING. EN SISTEMAS COMPUTACIONALES

Trabajo:

SERVIDOR PROFTPD

Elaborado por:

WILLIAM ALBERTO RAMOS AGUILAR

Nº Control: 07296043

Fecha de entrega:

13-SEPTIEMBRE-2010

Page 2: Configuraion Proftpd Por William Ramos

ÍNDICE

INTRODUCCIÓN .................................................................................................... 1

DESARROLLO ........................................................................................................ 2

Actualizar base de datos Ubuntu .................................................................. 2

Instalación del servidor proftpd: .................................................................... 4

Archivos del servidor: ................................................................................... 6

Configuraciones del PROFTPD: ................................................................... 7

Configuración previa al proftpd: .................................................................... 7

Configuración del proftpd.conf: ................................................................... 10

Para saber tu ip de login: ............................................................................ 16

CONCLUSIÓN ...................................................................................................... 17

Page 3: Configuraion Proftpd Por William Ramos

[SERVIDOR PROFTPD]

Página 1

INTRODUCCIÓN

En este documento viene la programación de un servidor PROFTPD en Ubuntu

(GNU/Linux), empezamos con la instalación de nuestro servidor entrando como

súper usuario “ROOT” y actualizando todos los registros del software después de

hacer esto la instalación no muestra ningún error. Después aparece una pantalla

de color gris donde nos dice si queremos un servidor “inetd” o “independiente” en

este ocasión aremos la configuración del servidor independiente, al darle continuar

aparecerán los documentos ya pre-configurados para nuestras necesidades y

podremos modificar nuestro servidor sin ningún problema. Este aparece en las

carpetas correspondientes del sistema operativo (Ubuntu).

Page 4: Configuraion Proftpd Por William Ramos

[SERVIDOR PROFTPD]

Página 2

DESARROLLO

Actualizar base de datos Ubuntu :

1. Entramos a Ubuntu.

2. Los vamos a la sección de sistema, administrador y gestor de

actualizaciones (como se muestra en la siguiente imagen):

3. Aparece el gestor de actualizaciones (como se muestra a continuación):

Page 5: Configuraion Proftpd Por William Ramos

[SERVIDOR PROFTPD]

Página 3

4. Seleccionamos la opción de configuración, y aparece otra ventana donde

nos colocamos en software de Ubuntu y seleccionamos todas las opciones

y le damos cerrar como se muestra:

5. Posterior se le da instalar actualizaciones para que se inicie la descarga y

listo (como se muestra en la imagen):

6. Al finalizan la descarga se instalan los paquetes automáticamente y se

termina el proceso de actualización.

Page 6: Configuraion Proftpd Por William Ramos

[SERVIDOR PROFTPD]

Página 4

Instalación del servidor proftpd:

1. Primero son ponemos como súper usuarios “ROOT”como se muestra:

William@ubuntu: # su

Password: (tecleas tu password)

root@ubuntu: #

2. Instalamos el servidor proftpde:

root@ubuntu: # apt-get install proftpd

Aparece:

Leyendo lista de paquetes... Hecho

Creando árbol de dependencias... Hecho

Se instalarán los siguientes paquetes extras:

libmysqlclient15off libpq4 mysql-common

Paquetes sugeridos:

proftpd-doc

Se instalarán los siguientes paquetes NUEVOS:

libmysqlclient15off libpq4 mysql-common proftpd

0 actualizados, 4 se instalarán, 0 para eliminar y 0 no actualizados.

Necesito descargar 2923kB de archivos.

Se utilizarán 6893kB de espacio de disco adicional después de desempaquetar.

¿Desea continuar [S/n]? s (aqui solo seleccionamos la opcion y le damos enter)

Des:1 http://ftp.rediris.es etch/main mysql-common 5.0.32-7etch5 [53,9kB]

Des:2 http://ftp.rediris.es etch/main libmysqlclient15off 5.0.32-7etch5

[1794kB]Des:3 http://ftp.rediris.es etch/main libpq4 8.1.11-0etch1 [277kB]

Des:4 http://ftp.rediris.es etch/main proftpd 1.3.0-19 [798kB]

Descargados 2923kB en 39s (73,7kB/s)

Preconfigurando paquetes ...

Seleccionando el paquete mysql-common previamente no seleccionado.

Page 7: Configuraion Proftpd Por William Ramos

[SERVIDOR PROFTPD]

Página 5

(Leyendo la base de datos ...

76612 ficheros y directorios instalados actualmente.)

Desempaquetando mysql-common (de .../mysql-common_5.0.32-7etch5_all.deb)

...

Seleccionando el paquete libmysqlclient15off previamente no seleccionado.

Desempaquetando libmysqlclient15off (de .../libmysqlclient15off_5.0.32-

7etch5_i386.deb) ...

Seleccionando el paquete libpq4 previamente no seleccionado.

Desempaquetando libpq4 (de .../libpq4_8.1.11-0etch1_i386.deb)

(Aparece una pantalla y seleccionamos en este caso standalone (independiente)

ya que con esta opción el administrador decide cuando arrancar el servidor y

cuando detenerlo. La opción inetd arranca y detiene el servidor cada vez que un

usuario solicite una conexión a él. )

Seleccionando el paquete proftpd previamente no seleccionado.

Desempaquetando proftpd (de .../proftpd_1.3.0-19_i386.deb) ...

Configurando mysql-common (5.0.32-7etch5) ...

Configurando libmysqlclient15off (5.0.32-7etch5) ...

Configurando libpq4 (8.1.11-0etch1) ...

Page 8: Configuraion Proftpd Por William Ramos

[SERVIDOR PROFTPD]

Página 6

Configurando proftpd (1.3.0-19) ...

Adding system user `proftpd' (UID 108) ...

Adding new user `proftpd' (UID 108) with group `nogroup' ...

Not creating home directory `/var/run/proftpd'.

Adding system user `ftp' (UID 109) ...

Adding new user `ftp' (UID 109) with group `nogroup' ...

Creating home directory `/home/ftp' ...

«/usr/share/proftpd/templates/welcome.msg» -> «/home/ftp/welcome.msg.proftpd-

new»

Starting ftp server: proftpd - IPv6 getaddrinfo 'virtdebian.benidebian address

associated with hostname

3. Finaliza la instalación del servidor proftpd.

Archivos del servidor:

/usr/bin/proftpd (propio servidor de FTP)

/usr/bin/ftpwho (utilidad que muestra información sobre los procesos de

cada usuario actualmente conectados al servidor)

/usr/bin/ftpcount (utilidad que muestra el numero de conexiones actuales)

/usr//bin/ftpshut (orden para apagar el servidor. Solo funciona en modo

“standalone”)

/var/log/proftpd/proftpd.log (fichero con la información sobre los “log” en el

servidor)

/etc/proftpd/proftpd.conf (fichero donde configuramos las diversas opciones

que nos ofrece el servidor)

Page 9: Configuraion Proftpd Por William Ramos

[SERVIDOR PROFTPD]

Página 7

Configuraciones del PROFTPD:

Hay dos formas de configurarlo:

Una, es teniendo en cuenta a los usuarios del sistema pidiéndoles nombre

de usuario u contraseña.

Dos, no sabemos quienes se van a conectar pero si sabemos con que login

lo harán entonces escogemos la configuración para usuarios anónimos.(en

este documento vamos a configurar la opción de usuarios anónimos)

Configuración previa al proftpd:

1. Veremos que se ha agregado un usuario llamado “FTP” que es el que nos

crea proftpd al instalarlo con el siguiente código:

Cat /etc/passwd

2. Checamos que el Shell en la imagen anterior que sea:

/bin/false (puesto que si es /bin/bash podra acceder y ejecutar comandos bash no

solo por el puerto 21 sino por el 22 de ssh por ejemplo y hacer estragos)

3. Añadimos el usuario ftp al grupo ftp:

Adduser ftp ftp

Page 10: Configuraion Proftpd Por William Ramos

[SERVIDOR PROFTPD]

Página 8

Page 11: Configuraion Proftpd Por William Ramos

[SERVIDOR PROFTPD]

Página 9

4. Sino esta creado el usuario ftp hacemos:

Adduser ftp –s /bin/false

5. Si no está creado el grupo haremos:

Addgrupo ftp

6. Con esto ya se configura la cuenta de login. Para ordenar el directorio

donde los usuarios se enlazan (/home/ftp) crearemos dos directorios

llamados upload y download donde se realizaran las subidas y las

descargas respectivamente. De la siguiente forma:

Mkdir /home/ftp/upload

Mkdir /home/ftp/download

7. Se les dan los permisos correspondientes a las carpetas:

Chmod 777 /home/ftp/upload

Chmod 755 /home/ftp/download

8. Se cambian de dueño las carpetas creadas como:

Chown ftp upload

Chown ftp download

9. En gráficos podemos ver las carpetas creadas:

10. Se finalisa la configurasion previa y se inicia la configuracion del

proftpd.conf

Page 12: Configuraion Proftpd Por William Ramos

[SERVIDOR PROFTPD]

Página 10

Configuración del proftpd.conf:

1. Abrimos el archivo con en editor ya sea “nano” o “vim” de la siguiente manera:

Nano /etc/proftpd/proftpd.conf

Vim /etc/proftpd/proftpd.conf

Continuamos la configuración:

# (Solo modificamos lo que en este documento aparece de rojo como aparece aquí en este documento esta es la configuración del usuario anónimos antes mencionado)

# /etc/proftpd/proftpd.conf -- This is a basic ProFTPD configuration file.

# To really apply changes reload proftpd after modifications.

#

# Includes DSO modules

Include /etc/proftpd/modules.conf

# Set off to disable IPv6 support which is annoying on IPv4 only boxes.

UseIPv6 on

# If set on you can experience a longer connection delay in many cases.

IdentLookups on

ServerName "Ramos"

ServerType standalone

DeferWelcome on

MultilineRFC2228 on

DefaultServer on

ShowSymlinks off

TimeoutNoTransfer 600

TimeoutStalled 600

TimeoutIdle 1200

DisplayLogin welcome.msg

Page 13: Configuraion Proftpd Por William Ramos

[SERVIDOR PROFTPD]

Página 11

DisplayChdir .message true

ListOptions "-l"

DenyFilter \*.*/

# Use this to jail all users in their homes

DefaultRoot /home/ftp/

# Users require a valid shell listed in /etc/shells to login.

# Use this directive to release that constrain.

# RequireValidShell off

# Port 21 is the standard FTP port.

Port 21

# In some cases you have to specify passive ports range to by-pass

# firewall limitations. Ephemeral ports can be used for that, but

# feel free to use a more narrow range.

# PassivePorts 49152 65534

# If your host was NATted, this option is useful in order to

# allow passive tranfers to work. You have to use your public

# address and opening the passive ports used on your firewall as well.

# MasqueradeAddress 1.2.3.4

# This is useful for masquerading address with dynamic IPs:

# refresh any configured MasqueradeAddress directives every 8 hours

<IfModule mod_dynmasq.c>

# DynMasqRefresh 28800

</IfModule>

# 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

Page 14: Configuraion Proftpd Por William Ramos

[SERVIDOR PROFTPD]

Página 12

# that allows you to limit maximum number of processes per service

# (such as xinetd)

MaxInstances 15

MaxClientsPerUser 3 (aquí los usuarios que usted disponga)

# Set the user and group that the server normally runs at.

User nobody

Group nogroup

# Umask 022 is a good standard umask to prevent new files and dirs

# (second parm) from being group and world writable.

Umask 022 022

# Normally, we want files to be overwriteable.

AllowOverwrite on

# Uncomment this if you are using NIS or LDAP via NSS to retrieve passwords:

# PersistentPasswd off

# This is required to use both PAM-based authentication and local passwords

# AuthOrder mod_auth_pam.c* mod_auth_unix.c

# Be warned: use of this directive impacts CPU average load!

# Uncomment this if you like to see progress and transfer rate with ftpwho

# in downloads. That is not needed for uploads rates.

#

# UseSendFile off

TransferLog /var/log/proftpd/xferlog

SystemLog /var/log/proftpd/proftpd.log

<IfModule mod_quotatab.c>

QuotaEngine off

</IfModule>

<IfModule mod_ratio.c>

Page 15: Configuraion Proftpd Por William Ramos

[SERVIDOR PROFTPD]

Página 13

Ratios off

</IfModule>

# Delay engine reduces impact of the so-called Timing Attack described in

# http://security.lss.hr/index.php?page=details&ID=LSS-2004-10-02

# It is on by default.

<IfModule mod_delay.c>

DelayEngine on

</IfModule>

<IfModule mod_ctrls.c>

ControlsEngine off

ControlsMaxClients 2

ControlsLog /var/log/proftpd/controls.log

ControlsInterval 5

ControlsSocket /var/run/proftpd/proftpd.sock

</IfModule>

<IfModule mod_ctrls_admin.c>

AdminControlsEngine off

</IfModule>

#

# Alternative authentication frameworks

#

#Include /etc/proftpd/ldap.conf

#Include /etc/proftpd/sql.conf

# This is used for FTPS connections

#Include /etc/proftpd/tls.conf

# A basic anonymous configuration, no upload directories.

Page 16: Configuraion Proftpd Por William Ramos

[SERVIDOR PROFTPD]

Página 14

<Anonymous ~ftp>

User ftp

Group ftp

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

UserAlias anonymous ftp

# Cosmetic changes, all files belongs to ftp user

DirFakeUser on ftp

DirFakeGroup on ftp

RequireValidShell off

# Limit the maximum number of anonymous logins

MaxClients 5 (aquí los usuarios que usted disponga)

# We want 'welcome.msg' displayed at login, and '.message' displayed

# in each newly chdired directory.

DisplayLogin welcome.msg

DisplayChdir .message

# Limit WRITE everywhere in the anonymous chroot

<Directory /home/ftp>

<Limit WRITE>

DenyAll

</Limit>

</Directory>

# Uncomment this if you're brave.

# <Directory incoming>

# # Umask 022 is a good standard umask to prevent new files and dirs

# # (second parm) from being group and world writable.

# Umask 022 022

# <Limit READ WRITE>

Page 17: Configuraion Proftpd Por William Ramos

[SERVIDOR PROFTPD]

Página 15

# DenyAll

# </Limit>

# <Limit STOR>

# AllowAll

# </Limit>

# </Directory>

</Anonymous>

2. Al finalizar la configuración serramos el editor y guardamos los cambios.

3. Se reinicia el servidor para hacer efecto de las modificaciones de la

siguiente manera:

Sudo /etc/init.d/proftpd restart

De aparecer ha si para estar correcto:

4. Para comprobar tu servidor tienes que estar conectado a internet y ver

desde otra computadora si funciona haciendo un login con la ip de tu

maquina que te da internet por default y la pones en un explorador.

5. Se termina la configuración del servidor proftpd.

Page 18: Configuraion Proftpd Por William Ramos

[SERVIDOR PROFTPD]

Página 16

Para saber tu ip de login:

1. Se da la palabra reservada y se desplegara una serie de bloque que te

muestran las direcciones del equipo ya sea de la Ethernet, la tarjeta de red

y la Mac la que vas a utilizar el la del Ethernet que te muestre el “eth0”

como sigue a continuación:

Ifconfig

Así:

2. Después lo pones en el explorador para ver el enlace de la siguiente forma:

3. Ya estando dentro podrás ver las carpetas creadas y los archivos que

contengas en la carpeta ftp

4. Fin de la configuración del servidor.

Page 19: Configuraion Proftpd Por William Ramos

[SERVIDOR PROFTPD]

Página 17

CONCLUSIÓN

Se miro la configuración del servidor desde el una terminal de Ubuntu, con este

aprendí a configurar, modificar archivos y los comando para checar los permisor

de las carpetas. Que tan importante son los puertos y restricciones de mi equipo,

al hacer las pruebas de conexión vimos como podemos trasmitir archivos por la

red para compartirlos con nuestros compañeros y así ya podemos crear nuestro

servidor y compartir información con las personas que estén interesadas en los

temas que tengamos en el (servidor ftp) publicando nuestro login en internet para

los interesados teniendo un servidor de respaldo o con los propios compañeros a

distancia. Así también implementar nuestra página web y depositarla allí para

soportarla y poderla subir a la red.