Tutorial de compilación del servidor FTP de Linux

  
 

Configuración del servidor FTP

Paquetes: vsftpd.i386

Daemon: vsftp (/usr /sbin /vsftpd)

Script: /etc/init.d/Vsftpd

puertos: 21 /tcp (ftp), 20 /tcp (ftp-data)

Configuración:

/etc/vsftpd/vsftpd.conf

/etc /vsftpd /ftpusers

/etc/pam.d/vsftpd


En Linux, hay varios programas que implementan el servidor ftp, estamos aquí Use el propio vsftp de redhat, que tiene funciones de seguridad y ligeras.

Abrimos el servicio después de instalar el paquete vsftpd, se puede acceder a ftp:

yum – e install vsftpd.i386

service vsftpd start

Comenzando el servicio Podemos acceder directamente al servidor ftp

El directorio raíz de ftp se encuentra en /var /ftp /podemos crear un directorio aquí.

Cuando se utiliza el inicio de sesión de un usuario local, el inicio de sesión en el directorio es la casa del usuario Directorio

Por ejemplo, lftp – u zoe 192.168.0.3

El contenido que se muestra en el directorio /home /zoe después del inicio de sesión


aquí Principalmente presenta tres aspectos:

1 ftp varias configuraciones (a través de archivos de configuración)

2 ftp de seguridad basado en ssl

3 Acerca del establecimiento virtual de usuarios ftp


Primero conocemos el archivo de configuración principal de vsftp /etc/vsftpd/vsftpd.conf

anonymous_enable = YES Ya sea para permitir que los usuarios inicien sesión de forma anónima

local_enable = YES Ya sea para permitir que los usuarios locales inicien sesión

anon_upload_enable = YES para permitir que los usuarios carguen archivos

anon_mkdir_write_enable = YES para permitir que se carguen directorios

anon_other_write_enable = YES para que usuarios anónimos eliminen archivos

dirmessage _enable = SÍ El acceso del usuario a un directorio es mostrar información de bienvenida

message_file = .messageCrear un archivo .message en el directorio de inicio del usuario, que escribe un mensaje de bienvenida

xferlog_enable = YES Activar la transferencia Registro

xferlog_file = /var /log /vsftpd Abra el registro de transferencia, defina la ubicación

chown_loads = YES Cambie el propietario a otro usuario después de cargar el archivo

chown_username = Quien haya cambiado el propietario a

idle_session_timeout = 600 tiempo de espera de sesión inactiva

data_connection_timeout = 120 tiempo de espera de descarga

ascii_upload_enable = YES Ya sea para abrir la transmisión basada en ascii, generalmente No se recomienda abrir

ftpd_banner = Bienvenido al mensaje de bienvenida del servicio FTP de blah

chroot_local_user = YESbloquea el directorio de inicio a usuario

Si no usa este elemento, los usuarios pueden iniciar sesión después de cd Ver cualquier directorio en el host donde se encuentra el servidor ftp

chroot_list_enable = YES Bloquea al usuario en la lista definida por el enlace descendente para acceder solo a su directorio de inicio

chroot_list_file = /etc /vsftpd /chroot_list Listar la ubicación del archivo

chroot_loca L_user = YESLock all

ls_recurse_enable = YESUtilice la pantalla recursiva cuando use el comando ls

listen = YES listen es guardia independiente

pam_service_name = vsftpd verificación de modo de inicio de sesión de usuario Archivo de definición de métodos

userlist_enable = YES Use user_list para definir al usuario en el archivo secundario para iniciar sesión en

userlist_deny = N0 para permitir que solo los usuarios en el archivo user_list inicien sesión en

o userlist_deny = SÍ significa que solo se rechaza el inicio de sesión del usuario en el archivo de lista de usuarios.

El valor predeterminado es rechazar

tcp_wrappers = YESftp para aceptar el control de tcp_wrapper


Definido en /etc /A los usuarios de vsftpd /ftpusers no parece que se les permita iniciar sesión en ftp


Consulte la información anterior, podemos cambiar el archivo de configuración para que el servidor ftp cumpla con nuestros requisitos, aquí ya no es un ejemplo. Simplemente diga algunos comandos ftp:

Lftp – u fedora 192.168.0.3 Ingrese con qué usuario

ftp> ponga el archivo de problema de carga de problemas


Queremos subir archivos a usuarios anónimos, necesita el directorio ftp: ftp pertenece al grupo principal

para seguridad, I Hacemos esto

mkdir /var /ftp /upload

chown ftp: ftp /var /ftp /upload

Cd al directorio al cargar archivos

lftp 192.168.48.3

> cd /upload

> lcd /etc

> put issue

> bye


Necesitamos cerrar selinux para permitir que los usuarios carguen archivos, etc. Entonces, ¿podemos habilitar las subidas de usuarios sin cerrar selinux? Por supuesto, sí, necesitamos cambiar las opciones en la política de selinux para admitir las subidas de usuarios.

getsebool -a Muestra el valor del tipo booleano admitido por todas las políticas en el host actual

Realice algunas modificaciones:

setsebool allow_ftpd_anon_write = 1 Sólo válido para el sistema actual

o setsebool -P allow_ftpd_anon_write = 1 modifique directamente el valor en la biblioteca de políticas, permanente

cd /var /ftp /

ll -Z

chcon - t public_content_rw_t cargar /Agregar permisos de lectura y escritura al directorio

Así que selinux admite esta función de ftp


----------- -------------------------------- SSL


Cuando iniciamos sesión en ftp Todas las contraseñas se registran en texto sin formato, lo cual es extremadamente inseguro, por lo que podemos usar el transporte de inicio de sesión ftp basado en SSL.

Primero debemos firmar el certificado para ftp, luego agregar el siguiente contenido al archivo de configuración

# SSL

ssl_enable = YES Habilitar ssl

ssl_tlsv1 = YES Habilitar versión tls v1

ssl_sslv2 = YES Habilitar versión ssl v2

ssl_sslv3 = YES

allow_anon_data_ssl = NO Los usuarios anónimos generalmente no necesitan

force_local_data_ssl = YES local Si se usa ssl

force_local_logins_ssl = YES cuando se usa el inicio de sesión del usuario local ssl

rsa_cert_file = /etc /vsftpd /ssl /vsftpd.crt Ruta del certificado

rsa_private_key_file = /etc/vsftpd/ssl/vsftpd.key ruta de acceso de clave privada


Luego use el software ftp en el lado de la ventana para probar, por ejemplo, Flashfxp

durante el proceso de inicio de sesión, podemos capturar El paquete de datos se analiza para ver si la contraseña está encriptada durante el proceso de inicio de sesión antes y después de usar ssl.

Una forma sencilla de capturar datos: tcpdump -i eth0 A dst host 192.168.0.3

En qué host puede ejecutar este comando, debe prestar atención a la selección de la tarjeta de red.

tcpdump -D Mostrar lista de NIC

tcpdump -i eth0 Especifica la tarjeta de red para escuchar

A Mostrar información del encabezado en texto sin formato

dst host IP dirección de destino IP

src host IP de la dirección de origen IP


-------------------------- ----------------------- Instancia de establecimiento de usuario virtual:

1 Crear archivo de base de datos de cuenta de usuario de FTP virtual

2 Cree un usuario del sistema con el directorio raíz de FTP y la asignación de usuarios virtuales

3 Cree un archivo de autenticación PAM que sea compatible con usuarios virtuales

4 Agregue la configuración de soporte en el archivo vsftpd.cong

Copyright © Conocimiento de Windows All Rights Reserved