在CentOS系统下创建和配置虚拟用户的方法

2016-03-31 15:29 37 1 收藏

下面请跟着图老师小编一起来了解下在CentOS系统下创建和配置虚拟用户的方法,精心挑选的内容希望大家喜欢,不要忘记点个赞哦!

【 tulaoshi.com - 服务器 】

在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)

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/fuwuqi/)

  看到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只允许下载

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/fuwuqi/)

  代码如下:

  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登录仅有下载权限

2015624172810700.png (667×645)

来源:http://www.tulaoshi.com/n/20160331/2050633.html

延伸阅读
标签: 服务器
在CentOS系统上安装REMI仓库的方法   REMI 仓库提供了CentOS和RHEL的核心包的更新版本,尤其是最新的PHP/MySQL系列(LCTT 译注:当你需要一个更新包,而 CentOS/RHEL 没有及时提供更新时, REMI 仓库可以帮助你)。 安装REMI仓库要记住的一件事是不要在启用了REMI仓库时运行yum update。因为REMI仓库的包名与RHEL/CentOS中的相同...
标签: 电脑入门
1、 在屏幕左下角单击右键,选择神秘菜单中的磁盘管理: 2、在弹出的磁盘管理窗口中,选择操作菜单下的创建VHD: 3、在弹出的窗口中为虚拟磁盘指定存放的位置、大小、格式以及类型。 格式:VHD为早期的虚拟磁盘格式,最大可支持2T存储;VHDX为Windows 8中新出现的虚拟磁盘格式,最大可支持至64T,但是在之前版本系统中并不支持。 类...
标签: 服务器
在Hyper-V下安装CentOS Linux系统的网卡驱动   解决办法是安装微软提供的:Linux Integration Services Version v3.2 for Hyper-V工具(下载地址):下载下来之后是一个iso文档,挂着在linux的虚拟光驱下执行安装命令: 1. 下载微软虚拟机Linux集成服务包 Linux Integration Services v3.2 http://www.microsoft.com/zh-cn/d...
标签: 服务器
在Linux下创建分区和文件系统的方法详解   在 Linux 中创建分区或新的文件系统通常意味着一件事:安装 Gnome Parted 分区编辑器(GParted)。对于大多数 Linux 用户而言,这是唯一的办法。不过,你是否考虑过在终端创建这些分区和文件系统?当然可以!以下就是方法! 使用 CFdisk 创建一个基本的 Linux 分区 以下是如何在命令行...
VSFTPD是一种在UNIX/Linux中非常安全且快速的FTP服务器,目前已经被许多大型站点所采用。VSFTPD支持将用户名和口令保存在数据库文件或数据库服务器中。VSFTPD称这种形式的用户为虚拟用户。相对于FTP的本地(系统)用户来说,虚拟用户只是FTP服务器的专有用户,虚拟用户只能访问FTP服务器所提供的资源,这大大增强系统本身的安全性。相对于匿名...

经验教程

910

收藏

61
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部