Cree un servicio FTP basado en ECS

Cree un servicio FTP basado en ECS

1. Creación de recursos

  • Aquí puede utilizar directamente el servidor gratuito proporcionado por Alibaba Cloud, haga clic en [Activación gratuita]
     
    Inserte la descripción de la imagen aquí

  • Puede ver que nos proporciona un nombre de usuario, contraseña y dirección IP, luego solo necesita iniciar sesión en el servidor remoto

2. Conéctese al servidor ECS de forma remota

  • Aquí utilizo el software Xshell para conectarme (Xshell sigue siendo muy conveniente de usar, puede descargarlo usted mismo o usar otro software para conectarse)
  • Después de iniciar sesión correctamente de la siguiente manera:
     
    Inserte la descripción de la imagen aquí

3. Instale vsftpd

vsftpd (demonio FTP muy seguro): servidor FTP

  • Acceso anónimo: cualquier usuario puede acceder al servicio FTP integrado
  • Modo de usuario local: solo admite usuarios locales agregados para acceder al servicio FTP integrado
  • Comando de instalación yun install -y vsftpd

    -y indica que durante el proceso de instalación, se le pedirá que seleccione todo "sí"

    • La instalación es exitosa si se muestra lo siguiente
       
      Inserte la descripción de la imagen aquí
  • Configurar el servicio FTP para que se inicie automáticamente

    • mando: systemctl enable vsftpd.service
    • Si se muestra lo siguiente, la configuración es correcta:
      Inserte la descripción de la imagen aquí
  • Iniciar el servicio FTP

    • mando: systemctl start vsftpd.service
    • Nada se muestra es éxito
      Inserte la descripción de la imagen aquí
  • Ver el puerto monitoreado por el servicio FTP

    • mando:netstat -antup | grep ftp
    • Como puede ver, se ha iniciado el servicio FTP y el número de puerto de escucha es 21
      Inserte la descripción de la imagen aquí

En este punto, vsftpd tiene la función de acceso anónimo habilitada de forma predeterminada.Puede iniciar sesión en el servidor FTP sin ingresar un nombre de usuario y contraseña, pero no hay permiso para modificar o cargar archivos.

4. Configurar vsftpd

  • Se ha descrito anteriormente el servicio vsftpd allí 匿名用户模式y 本地用户模式dos formas de acceso, echemos un vistazo a la configuración de estos dos enfoques.

4.1 Modo de usuario anónimo

  • Modificar el archivo de configuración vsftpd.conf

    • mando:vim /etc/vsftpd/vsftpd.conf

      Todo el mundo debe estar familiarizado con vim, los estudiantes que no saben cómo encontrar un tutorial en Internet para aprender el funcionamiento básico.

    • Primero encontramos anon_upload_enable=YES(permiso de carga anónimo) esta línea, procedemos como yo y editamos, cancelamos sus comentarios, y luego presionamos la tecla ESC para salir del modo de edición, ingresamos :wqpara guardar y salir
       
      Inserte la descripción de la imagen aquí

  • Cambie los permisos del directorio / var / ftp / pub y agregue permisos de escritura para usuarios de FTP

    • mando:chmod o+w /var/ftp/pub/
    • Después de ejecutar de la siguiente manera
      Inserte la descripción de la imagen aquí
  • Reiniciar el servicio FTP

    • mando:systemctl restrat vsftpd.service
      Inserte la descripción de la imagen aquí
  • Después de la configuración, lo visitamos a través del navegador, abrimos el navegador e ingresamos la URL ftp://<FTP服务器公网IP地址>:FTP端口, por ejemplo, la dirección que visité es ftp://139.196.209.227:21. Como puede ver, podemos acceder sin ingresar un nombre de usuario y contraseña. Los resultados del acceso son los siguientes:
     
    Inserte la descripción de la imagen aquí

4.2 Modo de usuario local

4.2.1 Creación de directorio de archivos y usuarios

  • Cree un usuario de Linux para el servicio FTP

    • mando:adduser ftptest
      Inserte la descripción de la imagen aquí
  • Establezca una contraseña para el usuario que acaba de crear

    • mando:passwd ftptest

    • No se muestra en la pantalla para protección de seguridad al ingresar la contraseña
      Inserte la descripción de la imagen aquí

  • Cree un directorio de archivos para el servicio FTP

    • mando:mkdir /var/ftp/test
      Inserte la descripción de la imagen aquí
  • Cambie el propietario del directorio / var / ftp / test a ftptest [el usuario que acaba de crear]

    • mando:chown -R ftptest:ftptest /var/ftp/test
      Inserte la descripción de la imagen aquí

4.2.2 configuración del archivo vsftpd.conf [modo activo o modo pasivo]

