❀My虚拟机上的ftp服务器搭建(centos)❀

❀My虚拟机上的ftp服务器搭建(centos)❀

在CentOS上搭建FTP服务器可以使用vsftpd软件,下面是详细的搭建教程:

①安装vsftpd软件

在终端中输入以下命令进行安装:

bash 复制代码
sudo yum install vsftpd

②配置vsftpd

打开vsftpd的配置文件,输入以下命令:

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

在文件中找到以下几行并修改

小提示:

查找时可以用**冒号:加斜线/**来进行查找:

在当前光标位置向下查找字符串,按下回车后,光标将跳转到第一个匹配到的位置

然后按n ,跳转下一个匹配字符串的位置

找到下面几行并修改:

anonymous_enable=NO #是否允许匿名用户登录FTP服务器,将其设置为NO表示不允许

local_enable=YES #是否允许本地用户登录FTP服务器,将其设置为YES表示允许

write_enable=YES #是否允许用户上传文件到FTP服务器,将其设置为YES表示允许

local_umask=022 #上传文件时的默认权限掩码

dirmessage_enable=YES #是否启用目录信息功能

xferlog_enable=YES #是否启用日志记录功能

connect_from_port_20=YES #是否使用20端口进行数据传输

xferlog_std_format=YES #日志记录格式

chroot_local_user=YES #是否限制用户只能访问自己的主目录

listen=YES #是否启用监听模式

pam_service_name=vsftpd #PAM服务名称

userlist_enable=YES #是否启用用户列表功能

tcp_wrappers=YES #是否启用TCP包装器

③创建FTP用户

使用以下命令创建FTP用户:

其中,ftpuser是你要创建的FTP用户名(用户名自定义):

bash 复制代码
sudo useradd -m ftpuser

然后将指定ftp的账户(自定义的用户名)设置一下密码:

bash 复制代码
sudo passwd ftpuser

④设置FTP用户的主目录

在vsftpd配置文件中添加以下行:

bash 复制代码
local_root=/home/ftpuser user_sub_token=$USER

其中,local_root表示FTP用户的主目录,$USER表示当前登录的用户名。

⑤启动vsftpd服务

使用以下命令启动vsftpd服务:

bash 复制代码
sudo systemctl start vsftpd

⑥配置防火墙

如果你的CentOS系统开启了防火墙,需要添加以下规则:

bash 复制代码
sudo firewall-cmd --permanent --add-port=20/tcp 
sudo firewall-cmd --permanent --add-port=21/tcp 
sudo firewall-cmd --reload

其中,20和21端口分别用于FTP数据传输和FTP控制连接。

至此,你已经成功在CentOS上搭建了FTP服务器。如果你想让FTP服务器开机自启动,可以使用以下命令:

bash 复制代码
sudo systemctl enable vsftpd

⑦验证搭建是否成功

可以在FileZilla上连接ftp的账户,输入主机ip、ftp用户名和密码,连接成功:

相关推荐
richxu202510015 分钟前
嵌入式学习之路-->stm32篇-->(0)学习路线
stm32·嵌入式硬件·学习
waves浪游8 分钟前
进程控制(下)
linux·运维·服务器·开发语言·c++
xiaobuding_QAQ10 分钟前
51汇编仿真proteus8.15学习篇二(附源码)
开发语言·汇编·单片机·学习·proteus
黑客思维者11 分钟前
机器学习015:监督学习【分类算法】( 决策树)-- 像玩“20个问题”游戏一样做决策
学习·机器学习·分类
ai_xiaogui14 分钟前
Debian系统PVE虚拟机安装详解:ISO镜像上传+硬件配置+图形化安装指南
运维·debian·php·panelai兼容测试·图形化安装指南·iso镜像上传配置·debian pve虚拟机安装
周周记笔记20 分钟前
Ubuntu 中如何配置域名
运维·服务器
KYGALYX21 分钟前
Win10/11系统下WSL2+Ubuntu的全流程安装
linux·运维·ubuntu
寰天柚子8 小时前
裸金属服务器深度解析:适用场景、选型指南与运维实践
服务器·网络·github
Yyyy4828 小时前
Ubuntu安装Jenkis
linux·运维·ubuntu
Larry_Yanan8 小时前
Qt多进程(一)进程间通信概括
开发语言·c++·qt·学习