热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

配置vsftpd时需要注意的一些问题

情景设计4:只允许本地用户访问自己的主目录,不能访问其他目录(关键字,chroot)[root@station12vsftpd]#manvsftpd.conf有问题多查查manual总是好的chroot_list_enableIfactivated,youmayprovidealistoflocaluserswhoar
情景设计4: 只允许本地用户访问自己的主目录,不能访问其他目录(关键字,chroot )

[root@station12 vsftpd]# man vsftpd.conf   有问题多查查manual总是好的
       chroot_list_enable
If activated, you may provide a list of local users who are placed in a chroot() jail  in  their  home
directory  upon  login.  The meaning is slightly different if chroot_local_user is set to YES. In this
case, the list becomes a list of users which are NOT to be placed in a chroot() jail.  By default, the
file   containing   this  list  is  /etc/vsftpd/chroot_list,  but  you  may  override  this  with  the
chroot_list_file setting.

Default: NO

       chroot_local_user
If set to YES, local users will be (by default) placed in a chroot()  jail  in  their  home  directory
after login.  Warning: This option has security implications, especially if the users have upload per-
mission, or shell access. Only enable if you know what you are doing.  Note that these security impli-
cations  are  not  vsftpd  specific.  They  apply to all FTP daemons which offer to put local users in
chroot() jails.

Default: NO

chroot_list_enable如果设置是YES,但chroot_local_user没有设置为YES,则所有在/etc/vsftpd/chroot_list中定义的用户会进入 chroot环境
,如果两者都设置是yes,则是本地用户,但不在/etc/vsftpd/chroot_list中定义的用户才进入chroot环境
/etc/vsftpd/chroot_list这个文件默认是不存在的呵!

验证

[root@station12 vsftpd]# useradd a
[root@station12 vsftpd]# useradd b
[root@station12 vsftpd]# passwd a
Changing password for user a.
New UNIX password:
BAD PASSWORD: it is WAY too short
Retype new UNIX password:
passwd: all authentication tokens updated successfully.
[root@station12 vsftpd]# passwd b
Changing password for user b.
New UNIX password:
BAD PASSWORD: it is WAY too short
Retype new UNIX password:
passwd: all authentication tokens updated successfully.
[root@station12 vsftpd]#

以上添加了两个用户a和b
-------------------------------------------------------------------------------------------------------------------------------------------

[root@station12 vsftpd]# echo a > chroot_list
[root@station12 vsftpd]# cat chroot_list
a
[root@station12 vsftpd]# ll chroot_list
-rw-r--r-- 1 root root 2 Jan  6 17:07 chroot_list
[root@station12 vsftpd]# cp vsftpd.conf vsftpd.4
[root@station12 vsftpd]# vi vsftpd.conf
[root@station12 vsftpd]# diff vsftpd.conf vsftpd.4
92d91
[root@station12 vsftpd]#
[root@station12 vsftpd]# service vsftpd restart
Shutting down vsftpd:                                      [  OK  ]
Starting vsftpd for vsftpd:                                [  OK  ]
[root@station12 vsftpd]#

设置让本地用户都进入chroot环境

--------------------------------------------------------------------------------------------------------------------------------------------

[root@localhost vsftpd]# ftp station12
Connected to station12.example.com.
220 (vsFTPd 2.0.5)
530 Please login with USER and PASS.
530 Please login with USER and PASS.
KERBEROS_V4 rejected as an authentication type
Name (station12:root): a
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> pwd
257 "/"
ftp> cd /var/ftp
550 Failed to change directory.
ftp>

注意上面显示是的是/

----------------------------------------------------------------------------------------------------------------------------

[root@station12 vsftpd]# service vsftpd restart
Shutting down vsftpd:                                      [  OK  ]
Starting vsftpd for vsftpd:                                [  OK  ]
[root@station12 vsftpd]# cp vsftpd.conf vsftpd.5
[root@station12 vsftpd]# vi vsftpd.conf
[root@station12 vsftpd]# diff vsftpd.conf vsftpd.5
96c96
---
> #chroot_list_enable=YES
98c98
---
> #chroot_list_file=/etc/vsftpd/chroot_list
[root@station12 vsftpd]# service vsftpd restart
Shutting down vsftpd:                                      [  OK  ]
Starting vsftpd for vsftpd:                                [  OK  ]
[root@station12 vsftpd]#

让chroot_local_user和    chroot_list_enable都设置成YES看看

