原文:http://blog.csdn.net/luoshao20120430/article/details/16900653

           http://blog.csdn.net/u010597230/article/details/53009034

Linux虚拟用户的创建:

useradd [用户名]这是能登录的
useradd -s /sbin/nologin [用户名]这是不能登录的
-s是指定shell环境的选项
验证的时候,假如当前是root账户,用su [你添加的用户名] ,就能验证了

 

虚拟用户:在Linux系统中一些用户是用来完成特定任务的,比如nobody和ftp 等,我们访问LinuxSir.Org 的网页程序,就是nobody用户;我们匿名访问ftp 时,会用到用户ftp或nobody ;如果您想了解Linux系统的一些帐号,请查看 /etc/passwd ;


“就是那些不能登陆系统的用户”

在本机上是不能登录,因为/home下没有user目录

 

在系统中,没有权限登录系统的用户一般也被称之为虚拟用户;虚拟用户也是要写进/etc/passwd中;

虚拟用户实际上就是去掉了登录SHELL权限的用户,他没有能力登录系统,但可以进行其他任何操作。

点击打开链接

安装ftp服务:参考上个博文http://blog.csdn.net/u010597230/article/details/53007798

  • 创建虚拟用户映射的本地用户及家目录

[root@iZ28ldgf0u6Z ~]#useradd -d /home/ftp yunwei2

  • 创建虚拟用户文件并生成db文件

[root@iZ28ldgf0u6Z ~]#vim passwd.txt

[root@iZ28ldgf0u6Z ~]#db_load -T -t hash -f ./passwd.txt /etc/vsftpd/passwd.db

[root@iZ28ldgf0u6Z ~]#chmod 600 passwd.db  赋予权限

  • 更改pam.d文件,默认其下已有vsftpd文件直接编辑更改

[root@iZ28ldgf0u6Z ~]#vim /etc/pam.d/vsftpd 注释掉内的所有行添加如下两行

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

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

##确认是lib下还是lib64下,根据实际情况确定,中间是tab而非空格##

  • 编辑vsftpd配置文件

      • anonymous_enable=NO

      • local_enable=YES

      • write_enable=YES

      • local_umask=022

      • dirmessage_enable=YES

      • xferlog_enable=YES

      • connect_from_port_20=YES

      • chown_uploads=YES

      • ftpd_banner=Welcome to blah FTP service.

      • chroot_local_user=YES

      • chroot_list_enable=YES

      • chroot_list_file=/etc/vsftpd/chroot_list

      • listen=YES

      • pam_service_name=vsftpd  pam文件名称要一致

      • userlist_enable=YES

      • tcp_wrappers=YES

      • guest_enable=YES       开启虚拟用户

      • guest_username=yunwei2   将虚拟用户映射到本地用户,和之上创建用户一致

      • user_config_dir=/etc/vsftp/aaa  虚拟用户配置文件目录

      • max_clients=100

      • max_per_ip=4

      • userlist_deny=YES

  • 设置虚拟用户配置文件

[root@iZ28ldgf0u6Z ~]#cd /etc/vsftp/aaa && vim aaa

      • local_root=/home/ftp

      • write_enable=YES

      • anon_umask=022

      • anon_world_readable_only=NO

      • anon_upload_enable=YES

      • anon_mkdir_write_enable=YES

      • anon_other_write_enable=YES

  • 重启服务登陆aaa用户

打开浏览器输入地址输入虚拟用户和密码即可

注意:此时无法使用资源管理器登陆

