Вы находитесь на странице: 1из 6

FTP

P (File Tra
ansfer Protocol, Prottocolo de Transferen
ncia de Arrchivos) es
s un
protocolo de red que permite
p
tra
ansferir arc
chivos de forma rppida y sen
ncilla
entre ordenad
dores. Se utiliza parra comparttir archivos
s y directoorios, pudie
endo
esta
ablecer au
utentificaci
n de usua
arios (con nombre y contrasea) y perm
misos
sob
bre los elem
mentos com
mpartidos.
Loss servidore
es FTP se usan prin
ncipalmentte para
tress cosas:

1. Subirr las pgina


as web al h
hosting.

2. Com
mo servido
or de arcchivos de libre acc
ceso (denoominado FTP
annimo
o). Los FT
TP annim
mos son servidores
s
FTP a loos que pu
uede
conecta
arse cualquiera emp
pleando co
omo usuario anonym
mous y como
c
password cualquie
er direcci
n de corre
eo (servir
cualquierr secuencia de
caracterres que inc
cluya "@") .
3. Hace
er backup (copia de sseguridad)..

Este protocolo
o se implementa con
n arquitectu
ura cliente-servidor, ppor lo que
neccesita:
U
Un servid
dor FTP que se est
e
ejecu
utando enn la mquina
r
remota,
y que por d
defecto, estar escuc
chando en los puerto
os 20
y 21 TCP (el puerto 2
20 se utiliz
za para la transmisin
t
n de datos
s y el
p
puerto
21 para
p
los co
omandos de control).
Un
U cliente FTP para conectarn
nos al servidor.
Instalacin
serrvidor FTP
P

del

El servidor FTP
F
que usar
u
ser
ProFTPd, debe ser
s uno dee los
p que existen para L
Linux (tam
mbin se lo
o puede uttilizar
servvidores ftp
sisttemas ope
erativos). Es
E seguro, sumame
ente flexiible, moddular
de
configurar.
Enttre
toda
as
las caracterstic
c
cas que ttiene,
resccatables so
on:

mejores
en otros
o
y fcil
las ms

Perrmite auten
nticar usua
arios con casi cualquier cosa.
uales de ftp
p.
Se pueden uttilizar servi dores virtu
Se
pueden
te
ner
mltipl
les
servido
ores
brinda
ando
serviccio de ftp

an
nimo.

Es m
modular (lo
o que perm
mite extend er su funcionalidad ampliamen
a
nte), un usu
uario
con acceso po
or ftp nicamente no requiere de
d una configuracin especial, y su
cdig
go es libre
e.
Para
a poder insstalarlo de
ebes escrib
bir en la te
erminal apt-get instaall proftpd
d

