热门标签 | HotTags
当前位置:  开发笔记 > 程序员 > 正文

ProFTPd创建虚拟用户并设置密码

(1)首先在源码安装目录复制ftpasswd文件#cd/srv/proftpd-1.3.2/contrib(源码目录)#cpftpasswd/usr/local/proftpd/bin/#chmod+x/usr/local/proftpd/bin/*#cd/usr/local/proftpd#mkdirvirtual_

(1) 首先在源码安装目录复制ftpasswd文件

# cd /srv/proftpd-1.3.2/contrib(源码目录)

# cp ftpasswd /usr/local/proftpd/bin/

# chmod +x /usr/local/proftpd/bin/*

# cd /usr/local/proftpd

# mkdir virtual_user_home

(2) 创建虚拟用户和组
#/usr/local/proftpd/bin/ftpasswd --passwd --name=caiwu --uid=2000 --home=/usr/local/proftpd/virtual_user_home/caiwu --shell=/sbin/nologin --file=/usr/local/proftpd/etc/passwd

#/usr/local/proftpd/bin/ftpasswd --passwd --name=renshi --uid=2001 --home=/usr/local/proftpd/virtual_user_home/renshi --shell=/sbin/nologin --file=/usr/local/proftpd/etc/passwd

#/usr/local/proftpd/bin/ftpasswd --passwd --name=yunying --uid=2002 --home=/usr/local/proftpd/virtual_user_home/yunying --shell=/sbin/nologin --file=/usr/local/proftpd/etc/passwd

#/usr/local/proftpd/bin/ftpasswd --passwd --name=admin --uid=2003 --home=/usr/local/proftpd/virtual_user_home/admin --shell=/sbin/nologin --file=/usr/local/proftpd/etc/passwd

#/usr/local/proftpd/bin/ftpasswd --passwd --name=caiwu --uid=2001 --home=/usr/local/proftpd/virtual_user_home/caiwu --shell=/sbin/nologin --file=/usr/local/proftpd/etc/passwd

#/usr/local/proftpd/bin/ftpasswd --passwd --name=caiwu --uid=2001 --home=/usr/local/proftpd/virtual_user_home/caiwu --shell=/sbin/nologin --file=/usr/local/proftpd/etc/passwd

#/usr/local/proftpd/bin/ftpasswd --passwd --name=caiwu --uid=2001 --home=/usr/local/proftpd/virtual_user_home/caiwu --shell=/sbin/nologin --file=/usr/local/proftpd/etc/passwd

#/usr/local/proftpd/bin/ftpasswd --passwd --name=caiwu --uid=2001 --home=/usr/local/proftpd/virtual_user_home/caiwu --shell=/sbin/nologin --file=/usr/local/proftpd/etc/passwd

#/usr/local/proftpd/bin/ftpasswd --passwd --name=caiwu --uid=2001 --home=/usr/local/proftpd/virtual_user_home/caiwu --shell=/sbin/nologin --file=/usr/local/proftpd/etc/passwd

#/usr/local/proftpd/bin/ftpasswd --group --name=virtual --gid=3000 --member=99 --member=100 --file=/usr/local/proftpd/etc/group

建立一个名为caiwu的用户,默认目录为

/usr/local/proftpd/virtual_user_home/caiwu

各个参数的意义如下

?passwd指定建立一个新的虚拟用户,?group则建立一个虚拟组;

?file指定存储虚拟用户的文件;

?name指定此虚拟用户用户名,密码会在命令执行时要求输入;

?uid指定此虚拟用户对应的系统用户UID,此虚拟用户将以此系统UID的身份读写文件;

?home指定此虚拟用户的根目录,就是其登陆FTP后的根目录;

?shell指定此虚拟用户的shell,为了安全当然指定一个不可登陆的shell了

(3) proftpd.conf的配置文件,添加几项:
#关闭pam认证只使用文件认证
PersistentPasswd off                   ~
#只启用虚拟用户的验证,不用/etc/passwd中的用户
AuthOrder mod_auth_file.c
#定义虚拟用户的信息保存的文件
AuthUserFile /usr/local/proftpd/etc/passwd

#定义虚拟用户组的信息保存的文件

AuthGroupFile /usr/local/proftpd/etc/group
#不检测虚拟用户是否有可使用的shell,因为在定义虚拟用户的时候,shell是s=/bin/false,所以一定要设置为off,不然虚拟用户无法登陆
RequireValidShell off

(4) 重启应用


推荐阅读
  • 本文介绍了新款奇骏的两个让人上瘾的功能,分别是智能互联系统和BOSE音响。通过对新款奇骏的配置和功能进行评测,探讨了这两个新增功能的使用体验和优势。此外,还介绍了新款奇骏的其他配置和改进,如增加的座椅和驾驶辅助系统,以及内饰的舒适性提升。对于喜欢音响的消费者来说,BOSE音响的升级也是一个亮点。最后,文章提到了BOSE音响的数字还原能力,以及7座版无法配备BOSE音响的原因。 ... [详细]
  • 本文介绍了adg架构设置在企业数据治理中的应用。随着信息技术的发展,企业IT系统的快速发展使得数据成为企业业务增长的新动力,但同时也带来了数据冗余、数据难发现、效率低下、资源消耗等问题。本文讨论了企业面临的几类尖锐问题,并提出了解决方案,包括确保库表结构与系统测试版本一致、避免数据冗余、快速定位问题等。此外,本文还探讨了adg架构在大版本升级、上云服务和微服务治理方面的应用。通过本文的介绍,读者可以了解到adg架构设置的重要性及其在企业数据治理中的应用。 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • 本文详细介绍了华为4GLTE路由器B310的外置天线安装和设置方法。通过连接电源和网线,输入路由器的IP并登陆设置页面,选择手动设置和手动因特网设置,输入ISP提供商的用户名和密码,并设置MTU值。同时,还介绍了无线加密的设置方法。最后,将外网线连在路由器的WAN口即可使用。 ... [详细]
  • 本文讨论了前端工程化的准备工作,主要包括性能优化、安全防护和监控等方面需要注意的事项。通过系统的答案,帮助前端开发者更好地进行工程化的准备工作,提升网站的性能、安全性和监控能力。 ... [详细]
  • Java String与StringBuffer的区别及其应用场景
    本文主要介绍了Java中String和StringBuffer的区别,String是不可变的,而StringBuffer是可变的。StringBuffer在进行字符串处理时不生成新的对象,内存使用上要优于String类。因此,在需要频繁对字符串进行修改的情况下,使用StringBuffer更加适合。同时,文章还介绍了String和StringBuffer的应用场景。 ... [详细]
  • MyBatis错题分析解析及注意事项
    本文对MyBatis的错题进行了分析和解析,同时介绍了使用MyBatis时需要注意的一些事项,如resultMap的使用、SqlSession和SqlSessionFactory的获取方式、动态SQL中的else元素和when元素的使用、resource属性和url属性的配置方式、typeAliases的使用方法等。同时还指出了在属性名与查询字段名不一致时需要使用resultMap进行结果映射,而不能使用resultType。 ... [详细]
  • 本文介绍了Web学习历程记录中关于Tomcat的基本概念和配置。首先解释了Web静态Web资源和动态Web资源的概念,以及C/S架构和B/S架构的区别。然后介绍了常见的Web服务器,包括Weblogic、WebSphere和Tomcat。接着详细讲解了Tomcat的虚拟主机、web应用和虚拟路径映射的概念和配置过程。最后简要介绍了http协议的作用。本文内容详实,适合初学者了解Tomcat的基础知识。 ... [详细]
  • 如何修改路由器密码?路由器登录密码和无线密码的修改方法
    本文介绍了修改路由器密码的两种方法:一是修改路由器登录口令,需要进入路由器后台进行操作;二是修改无线连接密码,通过进入路由器后台的无线设置和无线安全设置进行修改。详细步骤包括复位处理、登录路由器后台、选择系统工具、填入用户名和用户密码、保存修改等。 ... [详细]
  • 本文介绍了2019年上半年内蒙古计算机软考考试的报名通知和考试时间。考试报名时间为3月1日至3月23日,考试时间为2019年5月25日。考试分为高级、中级和初级三个级别,涵盖了多个专业资格。报名采取网上报名和网上缴费的方式进行,报考人员可登录内蒙古人事考试信息网进行报名。详细内容请点击查看。 ... [详细]
  • Tomcat/Jetty为何选择扩展线程池而不是使用JDK原生线程池?
    本文探讨了Tomcat和Jetty选择扩展线程池而不是使用JDK原生线程池的原因。通过比较IO密集型任务和CPU密集型任务的特点,解释了为何Tomcat和Jetty需要扩展线程池来提高并发度和任务处理速度。同时,介绍了JDK原生线程池的工作流程。 ... [详细]
  • 本文介绍了作者在开发过程中遇到的问题,即播放框架内容安全策略设置不起作用的错误。作者通过使用编译时依赖注入的方式解决了这个问题,并分享了解决方案。文章详细描述了问题的出现情况、错误输出内容以及解决方案的具体步骤。如果你也遇到了类似的问题,本文可能对你有一定的参考价值。 ... [详细]
  • 本文介绍了Java高并发程序设计中线程安全的概念与synchronized关键字的使用。通过一个计数器的例子,演示了多线程同时对变量进行累加操作时可能出现的问题。最终值会小于预期的原因是因为两个线程同时对变量进行写入时,其中一个线程的结果会覆盖另一个线程的结果。为了解决这个问题,可以使用synchronized关键字来保证线程安全。 ... [详细]
  • 有没有一种方法可以在不继承UIAlertController的子类或不涉及UIAlertActions的情况下 ... [详细]
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
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社区 版权所有