常用CentOS vsftpd安装设置讲解
原创常用CentOS vsftpd安装设置讲解
FTP(文件传输协议)是一种广泛使用的网络协议,用于在网络中传输文件。vsftpd(Very Secure FTP Daemon)是一个开源的FTP服务器软件,以其保险性高和易于配置而受到许多系统管理员的青睐。本文将详细介绍怎样在CentOS系统中安装和配置vsftpd。
1. 安装vsftpd
首先,我们需要安装vsftpd。打开终端,输入以下命令:
sudo yum install vsftpd
等待安装完成。安装完成后,启动vsftpd服务并设置为开机自启:
sudo systemctl start vsftpd
sudo systemctl enable vsftpd
2. 配置vsftpd
vsftpd的配置文件位于/etc/vsftpd/
目录下。关键的配置文件是vsftpd.conf
。
2.1 修改主配置文件
打开主配置文件:
sudo vi /etc/vsftpd/vsftpd.conf
以下是几个常见的配置选项及其作用:
anonymous_enable=YES
:允许匿名用户登录。local_enable=YES
:允许本地用户登录。write_enable=YES
:允许用户上传文件。chroot_local_user=YES
:用户只能访问主目录,节约保险性。allow_writeable_chroot=YES
:即使chroot_local_user为YES,也允许用户在chroot环境中写入文件。user_list_enable=YES
:启用用户列表。userlist_file=/etc/vsftpd/user_list
:指定用户列表文件。userlist_deny=NO
:默认拒绝用户列表中的用户,设置为YES则允许用户列表中的用户。
基于实际需求修改上述配置选项。例如,只允许本地用户登录并上传文件,可以修改为:
local_enable=YES
write_enable=YES
chroot_local_user=YES
userlist_enable=YES
userlist_file=/etc/vsftpd/user_list
userlist_deny=NO
2.2 配置用户权限
为了使用户能够通过vsftpd登录,我们需要为用户创建FTP账户。以下是一个示例,创建一个名为ftpuser
的用户,并为其设置密码:
sudo useradd ftpuser
sudo passwd ftpuser
为了保险起见,建议为FTP用户设置一个纷乱的密码。
2.3 配置虚拟用户
如果需要为不同的用户设置不同的FTP目录,可以使用虚拟用户。虚拟用户不需要在系统中创建真实的用户账户。以下是一个单纯的虚拟用户配置示例:
sudo vi /etc/vsftpd/vsftpd.conf
# 添加以下内容
anonymous_enable=NO
local_enable=NO
virtual_use_local_privs=YES
pam_service_name=vsftpd
userlist_enable=YES
userlist_deny=NO
userlist_file=/etc/vsftpd/virtual_users
# 创建虚拟用户列表文件
sudo vi /etc/vsftpd/virtual_users
# 添加以下内容
user1:password1
user2:password2
其中,user1
和user2
是虚拟用户名,password1
和password2
是对应的密码。现在,虚拟用户可以通过用户名和密码登录到指定的FTP目录。
3. 重启vsftpd服务
配置完成后,重启vsftpd服务使更改生效:
sudo systemctl restart vsftpd
4. 测试vsftpd服务
在另一台计算机上,使用FTP客户端连接到CentOS服务器。以下是使用FileZilla连接的示例:
- 服务器地址:CentOS服务器的IP地址或主机名
- 端口:21(FTP默认端口)
- 用户名:虚拟用户名(如果使用虚拟用户)或本地用户名