Red de conocimiento informático - Material del sitio web - Cómo habilitar el servicio FTP en Linux

Cómo habilitar el servicio FTP en Linux

El servicio ftp en Linux se puede implementar construyendo el servicio vsftpd. Tomando CentOS como ejemplo, primero debe verificar si vsftpd está instalado en el sistema. Puede ejecutar el comando ?rpm -qa | ?vsftpd ? para verificar si está instalado. Si el paquete correspondiente no está instalado, puede ejecutar ?yum ?-y? install?vsftpd ? Una vez completada la instalación, primero cree un usuario ftp, como ftp_test. , y el comando es el siguiente: useradd?s?/sbin/nologin?d ?/home/ftp_test?ftp_test

Intente no elegir el directorio raíz para el directorio. Este es /home/ftp_test. y este directorio no es el directorio raíz. No cree los directorios ftp_test y ftp_test manualmente; de ​​lo contrario, se producirán problemas de permisos. Se crearán automáticamente al ejecutar el comando.

Puede ver que los permisos para el usuario ftp_test ahora son de lectura, escritura y escritura. ejecutable No hay permisos para otros usuarios y grupos. Ahora cree una contraseña para el usuario ftp_test:

passwd ftp_test

Ingrese la contraseña dos veces y confirme que se ha establecido

<. p>Luego edite el archivo de configuración vsftpd, ubicación: vim /etc/vsftpd/vsftpd.conf.

Busque la configuración anónima_enable, el valor predeterminado es SÍ, cámbielo a NO, lo que significa que los usuarios anónimos no pueden iniciar sesión

Ahora guarde el archivo de configuración directamente y ejecute?systemctl ¿Iniciar el servicio vsftpd. Inicie el servicio vsftp y luego podrá usar el comando systemctl status vsftpd.service para verificar el estado de ejecución del servicio ftp? para conectarlo. Lo probé aquí con FileZilla y la conexión es normal

Ahora que se ha implementado el servicio ftp básico, el cliente puede cargar, descargar y modificar archivos normalmente pero hay un problema; Es decir, todos los directorios están expuestos al cliente, aunque el cliente no puede modificar el resto de los archivos eliminados, pero como el directorio está visible siempre existe algún riesgo de que el cliente no pueda modificar los archivos. El directorio es visible, por lo que siempre existen algunos riesgos, por lo que a continuación debe configurar el usuario ftp para que solo esté activo en su propio directorio de inicio y no vea ningún otro directorio. También abra el archivo de configuración /etc/vsftpd/vsftpd. conf. Busque la configuración chroot_local_user = YES. ¡Está comentada de forma predeterminada! Si solo guarda esta configuración, el cliente devolverá 500 OOPS: vsftpd: se niega a ejecutar con una raíz grabable dentro de chroot(), lo que significa que está prohibido ejecutar con una raíz grabable dentro de chroot() porque ftp_test solo tiene permisos w en esto. directorio.

El directorio de prueba tiene permiso w y la versión de vsftpd que estamos usando ahora es 3.0.2, que es una versión relativamente nueva. Para establecer algunas restricciones de seguridad, si desea pasar ?chmod ?a-w ?/home/ftp_test ? entonces no hay problema si la conexión es exitosa. Sin embargo, el archivo no se puede cargar, por lo que mucha gente en Internet dice que el método de modificar los permisos no es recomendable. La forma correcta es agregar una línea para permitir permisos de escritura en el hogar. directorio bajo la configuración enable_writeable_chroot=YES La configuración específica es la siguiente:

Después de configurar estos dos elementos, guarde y salga, y luego ejecute?service?restart vsftpd service. Ahora la conexión ftp es exitosa nuevamente. y no hay problema con ninguna operación

Ahora puede ver que la ruta anterior es /. Para los usuarios de ftp, es el directorio raíz. Solo pueden operar en este directorio y no pueden salir de él. directorio.

Lo anterior es el servicio vsftpd básico. Lo anterior es el proceso básico de configuración del servicio vsftpd, que se puede utilizar para asignar varios usuarios.