HCRM博客

centos vsftpd配置

CentOS vsftpd 配置指南

vsftpd(Very Secure FTP DAEmon)是一款在Linux系统上广泛使用的FTP服务器软件,以其安全性和高效性著称,本文将详细介绍如何在CentOS操作系统上安装、配置和管理vsftpd,以确保安全的文件传输服务。

一、环境说明

centos vsftpd配置-图1
(图片来源网络,侵权删除)

操作系统:CentOS 7.x 或更新版本

vsftpd版本:以yum安装的默认版本为准

二、vsftpd的安装与启动

1、安装vsftpd

   sudo yum install y vsftpd

2、设置开机自启动

   sudo systemctl enable vsftpd

3、启动vsftpd服务

centos vsftpd配置-图2
(图片来源网络,侵权删除)
   sudo systemctl start vsftpd

4、检查服务状态

   sudo systemctl status vsftpd

三、配置vsftpd

1、备份原始配置文件(可选)

   sudo cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak

2、编辑vsftpd配置文件

使用vim或nano编辑器打开/etc/vsftpd/vsftpd.conf文件:

   sudo vi /etc/vsftpd/vsftpd.conf

3、配置基本设置

centos vsftpd配置-图3
(图片来源网络,侵权删除)

确保以下关键配置项正确设置:

   anonymous_enable=NO
   local_enable=YES
   write_enable=YES
   local_umask=022
   dirmessage_enable=YES
   xferlog_enable=YES
   connect_from_port_20=YES
   xferlog_std_format=YES
   chroot_local_user=YES
   listen=YES
   listen_ipv6=NO
   pam_service_name=vsftpd
   userlist_enable=YES
   tcp_wrappers=YES

4、配置用户访问控制

chroot jailing:限制用户访问其主目录。

     chroot_local_user=YES
     allow_writeable_chroot=YES

用户列表:允许或拒绝特定用户访问。

     userlist_enable=YES
     userlist_deny=NO
     userlist_file=/etc/vsftpd/user_list

编辑/etc/vsftpd/user_list文件,添加允许访问的用户,每行一个用户名。

5、保存并退出

四、创建FTP用户并设置权限

1、创建用户目录

   sudo mkdir p /home/ftpuser/ftp

2、添加FTP用户

   sudo adduser ftpuser

3、设置用户密码

   sudu passwd ftpuser

4、设置目录权限

   sudo chown R ftpuser:ftpuser /home/ftpuser/ftp
   sudo chmod 755 /home/ftpuser/ftp

五、配置防火墙

1、开放FTP端口

   sudo firewallcmd permanent addport=21/tcp
   sudo firewallcmd permanent addservice=ftp
   sudo firewallcmd reload

六、测试FTP服务

1、使用FTP客户端连接

使用FileZilla等FTP客户端连接到服务器,使用创建的ftpuser账户进行登录测试。

七、常见问题排查

1、FTP用户无法登录

确保用户被添加到/etc/vsftpd/user_list中。

确保用户主目录及其父目录具有适当的读写权限。

检查vsftpd日志以获取更多错误信息:

     sudo journalctl u vsftpd f

2、被动模式端口问题

确保防火墙开放了被动模式所需的端口范围。

配置pasv_min_portpasv_max_port

八、FAQs

Q1: 如何更改FTP用户的根目录?

A1: 可以通过修改/etc/vsftpd/vsftpd.conf文件中的local_rootuser_sub_token选项来指定用户的根目录。

local_root=/home/$USER/ftp
user_sub_token=$USER

然后重启vsftpd服务。

Q2: 如何禁止某些用户访问FTP服务器?

A2: 可以在/etc/vsftpd/user_list文件中添加要拒绝的用户,并将userlist_deny设置为YES

userlist_deny=YES
userlist_file=/etc/vsftpd/denied_users

然后在/etc/vsftpd/denied_users中列出要拒绝的用户,最后重启vsftpd服务。

分享:
扫描分享到社交APP
上一篇
下一篇