如何满足多应用程序FTPS上传?

FTP

1 前言

一个问题,一篇文章,一出故事。
在之前的章节笔者使用过“user_config_dir”定制过用户的速率。
今天笔者生产环境VSFTP服务需要将代码上传到不同的运行用户(上传的代码所有者和属组编程运行程序),于是产生此文。
另外,笔者生产环境请参阅此文,

如何部署集成MySQL PAM模块的SFTP服务?

2 最佳实践

2.1 开启用户自定义配置

2.1.1 增加定义用户配置参数

vim /etc/vsftpd/vsftpd.conf

确认如下配置存在,

user_config_dir=/etc/vsftpd/vsftpd_user_conf

根据以上配置,我们需要确保配置所需的目录存在,如果不存在我们手动创建,

mkdir /etc/vsftpd/vsftpd_user_conf

2.1.2 重启使服务生效

systemctl restart vsftpd
systemctl status vsftpd

2.2 定制用户配置

2.2.1 设置上传Nginx的代码配置

vim /etc/vsftpd_user_conf/nginx

加入如下配置,

guest_username=nginx
local_root=/var/www

2.2.2 设置上传Nginx的代码配置

vim /etc/vsftpd_user_conf/api

加入如下配置,

guest_username=api
local_root=/usr/api

2.3 删除公用的配置

2.3.1 修改默认配置文件

vim /etc/vsftpd/vsftpd.conf

默认配置文件中注解掉如下配置(某些配置理论上不解决就会被覆盖,但建议注解),

#user_sub_token=$USER
#local_root=/var/www/$USER
#guest_username=apache
#local_root=/var/www/$USER

2.1.2 重启使服务生效

systemctl restart vsftpd
systemctl status vsftpd

2.4 上传代码并确认目录权限

ls -l /var/www/ /usr/api/

可见文件权限自动适配程序的要求,

/data/www/:
total 8
drwxr-xr-x 3 nginx nginx 4096 Dec 27 14:28 test
-rw-r--r-- 1 nginx nginx    27 Nov 15 13:51 test.html

/usr/api/:
total 41840
drwxrwxr-x 2 api  api        29 Dec 27 16:32 test
-rw-r--r-- 1 api  api 42841402 Dec 24 16:06 test.jar

注:ftp文件上传此处不再详述。

参阅文档
=================

官方配置文件
———–
https://security.appspot.com/vsftpd/vsftpd_conf.html

限制特定用户的速率
———————

如何限制VSFTP用户的上传下载速度?

没有评论

发表评论

FTP
如何限制VSFTP用户的上传下载速度?

1 前言 一个问题,一篇文章,一出故事。 笔者生产环境VSFTP服务遇到单用户上传下载需要限速(该用 …

FTP
如何解决MySQL PAM模块与新版MySQL不兼容问题?

1 前言 笔者生产环境有部署VSFTP服务(基于MySQL验证),详细的搭建步骤如下, 如何部署集成 …

FTP
如何部署集成MySQL PAM模块的SFTP服务?

1 前言 需要解决由FTP上传的文件自动以某个应用程序的身份保存的唯一方式是使用VSFTP的虚拟用户 …