```
vi /etc/vsftpd/vsftpd.conf
(图片来源网络,侵删)
```
- 确保以下行的设置如下所示(取消注释并修改为合适的值):
```
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
use_localtime=YES
connect_from_port_20=YES
xferlog_enable=YES
xferlog_std_format=YES
chroot_local_user=YES
listen=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
```
- 保存并关闭文件。
3、创建 FTP 用户和目录
- 运行以下命令创建一个新的 FTP 用户(将 "username" 替换为您想要的用户名):
```
adduser ftpuser
```
- 为新用户设置密码:
```
passwd ftpuser
```
- 创建用于存储 FTP 文件的目录(将 "directory" 替换为您想要的目录路径):
```
mkdir /path/to/directory
```
- 更改新创建的目录的所有权和权限:
```
chown ftpuser:ftpuser /path/to/directory
chmod -R 755 /path/to/directory
```
4、重启 vsftpd 服务以应用更改:
- 运行以下命令重启 vsftpd 服务:
```
systemctl restart vsftpd.service
```
- 确保服务已成功启动并监听端口:
```
systemctl status vsftpd.service
```
- 如果一切正常,您应该看到类似于 "active (running)" 的状态消息。
现在,您已经成功在 Linux CentOS 7.4 上搭建了一个简单的 FTP 服务器,以下是两个与本文相关的问题和解答:
问题1:为什么需要禁用匿名访问?
答:禁用匿名访问是为了提高安全性,通过禁止匿名访问,只有经过身份验证的用户才能访问服务器上的文件,这可以防止未经授权的用户访问敏感信息或滥用服务器资源。
问题2:如何限制用户只能访问特定的目录?
答:要限制用户只能访问特定的目录,您可以在 vsftpd 配置文件中设置 chroot_local_user 选项为 "YES",并在该目录下创建一个特殊的子目录,"home",将用户的主目录设置为该特殊子目录,这样,用户将被限制在其主目录中,并且无法访问其他目录。