linux 指定ftp根目录,linux解决ftp访问超时连接及用户指定只能访问根目录

步骤一:搭建FTP服务器

# 1.执行以下安装命令

yum install -y vsftpd

# 2.设置开机启动服务

chkconfig vsftpd on

# 3.启动服务

service vsftpd start

步骤二:FTP文件配置

进入vsftp.conf文件修改如下配置参数:vi /etc/vsftpd/vsftpd.conf

anonymous_enable=NO #是否允许匿名登录

主动登录

connect_from_port_20=YES #【解决访问ftp超时连接】

pasv_enable=NO #【解决ftp主动连接、被动连接的问题】

xferlog_file=/var/log/xferlog #日志

xferlog_std_format=YES

chroot_local_user=NO #【解决用户指定访问其根目录】

chroot_list_enable=YES

chroot_list_file=/etc/vsftpd/chroot_list #配置访问目录的用户 (在chroot_list 文件配置)

allow_writeable_chroot=YES #(重点 新添) 配置 读写权限

listen_ipv6=YES

local_root=/mnt/ftp_user #配置 用户的目录

步骤三:添加FTP用户

#增加用户test1,指向目录/var/www/html/test,禁止登录SSH权限

#添加用户,并配置根目录为 var/www/html/test 即是用户访问目录

useradd -d /var/www/html/test -s /sbin/nologin test1

#添加密码

passwd test123

#修改 var/www/html/test 目录的权限

chmod -R 755 /var/www/html/test

#改变文件拥有者和群组 (看文件的拥有着,不是test1就需要),同上务必加-R,让所有下级目录都有权限,否则会出现只有读不能写的情况。

chown -R test1:grouptest /var/www/html/test

步骤四:配置用户只能访问指定目录列表

#在chrootlist文件中添加用户访问指定目录 vi /etc/vsftpd/chroot_list

#添加test帐户至chrootlist列表中,最后重启vsftp服务让其配置生效:

service vsftpd restart

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
FTP服务器配置 VSFTP主配置文件路径:/etc/vsftpd/vsftpd.conf,重要参数: anonymous_enable=yes/no 是否允许匿名用户访问 anon_upload_enable=yes/no 是否允许匿名用户上传文件 anon_mkdir_write_enable=yes/no 是否允许匿名用户创建目录 anon_other_write_enable=yes/no 匿名用户和虚拟用户是否拥有删除权限 local_enable=yes/no 是否允许本地用户登陆 write_enable=yes/no 设置全局是否可写 anon_root=/var 指定匿名用户目录 chroot_local_user=yes 锁定所有用户用户主目录 chroot_list_enable=yes/no 锁定列表中的用户到主目录,需要配合下一参数使用 chroot_list_file=/etc/vsftpd/chroot_list 指定存储被锁定用户的列表文件位置 chown_uploads=yes/no 匿名用户上传所有者指定功能,需要与下一参数配合使用 chown_username=用户指定匿名用户上传文件的所有者 max_clients=300 最大客户端连接数为300 anon_max_rate=30000 匿名用户和虚拟用户限速为30K/S local_max_rate=30000 本地用户限速为30K/S max_per_ip=10 每个IP最大连接数 listen_port=22 更改监听端口 实现如下要求:允许匿名用户登陆,匿名用户限速为60K/S,只允许下载。监听端口为22,最大连接数为10。新建用户ftp1,限速为200K/S,允许上传下载删除新建文件夹进入目录/etc/vsftpd,用vi编辑器打开vsftpd.conf主配置文件: 直接添加以下选项: [root@LidadeFedora vsftpd]# service vsftpd restart 添加用户ftp1,设置登录脚本为 /sbin/nologin: vsftp默认目录为:/var/ftp,为方便测试,在/var/ftp下新建一个文件"testLocal",在"/var/ftp/pub"新建一个文件"testAnon"。 由于使用root用户新建文件,文件的所有者为root,所以需要把文件的权限设置为644其他用户才能读取该文件 设置/var/ftp/pub权限为777,表示所有用户均有读写权限. 由于端口22被ssh服务器占用,所以需要关闭ssh服务并重启vsftp服务。 客户端用Flashfxp测试:新建站点"VsftpTest",输入Vsftp服务器的IP地址,端口填22,用户名填ftp1,密码填你设置的密码,然后点击"连接"按钮: 由于没有使用选项:local_root,登陆本地用户时自动跳转到该用户的主目录.没有使用chroot_local_user=yes,所以本地用户可以浏览整个文件系统中他有权限读取的文件和文件夹: 切换到目录"/var/ftp/pub",该目录的权限为777,上传一个10M以上的文件,测试ftp1的上传速度: 新建文件夹和删除权限测试省略。下面测试匿名用户权限:勾选"匿名"选项并连接: 匿名用户登陆成功: 进入pub目录,尝试删除testAnon文件失败,说明这里是配置文件中的anon_other_write_enable=no生效了。最终权限等于配置文件中的权限和linux文件系统权限相或的结果。比如vsftp配置文件中允许匿名用户下载,但光这样是不够的,还需要被下载的文件或文件夹的能够被其他用户读取。 尝试上传文件失败,符合匿名用户只允许下载的要求: 最后测试匿名用户的下载速度: vsftp的配置
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值