温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

怎么在CentOS系统下创建和配置虚拟用户

发布时间:2021-08-03 17:44:56 来源:亿速云 阅读:193 作者:chen 栏目:系统运维

本篇内容主要讲解“怎么在CentOS系统下创建和配置虚拟用户”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么在CentOS系统下创建和配置虚拟用户”吧!

一、下载当前vsftp最新版本

   

代码如下:

wget ftp://vsftpd.beasts.org/users/cevans/vsftpd-2.3.4.tar.gz


二、安装前准备

1、创建虚拟用户映射的本地用户wwwftp

   

代码如下:

useradd wwwftp -d /data/www -s /sbin/nologin

2、创建自定义配置目录

   

代码如下:

mkdir -p /data/soft/vsftpd/conf
   mkdir -p /data/soft/vsftpd/bin
   mkdir -p /data/soft/vsftpd/lib
   mkdir -p /data/soft/vsftpd/user_conf
   mkdir -p /data/soft/vsftpd/empty
   mkdir -p /data/soft/vsftpd/logs
   mkdir -p /data/www
   mkdir -p /data/www/user1
   mkdir -p /data/www/user2

3、对自定义目录设置权限

   

代码如下:

chown -R wwwftp:www /data/www
   chmod -R 700 /data/soft/vsftpd/empty/
   chown -R wwwftp:wwwftp /data/soft/vsftpd/empty/

4、复制用于验证用户登录的库文件到自定义目录方便管理

   

代码如下:

cp /lib/security/pam_userdb.so /data/soft/vsftpd/lib/

5、安装所需软件

   

代码如下:

yum -y install gcc db4* pam*

三、解压安装vsftpd

   

代码如下:

tar zxvf vsftpd-2.3.4.tar.gz
   cd vsftpd-2.3.4

源码安装默认不支持tcp_wrappers和ssl

需要修改builddefs.h

   

代码如下:

/*默认值如下:*/
   #undef VSF_BUILD_TCPWRAPPERS  /*是否支持TCP WRAPPERS*/
   #define VSF_BUILD_PAM  /*是否支持自定义虚拟用户登录*/
   #undef VSF_BUILD_SSL  /*是否支持SSL传输*/
   /*支持则将对应项设为define,否则设为undef*/

编译vsftpd

   

代码如下:

make

查看编译的vsftpd二进制文件是否加载了pam

   

代码如下:

ldd vsftpd

如下:

   

代码如下:

[root@CentOS5 vsftpd-2.3.4]# ldd vsftpd
   linux-gate.so.1 =>  (0x00628000)
   libwrap.so.0 => /lib/libwrap.so.0 (0x00cee000)
   libnsl.so.1 => /lib/libnsl.so.1 (0x0015f000)
   libpam.so.0 => /lib/libpam.so.0 (0x00fc4000)
   libdl.so.2 => /lib/libdl.so.2 (0x007dc000)
   libresolv.so.2 => /lib/libresolv.so.2 (0x008d8000)
   libutil.so.1 => /lib/libutil.so.1 (0x00110000)
   libcap.so.1 => /lib/libcap.so.1 (0x00d99000)
   libc.so.6 => /lib/libc.so.6 (0x0029a000)
   libaudit.so.0 => /lib/libaudit.so.0 (0x00114000)
   /lib/ld-linux.so.2 (0x004a2000)

看到libpam.so.0 => /lib/libpam.so.0 (0x00fc4000)表示已成功加载pam认证模块

   

代码如下:

cp vsftpd /data/soft/vsftpd/bin

四、配置vsftpd

1、创建主配置文件

   

代码如下:

vi /data/soft/vsftpd/conf/vsftpd.conf

如下:

   

代码如下:

local_enable=YES
   anonymous_enable=NO
   anon_upload_enable=NO
   anon_other_write_enable=NO
   anon_mkdir_write_enable=NO
   ftpd_banner=Welcome to FTP service.
   listen=YES
   listen_port=21
   connect_from_port_20=YES
   nopriv_user=nobody
   tcp_wrappers=YES
   chroot_local_user=NO
   chroot_list_enable=YES
   chroot_list_file=/data/soft/vsftpd/chroot_list
   userlist_enable=yes
   userlist_deny=no
   userlist_file=/data/soft/vsftpd/allow
   dual_log_enable=YES
   vsftpd_log_file=/data/soft/vsftpd/logs/vsftpd.log
   xferlog_enable=YES
   xferlog_file=/data/soft/vsftpd/logs/xferlog
   pasv_enable=YES
   pasv_min_port=50000
   pasv_max_port=60000
   guest_enable=YES
   guest_username=wwwftp
   pam_service_name=vsftpd
   virtual_use_local_privs=YES
   use_localtime=YES
   user_config_dir=/data/soft/vsftpd/user_conf
   secure_chroot_dir=/data/soft/vsftpd/empty

2、创建允许登录ftp的用户文件

   

代码如下:

vi /data/soft/vsftpd/allow

如下:

   

代码如下:

user1
   user2

3、创建用于锁定用户目录的用户列表文件

   

代码如下:

vi /data/soft/vsftpd/chroot_list

如下

   

代码如下:

user1
   user2

4、配置vsftpd的pam认证模块(用于虚拟用户认证)

  

代码如下:

vi /etc/pam.d/vsftpd

如下

   

代码如下:

auth required /data/soft/vsftpd/lib/pam_userdb.so db=/data/soft/vsftpd/login
   account required /data/soft/vsftpd/lib/pam_userdb.so db=/data/soft/vsftpd/login

保存退出

5、创建用户名密码文本文件

   

代码如下:

vi /data/soft/vsftpd/login.txt

如下:一行用户名一行密码

   

代码如下:

user1
   123456
   user2
   654321

保存退出

6、用db_load生成用户数据库

   

代码如下:

db_load -T -t hash -f /data/soft/vsftpd/login.txt /data/soft/vsftpd/login.db
   chmod 600 /data/soft/vsftpd/login.db
   rm -rf /data/soft/vsftpd/login.txt

7、配置虚拟用户自定义配置文件

   

代码如下:

vi /data/soft/vsftpd/user_conf/user1

user1所有权限

   

代码如下:

local_root=/data/www/user1
   write_enable=YES
   local_umask=022

保存退出

   

代码如下:

vi /data/soft/vsftpd/user_conf/user2

user2只允许下载

   

代码如下:

local_root=/data/www/user2
   write_enable=NO
   download_enable=YES
   local_umask=022

保存退出

8、启动vsftpd服务

   

代码如下:

/data/soft/vsftpd/bin/vsftpd /data/soft/vsftpd/conf/vsftpd.conf &

五、测试
user1登录可读、写、删除、创建、修改一切权限
user2登录仅有下载权限
怎么在CentOS系统下创建和配置虚拟用户

到此,相信大家对“怎么在CentOS系统下创建和配置虚拟用户”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI