首先修改主配置文件/etc/vsftp/vsftpd.conf
设置
anonymous_enable=NO //关闭匿名用户登入 local_enable=YES //允许使用本地用户登入ftp(默认已设置) write_enable=YES //设置写权限(默认已设置) local_umask=022 //本地用户模式创建文件的umask值(默认已设置) userlist_enable=YES //启用“禁止用户名单”,名单文件为ftpusers和user_list(默认已启用) 如下图所示,如没有某条请手动添加
这两个文件均在/etc/vsftpd/文件夹下
cat ftpusers 与cat user_list,内容一致,ftpusers类似于死亡笔记,写在这个文件中的用户永世不得登入ftp
user_list当主配置文件中指明userlist_deny=YES(这个是默认行为),那么同样也是死亡笔记。
仅仅当userlist_deny=NO(需要认为修改配置)时,这个user_list才是允许登入用户的名单。
重启vsftpd,回车没显示回显消息即为正常
systemctl start vsftpd
systemctl stop firewalld //关闭防火墙
setenforce 0 //关闭SELinux的限制原因
如下图没显示回显消息即为成功
使用cmd匿名登陆发现失败了
尝试root登陆,结果一致
方法一
在ftpusers和user_list中删除root用户(强烈不推荐)
方法二:
创建一个不在死亡笔记中的用户以及相对应的密码
useradd [选项] 用户名
使用该命令创建用户账户时,默认的用户家目录会被存放在/home目录中,默认的Shell解释器为/bin/bash,而且默认会创建一个与该用户同名的基本用户组。
例如,创建一个名为mamublog的用户。
设置复杂数字字母组合密码,使密码生效
再次尝试登陆,发现可以登陆进去
安装filezilla,无脑下一步
输入主机IP,用户名,密码等,点击快速连接
即可连接到/home家目录下得用户文件夹
创建一个专门用于sftp的用户mamusftp ,这个用户无法登入,一切服务均不能用,并且加入到sftpuser这个组中。并且设置密码
更改密码:过于简单不行,我弄了很长密码才通过密码验证
创建组
groupadd sftpuser
在/etc/group组中看到这个新建组
cat /etc/group |grep sftpuser
id mamuftp 查看uid和gid
尝试使用mamuftp登入系统
首先看不到mamftp用户
未列出输入mamusftp,发现输入密码后黑屏下又回到登陆界面,并没进入系统桌面
ssh也是不让进去
编辑 vim /etc/ssh/sshd_config文件
找到subsystem,红帽在132行,将其添加#号注释,然后换行输入subsystem sftp internal-sftp
将光标移至末尾,添加如下内容
Match user mamuftp //mamuftp改为自己用户名称
ChrootDirectory /home/mamuftp //mamuftp改为自己用户名称
ForceCommand internal-sftp
键盘按一下esc键,
再同时按住shift+;
输入wq保存
重启sshd服务
systemctl restart sshd
使用命令systemctl status sshd,看到active(running)就是运行中
将mamuftp的家home目录属于root用户,并赋予所属组5的权限
chown root /home/mamuftp
使用命令ls -ld /home/mamuftp
更改750权限
chmod 750 /home/mamuftp
再次
ls -ld /home/mamuftp
查看权限
测试
成功进入
上传文件至linux的下载文件夹,发现可以了
前往linux检查是否上传成功
发现都是假的
必须使用mamublog账户或root账户才可以上传并查看到该文件
目录也不可以创建
然后我使用可以登陆的账户进行上传结果正常可以
发表评论