ftp服务的安装与部署

ftp服务的安装与部署

1、安装 vsftpd

复制代码
yum install vsftpd

2、修改配置文件

复制代码
vi /etc/vsftpd/vsftpd.conf

配置文件

复制代码
# 是否允许匿名用户登录
anonymous_enable=NO

# 是否允许本地用户登录
local_enable=YES

# 是否允许写入操作(上传、删除等)
write_enable=YES

# 本地用户创建文件的默认权限掩码
local_umask=022

# 是否启用目录消息提示
dirmessage_enable=YES

# 是否启用传输日志记录
xferlog_enable=YES

# 确保PORT模式数据传输使用20端口(ftp-data)
connect_from_port_20=YES

# 传输日志使用标准格式
xferlog_std_format=YES

# 监听IPv4套接字(设置为NO表示不监听IPv4)
listen=NO

# 监听IPv6套接字(设置为YES表示监听IPv6)
listen_ipv6=YES

# PAM认证服务名称
pam_service_name=vsftpd

# 是否启用用户列表控制
userlist_enable=YES

# 以下为常用但当前被注释的配置选项:

# 空闲会话超时时间(秒)
#idle_session_timeout=600

# 数据连接超时时间(秒)
#data_connection_timeout=120

# 是否将本地用户限制在其家目录中(chroot)
#chroot_local_user=YES

# 是否启用chroot例外列表
#chroot_list_enable=YES

# chroot例外列表文件路径
#chroot_list_file=/etc/vsftpd/chroot_list

# 登录欢迎信息
#ftpd_banner=Welcome to FTP service.

# 被动模式相关配置(需要时取消注释)
#pasv_enable=YES
#pasv_min_port=30000
#pasv_max_port=31000
#pasv_address=你的服务器IP地址

3、启动服务

复制代码
# 启动服务
systemctl start vsftpd

# 设置开机自启
systemctl enable vsftpd

# 检查状态
systemctl status vsftpd

4、创建FTP用户

复制代码
# 创建系统用户
sudo useradd -m ftpuser
sudo passwd ftpuser

# 创建FTP目录并设置权限
sudo mkdir /home/ftpuser/ftp
sudo chown ftpuser:ftpuser /home/ftpuser/ftp
sudo chmod a-w /home/ftpuser/ftp

# 创建用户可写的上传目录
sudo mkdir /home/ftpuser/ftp/uploads
sudo chown ftpuser:ftpuser /home/ftpuser/ftp/uploads

5、防火墙打开21端口

复制代码
firewall-cmd --zone=public --add-port=21/tcp --permanent

firewall-cmd --reload

firewall-cmd --list-ports

6、本地测试或者远程测试

复制代码
yum install ftp 

# 连接测试
ftp localhost

输入用户名和密码

user ftpuser

输入密码
相关推荐
石去皿5 小时前
【嵌入式就业10】Linux内核深度解析:从启动流程到驱动框架的工业级实践
linux·运维·服务器
954L5 小时前
CentOs7执行yum update出现链接404问题
linux·centos·yum·vault
Wpa.wk5 小时前
接口自动化 - 多环境统一文件配置 +多响应统一转换处理
运维·服务器·测试工具·自动化·接口自动化·统一配置
Trouvaille ~5 小时前
【Linux】应用层协议设计实战(二):Jsoncpp序列化与完整实现
linux·运维·服务器·网络·c++·json·应用层
EmbedLinX5 小时前
嵌入式之协议解析
linux·网络·c++·笔记·学习
vortex55 小时前
解密UUOC:Shell编程中“无用的cat使用”详解
linux·shell编程
tritone5 小时前
使用阿贝云免费云服务器学习Vagrant,是一次非常顺畅的体验。作为一名开发者
服务器·学习·vagrant
wangjialelele5 小时前
Linux中的进程管理
java·linux·服务器·c语言·c++·个人开发
杜子不疼.6 小时前
【Linux】库制作与原理(二):动态库的制作与使用
linux·运维·服务器
森焱森6 小时前
嵌入式硬件工程师应知 白银快速分析报告
linux·c语言·arm开发·嵌入式硬件·去中心化