欢迎光临
我们一直在努力

linux下的vsftpd

安装ftp

通过yum命令查看并安装ftp的vsftpd.x86_64版本

system enable vsftpd //设为开机启动

通过firewall-config配置防火墙否则ftp为服务无法通过防火墙,如图首先选择为Permanent模式,然后将ftp勾选,最后点击Options选项卡的第一个选项生效

关闭selinux服务

通过配置selinux文将,将服务状态给为disabled,然后重启,getenforce命令查看

vsftpd服务用户的配置

服务的主配置文将在/etc/vsftpd/vsftp.conf,通过man命令可以查看帮助

匿名用户管理

anonymous_enable=YES 默认值为YES表示匿名用户可以登陆,NO不可以登陆,通过systemctl restart vsftpd重启服务,测试结果如下,测试完恢复

anon_upload_enable=YES是开启匿名用户上传服务,默认值YES是可以可以上传,反之不可以上传,但是ftp默认家目录对于匿名用户没有写权限,因此还要将/var/ftp/pub/权限改为1777,所属组为ftp。

anon_world_readable_only=NO是开启匿名下载表示不只只读也就是可以下载,YES为只读,添加前后使用get对比如下

anon_other_write_enable=YES是开启匿名用户可以删除,添加前后对比如下

anon_mkdir_write_enable=YES是开启创建,对比如下

anon_max_rate=102400是控制上传速度,为最小块4字节的倍数

max_clients=2是控制最大连接数

对比如下

anon_root=/westos 是匿名指定登陆目录,对应的创建该目录,修改目录权限

anon_umask=022 可以通过修改umask来修改所有匿名默认上传文件具有的权限,匿名用户上传文件所具有的默认权限777-022-111=644,

匿名用户指定身份登陆

chown_uploads=YES 开启指定用户登陆

chown_username=student 指定用户身份

chown_upload_mode=0644 指定该用户上传文件所具有的权限

对应的注释掉匿名用户默认目录和上传文件默认权限,否则不知道是哪个生效了

local_enable=YES默认本地用户可以登陆,NO不可以登陆

如下之后修改为NO后,服务器不允许登陆,改回YES后继续可以登陆

write_enable=YES 本地用户写权限限制,默认YES可以写,NO为不可以

先修改为NO不可创建,YES时可以创建

local_root=/westos 本地用户指定登陆目录

local_umask=022 本地用户上传文件默认所具有的权限

本地用户限制到家目录

chroot_local_user=YES 将所有本地用户锁在家目录

chmod u-w /home/*修改本地/home/*下的本地用户家目录权限

本地用户登陆限制目录的黑白名单建立

黑名单

vim /etc/vsftpd/chroot_list首先建立名单,将student写入

chroot_local_user=NO 表示所有本地用户不受ftp限制cd到其他目录

chroot_list_enable=YES 名单状态启用

chroot_list_file=/etc/vsftpd/chroot_list配置名单路径

写入名单的student无法cd到家目录外,因此是黑名单,如图结果也是student用户无法到其他目录

白名单

反之当chroot_local_user=YES时,所有用户都被限制家目录,只有名单内用户student可以到其他目录,这时是启用了白名单

本地用户登陆的黑白名单

vim /etc/vsftp/user_list写入用户student

userlist_enable=YES名单生效,为黑名单

student用户在名单内无法登录,其他用户可以登陆

当添加参数userlist_deny=NO黑名单变为白名单,student可以登陆,其他不可以登陆

本地用户登陆的永久性黑名单

vim /etc/vsftpd/ftpusers添加到该名单的用户将无法登录ftp服务,不会因为参数改变

如下黑名单加入student后,用户student就无法登陆

ftp虚拟用户的设定

vim /etc/vsftp/guestuser 建立虚拟用户信息,文件名字可以任意

db_load -T -t hash -f /etc/vsftpd/guestuser /etc/vsftp/vsftpd/guestuser.db将该文件数据通过hash加密,生成新的文件guestuser.db存放加密后的数据

vim /etc/pam.d/guestuser用户身份密码认证方式的配置文件,文件名任意

最后添加配置文件vsftpd.conf以下参数

pam_service_name=pamuser配置的文件名要与pam验证配置文件名一致

guest_enable=YES虚拟用户配置开启

guert_username=ftp使用的身份为ftp

如下生效后可以通过虚拟用户登陆ftp

虚拟用户指定家目录

首先创建家目录,修改目录权限

mkdir /ftphome/wes1/wes1dir -p

mkdir /ftphome/wes2/wes2dir -p

mkdir /ftphome/wes3/wes3dir -p

mkdir /ftphome/wes4/wes4dir -p

配置vsftp.conf文件添加参数如下,$USER为用户变量,每个用户的变量值为它们的变量名

local_root=/ftphome/$USER

user_sub_token=$USER

成功登陆到各自的家目录

虚拟用户的个人权限配置

user_config_dir=/etc/vsftpd/configdir/个人配置目录,名字任意

mkdir /etc/vsftpd/configdir -p创建目录以及路径,必须与上面一致

vim wes3创建编辑虚拟用户wes3的个人配置文件,名字必须与用户名称一致,配置如下用户具有写上传权限

 收藏 (0) 打赏

您可以选择一种方式赞助本站

支付宝扫一扫赞助

微信钱包扫描赞助

未经允许不得转载:英协网 » linux下的vsftpd

分享到: 生成海报
avatar

热门文章

  • 评论 抢沙发

    • QQ号
    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址

    登录

    忘记密码 ?

    切换登录

    注册

    我们将发送一封验证邮件至你的邮箱, 请正确填写以完成账号注册和激活