Ap
principio de
e la instala
acin, ver
s aparece
er una pantalla azul ((esto es en mi
casso), en la cual
c
tendr
s que ele
egir el mod
do en que
e se ejecuttar ProFTPd,
ya sea de inetd o inde
ependientte.
do que, ccada vez que alguie
en quiera conectars
se a
inetd, es el cad
nuestro
o servidorr ser el daemon inetd qu
uien lanzee el serv
vidor,
cerrnd
dolo una vez
v deje d
de necesita
arse. Suele
e utilizarsee en los ca
asos
que se
e quiera ahorrar recurrsos del sis
stema.
Si porr el contra
ario, quere
emos que
e el servid
dor se lannze en modo
m
stand
dalone, o sea, que
e sea un proceso independ iente siem
mpre
activo. Dado que pretend
demos con
nfigurar un
n servidor con una alta
previsi
n de uso
o y adem
s es inclu
uso posible
e que querramos ded
dicar
una mquina
m
en
ntera a elllo, escogeremos, en
e este caaso, lanza
ar el
servido
or en modo
o standalo
one. Es el
e caso de que quereemos hace
er un
uso co
onsiderable
e del servvidor FTP
P con varios usuarioos y basttante
tiempo
o.
A lla hora de
e seleccion
nar, ten prresente la cantidad de trfico que tendrr tu
servvidor de arrchivos (FT
TP).

Nossotros sele
eccionarem
mos la opciin Indepe
endiente.

Una
a forma altternativa de instalarlo
o, si quere
emos la ltima versin, sera ac
cudir
a la
a pgina official de
profftpd:
http://www.pproftpd.net
/
http://www.pproftpd.or
g/

Desscargamoss las fuentes de all, compilam


mos e instalamos el sservidor. Estos
E
passos se cub
bren en la documenta
d
acin que podemos encontrar en ese miismo
sitio
o.

Si q
queremos ver
v el man
nual del serrvidor tecle
eamos en el terminall
Man proftpd
Denttro de estte manual estn loss ficheros que
servvidor.
/usr/bin/profttpd
/etc/ftpusers

/etc/init.d/prroftpd

nos
s permitenn configura
ar el

El prropio servidorr de FTP. Fich


hero ejecutablle.
ficheero que contieene una lista de
d los usurios que
q no se poddrn conectar al
a
serv
vidor.

fichero que iniciia el servidorr

/usr/bin/ftpwhho

Una utilidad que m


muestra inform
macin sobre los procesos dde cada
usuaario actualmennte conectado al servidor.

/usr/bin/ftpcoount

Utilidad que muesstra el nmero


o de conexionees actuales.

/usr/bin/ftpshhut

Ordeen para apagarr el servidor, slo


s
funciona en modo stan
andalone.

/var/log/xferllog

Fichero con la info


formacin sobrre los logs en
e el servidor,, habra que
dir qu polticca de rotacin se desea segu
uir.
decid

/var/run/profttpd [pid]
/var/run/profttpd inetd
En nuestro
n
sistem
ma estar pressente el primeero de los doss, en el directtorio
que muestra los procesos acttivos actualm
mente. En alggunos sistemaas el
nmero de PID noo se muestra (eel fichero se llama proftpd)).
/etc/proftpd.cconf

El ficchero donde cconfiguraremo


os las diversass opciones quee nos ofrece el
serviidor, en l noss centraremos a continuaci
n, es realmennte el nico
que manipularemo
m
os.

Esccribe en la terminal
sud
do gedit /etc/proftp
/
pd/proftpd
d.conf
A continuacin, viene la configuracin
c
n del servidor mediante
m
el fichero /etc/prooftpd.conf. Hee
optaado por incluirr las explicaciones como si fueran comen
ntarios del missmo, de formaa que el ficherro
sea aautoexplicativvo:

# Es
sto es el fichero de
e configura
acin de Pr
roFTPD
# Ha
ay que ren
nombrarlo como
c
/etc/
/proftpd.co
onf
# A continuacin especi
ificamos un
na serie de
e opciones globales.
stas pueden ser anul
ladas en se
ecciones m
s especfi
icas.
# s
# Lo
o primero es el nomb
bre del

servidor: ServerName

"Nombre del

servidor"
# Hemos decidido que va a ser un servidor independiente
(standalone). ServerType

standalone

# Para que el servidor no d informacin acerca del sistema a


potenciales atacantes,
# retrasamos la aparicin de mensajes de bienvenida con la
opcin: DeferWelcome on
# Tampoco queremos que el servidor muestre los enlaces simblicos de nuestro
sistema,
# tan slo los ficheros que se encuentren dentro del rea designada para
los usuarios.
ShowSymLinks off
# La siguiente opcin es para que el servidor sea compatible con
las extensiones
# de seguridad de la RFC
2228. MultilineRFC2228

on

# La siguiente opcin tiene sentido si se decide usar servidores virtuales


(VirtualHost),
# una de las mltiples opciones del servidor proftpd. Se deja porque
no molesta y
# si se opta por ampliar el servidor habra que incluirla de
nuevo. DefaultServer

on

# Permitimos que se sobreescriban los ficheros.


# Slo tendr sentido en los contextos en que se den permisos de escritura
al usuario.
AllowOverWrite

on

# Con este parmetro creamos una jaula para el usuario, ste no puede salir
# del rbol de directorios dado. Para l, es como si fuera el directorio raz
/. En este caso queremos que el usuario acceda a la carpeta ftp previamente
creada
DefaultRoot

/home/ftp/

# Los siguientes parmetros son temporizadores de la conexin, vienen


