二、VSFTP服务器的安装配置本文的服务器架构: FTP服务端:xiaolyu10 IP:192.168.31.10 FTP客户端:xiaolyu11 IP:192.168.31.11 1. 安装:yum安装或rpm安装均可。 [root@xiaolyu10 ~]# yum install vsftp [root@xiaolyu11 ~]# yum -y install lftp 2. 配置文件:[root@xiaolyu10 ~]# ls -l /etc/vsftpd /etc/vsftpd/vsftpd.conf:vsftpd 的核心配置文件 /etc/vsftpd/ftpusers:用于指定哪些用户不能访问FTP 服务器。 黑名单 /etc/vsftpd/user_list:指定允许使用vsftpd 的用户列表文件。 白名单 vim /etc/vsftpd/user_list # 如果userlist_deny= YES(默认),绝不允许在这个文件中的用户登录ftp,甚至不提示输入密码 #prompt 提示 /etc/vsftpd/vsftpd_conf_migrate.sh:是vsftpd 操作的一些变量和设置脚本 /var/ftp/:默认情况下匿名用户的根目录 三、VSFTP服务器实战实战1:公司技术部准备搭建一台功能简单的FTP 服务器,允许所有员工上传和下载文件,并允许创建用户自己的目录。 分析: 允许所有员工上传和下载文件需要设置成允许匿名用户登录并且需要将允许匿名用户上传功能 开启, anon_mkdir_write_enable 字段可以控制是否允许匿名用户创建目录。 备份原配置文件: [root@xiaolyu10 vsftpd]# cp vsftpd.conf vsftpd.conf_bak [root@xiaolyu10 ~]# vim /etc/vsftpd/vsftpd.conf 允许匿名用户访问 anonymous_enable=YES 允许匿名用户上传文件并可以创建目录 anon_upload_enable=YES anon_mkdir_write_enable=YES
启动服务: [root@xiaolyu10 ~]# service vsftpd restart [root@xiaolyu10 pub]# chown ftp.ftp /var/ftp/pub/ 然后测试,是可以新建文件夹了,但是不能重命名,不能删除!
[root@xiaolyu10 ~]# mkdir /var/ftp/xiaolyudata 重启服务: [root@xiaolyu10 ~]# service vsftpd restart 现在匿名上传的文件是禁止删除的。
这样匿名用户的上传就算成功了 注:工作中,匿名用户只是只读访问,写的权限也没有的。 补充: 如果想让匿名用户可以重命名或者删除的权限,添加如下一条配置参数: 重启服务: [root@xiaolyu10 ~]# service vsftpd restart 根据提示,说明我刚才添加的那一行匿名写权限的参数有问题 [root@xiaolyu10 ~]# vim /etc/vsftpd/vsftpd.conf 也就是说参数后面不能有多余的空格。 重新启动就可以对重新命名和删除文件夹了, 匿名用户就可以删除和修改,非常不安全,慎重使用这个参数。 注意,默认匿名用户家目录的权限是755,这个权限是不能改变的。切记! [root@xiaolyu10 ~]# service vsftpd restart
实战2:公司内部现在有一台FTP 和WEB 服务器,FTP 的功能主要用于维护公司的网站内容,包括上传文件、创建目录、更新网页等等。公司现有两个部门负责维护任务,他们分别适用team1 和team2帐号进行管理。先要求仅允许team1 和team2 帐号登录FTP 服务器,但不能登录本地系统,并将这两个帐号的根目录限制为/var/www/html,不能进入该目录以外的任何目录。 ftp 和www web服务器相结合。 www web服务器根目录: /var/www/html 只允许:team1和team2两用户 可以上传。 vsftp禁止匿名。 分析: 将FTP 和WEB 服务器做在一起是企业经常采用的方法,这样方便实现对网站的维护,为了增强安全性,首先需要使用仅允许本地用户访问,并禁止匿名用户登录。其次使用chroot 功能将team1和team2 锁定在/var/www/html 目录下。如果需要删除文件则还需要注意本地权限 解决方案: (1)建立维护网站内容的ftp 帐号team1 和team2 并禁止本地登录,然后设置其密码 [root@xiaolyu10 ~]# useradd -s /sbin/nologin team1 2)配置vsftpd.conf 主配置文件并作相应修改 [root@xiaolyu10 vsftpd]# cp vsftpd.conf_bak vsftpd.conf #anonymous_enable=YES
继续将: 修改为: local_root=/var/www/html:设置本地用户的根目录为/var/www/html chroot_list_file=/etc/vsftpd/chroot_list:设置锁定用户在根目录中的列表文件。此文件存放要锁定的用户名 保存退出 (3)建立/etc/vsftpd/chroot_list 文件,添加team1 和team2 帐号 [root@xiaolyu10 vsftpd]# touch /etc/vsftpd/chroot_list team1 team2 (4)重启vsftpd 服务使配置生效 service vsftpd restart (5)修改本地权限 [root@xiaolyu10 vsftpd]# mkdir -p /var/www/html/ (6).测试:
[root@xiaolyu11 ~]# lftp 192.168.31.10 -uteam1,123456
如果通过FileZilla访问出现550 Create directory operation failed 错误,则需要修改selinux 执行以下命令查看状态: [root@bogon ~]# getsebool -a | grep ftp 返回的结果看到两行都是off,代表,没有开启外网的访问 [root@bogon ~]# setsebool -P ftpd_full_access on [root@bogon ~]# setsebool -P tftp_home_dir on
|
Linux 安装配置vsftp服务
最新推荐文章于 2024-05-31 23:15:40 发布