映射个虚拟用户

创建个用户,不让他登录

useradd virftp -s /sbin/nologin

创建存放虚拟用户用户和密码的文件

vim /etc/vsftpd/vsftpd_login

写入

test1
111222aaa
test2
aaa111ddd

给这个文件授权,

chmod  /etc/vsftpd/vsftpd_login

vsfptd 使用的密码文件肯定不是明文的,需要生成对应的库文件

db_load -T -t hash -f /etc/vsftpd/vsftpd_login /etc/vsftpd/vsftpd_login.db

创建虚拟账号

创建虚拟账号配置文件存放目录

mkdir /etc/vsftpd/vsftpd_user_conf
cd !$

创建和用户名对应的配置文件

vim test1

添加

local_root=/home/virftp/test1
anonymous_enable=NO
write_enable=YES
local_umask=
anon_upload_enable=NO
anon_mkdir_write_enable=NO
idle_session_timeout=
data_connection_timeout=
max_clients=
max_per_ip=
local_max_rate=

local_root 该用户的家目录

anonymous_enable用来限制/允许匿名账号登录,no为不允许

write_enable=YES 表示可写

local_umask 指定 umask 值

anon_upload_enable 是否允许匿名账号上传文件

anon_mkdir_write_enable 是否允许匿名账号可写

创建该用户的家目录,更改所属主和所属组

mkdir /home/virftp/test1
chown -R virftp:virftp /home/virftp/test1

修改认证相关的配置文件

vim /etc/pam.d/vsftpd

在最开头添加两行

auth sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
account sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

Linux 为 32 位系统,库文件路径为/lib/security/pam_userdb.so

系统为 64,库文件是在/lib64/security/pam_userdb.so

修改全局配置文件

vim /etc/vsftpd/vsftpd.conf

anonymous_enable=YES改为anonymous_enable=NO 匿名用户是否可登录

local_enable=YES改为local_enable=NO 本地用户是否可登录,如果虚拟机改为YES

#anon_upload_enable=YES改为anon_upload_enable=NO 匿名用户是否可上传

#anon_mkdir_write_enable=YES改为anon_mkdir_write_enable=NO 匿名用户是否运行创建写入

在最后添加

guest_enable=YES
guest_username=virftp
virtual_use_local_privs=YES
user_config_dir=/etc/vsftpd/vsftpd_user_conf

重启vsftpd

/etc/init.d/vsftpd restart

测试

如果忘了密码 查看一下test1的密码

cat /etc/vsftpd/vsftpd_login

在家目录创建个文件和目录

mkdir /home/virftp/test1/
touch /home/virftp/test1/.txt

登录

lftp test1@127.0.0.1

可以浏览器输入

ftp://192.168.1.117/

输入账号密码

进入ftp

部署和调优 1.6 vsftp部署和优化-2的更多相关文章

  1. 部署和调优 1.5 vsftp部署和优化-1

    系统自带的ftp服务软件.vsftpd 安装vsftpd yum install -y vsftpd 启动vsftpd /etc/init.d/vsftpd start 如果启动失败,可能是端口被占用 ...

  2. 部署和调优 2.5 tomcat配置和优化

    配置文件 vim /usr/local/tomcat/conf/server.xml 修改 <Connector port=" protocol="HTTP/1.1" ...

  3. 部署和调优 1.9 samba 部署和优化-3

    实践2 要求:共享一个目录,使用用户名和密码登录后才可以访问,要求可以读写 打开配置文件 vim /etc/samba/smb.conf 改为security = user 在最后面增加一段 [den ...

  4. 部署和调优 1.8 samba 部署和优化-2

    Samba 可以实现 Linux 和 Windows 机器相互共享文件,这对我们来说是非常实用的.下面做几个实践,来了解samba,注意:在实践之前,请先检测 Selinux 是否关闭,否则可能会实践 ...

  5. 部署和调优 1.7 samba 部署和优化-1

    Samba服务可以实现linux上共享一个目录,windows上面访问. 安装 yum install -y samba samba-client 配置文件在 vim /etc/samba/smb.c ...

  6. 部署和调优 1.3 pureftp部署和优化-2

    登录ftp,用远程的一台机器,执行 lftp 如果没有这个命令,需要安装 yum install -y lftp 登录ftp lftp ftpuser1@192.168.1.117 输入口令,即密码 ...

  7. 部署和调优 1.3 pureftp部署和优化-1

    FTP 是 File Transfe Protocol(文件传输协议)的英文简称,而中文简称为 “文传协议” 用于 Internet 上的控制件的双向传输. 可以访问    www.pureftpd. ...

  8. 部署和调优 1.1 nfs部署和优化-2

    更改共享目录文件默认的所有者和所属组 已知道客户端有个user11用户 cat /etc/passwd user11:x:501:501::/home/user11:/bin/bash 服务端打开 v ...

  9. 部署和调优 1.1 nfs部署和优化-1

    NFS服务会经常用到,用于在网络上共享存储.举一个例子来说明一下 NFS .假如有三台机器 A.B.C,它们需要访问同一个目录,目录中都是图片,传统的做法是把这些图片分别放到 A.B.C.但是,若使用 ...

随机推荐

  1. java 学习汇总

    一.安装svn 插件 1.svn - http://subclipse.tigris.org/update 安装的过程中可能出错,解决方法: 导航到:The Eclipse Project Updat ...

  2. js工厂方法

    工厂方法与简单工厂的区别在于工厂方法没有switch条件分支,实例化哪一个子类放到了客户端(可以利用反射),这样整个工厂和产品体系都没有修改的变化,而只是扩展的变化,这就完全符合了开放-封闭原则的精神 ...

  3. Redis学习路线

    [http://www.cnblogs.com/zhenjing/archive/2012/11/15/redis_research.html] Redis: A persistent key-val ...

  4. 2017-03-04 dotnet core网站发布到Linux系统中

    今天开始学习dotnet core的开发,距离Visual Stuio 2017正式版的发布,也就是VS20周岁的生日还有三天,在我的电脑上安装的是VS2017 Enterprise RC版, 在VS ...

  5. alias 中使用awk

    alias hehistory10='history |awk "{print \$2}"|sort|uniq -c|sort -rn|head -10' $要转义

  6. poj2396有源汇上下界可行流

    题意:给一些约束条件,要求算能否有可行流,ps:刚开始输入的是每一列和,那么就建一条上下界相同的边,这样满流的时候就一定能保证流量相同了,还有0是该列(行)对另一行每个点都要满足约束条件 解法:先按无 ...

  7. js修改隔行tr的颜色。

    <!DOCTYPE html><html lang="zh-Hans"><head> <meta charset="UTF-8& ...

  8. c++primer 第三章编程练习答案

    3.7.1 #include<iostream> int main() { using namespace std; ; int height,inch,foot; cout <&l ...

  9. 19 Python 正则模块和正则表达式

    什么是模块? 常见的场景:一个模块就是一个包含了python定义和声明的文件,文件名就是模块名字加上.py的后缀. 但其实import加载的模块分为四个通用类别: 1 使用python编写的代码(.p ...

  10. LeetCode Employee Importance

    原题链接在这里:https://leetcode.com/problems/employee-importance/description/ 题目: You are given a data stru ...