运维八一 运维八一
首页
运维杂记
编程浅尝
周积跬步
专栏
生活
关于
收藏
  • 分类
  • 标签
  • 归档
Source (opens new window)

运维八一

运维,运维!
首页
运维杂记
编程浅尝
周积跬步
专栏
生活
关于
收藏
  • 分类
  • 标签
  • 归档
Source (opens new window)
  • 操作系统

  • 域名解析

  • 公有云

  • CI&CD

  • 数据库

  • 负载均衡&反向代理

  • 存储系统

  • 容器&容器编排

  • 批量管理

  • 邮件系统

  • 监控系统

  • Web服务

  • 虚拟化

  • 防火墙

  • 压测

  • 文件同步

    • sync
    • vsftp2.2.2部署步骤
      • 1. vsftp简介
      • 2. 基本需求:
      • 3. 安装vsftp
        • 3.1 安装vsftp、认证模块及数据库
        • 3.2 配置vsftp
        • 3.3 新建虚拟用户的PAM文件
        • 3.4 修改配置文件
        • 3.5 虚拟用户个人目录设置
        • 3.6 生成虚拟用户口令库文件
        • 3.7 生成口令库文件
        • 3.8 重新启动VSFTP:
      • 4. 添加FTP用户的步骤
  • 私有云

  • 日志系统

  • 代码仓库&版本管理

  • 安全审计

  • 远程拨号

  • 大数据

  • 统一认证

  • 消息队列

  • Apollo

  • 运维杂记
  • 文件同步
lyndon
2022-10-08
目录

vsftp2.2.2部署步骤

# 1. vsftp简介

vsftpd是一款在Linux发行版中最受推崇的FTP服务器程序,vsftpd 的名字代表”very secure FTP daemon”;是一个基于GPL发布的类UNIX类操作系统上运行的服务器的名字(是一种守护进程),可以运行在诸如Linux、BSD、Solaris、HP-UX以及Irix等系统上面.

# 2. 基本需求:

  • 1.搭建ftp(每个人单独账号)
  • 2.部署web服务(nginx这里不做安装说明了),访问ftp上传目录
  • 3.实现浏览器访问ftp上传目录的静态文件

# 3. 安装vsftp

FTP的登录一般有三种方式:

  • 匿名用户形式:默认安装的情况下,系统只提供匿名用户访问,只需要输入用户anonymous/ftp,并将自己的Email作为口令即可登录。
  • 本地用户形式:以/etc/passwd中的用户名为认证方式。
  • 虚拟用户形式:支持将用户名和密码保存在文件或数据库中,将登录用户映射到指定的系统账号(/sbin/nologin)来访问资源,其中这些虚拟用户是FTP的用户

本文采取第三种方式:虚拟用户形式安装vsftp

# 3.1 安装vsftp、认证模块及数据库

yum install vsftpd pam* db4* -y
1

# 3.2 配置vsftp

建立虚拟用户,设置该用户所要访问的目录,并设置虚拟用户访问的权限:

useradd -d /home/ftpsite virtual_user
chmod 700 /home/ftpsite
1
2

经过该步骤的设置,/home/ftpsite就是virtual_user用户的主目录,该用户也是ftpsite目录的拥有者。除root用户之外,只有该用户具有对该目录的读、写和执行的权限。

# 3.3 新建虚拟用户的PAM文件

加上如下两行内容:

# vi /etc/pam.d/vsftp.vu
auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/account
account required /lib64/security/pam_userdb.so db=/etc/vsftpd/account
1
2
3

# 3.4 修改配置文件

备份/etc/vsftpd/vsftpd.conf,备份完成后,编辑/etc/vsftpd/vsftpd.conf文件,使其整个文件内容如下所示(去掉了注释内容):

anonymous_enable=NO
local_enable=YES
local_umask=022
anon_umask=022
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
xferlog_file=/var/log/xferlog
dual_log_enable=YES
vsftpd_log_file=/var/log/vsftpd.log

listen=YES
write_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
one_process_model=NO
chroot_local_user=YES
ftpd_banner=Welcom to my FTP server.
anon_world_readable_only=NO
guest_enable=YES
guest_username=virtual_user
pam_service_name=vsftp.vu
user_config_dir=/etc/vsftpd/vconf
use_localtime=YES
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25

上面代码中,guest_enable=YES表示启用虚拟用户;guest_username=virtual则是将虚拟用户映射为本地用户,这样虚拟 用户登录后才能进入本地用户virtual的目录/ftpsite;pam_service_name=vsftp.vu指定PAM的配置文件为 vsftp.vu

# 3.5 虚拟用户个人目录设置

在/etc/vsftpd/vconf目录下新增一个以虚拟用户名命名的文件如下

#vi dk_cuishou

local_root=/home/jyapp/localCase
anonymous_enable=NO
write_enable=YES
local_umask=022
anon_upload_enable=YES
anon_mkdir_write_enable=YES
idle_session_timeout=600
data_connection_timeout=120
max_clients=10
max_per_ip=5
local_max_rate=5000
1
2
3
4
5
6
7
8
9
10
11
12
13

说明:local_root=/home/jyapp/localCase这个目录必须存在,如果过不存在需要新建,新建完成后需要重新改变目录的所属用户为virtual_user

chown virtual_user:virtual_user /home/jyapp/localCase
1

# 3.6 生成虚拟用户口令库文件

为了建立此口令库文件,先要生成一个文本文件。该文件的格式如下,单数行为用户名,偶数行为口令:

在/etc/vsftpd目录下新建文件account.txt

#vi account.txt
dk_cuishou
4321dk
1
2
3

说明:此处添加的用户名,一定要和第5步中添加的用户名一致!!!

# 3.7 生成口令库文件

#db_load -T -t hash -f /etc/vsftpd/account.txt /etc/vsftpd/account.db
#chmod 600 /etc/vsftpd/account.db
1
2

# 3.8 重新启动VSFTP:

#service vsftpd restart
1

# 4. 添加FTP用户的步骤

重复用3.5 - 3.7步即可,无需重启vsftp服务,添加完成以后可以使用账号登录一下

上次更新: 2024/02/26, 10:35:13
sync
openstack

← sync openstack→

最近更新
01
ctr和crictl显示镜像不一致
03-13
02
alpine镜像集成常用数据库客户端
03-13
03
create-cluster
02-26
更多文章>
Theme by Vdoing | Copyright © 2015-2024 op81.com
苏ICP备18041258号-2
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式