linux下的vsftpd

安装ftp

 

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

linux下的vsftpd_第1张图片

linux下的vsftpd_第2张图片

 

system enable vsftpd    //设为开机启动

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

linux下的vsftpd_第3张图片

linux下的vsftpd_第4张图片

linux下的vsftpd_第5张图片

 

关闭selinux服务

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

linux下的vsftpd_第6张图片

linux下的vsftpd_第7张图片

 

vsftpd服务用户的配置

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

 

匿名用户管理

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

linux下的vsftpd_第8张图片

 

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

linux下的vsftpd_第9张图片

 

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

 

linux下的vsftpd_第10张图片

 

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

linux下的vsftpd_第11张图片

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

linux下的vsftpd_第12张图片

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

max_clients=2是控制最大连接数

对比如下

linux下的vsftpd_第13张图片

linux下的vsftpd_第14张图片

anon_root=/westos   是匿名指定登陆目录,对应的创建该目录,修改目录权限
 anon_umask=022    可以通过修改umask来修改所有匿名默认上传文件具有的权限,匿名用户上传文件所具有的默认权限777-022-111=644,

linux下的vsftpd_第15张图片

linux下的vsftpd_第16张图片

 

匿名用户指定身份登陆

 chown_uploads=YES    开启指定用户登陆
 chown_username=student  指定用户身份
 chown_upload_mode=0644 指定该用户上传文件所具有的权限

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

linux下的vsftpd_第17张图片

 

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

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

linux下的vsftpd_第18张图片

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

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

linux下的vsftpd_第19张图片

local_root=/westos 本地用户指定登陆目录
local_umask=022 本地用户上传文件默认所具有的权限   

linux下的vsftpd_第20张图片

 

本地用户限制到家目录

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

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

linux下的vsftpd_第21张图片

 

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

黑名单

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用户无法到其他目录

linux下的vsftpd_第22张图片

 

白名单

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

linux下的vsftpd_第23张图片

 

 

本地用户登陆的黑白名单

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

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

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

linux下的vsftpd_第24张图片

 

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

linux下的vsftpd_第25张图片

linux下的vsftpd_第26张图片

 

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

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

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

linux下的vsftpd_第27张图片

linux下的vsftpd_第28张图片

 

 

ftp虚拟用户的设定

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

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

linux下的vsftpd_第29张图片

linux下的vsftpd_第30张图片

 

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

 

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

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

guest_enable=YES虚拟用户配置开启

guert_username=ftp使用的身份为ftp

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

linux下的vsftpd_第31张图片

 

 

虚拟用户指定家目录

 

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

mkdir /ftphome/wes1/wes1dir -p

mkdir /ftphome/wes2/wes2dir -p

mkdir /ftphome/wes3/wes3dir -p

mkdir /ftphome/wes4/wes4dir -p

linux下的vsftpd_第32张图片

linux下的vsftpd_第33张图片

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

local_root=/ftphome/$USER

user_sub_token=$USER

成功登陆到各自的家目录

linux下的vsftpd_第34张图片

 

虚拟用户的个人权限配置

 

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

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

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

linux下的vsftpd_第35张图片

 

 

你可能感兴趣的:(linux下的vsftpd)