服务器配置FTP信息

一、FTP简介
定义:FTP(File Transfer Protocol,文件传输协议)是一种用于在网络上进行文件传输的标准协议,它采用客户/服务器模式,通过控制流和数据流两个端口进行通信,其中21号端口用于传输控制流,20号端口用于传输数据流。
二、安装及配置
检查是否安装vsftpd
rpm -q vsftpd
如果未安装,可以使用以下命令进行安装:
基于Debian的系统(如Ubuntu):
sudo apt update sudo apt install vsftpd
基于Red Hat的系统(如CentOS):
sudo yum install vsftpd
或者,如果你使用的是dnf包管理器:

sudo dnf install vsftpd
启动并配置开机自启动
sudo systemctl start vsftpd sudo systemctl enable vsftpd
或者使用service命令重启服务:
service vsftpd restart
配置文件路径
编辑/etc/vsftpd/vsftpd.conf
文件:
sudo vi /etc/vsftpd/vsftpd.conf
基本配置选项
日志选项:建议开启日志功能,以便记录FTP操作。
xferlog_enable=YES xferlog_std_format=YES xferlog_file=/var/log/xferlog
设置非标准端口:为了增强安全性,可以设置非标准端口。
listen_port=18021
其他常用选项:
ftpd_banner=Welcome to blah FTP service. idle_session_timeout=600 max_clients=50 max_per_ip=3
用户访问配置
创建FTP用户:
sudo groupadd ftpg sudo useradd -g ftpg -d /opt/res ftpuser sudo echo "ftpuser" | passwd --stdin ftpuser
防火墙配置:开放相应端口,允许FTP流量通过。

sudo systemctl start firewalld sudo firewall-cmd --zone=public --list-ports --permanent sudo firewall-cmd --zone=public --add-port=18021/tcp --permanent sudo firewall-cmd --zone=public --add-port=30000-31000/tcp --permanent sudo firewall-cmd --reload
配置vsftpd.conf文件:必须设置以下选项。
local_enable=YES write_enable=YES local_umask=022 local_max_rate=200000
如果启用了SELinux,还需要执行以下命令以允许用户上传文件到宿主目录:
sudo setsebool -P tftp_home_dir on sudo setsebool -P allow_ftpd_full_access on
注意:阿里云ECS一定不要设置为enforcing,否则重启后无法连接,如果需要关闭SELinux,可以临时修改配置文件:
mv /etc/selinux/config /etc/selinux/config.bak
三、用户访问与权限配置
创建FTP用户组和用户
groupadd ftpg useradd -g ftpg -d /opt/res ftpuser echo "ftpuser" | passwd --stdin ftpuser
设置用户主目录权限
确保FTP用户对其主目录具有适当的读写权限:
sudo chown -R ftpuser:ftpuser /opt/res sudo chmod -R 755 /opt/res
四、防火墙与安全配置
开放FTP端口
使用firewalld管理防火墙规则:
sudo systemctl start firewalld sudo firewall-cmd --zone=public --list-ports --permanent sudo firewall-cmd --zone=public --add-port=18021/tcp --permanent sudo firewall-cmd --zone=public --add-port=30000-31000/tcp --permanent sudo firewall-cmd --reload
SELinux配置
如果系统启用了SELinux,需要允许FTP用户上传文件到宿主目录:
sudo setsebool -P tftp_home_dir on sudo setsebool -P allow_ftpd_full_access on
注意:对于阿里云ECS实例,SELinux必须设为disabled,否则重启后无法连接,可以通过移动配置文件来实现临时关闭:
mv /etc/selinux/config /etc/selinux/config.bak
五、测试FTP服务器连接
1.使用FTP客户端软件(如FileZilla)测试连接
打开FileZilla,输入FTP服务器的IP地址、端口号、用户名和密码,点击“快速连接”按钮进行连接测试,如果连接成功,说明FTP服务器配置正确。
使用命令行工具测试连接(可选)
在命令行中使用ftp命令测试连接:
ftp your_server_ip 18021
然后输入用户名和密码进行登录测试。
小伙伴们,上文介绍了“服务器配置ftp信息”的内容,你了解清楚吗?希望对你有所帮助,任何问题可以给我留言,让我们下期再见吧。
【版权声明】:本站所有内容均来自网络,若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!
发表回复