CentOS系统使用vsftpd进行远程管理的完整流程
在CentOS终端中执行以下命令,通过YUM包管理器安装vsftpd(Very Secure FTP Daemon):
sudo yum install vsftpd -y
安装完成后,vsftpd服务会自动部署到系统中。
编辑vsftpd的主配置文件/etc/vsftpd/vsftpd.conf(需root权限),根据远程管理需求调整以下关键参数:
local_enable=YESwrite_enable=YESanonymous_enable=NOpasv_enable=YESpasv_min_port=50000(被动模式最小端口)pasv_max_port=50100(被动模式最大端口)chroot_local_user=YESallow_writeable_chroot=YES(允许用户在主目录中写入文件,避免权限错误)userlist_enable=YESuserlist_file=/etc/vsftpd.userlistuserlist_deny=NO(白名单模式,仅列表内用户可登录)修改完成后,保存并退出配置文件。
为远程管理创建专用FTP用户(避免使用root账户,降低安全风险):
sudo adduser ftpadmin(创建用户,按提示设置密码)
sudo passwd ftpadmin(确认用户密码)
若需限制用户仅能访问特定目录(如/var/ftp/admin),可修改用户主目录并设置权限:
sudo usermod -d /var/ftp/admin ftpadmin
sudo mkdir -p /var/ftp/admin
sudo chown ftpadmin:ftpadmin /var/ftp/admin(将目录所有者设为用户自身)
sudo chmod 755 /var/ftp/admin(设置目录权限,允许用户读写)
使用systemctl命令管理vsftpd服务:
sudo systemctl start vsftpdsudo systemctl enable vsftpdsudo systemctl status vsftpd(显示“active (running)”即为正常)若系统启用了firewalld防火墙,需允许FTP控制端口(21)和被动模式端口范围(50000-50100)通过:
sudo firewall-cmd --permanent --add-service=ftpsudo firewall-cmd --permanent --add-port=50000-50100/tcpsudo firewall-cmd --reload若使用iptables防火墙,可执行以下命令:
sudo iptables -A INPUT -p tcp --dport 21 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 50000:50100 -j ACCEPT
sudo service iptables save(保存规则)
使用FTP客户端(如FileZilla、WinSCP)或命令行工具连接服务器:
图形化客户端(推荐):
打开FileZilla,输入以下信息:
192.168.1.100)ftpadmin)命令行工具:
ftp your_server_ip → 输入用户名/密码 → 使用put(上传)、get(下载)、ls(查看目录)等命令操作。sftp ftpadmin@your_server_ip → 输入密码 → 使用put、get、ls等命令操作(无需额外配置,依赖SSH服务)。sudo yum install openssh-server -y;sudo systemctl start sshd;sudo systemctl enable sshd),即可通过SFTP客户端(如FileZilla的“SFTP”协议)连接。vsftpd.conf中添加以下配置(需提前生成证书):ssl_enable=YESallow_anon_ssl=NOforce_local_data_ssl=YESforce_local_logins_ssl=YESrsa_cert_file=/etc/pki/tls/certs/localhost.crtrsa_private_key_file=/etc/pki/tls/private/localhost.keysudo yum update命令更新vsftpd及系统组件,修补安全漏洞。