前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Centos 7.2安装FTP服务并进行相关设置

Centos 7.2安装FTP服务并进行相关设置

作者头像
指剑
发布2022-07-15 14:49:03
6720
发布2022-07-15 14:49:03
举报
文章被收录于专栏:指剑的分享指剑的分享

关闭防火墙

#systemctl stop firewalld #systemctl disable firewalld

关闭SELINUX #vi /etc/selinux/config 修改为 SELINUX=disabled

在这里插入图片描述
在这里插入图片描述

安装vsftpd服务 #yum -y install vsftpd 启动 systemctl start vsftpd 设置开机启动 systemctl enable vsftpd

由于刚刚设置了SELINUX,所以需要重启一下 #reboot

使用匿名 用户登陆

打开windows的文件管理器 输入 ftp://ftp服务器的IP地址

在这里插入图片描述
在这里插入图片描述

匿名用户登陆可创建 修改等权限

修改FTP目录权限 #chmod -R 757 /var/ftp/*

在这里插入图片描述
在这里插入图片描述

修改/etc/vsftpd/vsftpd.conf文件 修改第29行和33行,去除前面#注释符 anon_upload_enable=YES anon_mkdir_write_enable=YES

在这里插入图片描述
在这里插入图片描述

在末行添加如下代码 anon_other_write_enable=YES 允许匿名用户修改目录名或删除目录

在这里插入图片描述
在这里插入图片描述

重启ftp #systemctl restart vsftpd

再次使用windows资源管理器进行访问并创建文件夹

在这里插入图片描述
在这里插入图片描述

限制用户切换到主目录外

修改第101行和103行,将其前面#注释符去除

代码语言:javascript
复制
chroot_list_enable=YES	启用chroot_list_file设定的文件,限制指定的用户只能访问自己的主目录
chroot_list_file=/etc/vsftpd/chroot_list	指定受chroot控制的用户列表文件
在这里插入图片描述
在这里插入图片描述

在/ect/vsftpd/vsftpd.conf末行添加

代码语言:javascript
复制
allow_writeable_chroot=YES	如果用户被限定在其主目录下,且目录有写入权限时,必须添加此项,开启chroot环境下的主目录写入权限
在这里插入图片描述
在这里插入图片描述

创建/etc/vsftpd/chroot_list文件 #vi /etc/vsftpd/chroot_list 输入一个用户 这里使用 testuser

在这里插入图片描述
在这里插入图片描述

添加用户并设置用户密码,重启vsftpd服务后,使用 CMD窗口进行用户登陆 如下图

在这里插入图片描述
在这里插入图片描述

测试是否能够切换:

在这里插入图片描述
在这里插入图片描述

将“chroot_list_enable=YES”配置项修改为“chroot_list_enable= NO”,重启vsftpd,再次进行测试

在这里插入图片描述
在这里插入图片描述

使用虚拟用户登陆FTP服务器

1、创建FTP虚拟用户数据库 #vi /etc/vsftpd/vuser.list 输入测试用户,格式如下 test1 #username 000000 #password test2 000000

②调用db_load命令,运行哈希算法对原始文件进行加密运算生成新的db文件 db_load -T -t hash -f /etc/vsftpd/vuser.list /etc/vsftpd/vuser.db

在这里插入图片描述
在这里插入图片描述

(可选)为安全起见,删除原有的虚拟用户文件

代码语言:javascript
复制
#rm -rf /etc/vsftpd/vuser.list

修改新生成的用户数据文件的权限为root用户读写权限

代码语言:javascript
复制
#chmod 600 /etc/vsftpd/vuser.db
在这里插入图片描述
在这里插入图片描述

2、创建FTP根目录以及虚拟用户映射的系统用户

#useradd -d /var/ftproot -s /sbin/nologin virtual

在这里插入图片描述
在这里插入图片描述

修改其用户组以及其他用户权限 #chmod -Rf 755 /var/ftproot/

在这里插入图片描述
在这里插入图片描述

3、创建虚拟用户的PAM认证文件 注意:参数db用于指向刚刚生成的vuser.db文件,但不要写后缀。

代码语言:javascript
复制
#vi   /etc/pam.d/vsftpd.vu
auth required pam_userdb.so  db=/etc/vsftpd/vuser
account required pam_userdb.so  db=/etc/vsftpd/vuser
在这里插入图片描述
在这里插入图片描述

4、修改vsftpd配置文件,以支持虚拟用户模式

代码语言:javascript
复制
anonymous_enable=NO	禁止匿名开放模式    第12行
local_enable=YES	允许本地用户模式        第16行
在这里插入图片描述
在这里插入图片描述

修改/etc/vsftpd/vsftpd.conf文件 修改,加上#注释符

代码语言:javascript
复制
#anon_upload_enable=YES     第29行
#anon_mkdir_write_enable=YES     第33行
在这里插入图片描述
在这里插入图片描述

在文件末行修改,添加

代码语言:javascript
复制
guest_enable=YES	开启虚拟用户模式
guest_username=virtual	指定虚拟用户帐号
pam_service_name=vsftpd.vu	指定pam文件     第125行只需要修改不需要添加
allow_writeable_chroot=YES	允许禁锢的FTP根目录可写而不拒绝用户登入请求
在这里插入图片描述
在这里插入图片描述

5、赋予虚拟用户权限 #mkdir /etc/vsftpd/vusers_dir/ //创建用户独立的权限配置文件存放的目录。

在这里插入图片描述
在这里插入图片描述

#修改FTP的配置文件 vi /etc/vsftpd/vsftpd.conf //指定用户独立的权限配置文件存放的目录。 在文件末行添加如下内容

代码语言:javascript
复制
user_config_dir=/etc/vsftpd/vusers_dir   
在这里插入图片描述
在这里插入图片描述

创建虚拟用户test1的权限配置文件,不输入内容则无任何权限

代码语言:javascript
复制
#touch  /etc/vsftpd/vusers_dir/test1
在这里插入图片描述
在这里插入图片描述

创建虚拟用户test2的权限配置文件,并添加上传,创建文件夹,和写入权限

代码语言:javascript
复制
#vi  /etc/vsftpd/vusers_dir/test2
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
在这里插入图片描述
在这里插入图片描述

重启vsftpd服务 #systemctl restart vsftpd

在这里插入图片描述
在这里插入图片描述

6、验证虚拟用户登陆,以及权限测试

在windows端打开CMD命令提示符,输入 ftp 192.168.100.20(你的FTP服务器地址)。如下 测试虚拟用户test1

在这里插入图片描述
在这里插入图片描述

测试虚拟用户test2

在这里插入图片描述
在这里插入图片描述
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019-06-14,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 关闭防火墙
  • 使用匿名 用户登陆
  • 匿名用户登陆可创建 修改等权限
  • 限制用户切换到主目录外
  • 使用虚拟用户登陆FTP服务器
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档