martes, 2 de septiembre de 2008

ftp

SERVIDOR FTP
Un servicio muy habitual es el ftp, sobre todo si tenemos montado un servidor Web para que los diseñadores y webmasters puedan dejar allí
sus creaciones sin molestar a los administradores, nosotros. Con este objetivo, vamos a montar un servidor ftp.
Usuario: client1
Acceso a su directorio: / var /www / do minio1
Sin shell en el sistema y en un entorno chroot
Usuario: client2
Acceso a su directorio: / var /www / do minio2
Sin shell en el sistema y en un entorno chroot
Usuario: webmaster
Acceso a su directorio: / var /www
Sin shell en el sistema y en un entorno chroot
Preparación del sistema
Antes de instalar el servidor ftp vamos a crear los usuarios y securizarlos para que tengan los mínimos permisos y sólo puedan hacer lo que
nosotros definamos.
Crearemos un grupo llamado ftp al cual asociaremos los usuarios.
# groupadd ftp
Creamos los usuarios con sus correspondientes características.
#useradd - g ftp - d / var / www / do minio1 - c " Cliente 1 " client1
#useradd - g ftp - d / var / www / do minio2 - c " Cliente 2 " client2
#useradd - g ftp - d / var / www - c " webmaster " webmaster
Les asignamos un password a los usuarios con el comando passwd. Si no tiene password no funcionará.
Ahora creamos una shell fantasma en el directorio correspondiente.
#mkdir / b in / f tp
Editamos el fichero / e tc /shells y la añadimos en la ultima línea y continuación editamos el fichero / e tc / passwd y buscamos las líneas donde
están definidos los usuarios que hemos creado antes y les añadimos el shell falso:
client1:x:1005:1005: Cliente 1 : /var / www / do minio1: / bin / f t p
client2:x:1006:1005: Cliente 2 : /var / www / do minio2: / bin / f t p
webmaster:x:1007:1005: webmaster : /var /www: / bin / f tp
Instalación del servidor
Ahora es cuando realmente vamos a realizar la instalación del servidor con el comando apt - get.
#apt - get install vsftpd
Esto descargará los paquetes y los dejará ordenados en sus directorios correspondientes junto a los scripts de arranque y parada del
servicio.
Configuración del servidor
El fichero de configuración del servidor se encuentra en / e tc /vsftpd.conf. Lo editamos para configurarlo a nuestro gusto y objetivo. El
contenido es algo parecido, buscamos las líneas indicadas y las modificamos:
# Example config file / e tc /vsftpd.conf
#Escuchando
listen =YES
#
................................................
# Desactivamos el acceso anónimo
anonymous_enable =NO
#
# Descomentamos la línea para que se puedan conectar
local_enable =YES
#
# Permitimos a usuarios locales escribir
write_enable =YES
#
# APLICA CONFIGURACIÓN UMASK
local_umask = 003
#Mensajes welcome
dirmessage_enable =YES
#
# Activate logging of uploads / downloads.
x ferlog_enable =YES
#
# Make sure PORT transfer connections originate from port 20 (ftp - data).
connect_from_port_20 =YES
............................
#
# You may override where the log file goes if you like. The default is shown
# below.
x ferlog_file = /var / log /vsftpd.log



#
# If you want, you can have your log file in standard ftpd xferlog format
x ferlog_std_format =YES
# Se descomenta esto para crear una jaula
chroot_local_user =YES
# You may specify an explicit list of local users to chroot() to their home
# directory. If chroot_local_user is YES, then this list becomes a list of
# users to NOT chroot().
#chroot_list_enable =YES
# (default follows)
chroot_list_file = /etc /vsftpd.chroot_list
#
# Debian customization
# secure_chroot_dir = / var / run /vsftpd
# This string is the name of the PAM service vsftpd will use.
pam_service_name =vsftpd
# This option specifies the location of the RSA certificate to use for SSL
# encrypted connections.
#rsa_cert_file = /e tc /ssl /certs /vsftpd.pem
userlist_enable =YES
tcp_wrappers =YES
userlist_deny =NO
A continuación creamos el fichero vsftpd.chroot_list el cual tendrá la lista de usuarios que no tendrán acceso al servidor:
# touch / e tc /vsftpd.chroot_list
Volcamos los datos a este fichero desde etc / password con el comando.
# cat / e tc / passwd | awk - F: '{ print $1 }' > / e tc /vsftpd.chroot_list
Esto nos genera un fichero con los login de usuarios del sistema del cual quitamos los que si queremos que tengan acceso y los ponemos en
el fichero / e tc /vsftpd.user_list.
Ejemplos de ficheros:
vsftpd.chroot_list
# usuarios con no acceso
root
daemon
bin
sys
sync
games
man
lp
mail
news
vsftpd.user_list
#usuarios con acceso
webmaster
client1
client2
Afinando aún más
Dentro del fichero de configuración (vsftpd.conf) algunas opciones interesantes que también podemos controlar son las siguientes:
#opciones de transferencia
#ancho banda por usuario anónimo 5kb
anon_max_rate = 5100
#ancho de banda por usuario local 5kb
local_max_rate = 5100
#número máximo clientes simultáneos
max_clients =5
#máximo conexiones por ip
max_per_ip = 2
#envía al sistema
syslog_enable =yes
session_support =yes

No hay comentarios:

Publicar un comentario

fotos

danasoft

Sign by Dealighted - Coupons and Deals