(转)linux 系统下虚拟用户的作用的更多相关文章

  1. linux系统下的用户文件句柄数限制

    linux系统下的用户文件句柄数限制 文章来源:企鹅号 为什么要修改用户打开的文件数 系统默认单个进程可以打开1024个文件,对于一些应用如tomcat.oracle等,运行时经常open成千上万个文 ...

  2. 05 Linux系统下的用户以及用户权限管理(权限管理介绍、用户管理、常见命令介绍)

    这一节我们介绍Linux的用户以及权限管理的前半段,包括:1.权限管理介绍: 2.用户管理: 3.常见命令 权限管理介绍 权限管理: 为了访问计算机资源,我们需要对其进行授权才能访问,根据什么东西来进 ...

  3. 记录linux系统下所有用户的操作信息

    在日常运维中,我们需要清楚服务器上每个用户登录后都做了哪些操作,我们需要记录下每个用户的操作命令.下面的内容设置可以实现在Linux下所有用户,不管是远程还是本地登陆,在本机的所有操作都会记录下来,并 ...

  4. linux系统下root用户和普通用户的时区不一致

    1. 发现这个问题是在root下执行 date -R 和 普通用户下执行 date -R,发现时区不一致 2. 在一些linux机器下,发现是一致的 3. 什么原因呢?找了半天,最后发现 时区一致的机 ...

  5. Linux系统下超级用户密码的修改

    1)重启系统:在虚拟机刚启动界面,不停地按上下键,停止系统的自动引导(界面底部有提示) 2) 按 e 进入编辑模式 3) 编辑内容如下:完成后按Ctrl+x    (具体编辑内容为下图:删除倒数第三行 ...

  6. 【Linux 命令】Linux系统下强制用户下线——who,pkill

    [日期]2014年11月18日 [平台]Centos 6.5 [工具]who pkill [步骤] 1)准备工作 以root身份登录. 2)执行who命令,查看有哪些用户已登录到当前主机

  7. linux系统下重要的分区及其作用

    下面列出来的是linux系统下重要的分区及其作用/bin :bin是binary的缩写;/boot :存放启动Linux时使用的一些核心文件;/root :root(超级管理员)的用户主目录;/sbi ...

  8. Linux系统下用户与组的管理

    Linux系统下用户与组的管理 一.用户及组基本概述 Linux 系统上,用户管理是基于用户名和密码的方式进行资源的分配. 1.uid(用户身份标识) (1)root用户 uid为0 (2)普通用户: ...

  9. Linux系统下给非root用户添加sudo权限

    Linux系统下给非root用户添加sudo权限 有时,在linux系统中非root用户运行sudo命令,会提示类似信息:  xxx is not in the sudoers file. This ...

随机推荐

  1. ElasticSearch logo 分布式搜索引擎 ElasticSearch

    原文来自:http://www.oschina.net/p/elasticsearch Elastic Search 是一个基于Lucene构建的开源,分布式,RESTful搜索引擎.设计用于云计算中 ...

  2. 机器学习:Jupyter Notebook中Matplotlib的使用

    一.matplotlib绘制折线图 matplotlib绘图的实质是折线图,将所有的点用直线连接起来,由于距离比较密,看起来像是个平滑的曲线: import matplotlib as mpl:加载m ...

  3. ss3

    1)执行如下命令,进行安装shadowsocks(命令需要一条条的输入,然后回车,执行完一条,在执行下一条命令),过程中可能会让你选择确认的地方,直接输入"y"回车即可: yum ...

  4. ng2-升级脚手架到最新版本

    //先卸载,后安装 npm uninstall -g @angular/cli npm cache clean npm install -g @angular/cli@latest

  5. C语言学习笔记--单引号和双引号

    (1)C 语言中单引号用来表示字符字面量(是个数值)被编译为对应的 ASCII 码 (2)C 语言中双引号用来表示字符串字面量(是个指针)被编译为对应的内存地址 例如:'a'表示字符字面量(97),在 ...

  6. 判断页面是在pc端打开还是在移动端打开

    在项目开发中会遇到在不同的设备中打开页面是不同的,比如: 我在手机中打开一个网站和pc打开一个网站,页面是不同的 具体实施如下 //判断打开网站的终端 var ua = window.navigato ...

  7. maven spring3.2.5

    出现的情形: 开发环境: spring3.2.5 + springmvc +spirngDATA +maven 一. 偶然的spring Junit4测试 加载applicationContext.x ...

  8. free查看内存情况

    free命令可以显示当前系统未使用的和已使用的内存数目,还可以显示被内核使用的内存缓冲区. free [option]     -b:以Byte为单位显示内存使用情况:      -k:以KB为单位显 ...

  9. 《精通Spring4.X企业应用开发实战》读后感第六章(内部工作机制、BeanDefinition、InstantiationStrategy、BeanWrapper)

  10. 1.从GUI到MVC

    GUI(graphic user interface 用户图形界面).GUI编程的目的是提供交互性,并根据用户的操作实时的更新界面.用户的操作是不可预知的鼠标和键盘事件,我们如何保持同步和更新?在上层 ...