Antes de configurar, aprenda sobre el modo activo y el modo pasivo

  • Modo activo: el puerto de datos 20 del servidor se conecta activamente al puerto de datos del cliente [beneficioso para la gestión del servidor FTP pero no para la gestión del cliente]
  • Modo pasivo: el cliente se conecta activamente al puerto 20 del servidor [Es beneficioso para la gestión del cliente FTP pero no para la gestión del servidor]
4.2.2.1 Modo activo
  • El comando es el siguiente, simplemente cópielo y ejecútelo.

    sed -i 's/anonymous_enable=YES/anonymous_enable=NO/' /etc/vsftpd/vsftpd.conf #禁止匿名登录FTP服务器 
    sed -i 's/listen=NO/listen=YES/' /etc/vsftpd/vsftpd.conf #监听IPv4 sockets 
    sed -i 's/listen_ipv6=YES/#listen_ipv6=YES/' /etc/vsftpd/vsftpd.conf #关闭监听IPv6 sockets 
    sed -i 's/#chroot_local_user=YES/chroot_local_user=YES/' /etc/vsftpd/vsftpd.conf #全部用户被限制在主目录 
    sed -i 's/#chroot_list_enable=YES/chroot_list_enable=YES/' /etc/vsftpd/vsftpd.conf #启用例外用户名单 
    sed -i 's/#chroot_list_file=/chroot_list_file=/' /etc/vsftpd/vsftpd.conf #指定例外用户列表文件,列表中的用户不被锁定在主目录 
    echo "allow_writeable_chroot=YES" >> /etc/vsftpd/vsftpd.conf 
    echo "local_root=/var/ftp/test" >> /etc/vsftpd/vsftpd.conf #设置本地用户登录后所在的目录
    
4.2.2.2 Modo pasivo
  • El comando es el siguiente

    sed -i 's/anonymous_enable=YES/anonymous_enable=NO/' /etc/vsftpd/vsftpd.conf #禁止匿名登录FTP服务器 
    sed -i 's/listen=NO/listen=YES/' /etc/vsftpd/vsftpd.conf #监听IPv4 sockets 
    sed -i 's/listen_ipv6=YES/#listen_ipv6=YES/' /etc/vsftpd/vsftpd.conf #关闭监听IPv6 sockets 
    sed -i 's/#chroot_local_user=YES/chroot_local_user=YES/' /etc/vsftpd/vsftpd.conf #全部用户被限制在主目录 
    sed -i 's/#chroot_list_enable=YES/chroot_list_enable=YES/' /etc/vsftpd/vsftpd.conf #启用例外用户名单 
    sed -i 's/#chroot_list_file=/chroot_list_file=/' /etc/vsftpd/vsftpd.conf #指定例外用户列表文件,列表中的用户不被锁定在主目录 
    echo "allow_writeable_chroot=YES" >> /etc/vsftpd/vsftpd.conf 
    echo "local_root=/var/ftp/test" >> /etc/vsftpd/vsftpd.conf #设置本地用户登录后所在的目录 
    
    echo "pasv_enable=YES" >> /etc/vsftpd/vsftpd.conf #开启被动模式 
    echo "pasv_address=<FTP服务器公网IP地址>" >> /etc/vsftpd/vsftpd.conf #本教程中为ECS服务器弹性IP 
    echo "pasv_min_port=20" >> /etc/vsftpd/vsftpd.conf #设置被动模式下,建立数据传输可使用的端口范围的最小值 
    echo "pasv_max_port=21" >> /etc/vsftpd/vsftpd.conf #设置被动模式下,建立数据传输可使用的端口范围的最大值
    

4.2.3 Lista de usuarios excepcionales

  • Cree un archivo chroot_list en el directorio / etc / vsftpd y escriba una lista de usuarios de excepción en el archivo
    • mando:vim /etc/vsftpd/chroot_list
    • Use el comando vim para editar chroot_listel archivo, agregue la lista de excepciones del usuario. Los usuarios de esta lista no estarán bloqueados en el directorio de inicio y podrán acceder a otros directorios.

Nota: Cuando no hay usuarios de excepción, el archivo chroot_list también debe crearse y el contenido puede estar vacío.

  • Finalmente reinicie el servicio FTP
    • mando:systemctl restart vsftpd.service

4.2.4 Prueba

  • Del mismo modo, escribimos en el navegador y ftp://<FTP服务器公网IP地址>:FTP端口la dirección que visité fue ftp://139.196.209.227:21. Se puede ver en el caso que esté configurado en un modo de usuario local, necesitamos ingresar un nombre de usuario y contraseña antes de acceder, ingresamos el usuario recién creado ftptesty configuramos su propia contraseña para acceder bien
     
    Inserte la descripción de la imagen aquí

  • Una vez que el inicio de sesión es exitoso, la interfaz es la siguiente, en este momento podemos operar el archivo FTP con los permisos correspondientes
     
    Inserte la descripción de la imagen aquí

Supongo que te gusta

Origin blog.csdn.net/qq_29339467/article/details/108759962
Recomendado
Clasificación