[root@localhost vsftpd]# ftp station12
Connected to station12.example.com.
220 (vsFTPd 2.0.5)
530 Please login with USER and PASS.
530 Please login with USER and PASS.
KERBEROS_V4 rejected as an authentication type
Name (station12:root): a
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> pwd
257 "/home/a"                                 <=======用户a是本地用户,但在chroot_list中有定义,因此不会chroot的
ftp> cd /var/ftp
250 Directory successfully changed.
ftp> user b
500 Unknown command.
Login failed.
ftp> bye
221 Goodbye.
[root@localhost vsftpd]# ftp station12
Connected to station12.example.com.
220 (vsFTPd 2.0.5)
530 Please login with USER and PASS.
530 Please login with USER and PASS.
KERBEROS_V4 rejected as an authentication type
Name (station12:root): b
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> pwd
257 "/"
ftp>


推荐阅读
  • 丽江客栈选择问题
    本文介绍了一道经典的算法题,题目涉及在丽江河边的n家特色客栈中选择住宿方案。两位游客希望住在色调相同的两家客栈,并在晚上选择一家最低消费不超过p元的咖啡店小聚。我们将详细探讨如何计算满足条件的住宿方案总数。 ... [详细]
  • 本文介绍了数据库体系的基础知识,涵盖关系型数据库(如MySQL)和非关系型数据库(如MongoDB)的基本操作及高级功能。通过三个阶段的学习路径——基础、优化和部署,帮助读者全面掌握数据库的使用和管理。 ... [详细]
  • Coursera ML 机器学习
    2019独角兽企业重金招聘Python工程师标准线性回归算法计算过程CostFunction梯度下降算法多变量回归![选择特征](https:static.oschina.n ... [详细]
  • 本文深入分析了 USDC 的稳定性和可能的救援措施,探讨了在硅谷银行破产后 USDC 面临的风险以及行业内的反应。 ... [详细]
  • 基于Node.js、Express、MongoDB和Socket.io的实时聊天应用开发
    本文详细介绍了使用Node.js、Express、MongoDB和Socket.io构建的实时聊天应用程序。涵盖项目结构、技术栈选择及关键依赖项的配置。 ... [详细]
  • 本文介绍如何使用PHP在WordPress中根据分类类别ID或名称获取所有相关文章,提供详细的方法和代码示例。 ... [详细]
  • 本题来自WC2014,题目编号为BZOJ3435、洛谷P3920和UOJ55。该问题描述了一棵不断生长的带权树及其节点上小精灵之间的友谊关系,要求实时计算每次新增节点后树上所有可能的朋友对数。 ... [详细]
  • This request pertains to exporting the hosted_zone_id attribute associated with the aws_rds_cluster resource in Terraform configurations. The absence of this attribute can lead to issues when integrating DNS records with Route 53. ... [详细]
  • 全面解析运维监控:白盒与黑盒监控及四大黄金指标
    本文深入探讨了白盒和黑盒监控的概念,以及它们在系统监控中的应用。通过详细分析基础监控和业务监控的不同采集方法,结合四个黄金指标的解读,帮助读者更好地理解和实施有效的监控策略。 ... [详细]
  • 嵌入式开发环境搭建与文件传输指南
    本文详细介绍了如何为嵌入式应用开发搭建必要的软硬件环境,并提供了通过串口和网线两种方式将文件传输到开发板的具体步骤。适合Linux开发初学者参考。 ... [详细]
  • 解决TensorFlow CPU版本安装中的依赖问题
    本文记录了在安装CPU版本的TensorFlow过程中遇到的依赖问题及解决方案,特别是numpy版本不匹配和动态链接库(DLL)错误。通过详细的步骤说明和专业建议,帮助读者顺利安装并使用TensorFlow。 ... [详细]
  • 本文详细介绍了在XAMPP环境中如何修改Apache和MySQL的默认端口号,并确保WordPress能够正常访问。同时,提供了针对Go语言社区和Golang开发者的相关建议。 ... [详细]
  • 本文探讨了如何通过预处理器开关选择不同的类实现,并解决在特定情况下遇到的链接器错误。 ... [详细]
  • 《蝴蝶之吻》:Bob Carlisle的深情献礼
    美国抒情乡村歌手Bob Carlisle在他女儿Brooke十六岁生日前夕,目睹她即将展翅高飞,心中感慨万千。他以这首《Butterfly Kisses》表达了对女儿无尽的父爱与美好回忆。 ... [详细]
  • 深入解析Serverless架构模式
    本文将详细介绍Serverless架构模式的核心概念、工作原理及其优势。通过对比传统架构,探讨Serverless如何简化应用开发与运维流程,并介绍当前主流的Serverless平台。 ... [详细]
author-avatar
哎自己哈
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有