rhel5.5建立Vsftpd虚拟用户

2024-04-04 18:48

本文主要是介绍rhel5.5建立Vsftpd虚拟用户,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

本文是假设你已经安装vsftpd

没安装请下载rpm包安装

1、创建虚拟用户文件login.txt

[root@localhost ~]# vim login.txt

奇数行为用户名,偶数行为密码。

test
test

给此文件设置600权限

[root@localhost ~]#chmod 600 login.txt

查看是否安装[   ] db4-utils-4.3.29-10.el5.i386.rpm

[root@localhost ~]# rpm -qa | grep db4-utils
db4-utils-4.3.29-10.el5

 

没有则点击下载它并安装:

rpm -ivh db4-utils-4.3.29-10.el5.i386.rpm

下面使用db_load命令生成虚拟用户口令认证文件。

生成一个hash码型的数据库文件供ftp虚拟用户使用。

[root@localhost ~]#db_load -T -t hash -f /etc/vsftpd/virtusers /etc/vsftpd/vsftpd_login.db

设置600权限

[root@localhost ~]#chmod 600 /etc/vsftpd/vsftpd_login.db

 

2、配置PAm文件

修改/etc/pam.d/vsftpd添加尾部两行内容如下:(其他内容请注释)


#%PAM-1.0
#session    optional     pam_keyinit.so    force revoke
#auth       required    pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed
#auth       required    pam_shells.so
#auth       include     system-auth
#account    include     system-auth
#session    include     system-auth
#session    required     pam_loginuid.so
auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
account required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

 

 

注:

(x86_64)

auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

 

3、建立本地映射用户并设置宿主目录权限

所有的FTP虚拟用户需要使用一个系统用户,这个系统用户不需要密码,不需要本地shell。

[root@localhost ~]#useradd -s /sbin/nologin ftpsite(也可以-d 改变主目录)

 

4、配置vsftpd.conf

[root@localhost ~]#vim /etc/vsftpd/vsftpd.conf

anonymous_enable=NO   //禁止匿名用户访问

chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list  //设置chroot_local_user=YES后,该文件内部制定的用户会被限制在帐号的Home目录
chroot_local_user=YES   //以上设置chroot功能,使整体ftp更安全

guest_enable=YES   //开启虚拟用户

guest_username=virtuser   //FTP虚拟用户对应的系统用户

pam_service_name=vsftpd //PAM认证文件

user_config_dir=/etc/vsftpd/virtual   //用户配置文件存放目录

pasv_min_port=30000
pasv_max_port=30999

创建chroot_list空文件(chroot功能需设置)

[root@localhost ~]#touch /etc/vsftpd/chroot_list

5、重启vsftpd服务

[root@localhost ~]#service vsftpd restart

6,设置selinux

[root@localhost ~]#setsebool -P ftpd_disable_trans  on

没设置会出现

vsftp连接时的"500 OOPS:cannot change directory:/root"错误

7、设置防火墙

添加防火墙规则

vim /etc/sysconfig/iptables

-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 30000:30999 -j ACCEPT

重启 防火墙

service iptables restart

一切OK

这篇关于rhel5.5建立Vsftpd虚拟用户的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/876572

相关文章

C++链表的虚拟头节点实现细节及注意事项

《C++链表的虚拟头节点实现细节及注意事项》虚拟头节点是链表操作中极为实用的设计技巧,它通过在链表真实头部前添加一个特殊节点,有效简化边界条件处理,:本文主要介绍C++链表的虚拟头节点实现细节及注... 目录C++链表虚拟头节点(Dummy Head)一、虚拟头节点的本质与核心作用1. 定义2. 核心价值二

mysql查询使用_rowid虚拟列的示例

《mysql查询使用_rowid虚拟列的示例》MySQL中,_rowid是InnoDB虚拟列,用于无主键表的行ID查询,若存在主键或唯一列,则指向其,否则使用隐藏ID(不稳定),推荐使用ROW_NUM... 目录1. 基本查询(适用于没有主键的表)2. 检查表是否支持 _rowid3. 注意事项4. 最佳实

SpringSecurity显示用户账号已被锁定的原因及解决方案

《SpringSecurity显示用户账号已被锁定的原因及解决方案》SpringSecurity中用户账号被锁定问题源于UserDetails接口方法返回值错误,解决方案是修正isAccountNon... 目录SpringSecurity显示用户账号已被锁定的解决方案1.问题出现前的工作2.问题出现原因各

MySQL 用户创建与授权最佳实践

《MySQL用户创建与授权最佳实践》在MySQL中,用户管理和权限控制是数据库安全的重要组成部分,下面详细介绍如何在MySQL中创建用户并授予适当的权限,感兴趣的朋友跟随小编一起看看吧... 目录mysql 用户创建与授权详解一、MySQL用户管理基础1. 用户账户组成2. 查看现有用户二、创建用户1. 基

SpringBoot3中使用虚拟线程的完整步骤

《SpringBoot3中使用虚拟线程的完整步骤》在SpringBoot3中使用Java21+的虚拟线程(VirtualThreads)可以显著提升I/O密集型应用的并发能力,这篇文章为大家介绍了详细... 目录1. 环境准备2. 配置虚拟线程方式一:全局启用虚拟线程(Tomcat/Jetty)方式二:异步

Mysql中的用户管理实践

《Mysql中的用户管理实践》:本文主要介绍Mysql中的用户管理实践,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录13. 用户管理13.1 用户 13.1.1 用户信息 13.1.2 创建用户 13.1.3 删除用户 13.1.4 修改用户

Linux网络配置之网桥和虚拟网络的配置指南

《Linux网络配置之网桥和虚拟网络的配置指南》这篇文章主要为大家详细介绍了Linux中配置网桥和虚拟网络的相关方法,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 一、网桥的配置在linux系统中配置一个新的网桥主要涉及以下几个步骤:1.为yum仓库做准备,安装组件epel-re

详解如何在SpringBoot控制器中处理用户数据

《详解如何在SpringBoot控制器中处理用户数据》在SpringBoot应用开发中,控制器(Controller)扮演着至关重要的角色,它负责接收用户请求、处理数据并返回响应,本文将深入浅出地讲解... 目录一、获取请求参数1.1 获取查询参数1.2 获取路径参数二、处理表单提交2.1 处理表单数据三、

CentOS和Ubuntu系统使用shell脚本创建用户和设置密码

《CentOS和Ubuntu系统使用shell脚本创建用户和设置密码》在Linux系统中,你可以使用useradd命令来创建新用户,使用echo和chpasswd命令来设置密码,本文写了一个shell... 在linux系统中,你可以使用useradd命令来创建新用户,使用echo和chpasswd命令来设

SpringBoot UserAgentUtils获取用户浏览器的用法

《SpringBootUserAgentUtils获取用户浏览器的用法》UserAgentUtils是于处理用户代理(User-Agent)字符串的工具类,一般用于解析和处理浏览器、操作系统以及设备... 目录介绍效果图依赖封装客户端工具封装IP工具实体类获取设备信息入库介绍UserAgentUtils