? ? ?
? ? ? ?在Linux系统中,最常用的ftp有vsftpd,Pure-FTPd,ProFTPd,Wu-FTPd,glftpd,他们的特性优缺点如下对比图:
软件 | 特性 | 优点 | 缺点 |
vsftpd | 轻量级、安全、易于配置 | 安全性高、性能好、易于配置 | 功能较为简单 |
Pure-FTPd | 安全、可扩展、易于管理 | 安全性高、可扩展性强、易于管理 | 配置较为复杂 |
ProFTPd | 功能强大、可扩展、可定制 | 功能强大、可扩展性强、可定制 | 配置较为复杂 |
Wu-FTPd | 功能强大、可扩展、老牌软件 | 功能强大、可扩展性强、老牌软件 | 安全性较低 |
glftpd | 功能强大、可扩展、支持 IPv6 | 功能强大、可扩展性强、支持 IPv6 | 配置较为复杂 |
? vsftpd 是 Linux 下最常用的 FTP 服务器软件之一。它具有以下特点:
? ? ? ?Pure-FTPd 也是 Linux 下非常受欢迎的 FTP 服务器软件。它具有以下特点:
? ? ? ?ProFTPd是一款功能强大的 FTP 服务器软件。它具有以下特点:
? ? ? Wu-FTPd是一款老牌的 FTP 服务器软件。它具有以下特点:
? ? ? glftpd是一款功能强大的 FTP 服务器软件。它具有以下特点:
?
?
yum install -y vsftpd
?如图下图,安装完成。?
?
systemctl start vsftpd
如下图,启动成功?
?
systemctl enable vsftpd
useradd -m -d /home/ftpuser ftpuser
passwd ftpuser
chown ftpuser /home/ftpuser
? ? 默认配置文件路径是:?/etc/vsftpd/vsftpd.conf
vim /etc/vsftpd/vsftpd.conf
? 在 vsftpd.conf
文件中,修改以下配置,如下图:
?
anonymous_enable
?设置为?NO
,禁止匿名访问local_enable
?设置为?YES
,允许本地用户访问chroot_local_user
?设置为?YES
,将本地用户限制在其主目录中allow_writeable_chroot
?设置为?YES
,允许本地用户在其主目录中写入文件? 重启 FTP 服务使配置生效
systemctl restart vsftpd
8 使用客户端winscp验证?
?客户端登陆ftp服务器成功
?
验证成功。?
yum install pure-ftpd
?如下图:
安装成功,如下图:
?
systemctl start pure-ftpd
systemctl enable pure-ftpd
touch /etc/pure-ftpd/pureftpd.passwd
chmod 600 /etc/pure-ftpd/pureftpd.passwd
pure-pw
工具添加虚拟用户。pure-pw useradd myuser -u ftpuser -d /home/ftp_directory
? 回车后会提示输入新的虚拟用户密码?
? ?pure-pw参数:
myuser
虚拟用户名(ftp客户端访问账号)。-u linux系统用名(useradd ftpuesr)
。-d /home/ftp_directory
指定虚拟用户的主目录。? 另外?-u参数 还可以是指系统用户的uid?,如下图??
?pure-pw useradd ftpone -u 1003 -g 1003 -d /home/ftp_file
执行pure-pw后,要
将虚拟用户信息写入虚拟用户数据库文件:
pure-pw mkdb
如下图:?
?
? 打开 Pure-FTPd 配置文件 /etc/pure-ftpd/pure-ftpd.conf
进行编辑:
vi /etc/pure-ftpd/pure-ftpd.conf
? 在配置文件中添加以下配置项:
?PureDB
指定虚拟用户数据库文件的路径。
# 启用虚拟用户
PureDB /etc/pure-ftpd/pureftpd.pdb
# 允许用户登录
UnixAuthentication no
? ? 重新启动 Pure-FTPd 服务生效:
systemctl restart pure-ftpd
? 登陆客户端验证,验证成功如下图:
报错解决:确保以下配置文件配置正确,并确认防火墙数据端口放行:
?
权限配置错误,重新授权ftp目录
例如:
?
注意:虚拟用户对就的权限组是(其它组)?
?