Ftp服务部署

一、安装 vsftpd

bash 复制代码
# Centos 安装 vsftpd
sudo yum install vsftpd -y

# Ubuntu 安装 vsftpd
sudo apt update
sudo apt install vsftpd -y

# 设置开机自启
sudo systemctl enable vsftpd

# 启动服务
sudo systemctl start vsftpd

# 查看服务状态(确认是否运行)
sudo systemctl status vsftpd

二、核心配置(匿名 / 本地用户模式)

安装完之后在/etc/vsftpd/路径下会存在几个配置文件

/etc/vsftpd/vsftpd.conf:vsftpd 的核心配置文件

/etc/vsftpd/ftpusers:用于指定哪些用户不能访问FTP 服务器(黑名单)

/etc/vsftpd/user_list:指定允许使用vsftpd 的用户列表文件(白名单)

/etc/vsftpd/chroot_list:指定允许使用vsftpd 的用户列表文件(控制名单下的目录能不能离开ftp根目录)

1.vsftpd.conf具体配置如下

bash 复制代码
anonymous_enable=NO  #允许匿名用户访问为了安全选择关闭
local_enable=YES   # 允许本地用户登录
write_enable=YES   # 是否允许写入
local_umask=022  # 本地用户上传文件的umask
dirmessage_enable=YES #为YES则进入目录时显示此目录下由message_file选项指定的文本文件(,默认为.message)的内容
xferlog_enable=YES #开启日志

xferlog_std_format=YES #标准格式
connect_from_port_20=YES
xferlog_file=/var/log/xferlog   #ftp日志目录

idle_session_timeout=6000 #设置客户端连接时间

data_connection_timeout=1200 #设置数据连接时间 针对上传,下载
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list #设置为YES则下面的控制有效
chroot_list_enable=YES #若为NO,则记录在chroot_list_file所指定的文件(默认是/etc/vsftpd.chroot_list)中的用户将被chroot在登录后所在目录中,无法离开.如果为YES,则所记录的用户将不被chroot.这里YES.
chroot_local_user=YES
userlist_deny=NO #若设置为YES则记录在userlist_file选项指定文件(默认是/etc/vsftpd.user_list)中的用户将无法login,并且将检察下面的userlist_deny选项
userlist_enable=YES #若为NO,则仅接受记录在userlist_file选项指定文件(默认是/etc/vsftpd.user_list)中的用户的login请求.若为YES则不接受这些用户的请求.
userlist_file=/etc/vsftpd/user_list #白名单
chroot_list_enable=YES
local_root=/var/ftp/pub #根目录
listen=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES

2.创建 FTP 本地用户并添加到user_list和chroot_list中去

bash 复制代码
# 创建用户 ftpuser
sudo useradd ftpuser

# 设置用户密码
sudo passwd ftpuser

# 授权目录权限
chmod 777 /var/ftp/pub
相关推荐
喜欢吃燃面12 小时前
Linux:环境变量
linux·开发语言·学习
代码游侠13 小时前
ARM开发——阶段问题综述(二)
运维·arm开发·笔记·单片机·嵌入式硬件·学习
Mr.朱鹏14 小时前
Nginx路由转发案例实战
java·运维·spring boot·nginx·spring·intellij-idea·jetty
java_logo14 小时前
OpenCode 企业级 Docker 部署完整指南
运维·docker·容器·opencode·opencode本地化部署·opencode部署手册·opencode部署方案
TTBIGDATA15 小时前
【knox】User: knox is not allowed to impersonate admin
大数据·运维·ambari·hdp·trino·knox·bigtop
佑白雪乐16 小时前
<Linux基础第10集>复习前面内容
linux·运维·服务器
春日见16 小时前
自动驾驶规划控制决策知识点扫盲
linux·运维·服务器·人工智能·机器学习·自动驾驶
暮云星影16 小时前
四、linux系统 应用开发:UI开发环境配置概述 (三)
linux·ui·arm
玉树临风江流儿17 小时前
docker镜像加速器配置步骤
运维·docker·容器