OneCoder Avatar
OneCodercoderli.com · 955 篇博文
🐍 Python

Python 与大数据

MySQL、Hadoop、自动化与基础工具

🎨 视觉封面

CentOS下vsftpd服务配置说明

📅 2016-08-05·✍️ onecoder·计算中...·⏱️ 4 分钟
#Linux

项目需要用到分用户的FTP服务器,因此花了一天时间学习了vsftpd服务的搭建和配置说明。记录如下。

安装

BASH
yum install vsftpd ftp

配置虚拟用户

虚拟用户即可以登录Ftp,不能登录系统。配置原理即开启vsftpd的虚拟用户功能,并配合pam管理用户认证 修改配置文件/etc/vsftpd/vsftpd.conf

PROPERTIES
# 关闭匿名访问
anonymous_enable=NO
# 本地用户可访问
local_enable=YES
# 用户不能离开主目录
chroot_local_user=YES
chroot_list_enable=YES
# 开启pam权限管理插件
pam_service_name=vsftpd
#启用虚拟用户
guest_enable=YES
guest_username=ftp
#虚拟用户配置文件路径
user_config_dir=/etc/vsftpd/vuser_conf
#开启PASV模式
pasv_enable=YES
pasv_min_port=40000
pasv_max_port=50000

安装Berkeley DB工具,用于PAM模块使用。

BASH
yum install db4 db4-utils

创建用户密码文本/etc/vsftpd/vuser_passwd,奇行是用户名,偶行是密码

TEXT
dps-ftp
dps-ftp

生成虚拟用户认证的db文件

BASH
db_load -T -t hash -f /etc/vsftpd/vuser_passwd /etc/vsftpd/vuser_passwd.db

编辑认证文件/etc/pam.d/vsftpd,内容

TEXT
auth required pam_userdb.so db=/etc/vsftpd/vuser_passwd
account required pam_userdb.so db=/etc/vsftpd/
vuser_passwd

创建虚拟用户配置文件

BASH
mkdir /etc/vsftpd/vuser_conf/
vim /etc/vsftpd/vuser_conf/dps-ftp  

文件名vuser_passwd里面的账户名 内容如下

TEXT
#虚拟用户根目录,根据实际情况修改
local_root=/root/ftp/dps-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

注,关于掩码: umask = 022 时,新建的目录 权限是755,文件的权限是 644

后续添加用户方式

  1. 在vuser_passwd.txt文件内追加用户名密码。
  2. 用db_load重新生成数据库文件
  3. 在/etc/vsftpd/vuser_conf/ 创建新用户的配置文件(创建用户目录,给用户目录写和执行全新,修改用户目录路径。)
💡 OneCoder 资源指引

所有代码开源上传至 GitHub:yummy-code 仓库 · GESP 专题站:GESP WIKI

🤝 技术交流与答疑

欢迎加入:C++ GESP/CSP 考级答疑群(688906745)Java/Python交流群(982860385),点击可直接加群。

📚

猜你想读 · 相关文章推荐

Python 与数据工程 · 技术实战⏱️ 5 分钟

开发人员应留意的开源软件许可证简介

作为一个Java开发人员,开发中总会依赖很多的项目(jar包),一般来说这些项目大部分都是开源的,但是开源不等于随意使用甚至商用。开源软件都有着自己的许可证,不同的许可证自然约束也是不同的。稍不留神,可能会自讨苦吃。 先引用百度百科的开源软件的定义: <strong<a href="http://baike.baidu...

阅读全文 →
Python 与数据工程 · 技术实战⏱️ 2 分钟

云计算开源产品推荐 - CloudStack项目简介

CloudStack是思杰(Citrix)旗下的一款开源的虚拟化环境管理软件。核心代码用Java开发。CloudStack的目标是成为一个可以部署并管理大量的虚拟机网络资源,具有高可用和扩展性的云计算管理平台。目前已经支持许多主流的虚拟化平台,如:VMware、Oracle VM、KVM、XenServer、Xen。C...

阅读全文 →
Python 与数据工程 · 技术实战⏱️ 13 分钟

OneCoder翻译 每个程序员必知的知识,UniCode和字符集(上)

今天在处理了一个编码的问题,激发了笔者强烈的弄清编码问题的好奇心。遂先有了前面强烈推荐的文章:字符编码介绍 通俗易懂 强烈推荐。下面是上篇文章中提到的延伸阅读里,第一篇文章的翻译。水平有限,各位看官,勉强理解一下,错误之处还望指出。 - 原文地址:<a href="http://www.joelonsoftware.c...

阅读全文 →
OneCoder

OneCoder (lihongzheshuai)

一个中年人的自留地,记录学习 C++、GESP/NOI、Java、Python 与算法架构的心得体会。本站唯一网址:coderli.com

💬 读者留言与交流

0 条讨论
✨ 支持 Markdown 语法格式
还没有留言,快来成为第一个讨论者吧!