vsftpd安装配置说明

1. vsftpd安装配置说明

vsftpd是“very secure FTP daemon”的缩写,是一款在Linux发行版中最受推崇的FTP服务器程序。本文操作是在CentOS7下进行的。

1.1. 查看是否已经安装

vsftpd -v

1.2. 安装

yum install vsftpd -y

安装完成后,默认配置文件路径为/etc/vsftpd/vsftpd.conf

1.3. 相关命令

# 启动服务
systemctl start vsftpd
# 查看服务状态
systemctl status vsftpd
# 停止服务
systemctl stop vsftpd
# 设为开机启动
systemctl enable vsftpd
# 查看服务是否开机启动
systemctl is-enabled vsftpd

1.4. 配置vsftpd

根据两种方式建立Vsftpd虚拟用户的介绍,
登录FTP有三种方式:匿名登录、本地用户登录和虚拟用户登录。

  • 匿名登录:默认用户名,一般是anonymous
  • 本地用户登录:使用操作系统的用户登录,用户名在/etc/passwd
  • 虚拟用户登录:ftp的专用用户,可以使用本地数据文件或数据库实现

在本文中使用虚拟用户登录,这样可以增强系统的安全。
为了方便,使用本地数据文件方式实现虚拟用户。

1.4.1. 添加虚拟用户口令文件

# 新建文件存放用户名和密码
vim /etc/vsftpd/virtual_users.txt
# 添加虚拟用户名和密码,奇数行是用户名,偶数行是对应密码
common
123456789
ipo
ipo2019

1.4.2. 生成虚拟用户口令认证文件

virtual_users.txt文件转换成系统认证文件
db_load是CentOS7自带命令,不需要安装

cd /etc/vsftpd
db_load -T -t hash -f virtual_users.txt vftpuser.db

1.4.3. 编辑vsftpd的PAM认证文件

vim /etc/pam.d/vsftpd
# 注释全部行,然后添加下面两行
auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vftpuser
account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vftpuser

1.4.4. 建立本地映射用户

ftp虚拟用户需要使用一个系统用户,这个用户可以不需要密码

useradd -d /home/ftp ftpuser

1.4.5. 配置vsftpd.conf

vim /etc/vsftpd/vsftpd.conf
# 向文件中添加内容
#开启虚拟用户
guest_enable=YES
# FTP虚拟用户对应的系统用户
guest_username=ftpuser
# 指定虚拟用户配置的文件夹
user_config_dir=/etc/vsftpd/vsftpd_user_conf
# 关闭DNS反向解析,可以解决登录ftp慢的问题
reverse_lookup_enable=NO

1.4.6. 为每个虚拟用户建立独立的配置文件

可以对每个虚拟用户建立对应配置文件,下面以ipo用户为例.
更多权限设置建议查看vsftp虚拟用户权限问题

# 创建存放配置的文件夹
mkdir /etc/vsftpd/vsftpd_user_conf
cd /etc/vsftpd/vsftpd_user_conf
# 使用虚拟用户名创建对应文件
vim ipo
# 添加下面内容
# 开放写权限
write_enable=YES
# 浏览目录和下载权限
anon_world_readable_only=NO
# 上传文件权限
anon_upload_enable=YES
# 创建文件夹权限
anon_mkdir_write_enable=YES
# 删除和重命名的权限
anon_other_write_enable=YES
# 用户登录后的根目录
local_root=/home/ftp/ipo

1.4.7. 配置ftp根目录的权限

取消local_rootw权限,否则会报500 OOPS错误
由于取消了w权限,所以需要提前在ipo文件夹内创建文件夹(以后也可以root创建文件夹,再修改权限)

# 提前创建文件夹用来存放文件
mkdir /home/ftp/ipo/your-directory
# 删除ipo文件夹的w权限
chmod a-w /home/ftp/ipo

1.4.8. 重启服务

systemctl restart vsftpd

1.5. 卸载vsftpd

完全卸载软件需要删除包和数据文件

# 取消开机启动
systemctl disable vsftpd
# 停止服务
systemctl stop vsftpd
# 卸载包
yum autoremove vsftpd -y
# 删除数据文件
rm /etc/vsftpd -rf

1.6. 参考资料

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值