centos7搭建vsftpd并启用虚拟用户
虚拟用户的特点是只能访问服务器为其提供的FTP服务,不能访问系统的其它资源,所以,如果想让用户对FTP服务器站内具有写权限,但又不允许访问系统其他资源,可以使用虚拟用户来提高系统的安全性。
在vsftpd中,谁这些虚拟用户使用的是单独的口令库文件(pam_userdb),由可插入认证模块(PAM)认证。使用这种方式更加安全,并且配置更加灵活。
安装vsftpd,Berkeley Database(db4)
yum install vsftpd db4-utils db4 -y
创建虚拟用户数据库
vim /home/virtual_users.txt
senthil
centos
执行下面命令创建数据库
db_load -T -t hash -f /home/virtual_users.txt /etc/vsftpd/virtual_users.db
创建PAM文件
vim /etc/pam.d/vsftpd_virtual
#%PAM-1.0
auth required pam_userdb.so db=/etc/vsftpd/virtual_users
account required pam_userdb.so db=/etc/vsftpd/virtual_users
session required pam_loginuid.so
vsftpd配置文件
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
chroot_local_user=YES
listen=YES
listen_ipv6=NO
pam_service_name=vsftpd_virtual
userlist_enable=YES
tcp_wrappers=YES
guest_enable=YES
#启用虚拟用户
virtual_use_local_privs=YES
user_sub_token=$USER
local_root=/ftp/virtual/$USER
hide_ids=YES
allow_writeable_chroot=YES
#避免客户端500错误
为虚拟用户创建家目录
mkdir -p /ftp/virtual/senthil
chown -R ftp:ftp /ftp/virtual/senthil/
启动服务
systemctl start vsftpd
测试
C:\Users\Administrator>ftp 192.168.2.72
连接到 192.168.2.72。
220 (vsFTPd 3.0.2)
用户(192.168.2.72:(none)): senthil
331 Please specify the password.
密码:
230 Login successful.
ftp> dir
200 PORT command successful. Consider using PASV.
150 Here comes the directory listing.
-rw-r--r-- 1 ftp ftp 670293 Feb 04 03:09 abc
-rw-r--r-- 1 ftp ftp 670293 Feb 04 03:08 services
226 Directory send OK.
ftp: 收到 127 字节,用时 0.00秒 127.00千字节/秒。
ftp> get services
200 PORT command successful. Consider using PASV.
150 Opening BINARY mode data connection for services (670293 bytes).
226 Transfer complete.
ftp: 收到 670293 字节,用时 0.02秒 35278.58千字节/秒。
ftp>
参考资料:https://www.unixmen.com/install-vsftp-with-virtual-users-on-centos-rhel-scientific-linux-6-4/
centos7搭建vsftpd并启用虚拟用户的更多相关文章
- CentOS6.3下搭建vsftpd(采用虚拟用户设置)
CentOS6.3如果在安装的时候所有安装选项都打勾的话就含有单间vsftpd必备的软件:vsftpd.pam*.db4* 检查是否安装: [root@centos6 ~]# rpm -qa | gr ...
- centos7下安装vsftpd与PAM虚拟用户
Vsftp与PAM虚拟用户 使用yum 安装vsftp yum install vsftpd pam pam-* db4 db4-* 设置开机启动 chkconfig vsftpd on 创建一个保存 ...
- vsftpd安装及虚拟用户配置
服务器环境:CentOS6.9 Linux 2.6.32-696.10.1.el6.x86_64 安装vsftpd.db4.db4-utils # yum -y install vsftpd db4 ...
- Centos6.5搭建vsftpd,并配置用户和密码登录
Centos6.5搭建vsftpd,并配置用户和密码登录 2017年05月11日 18:40:47 阅读数:6142 1)安装vsftpd yum install vsftpd 2)配置vsftpd配 ...
- vsftpd安装配置虚拟用户
原文发表于cu:2016-03-11 参考文档: FTP原理:http://vbird.dic.ksu.edu.tw/linux_server/0410vsftpd_1.php FTP配置:http: ...
- ubuntu 12.04 配置vsftpd 服务,添加虚拟用户,ssl加密
1.对于12.04的vsftpd 有一些bug,推荐安装版本vsftpd_2.3.5-1ubuntu2ppa1_amd64.debapt-get install python-software-pro ...
- centos7的FTP服务vsftpd里建立虚拟用户不同目录分配不同权限
1. virtual_use_local_privs参数 当virtual_use_local_privs=YES时,虚拟用户和本地用户有相同的权限: 当virtual_use_local_privs ...
- Centos7 搭建vsftpd
1.安装vsftpd 在线安装:yum -y install vsftpd 离线安装:下载vsftp的rpm包,通过rpm -ivh xxx.rpm安装 2.修改/etc/vsftpd/vsftpd. ...
- [CentOs7]搭建ftp服务器(2)——添加用户
摘要 上篇文章完成了ftp服务器的安装与匿名访问的内容,当然出于安全的考虑是不允许匿名访问服务器的,所以就有了本篇的内容 ,为ftp服务器添加用户,用改用户进行访问. vsftpd添加用户 FTP用户 ...
随机推荐
- opencv学习之路(29)、轮廓查找与绘制(八)——轮廓特征属性及应用
一.简介 HSV颜色空间(hue色调,saturation饱和度,value亮度) 二.HSV滑动条 #include "opencv2/opencv.hpp" #include ...
- 20175307《Java程序设计》第5周学习总结
教材内容总结 6.1 接口 1接口声明 接口使用关键字interface来进行声明 eg:interface 接口的名字 2接口体 接口体中包含常量的声明和抽象方法两部分(没有变量) 注意一定的要 ...
- Introducation of Servlet filter(servlet过滤器介绍 )
本文章向大家介绍Servlet Filter,主要包括 Servlet Filter使用实例.应用技巧.基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下. 过滤器是一个可以转换 ...
- Linux 文件内容查看(cat、tac、nl 、more 、less、head、tail )
Linux系统中使用以下命令来查看文件的内容: cat: 由第一行开始显示文件内容tac :从最后一行开始显示,可以看出 tac 是 cat 的倒著写!nl: 显示的时候,顺道输出行号!more ...
- UVALive - 3942 (字典树)
递推:$d(i) $表示从第$i$个字符开始到末尾的字符串(即后缀S[i...n])的分解方案数,则$d(i) = \sum {d(i + len(x))} $,其中字符串$x$代表S[i...n]的 ...
- React---简单实现表单点击提交插入、删除操作
import React,{Component,Fragment} from 'react' class App extends Component { constructor(){ super() ...
- Linux(例如CentOS 7)打开TCP 22端口,基于SSH协议
SSH 为 Secure Shell 的缩写,由 IETF 的网络工作小组(Network Working Group)所制定:SSH 为建立在应用层和传输层基础上的安全协议.SSH 是目前较可靠,专 ...
- Unity --- 如何简单的判断图片是否含有 alpha channel
var texImporter = AssetImporter.GetAtPath(assetPath) as TextureImporter; if (texImporter.DoesSourceT ...
- 杂记-python
1.在cmd输入python -V显示当前python的版本信息,一定是大写的V 2.输入python,进入python解释器里面 3.在解释器中,输入exit()或者quit()会退出,一定要加括号 ...
- springboot 返回json字符串格式化问题
在idea中yml文件中添加以下注解就可以格式化json字符串效果 spring: jackson: serialization: indent-output: true 原返回json格式为: {& ...