dados en
# segundos. Desconectan al usuario transcurrido cierto tiempo si no
se produce
# ninguna transferencia, si no llegan datos o si el usuario est
inactivo, respectivamente.
TimeoutNoTransfer

600

TimeoutStalled
TimeoutIdle

1200

600

# Estos parmetros definen el fichero (relativo a directorio) en ASCII que


se enva al usuario cuando
# entra en el sistema (el primero) y la primera vez que entra en
cada directorio (el segundo).
# As el primero se ha de ubicar en el directorio dado por DefaultRoot
(suele ser un mensaje de
# bienvenida) y el segundo en cada directorio donde queramos dar
informacin al usuario.

DisplayLogin
DisplayFirstChdir

welcome.msg
.message

# Esto son las opciones que se aaden cuando el usuario hace un


#ls.
LsDefaultOptions

-l

# El 21 es el puerto FTP estndar.


Port

21

# La mscara sirve para proteger los archivos y/o directorios que se crean
o almacenan.
# Definen los permisos de los ficheros. Se puede aadir un segundo
argumento para
#los directorios, si se quiere que sea
distinto. Umask 022
# Para prevenir ataques tipo DoS, especificamos un mximo nmero de
conexiones
# abiertas
simultneamente.
MaxInstances 30
# Para evitar problemas, especificamos qu usuario y grupo sern los
que ejecuten el servidor
# en los momentos en que no sea necesario tener permisos de root.
#si lo que queremos es nombrar a un usuario para que tenga acceso al servidor
#entonces en vez de nobody se pone su nombre. Eso si que est creado
#previamene en el sistema
User nobody
Group nogroup
# Aqu viene la parte ms delicada:
# Primero especificamos las condiciones del directorio donde entra el
usuario que se conecta
# al servidor. Como se puede observar, el usuario no tiene ningn permiso
#de escritura, ni de creacin de directorios. Todo lo que puede hacer es
#descargar ficheros.
<Directory /home/ftp>
<Limit
WRITE>
DenyAl
l
</Limit
>
</Directory>
# Ahora especificamos las condiciones del directorio upload, donde el
usuario almacenar
# sus ficheros: Puede escribir, crear y borrar directorios y
ficheros, siempre y cuando sean
# suyos. De esto nos aseguramos con una mscara que slo da permisos
al usuario creador
# del fichero y/o directorio. Adems, los usuarios no pueden descargar

nada
da de lo qu
ue
# en
ncuentren en este di
irectorio.

<Dir
rectory
/home/f
ftp/upload>
>
Umask 077
0
<Limit WRITE
CWD>
AllowAll
t
</Limit
>
<Limit READ>
DenyAl
l
t
</Limit
>
</Di
irectory>
# Fi
in del fic
chero de co
onfiguraci
n.

Porr ltimo, guarda lo


os cambio
os, Para que
q
los cambios
c
teengan efe
ecto,
deb
bemos de reiniciar
r
el servicio P
ProFTPd, escribiendo
e
o
/ettc/init.d/prroftpd resttart.

Ojo si alguna
a
vez quieres p
pasar de modo
m
indep
pendiente a modo inetd
solo
o tiene que
e modificarr la lnea se
ervertype inetd

El p
parmetro DefaultRoot tiene la siguiente estructura:

Defa
aultRoot[di
irectorio] [grupodeu
usuariosque
etendrnesedirectorriopordefe
ecto]
[Gru
upodeusuar
riosalosq
quenosele
esaplicaresedirectorio]

Pon
nemos el siguente
s
ejjemplo: ten
nemos 2 usuarios,
u
A y B.
A nicamen
nte podr acceder
a
a su directorrio mientra
as que B podr acce
eder
a to
odo el disco
o duro.
Deb
bemos aa
adir las siguientes ln
neas:
Default
tRoot /hom
me/ftp A

Default
tRoot / B
De essta manera, cu
uando el usua
ario B accederr al servidor te
endr control completo
c
sobrre todos los arrchivos
del dissco, mientras que si es A quien accede,
nicamente podr gestionar su carpeta.
A con
ntinuacin reiniciaremos el servidor
s
para q
que se aplique
en los cambios realizados teecleando:

s
sudo /etc/
/init.d/pr
roftpd res
start

Вам также может понравиться